mod_security规则981203误报

时间:2016-08-09 13:01:29

标签: apache mod-security mod-security2

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

我从OWASP CRS激活了所有base_rules/

我通过查看/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。 [文件   “/usr/share/modsecurity-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf”]   [line“159”] [id“981173”] [rev“2”] [msg“受限SQL字符   异常检测警报 - 特殊字符总数超出“]   [data“匹配数据: - 在ARGS内找到:gclid:   Cj0KEQjw_qW9BRCcv-Xc5Jn-26gBEiQAM-iJhcydtemGoKm4rCJ7gbEgz5qL-MXF0tMh5BkaxVPZPYwaAvhW8P8HAQ“]   [ver“OWASP_CRS / 2.2.8”] [成熟期“9”] [准确性“8”] [标签   “OWASP_CRS / WEB_ATTACK / SQL_INJECTION”]消息:警告。运营商LT   TX:inbound_anomaly_score匹配5。 [文件   “/usr/share/modsecurity-crs/activated_rules/modsecurity_crs_60_correlation.conf”]   [line“33”] [id“981203”] [msg“入站异常分数(入站总数   得分:3,SQLi = 1,XSS = 0):受限制的SQL字符异常检测   警报 - 特殊字符总数超出“]

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

如何将此类网址(例如包含gclid参数)“列入白名单”而不是完全禁用规则981203?

1 个答案:

答案 0 :(得分:3)

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

consultation

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

有关其他建议的常见规则调整,请参阅此帖子: Modsecurity: Excessive false positives