0

我刚刚在我的 Apache2 Web 服务器上安装了 mod_security。

我激活了所有base_rules/来自 OWASP CRS 的。

我通过查看内部发现了误报/var/log/apache2/modsec_audit.log

目标网址是:

/mobile//index.cfm?gclid=Cj0KEQjw_qW9BRCcv-Xc5Jn-26gBEiQAM-iJhcydtemGoKm4rCJ7gbEgz5qL-MXF0tMh5BkaxVPZPYwaAvhW8P8HAQ

错误日志是:

消息:警告。模式匹配 "([\~\!\@\#\$\%\^\&\*\(\)\-\+\=\{\}\[\]\|\:\;\"\ '\\xc2\xb4\\xe2\x80\x99\\xe2\x80\x98\`\<\>].*?){4,}" 在 ARGS:gclid. [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数据:-在 ARGS:gclid 中找到:Cj0KEQjw_qW9BRCcv-Xc5Jn-26gBEiQAM-iJhcydtemGoKm4rCJ7gbEgz5qL-MXF0tMh5BkaxVPZPYwaAvhW8P8HAQ"] [版本 "OWASP_CRS/2.2.8"] [成熟度 "9"] [准确度 "8"] [标签 "ASPJECOWC_IN/WEB "] 消息:警告。操作员 LT 在 TX:inbound_anomaly_score 匹配 5。[file"

该消息是不言自明的,但是...对于我的网站而言,这不是恶意 URL。

我怎样才能将这种 URL(例如包含 gclid 参数)“列入白名单”,而不是完全禁用规则 981203?

4

1 回答 1

4

您可以在定义其他规则后添加此配置:

SecRuleUpdateTargetById 981203 !ARGS:'gclid'

然而,我看到这个规则有很多误报,所以经常完全关闭它。OWASP CRS 容易出现过度警报,需要大量调整。

有关其他建议的常见规则调整,请参阅此帖子: Modsecurity:过度误报

于 2016-08-09T19:24:13.020 回答