在 ModSecurity 中,如何将 CRS 规则严重性级别从 CRITICAL 更改为 NOTICE?

问题描述

CRS 有一组 sql 数据泄漏规则,我想维护它们,但想将其严重性从 CRITICAL 更改为 NOTICE,因此一个匹配项不会立即阻止请求。

我无法更改出局异常分数限制,因为所有其他规则都可以有效地处理当前分数。

请注意,CRS 中的 95* 条规则都是链式规则。

我尝试使用 SecruleUpdateActionById 更新严重性,但没有用。

SecruleUpdateActionById 951110 "severity:'NOTICE'"

现在,这是上面的示例规则:

Secrule TX:sql_error_match "@eq 1" \
    "id:951110,\
    phase:4,\
    block,\
    capture,\
    t:none,\
    msg:'Microsoft Access sql @R_18_4045@ion Leakage',\
    logdata:'Matched Data: %{TX.0} found within %{MATCHED_VAR_NAME}: %{MATCHED_VAR}',\
    tag:'application-multi',\
    tag:'language-multi',\
    tag:'platform-msaccess',\
    tag:'attack-disclosure',\
    tag:'paranoia-level/1',\
    tag:'Owasp_CRS',\
    tag:'capec/1000/118/116/54',\
    ctl:auditLogParts=+E,\
    ver:'Owasp_CRS/3.3.0',\
    severity:'CRITICAL',\
    chain"
    Secrule RESPONSE_BODY "@rx (?i:JET Database Engine|Access Database Engine|\[Microsoft\]\[ODBC Microsoft Access Driver\])" \
        "capture,\
        setvar:'tx.outbound_anomaly_score_pl1=+%{tx.critical_anomaly_score}',\
        setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\
        setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'"

看来我需要更新严重性级别(我的评论规则没有改变),以及链式规则中存在的 setvar 操作。

关于如何做到这一点的任何想法?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)