如何對 WAF 中的誤肯定和誤否定進行疑難排解?
依預設,「Web 應用程式防火牆 (WAF)」是透過儀表板完全管理,且與大部分網站及 Web 應用程式相容。 不過,您可能會遇到誤肯定和誤否定。
當偵測到合法要求並將其過濾為惡意要求時,即會發生誤判。 未過濾惡意要求時,會發生誤否定。
WAF 誤判疑難排解
對於每個網站而言,可疑內容的定義是主觀的。 例如,張貼至您網站的 PHP 程式碼是可疑的,除非您的網站教導如何編寫程式碼,並要求訪客提交 PHP 程式碼。 因此,此類網站必須停用干擾正常作業的相關 WAF 規則。
若要測試誤判,請將 WAF 設為「模擬」模式,以記錄對可能攻擊的回應,而不進行盤查或封鎖。 此外,請使用「防火牆分析活動日誌」來判定哪些 WAF 規則導致誤判。
如果您遇到誤判,有數個可能的解決方案:
- 將用戶端的 IP 位址新增至「IP 存取規則」允許清單: 如果瀏覽器或用戶端從相同的 IP 位址造訪,建議容許。
- 停用對應的 WAF 規則。 這樣做會停止封鎖或盤查誤判,但會降低整體網站安全。 由 WAF 規則 ID 981176 封鎖的要求參照 OWASP 規則。 降低 OWASP 靈敏度以解決問題。
- 使用防火牆規則略過 WAF: 使用略過動作建立防火牆規則,以針對特定的參數組合取消啟動 WAF。 例如,略過特定 URL 及特定 IP 位址或使用者代理程式的 WAF。
- 針對 URL 的資料流量停用 WAF (不建議)。 使用頁面規則停用 WAF 會降低特定 URL 端點上的安全。
如果您聯絡「IBM 支援中心」,以驗證 WAF 規則是否如預期般觸發,請提供在傳送特定的關注要求時所擷取的 HAR 檔。
如果某個特定規則導致誤判,請將規則的「模式」設為「停用」,而不是關閉整個規則群組。 若為網站上具有管理者內容的誤判,請建立頁面規則來停用網站資源的管理區段安全,例如 yoursite.com/admin
。
疑難排解 WAF 誤否定
若要識別誤否定,請檢閱原點 Web 伺服器上的 HTTP 日誌。
若要減少誤否定,請使用下列核對清單:
- 「防火牆」應用程式中的 Web 應用程式防火牆
On
是否位於「受管理規則」下? - Web 應用程式防火牆
Off
是否使用頁面規則? - 依預設,並非所有 WAF 規則都已啟用,因此請檢閱個別 WAF 規則預設動作。 例如,依預設,CIS 容許具有空使用者代理程式的要求。
若要封鎖具有空使用者代理程式的要求,請將 WAF 規則模式變更為 Block
。
- 提供 HTTP 資料流量的 DNS 記錄是否透過 CIS進行 Proxy 處理?
- 防火牆規則會略過 CIS 受管理規則嗎?
- IP 存取規則或防火牆規則中容許的國家/地區、ASN、IP 範圍或 IP 是否符合攻擊資料流量?
- 惡意資料流量是否導向至您的原始 IP 位址,以略過 CIS 保護? 封鎖原始 Web 伺服器上 CIS的 IP 位址以外的所有資料流量。