Mod Security ctl:ruleEngine=Off 白名单在第一阶段失败

Mod Security ctl:ruleEngine=Off 白名单在第一阶段失败

mod_security 在单独的 .conf 文件中具有自定义规则和白名单 - Apache 2.2、modsec 2.8

白名单规则:

SecRule REMOTE_ADDR "^10\.10\.10\.10" phase:1,nolog,allow,ctl:ruleEngine=Off,id:104008

如果向服务器发送包含以下内容的请求,/?abc=../../则 modsec 仅允许来自 10.10.10.10 的请求,否则它会在第 2 阶段以 403 拒绝该请求,正如我所料(由于我们安装的规则)

我有一个客户使用远程 WorPress 管理系统(此处表示为 10.10.10.10),但该系统发送了某些邮政请求包含内容长度但缺乏内容类型标头。

即使请求来自 10.10.10.10,也会导致:

--7ed45f75-H--
Message: Access denied with connection close (phase 1). Match of "rx ^0$" against "REQUEST_HEADERS:Content-Length" required. [file "/usr/local/apache/conf/modsec_rules/10_asl_rules.conf"] [line "93"] [id "392301"] [rev "7"] [msg "Atomicorp.com WAF Rules: Request Containing Content, but Missing Content-Type header"] [severity "NOTICE"] [tag "no_ar"]
Apache-Error: [file "config.c"] [line 395] [level 3] Handler for (null) returned invalid result code 9, referer: https://redacted.com
Action: Intercepted (phase 1)

我不确定这是否ctl:ruleEngine=Off只是无法在第 1 阶段 SecRule 中使用,或者这是否是 Mod Security 2.8 错误。我可以确认没有规则随后会重新启用 ctl:ruleEngine。

答案1

正如你已经回答你的问题一样这里,您应该创建额外的配置文件并将此行放入其中,它将禁用Atomicorp您仅针对该用户/域(针对所有人)提到的规则。

文件:/usr/local/apache/conf/userdata/std/2/用户名/示例.com

<IfModule mod_security2.c>
  SecRuleRemoveById 392301
</IfModule>

编辑

禁用特定 IP/范围的某些规则如下

SecRule REMOTE_HOST "@ipmatch 1.2.0.0/16" \
"id:12345,phase:2,t:none,pass,nolog,noauditlog,ctl:ruleRemovebyID=392301"

正如所解释的那样Atomicorp 维基

相关内容