【问题标题】:mod_security rule 981203 false positivemod_security 规则 981203 误报
【发布时间】:2016-08-09 13:01:28
【问题描述】:

我刚刚在我的 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 "Restricted SQL Character 异常检测警报 - 超过特殊字符总数"] [数据“匹配数据:-在 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 "Inbound Anomaly Score (Total Inbound 得分:3,SQLi=1,XSS=0):受限 SQL 字符异常检测 警报 - 超过特殊字符总数"]

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

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

【问题讨论】:

    标签: apache mod-security mod-security2


    【解决方案1】:

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

    SecRuleUpdateTargetById 981203 !ARGS:'gclid'
    

    但是,我发现此规则有很多误报,因此经常将其完全关闭。 OWASP CRS 容易出现过度警报,需要大量调整。

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

    【讨论】:

    猜你喜欢
    • 2019-08-12
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    • 2020-11-05
    • 1970-01-01
    • 2012-02-13
    • 2013-05-09
    • 1970-01-01
    相关资源
    最近更新 更多