View a markdown version of this page

啟用滲透測試 - AWS 安全代理程式

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

啟用滲透測試

設定 AWS Security Agent 在您的應用程式上執行自動滲透測試。此設定可讓 AWS Security Agent 存取您的 AWS 資源、驗證網域擁有權,以及執行全面的安全測試,以識別 Web 應用程式和 APIs漏洞。

啟用滲透測試可讓 AWS Security Agent 持續驗證您的應用程式安全性,而不會延遲手動測試。透過設定必要的 AWS 整合,您可以確保 AWS Security Agent 可以測試公有和私有應用程式、將問題清單記錄到 CloudWatch,以及存取憑證以進行已驗證的測試。

在此程序中,您將設定目標網域、選擇性設定 VPC、CloudWatch 記錄、登入資料儲存和 Lambda 函數進行測試、設定 S3 整合以提供其他內容,以及透過 IAM 角色設定服務存取。

先決條件

開始前,請確保您具備以下條件:

  • 具有建立 IAM 角色管理許可的 AWS 帳戶

  • 網域擁有權驗證功能 (DNS 或 HTTP 記錄修改)

  • 要測試的目標網域或應用程式

  • (選用) 如果測試私有應用程式,則為 VPC 組態詳細資訊

  • (選用) 如果提供額外的成品給 AWS Security Agent,則為 S3 儲存貯體

步驟 1:設定網域

在精靈的第一個步驟中,指定您要測試的目標網域,以及 AWS Security Agent 應如何驗證擁有權。

  1. 目標網域區段中,在網域欄位中輸入您的網域

  2. 選取驗證方法

    • DNS_TXT – 將 TXT 記錄新增至網域的 DNS 組態,以驗證網域擁有權。

    • HTTP_ROUTE – 透過在網域上的特定 URL 託管驗證檔案來驗證網域擁有權。

    • PRIVATE_VPC - 僅適用於私有 VPC 滲透測試。驗證網域是否解析為私有 CIDR 範圍內的 IP

    • 如需詳細資訊,請參閱啟用用於滲透測試的應用程式網域

  3. 選擇新增另一個網域以新增其他網域 (最多總共 5 個)。

  4. 選擇下一步以繼續網域驗證。

步驟 2:驗證網域

在精靈的第二個步驟中,驗證您設定的每個網域的擁有權。AWS Security Agent 需要經過驗證的擁有權,才能執行滲透測試。

  1. 檢閱目標網域資料表中列出的網域

  2. 針對每個網域,選取它,並根據您選擇的方法觸發驗證:

    • Route 53 網域 (相同的 AWS 帳戶):選擇一鍵式驗證。AWS Security Agent 會自動建立 DNS 記錄並完成驗證。

    • DNS TXT (其他 DNS 供應商):複製驗證字符,使用 DNS 註冊商新增 TXT 記錄,然後選取網域,然後選擇驗證

    • HTTP 路由:將驗證字符放在 Web 伺服器上所需的路由路徑,然後選取網域,然後選擇驗證。如需詳細資訊,請參閱啟用用於滲透測試的應用程式網域

  3. 選擇下一步以繼續進行選用組態。

注意

使用 DNS TXT 或 HTTP 路由驗證時,已驗證網域的子網域不需要個別驗證。對於私有 VPC 驗證,目標端點網域名稱必須符合設定用於驗證的完整網域名稱。

注意

對於 VPC 內的私有網域,即使網域驗證狀態為不可存取,您也可以繼續。AWS Security Agent 將嘗試在每次五項測試執行開始時驗證私有端點的網域。

步驟 3:(選用) 設定其他功能

精靈的第三個步驟可讓您設定選用的 AWS 資源,以擴展滲透測試範圍。此步驟中的所有區段都是選用的,預設為收合。

(選用) 設定 VPC 設定

如果您打算測試 VPC 中託管的私有目標網域,請設定 AWS Security Agent 的 VPC 設定。本節是選用的,預設為收合。

  1. 展開 VPCs區段。

  2. VPC 下拉式清單中,選取託管私有目標網域的 VPC。

  3. 子網路下拉式清單中,選取 AWS Security Agent 應使用的 VPC 子網路:

    提示

    若要取得高可用性,請從多個可用區域選取多個子網路。確保您的子網路包含用於傳出連線的 NAT 閘道。

  4. 安全群組下拉式清單中,選取 AWS Security Agent 應使用的 VPC 安全群組:

    重要

    確保您的安全群組允許 AWS Security Agent 的傳出連線執行滲透測試。

(選用) 設定 CloudWatch 記錄

設定 CloudWatch 以存放滲透測試執行的日誌。本節是選用的,預設為收合。

  1. 展開 CloudWatch 日誌區段。

  2. 日誌群組下拉式清單中,選取現有的 CloudWatch 日誌群組

  3. 如果未選取任何日誌群組,AWS Security Agent 會建立名為 /aws/securityagent/<agent name>/<pentest id>且具有適當許可的日誌群組。

注意

確保您的 IAM 角色具有寫入所選 CloudWatch 日誌群組的許可。

(選用) 設定測試登入資料的秘密

如果您的應用程式需要身分驗證登入資料進行測試,AWS Security Agent 可以從 AWS Secrets Manager 安全地擷取登入資料。本節是選用的,預設為收合。

  1. 展開秘密區段。

  2. 選取包含應用程式登入資料的 AWS Secrets Manager 秘密。

  3. 在 Web 應用程式中設定滲透測試時,您可以參考這些秘密以進行已驗證的測試。

重要

登入資料會加密並儲存在 AWS Secrets Manager 中。確保您的 IAM 角色具有存取 Secrets Manager for AWS Security Agent 在測試期間使用這些登入資料的許可。

(選用) 設定測試登入資料的 Lambda 函數

設定可在測試期間為您的應用程式提供登入資料的 Lambda 函數。本節是選用的,預設為收合。

  1. 展開 Lambda 函數區段。

  2. 選取可為您的應用程式提供身分驗證憑證的 Lambda 函數。

  3. AWS Security Agent 會在滲透測試期間調用這些函數,以動態取得登入資料。

注意

確保您的 IAM 角色具有叫用指定 Lambda 函數的許可。Lambda 函數應以預期的格式傳回登入資料,以供 AWS Security Agent 在測試期間使用。

(選用) 設定 S3 儲存貯體

如果您打算上傳文件或成品以做為 AWS Security Agent 的輸入,請提供 S3 儲存貯體詳細資訊。本節是選用的,預設為收合。

  1. 展開 S3 儲存貯體區段。

  2. 儲存貯體欄位中,輸入或搜尋您的 S3 儲存貯體名稱。

注意

您也可以稍後連接 GitHub 儲存庫,或直接在 Web 應用程式中上傳檔案。提供的資訊可確保涵蓋範圍徹底、減少誤報,以及提供可行的結果。

(選用) 設定服務存取

AWS Security Agent 需要 IAM 角色才能存取您的 AWS 資源 (VPC、CloudWatch 日誌群組、Secrets Manager、Lambda 函數等) 以進行滲透測試。本節是選用的,預設為收合。

  1. 展開服務存取區段。

  2. 根據預設,AWS Security Agent 會使用具有滲透測試所需許可的預設 IAM 角色。

  3. 若要自訂 IAM 角色,請選取下列其中一個選項:

    1. 建立預設角色 – AWS Security Agent 會自動建立具有必要許可的新 IAM 角色

    2. 使用現有的服務角色 – 從下拉式選單中選取現有的 IAM 角色

  4. 如果使用現有角色:

    1. 選擇現有角色下的下拉式選單

    2. 從清單中選擇您的 IAM 角色

    3. 視需要選擇重新整理圖示以更新清單

注意

預設 IAM 角色包含存取 VPC 資源、CloudWatch 日誌群組、Secrets Manager、Lambda 函數和其他滲透測試所需服務的許可。建議您使用預設 IAM 角色,除非您有特定的安全需求。

步驟 4:儲存並啟用滲透測試

設定所有必要設定後,為您的 AWS Security Agent 代理程式啟用滲透測試。

  1. 檢閱所有組態區段以確保準確性。

  2. 選擇儲存

  3. AWS Security Agent 會驗證您的組態,並建立必要的 AWS 資源。

後續步驟

啟用滲透測試之後:

  • 在 AWS Security Agent Web 應用程式中設定滲透測試範圍

  • 設定測試問題清單的通知偏好設定

  • 檢閱並回應發現滲透測試結果的問題

  • (選用) 為問題清單修復設定其他儲存庫

如需執行和管理滲透測試的詳細資訊,請參閱 AWS Security Agent Web 應用程式文件。