我想禁用此规则:
[file "/usr/share/modsecurity-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf"] [line "159"] [id "981173"] [rev "2"] [msg "Restricted SQL Character Anomaly Detection Alert - Total # of special characters exceeded"] [data "Matched Data: - found within ARGS:customize_changeset_uuid: a507417f-75f3-434e-ac8c-90b21b3b164d"] [ver "OWASP_CRS/2.2.9"] [maturity "9"] [accuracy "8"] [tag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION"]
目录
/var/www/romanpastu/wp-admin
例外应该去哪里?在我的.htaccess?还是vhost文件?
Cuase似乎没什么用。
我正在使用apache2
我尝试在我的虚拟主机文件中添加以下内容。但是,它仍然无法正常工作
<LocationMatch "/wp-admin/update.php">
<IfModule security2_module>
SecRuleRemoveById 981173
</IfModule> </LocationMatch> <LocationMatch "/wp-admin/customize.php">
<IfModule security2_module>
SecRuleRemoveById 981173
</IfModule> </LocationMatch>
答案 0 :(得分:2)
在配置中定义规则之后应添加。因此,如果您要定义vhost(包括删除上述规则),然后在配置中加载ModSecurity规则,那么这将无效 - 它需要反过来。
此外,除非使用--enable-htaccess-config
设置(默认情况下不是)编译ModSecurity,否则您无法更改htaccess文件中的ModSecurity规则。
此外,在LocationMatch中添加规则可能会导致问题。而且wp-admin就是你想要使用ModSecuritg来防范的页面,所以要仔细考虑你是否真的要关闭这些规则。有关更多信息,请参阅我对此问题的回答:Apache LocationMatch wildcard for ModSecurity on wordpress site。
因此,我建议使用以下内容,而不是仅针对导致您出现问题的此参数关闭此规则:
SecRuleUpdateTargetById 981173 !ARGS:'customize_changeset_uuid'
请注意,如果任何其他参数导致问题,您可能需要添加类似的异常。