我们在服务器上使用第三方软件时收到了很多误报。他们自己似乎无法修复它,我正在尝试找出如何允许包含“CERTAINSTRING_”的 cookie 通过
以下是其中一个禁令的示例。它们都是相同的规则 ID
www.mysite.com 27.33.154.111 981231 [15/Dec/2013:12:14:36 +1100]
Pattern match: \
"(/\\*!?|\\*/|[';]--|--[\\s\\r\\n\\v\\f]|(?:--[^-]*?-)|([^\\-&])#.*?[\\s\\r\\n\\v\\f]|;?\\x00)" \
at REQUEST_COOKIES: _CERTAINSTRING. \
[file "/usr/local/apache/conf/modsecurity_crs_41_sql_injection_attacks.conf"] \
[line "49"] \
[id "981231"] \
[rev "2"] \
[msg "SQL Comment Sequence Detected."] \
[data "Matched Data: 1#"
"description::325,1091,/file-path/file-name/999/1,http://www.mysite.com/file-path/file-name/999/1#"
"rev found within REQUEST_COOKIES:_CERTAINSTRING: 240,1091,/file-path/file-name/999/1,http://www.mysite.com/file-path/file-name/999/1#"
"description::325,1091,/file-path/file-name/999/1,http://www.mysite…”] \
[severity "CRITICAL"] \
[ver "OWASP_CRS/2.2.8"] \
[maturity "8"] \
[accuracy "8"] \
[tag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION"] \
[tag "WASCTC/WASC-19"] \
[tag "OWASP_TOP_10/A1"]
答案1
您可以使用 SecRuleUpdateTargetById 来修改规则
SecRuleUpdateTargetById 981231 !REQUEST_COOKIES:/^ _CERTAINSTRING/
这将禁用导致您痛苦的针对名称以 _CERTAINSTRING 开头的请求 cookie 的规则。
更新:
上述规则需要放在它所引用的规则定义之后。这通常是通过创建一个在所有 CRS 规则之后读取的文件来完成的,例如基于审计日志消息中引用的位置
/usr/local/apache/conf/modsecurity_crs_61_customrules.conf