監控和調整 - AWS WAF、 AWS Firewall Manager、和 AWS Shield Advanced

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

監控和調整

本節說明如何監控和調整您的 AWS WAF 保護。

注意

若要遵循本節中的指引,您需要一般了解如何建立和管理 Web ACL、規則和規則群組等 AWS WAF 保護。本指南前面的章節涵蓋了該資訊。

監控網路流量和規則相符項目,以驗證 Web ACL 的行為。如果發現問題,請調整規則以更正,然後進行監視以驗證調整。

重複以下程序,直到 Web ACL 視需要管理您的網路流量為止。

若要監視和調整
  1. 監控流量和規則符合

    確保流量正在流動,並且您的測試規則正在找到匹配的請求。

    請尋找下列資訊,瞭解您正在測試的保護措施:

    • 防護記錄 — 存取符合 Web 要求之規則的相關資訊:

      • 您的規則-Web ACL 中具有Count動作的規則會列在下nonTerminatingMatchingRules。具有Allow或的規則Block會列為terminatingRule。具有CAPTCHA或Challenge可以是終止或非終止的規則,因此會根據規則相符的結果列在兩個類別中的其中一個。

      • 規則群組-規則群組會在ruleGroupId欄位中識別,其規則相符項目的分類與獨立規則相同。

      • 標籤-已套用至請求的規則標籤會列在Labels欄位中。

      如需詳細資訊,請參閱 日誌欄位

    • Amazon CloudWatch 指標 — 您可以存取以下網頁 ACL 請求評估的指標。

      • 您的規則 — 量度依規則動作分組。例如,當您在Count模式中測試規則時,其相符項目會列為 Web ACL 的Count度量。

      • 您的規則群組 — 規則群組的量度會列在規則群組量度下。

      • 另一個帳戶擁有的規則群組 — 規則群組量度通常只有規則群組擁有者才能看到。不過,如果您覆寫規則的規則動作,則該規則的度量會列在您的 Web ACL 量度下。此外,任何規則群組新增的標籤都會列在 Web ACL 量度中

        此類別中的規則群組是AWS 的受管規則 AWS WAF另一個帳戶與您共用的由其他服務提供的規則群組、、和規則群組。AWS Marketplace 受管規則群組

      • 標籤-在評估期間新增至 Web 要求的標籤會列在 Web ACL 標籤度量中。您可以存取所有標籤的量度,無論這些標籤是由您的規則和規則群組新增,還是由其他帳戶擁有的規則群組中的規則新增。

      如需詳細資訊,請參閱 檢視網路 ACL 的量度

    • Web ACL 流量概觀儀表板 — 前往 AWS WAF 主控台中的 Web ACL 頁面並開啟「流量概觀」索引標籤,即可存取 Web ACL 評估的 Web 流量摘要。

      流量概觀儀表板提供近乎即時的 Amazon CloudWatch 指標摘要,這些指標會在評估應用程式 Web 流量時 AWS WAF 收集到。

      如需詳細資訊,請參閱 網頁 ACL 流量概觀儀表板

    • 已取樣的 Web 請求 — 存取符合 Web 請求取樣之規則的資訊。範例資訊會依 Web ACL 中規則的測量結果名稱來識別相符規則。針對規則群組,測量結果會識別規則群組參照陳述式。對於規則群組內的規則,範例會在中列出相符的規則名稱RuleWithinRuleGroup

      如需詳細資訊,請參閱 檢視 Web 請求的範例

  2. 設定緩和措施以解決誤判

    如果您判斷規則會產生誤判,則在不應該的情況下比對 Web 要求,下列選項可協助您調整 Web ACL 保護以減輕。

    更正規則檢查條件

    對於您自己的規則,您通常只需要調整用於檢查 Web 請求的設置即可。範例包括變更 regex 模式集中的規格、在檢查前調整您套用至要求元件的文字轉換,或切換至使用轉送的 IP 位址。請參閱下導致問題的規則類型指引規則陳述式基礎

    修正更複雜的問題

    對於您無法控制的檢查準則以及某些複雜規則,您可能需要進行其他變更,例如新增明確允許或封鎖要求的規則,或是排除有問題規則的評估要求的規則。受管規則群組通常需要這種類型的緩和措施,但其他規則也可以。範例包括以速率為基礎的規則陳述式和 SQL 插入攻擊規則陳述式。

    你做什麼來減輕誤報取決於你的用例。以下是常見的方法:

    • [新增緩解規則] — 新增在新規則之前執行的規則,並明確允許造成誤判的要求。如需有關 Web ACL 中規則評估順序的資訊,請參閱Web ACL 中規則和規則群組的處理順序

      使用這種方法,允許的請求會發送到受保護的資源,因此它們永遠不會達到評估的新規則。如果新規則是付費受管規則群組,此方法也有助於控制使用規則群組的成本。

    • 增具有緩解規則的邏輯規則 — 使用邏輯規則陳述式將新規則與排除誤判的規則結合在一起。如需相關資訊,請參閱邏輯規則陳述式

      例如,假設您正在添加 SQL 注入攻擊 match 語句,該語句會為請求類別生成誤報。建立符合這些要求的規則,然後使用邏輯規則陳述式合併規則,讓您只比對兩者都不符合誤判準則且符合 SQL 插入攻擊準則的要求。

    • 新增範圍向下陳述式 — 對於以速率為基礎的陳述式和受管規則群組參考陳述式,請在 main 陳述式中新增範圍向下陳述式,從評估中排除產生誤報的要求。

      與範圍向下陳述式不符的要求永遠不會到達規則群組或以速率為基礎的評估。如需有關向下範圍陳述式的資訊,請參閱。範圍向下語句如需範例,請參閱從機器人管理中排除 IP 範圍

    • 新增標籤比對規則 — 對於使用標籤的規則群組,識別有問題的規則套用至請求的標籤。您可能需要先在計數模式中設定規則群組規則 (如果尚未設定)。新增標籤比對規則,定位為在規則群組之後執行,該規則與有問題的規則所新增的標籤相符。在標籤比對規則中,您可以從要封鎖的要求中篩選要允許的要求。

      如果您使用這種方法,當您完成測試時,請將有問題的規則保持在規則群組中的計數模式,並保持自訂標籤比對規則。如需標籤比對陳述式的資訊,請參閱標籤比對規則陳述式。如需範例,請參閱 允許特定的封鎖機器人可承諾量範例:遺失與遭到入侵之認證的自訂處

    • 變更受管規則群組的版本 — 對於版本控制的受管規則群組,變更您正在使用的版本。例如,您可以切換回上次成功使用的靜態版本。

      這通常是暫時的修正程式。您可以在測試或測試環境中繼續測試最新版本,或等待提供者提供更相容的版本時,變更生產流量的版本。如需受管規則群組版本的相關資訊,請參閱受管規則群組

如果您滿意新規則符合您需要的要求,請移至下一個測試階段,然後重複此程序。在生產環境中執行測試和調整的最後階段。