草庐IT

security-by-obscurity

全部标签

Windows 上的 PHP/MySQLi : inserts into a MySQL innoDB Table increases the AUTO_INCREMENT column by 2

当我在PHP进程中通过PHPmysqliAPI使用准备好的语句在Windows上执行简单插入时,定义的AUTO_INCREMENT列增加2而不是1:INSERTINTO`table`(`name`)VALUES(?)在一个PHP进程中执行多个插入(在单独的事务中一个接一个地插入)时,它会增加1。当我通过phpmyadmin使用相同的SQL查询时,它总是增加1。在上述INSERT之前或之后没有其他INSERT或UPDATE语句。之前只有一个SHOW和一些SELECT语句。我找不到这个问题的原因。这种行为的原因可能是什么?主要代码部分:set_charset('utf8');}}//[..

php - "proc_open() has been disabled for security reasons"- PHP 错误

proc_open()hasbeendisabledforsecurityreasons我目前正在免费托管(Hostinger)-制作个人网站仅供我和其他一些人使用。我知道我应该从php.ini中删除proc_open,但由于我的共享主机计划,我无法访问它。我的代码中围绕proc_open的代码如下-如果您需要完整代码,请告诉我。我试过注释部分但它返回错误。我只想删除它并允许代码正常运行。=1?true:false;//Commandexecutionfunctionexecute_command($command){$descriptors=array(0=>array('pipe'

php - 如何编写 mod_security 友好的 PHP 代码?

我在WordPress中创建了一个主题,该主题在HostGator上触发了mod_security规则并给出了403错误。我联系了那里的人(在HostGator),他们帮我修好了。但我不希望我的主题像这样工作。我只是想知道是否有关于编写对mod_security友好的PHP代码的指南/博客文章/教程?我试过谷歌,但没有找到任何有用的东西。 最佳答案 我不确定是否有很多指南,特别是因为mod_security配置因服务器而异。我最推荐的是看一下CoreRuleSetProject.那里有很多规则。他们有很多。一些一般要避免的事情是:在

php - 初学者 : Limit URL parameter by using regular expression

我需要一些关于正则表达式的帮助来限制用户为输入传递糟糕的参数时的选择。例如路径是这样的:/project/create/:category(:category是参数的占位符,因此我可以在我的Controller中访问它)基本上我想要做的是将URL与该类别的2个选项(报价|请求)之一相匹配。这使得用户尝试执行404重定向的任何其他路径都能正常工作。只允许这些选择的正则表达式需要是什么?(提供|请求)'/\/component\/create\/(offer|request)/'-会成功吗?提前致谢 最佳答案 从您表达问题的方式来看,您

php - 身份验证凭证未找到异常 : The security context contains no authentication token

我收到以下错误AuthenticationCredentialsNotFoundException:Thesecuritycontextcontainsnoauthenticationtoken.OnepossiblereasonmaybethatthereisnofirewallconfiguredforthisURL.我已经尝试过解决方案,因为我知道当没有为路由配置安全防火墙时会发生此错误,但我似乎无法解决该错误。这是我的security.ymlsecurity:access_decision_manager:#strategycanbe:affirmative,unanimous

php - 大文件上传时的 Apache 错误 500 (mod_security)

就我所尝试的而言,常用的解决方案都不适合我。好吧,我的问题是,每次我上传“大文件”(600KB~)时都会收到500错误,而较小的图像效果很好。所以...,即使使用这个(极端的).htaccess文件,它也会继续发生,是的,.htaccess是事件的:upload_max_filesize=100Mpost_max_size=100Mmemory_limit=128Mmax_input_time=6000max_execution_time=6000因此,我查看了日志并发现了这一点(只有一行,只是将其粘贴为易于阅读并带有行跳转):[MonJul2717:09:28.2015][:erro

php - 使用 Symfony Security 的简单登录表单

我试着用这个教程做登录表单:http://symfony.com/doc/current/cookbook/security/form_login_setup.html所以,现在我的security.yml文件如下所示:security:providers:in_memory:memory:users:ryan:password:ryanpassroles:'ROLE_USER'admin:password:kittenroles:'ROLE_ADMIN'encoders:Symfony\Component\Security\Core\User\User:plaintextfirewa

php - SQLite : GROUP BY without Aggregate

我试图了解GROUPBY在SQLitev2.8.17上的一个奇怪行为代码如下:_db->prepare('SELECTCOUNT(*)AScFROM(SELECTMAX(groupCode)FROMdocsGROUPBYgroupCode)');$selectQuery=$this->_db->prepare('SELECTCOUNT(*)AScFROM(SELECTgroupCodeFROMdocsGROUPBYgroupCode)');$selectMaxQuery->exec();$selectQuery->exec();var_dump($selectMaxQuery->fet

php - Symfony 3.3 从 3.2 : Compile Error: Cannot declare class Symfony\Bundle\SecurityBundle\Security\FirewallMap

自从我从symfony3.2更新到3.3后我遇到了一些问题,我得到了这个错误CompileError:CannotdeclareclassSymfony\Bundle\SecurityBundle\Security\FirewallMap,becausethenameisalreadyinuseinclasses.php(line1709)inClassCollectionLoader.php(line99)atClassCollectionLoader::load()inKernel.php(line428)atKernel->doLoadClassCache()inKernel.p

php - 检查group by的任何一行是否为空

我正在检查groupby$b的所有行,以防$b中的空行我想禁用组列$a的按钮,如以下脚本所示。我正在使用groupby,这就是它只在$b的第一行起作用的原因。如果其中任何一行为空,如何禁用组列的按钮?我是否应该使用循环来检查$b的所有行。PHP$id=$_POST['id'];$sql=$db->prepare("SELECTa,bfromtableWHEREid=:idgroupbya");$sql->bindparam(':id',$id);$sql->execute();while($row=$sql->fetch(PDO::FETCH_ASSOC)){$a=$row['a'];