我一直在四处寻找试图让这个工作权利一段时间,现在终于位子弹,并张贴在这里。Apache,Mod_security和Wordpress,无法通过规则ID删除
我有一个ModSecurity使用OWASP核心规则集(v 2.2.5),只是安装WordPress的LAMP堆栈。我期望与ModSecurity发生冲突,但我一直无法忽略或解决目前为止唯一遇到的错误。
Apache的error.log中文件和modsec_audit.log两个列表相同的错误:
ModSecurity: Rule 7f5d9a449228 [id "950901"][file "/etc/modsecurity/owasp-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf"][line "77"] - Execution error - PCRE limits exceeded (-8): (null).`
我试图创建在CRS的conf文件位于包含新的.conf文件
<LocationMatch .*>
<IfModule mod_security2.c>
SecRuleRemoveById 950901
</IfModule>
</LocationMatch>
甚至删除了IfModule
语句,然后在LocationMatch
语句无效时删除。
最后,我诉诸注释掉.conf文件中的第76行和第77行,并且错误仍然出现。这也没有效果。
只有改变SecRuleEngine
到Off
在modsecurity.conf
终于让我访问该页面。当然这违背了ModSec
的目的。
我哪里错了?
谢谢!这解决了所有这些错误,但当我尝试访问同一页面时,我仍然得到了403。我尝试将新ID添加到我的whitelist.conf文件中,但似乎没有任何效果。我怎样才能得到403代码引用我已经消除的ID代码(我99%确定)? – user2384705
403有点泛泛......你的日志里有什么东西?如果你还没有,启用日志mod_security可能是一个好主意:http://www.modsecurity.org/documentation/modsecurity-apache/1.9.3/html-multipage/07-logging.html – doublesharp
原来是我的一半问题是一个wordpress设置指向存放文件的错误位置,并且没有权限创建需要的文件夹。那12小时我的生活我不会回来。但感谢您的全力帮助,我会继续采用这种方式 – user2384705