如何在 ModSecurity 中將某個 cookie 字串列入白名單

如何在 ModSecurity 中將某個 cookie 字串列入白名單

在我們的伺服器上使用第三部分軟體時,我們收到了很多誤報。他們自己似乎無法修復它,我正在嘗試找出如何允許包含“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

相關內容