You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ModSecurity/Coraza规则链失效问题求助

Coraza规则链deny动作失效问题解决

问题现象

使用Coraza时配置了ModSecurity规则链,日志显示两条规则均匹配,但链尾的deny动作未生效,请求未被拦截。

配置的规则

SecRule REQUEST_HEADERS:X-Forwarded-For "@ipMatch 3.4.5.6" "id:9,phase:1,chain"
SecRule REQUEST_HEADERS:Host "@eq bar.com" "id:10,phase:1,deny"

测试请求

curl -v -H 'Host: bar.com' -H 'X-Forwarded-For: 3.4.5.6'  localhost

日志信息

2023/11/06 19:33:20 [DEBUG] Evaluating operator: MATCH tx_id="bqZkxImuTflWlGYCGVG" rule_id=9 operator_function="@ipMatch" operator_data="3.4.5.6" arg="3.4.5.6"
2023/11/06 19:33:20 [DEBUG] Evaluating operator: MATCH tx_id="bqZkxImuTflWlGYCGVG" rule_id=10 operator_function="@eq" operator_data="bar.com" arg="bar.com"

原因与解决方法

Coraza/ModSecurity的规则链逻辑是:只有链头规则(第一条)定义的动作会被执行,链尾规则仅作为匹配条件,其配置的动作会被忽略。

将deny动作移至链头规则,并移除链尾规则的phase参数(链规则会继承链头的phase配置),修改后的规则如下:

SecRule REQUEST_HEADERS:X-Forwarded-For "@ipMatch 3.4.5.6" "id:9,phase:1,chain,deny"
SecRule REQUEST_HEADERS:Host "@eq bar.com" "id:10"

修改后,当两条规则都匹配时,链头的deny动作会触发,请求将被正常拦截。

内容的提问来源于stack exchange,提问作者user2233706

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:16:07