本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
架構概觀
本節提供使用此解決方案所部署元件的參考實作架構圖。
架構圖
使用預設參數部署此解決方案會在您的 AWS 帳戶中部署下列元件。
CloudFormation 範本會部署 AWS WAF 和其他 AWS 資源,以保護 Web 應用程式免受常見攻擊。

設計的核心是 AWS WAF
此解決方案的元件可以分組到下列保護區域。
注意
群組標籤不會反映 WAF 規則的優先順序層級。
-
AWS 受管規則 (A) - 此元件包含 AWS 受管規則 IP 評價規則群組、基準規則群組和使用案例特定規則群組。這些規則群組可防止利用常見的應用程式漏洞或其他不需要的流量,包括 OWASP
出版物中所述的流量,而不必撰寫自己的規則。 -
手動 IP 清單 (B 和 C) - 這些元件會建立兩個 AWS WAF 規則。透過這些規則,您可以手動插入要允許或拒絕的 IP 地址。您可以使用 Amazon EventBridge
規則和 Amazon DynamoDB ,在允許或拒絕的 IP 集上設定 IP 保留並移除過期的 IP 地址。如需詳細資訊,請參閱在允許和拒絕的 AWS WAF IP 集上設定 IP 保留。 -
SQL Injection (D) 和 XSS (E) - 這些元件會設定兩個 AWS WAF 規則,這些規則旨在防止 URI、查詢字串或請求內文中的常見 SQL Injection 或跨網站指令碼 (XSS) 模式。
-
HTTP 洪水 (F) - 此元件可防止來自特定 IP 地址的大量請求組成的攻擊,例如 Web 層 DDoS 攻擊或暴力登入嘗試。透過此規則,您可以設定配額,定義預設五分鐘期間內允許從單一 IP 地址傳入的請求數量上限 (可使用 Athena Query Run Time Schedule 參數設定)。超過此閾值後,會暫時封鎖來自 IP 地址的其他請求。您可以使用 AWS WAF 速率型規則,或使用 Lambda 函數或 Athena 查詢處理 AWS WAF 日誌,來實作此規則。如需 HTTP 洪水緩解選項相關權衡的詳細資訊,請參閱日誌剖析器選項。
-
掃描器和探查 (G) - 此元件會剖析搜尋可疑行為的應用程式存取日誌,例如原始伺服器產生的異常錯誤量。然後,它會在客戶定義的期間內封鎖這些可疑來源 IP 地址。您可以使用 Lambda
函數或 Athena 查詢實作此規則。如需掃描器和探查緩解選項相關權衡的詳細資訊,請參閱日誌剖析器選項。 -
IP 評價清單 (H) - 此元件是
IP Lists Parser
Lambda 函數,可每小時檢查第三方 IP 評價清單,以封鎖新範圍。這些清單包括 Spamhaus 不路由或對等 (DROP) 和延伸 DROP (EDROP) 清單、Proofpoint 潛在威脅 IP 清單,以及 Tor 結束節點清單。 -
錯誤機器人 (I) - 除了 Honeypot 機制之外,此元件還可以監控 Application Load Balancer (ALB) 或 Amazon CloudFront 的直接連線,藉此增強錯誤的機器人偵測。如果機器人繞過 Honeypot 並嘗試與 ALB 或 CloudFront 互動,系統會分析請求模式和日誌,以識別惡意活動。偵測到錯誤的機器人時,會擷取其 IP 地址並新增至 AWS WAF 封鎖清單,以防止進一步存取。錯誤的機器人偵測會透過結構化邏輯鏈運作,以確保全面的威脅涵蓋範圍:
-
HTTP 洪水防護 Lambda 日誌剖析器 – 在洪水分析期間從日誌項目收集錯誤的機器人 IPs。
-
掃描器和探查保護 Lambda 日誌剖析器 – 從掃描器相關的日誌項目識別錯誤的機器人 IPs。
-
HTTP 洪水防護 Athena 日誌剖析器 – 使用跨查詢執行的分割區,從 Athena 日誌擷取錯誤的機器人 IPs。
-
掃描器和探查保護 Athena 日誌剖析器 – 使用相同的分割策略,從掃描器相關的 Athena 日誌擷取錯誤的機器人 IPs。
-
備用偵測 – 如果同時停用 HTTP 洪水防護和掃描器與探查防護,系統會依賴 Log Lambda 剖析器,該剖析器會根據 WAF 標籤篩選條件記錄機器人活動。
-
此解決方案中的三個自訂 Lambda 函數都會將執行時間指標發佈至 CloudWatch。如需這些 Lambda 函數的詳細資訊,請參閱元件詳細資訊。