入門 GuardDuty - Amazon GuardDuty

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

入門 GuardDuty

本教學課程提供 的實作簡介 GuardDuty。步驟 1 AWS Organizations 涵蓋 GuardDuty 了以獨立帳戶或以 GuardDuty 管理員身分啟用 的最低需求。步驟 2 到 5 涵蓋使用 建議的其他功能 GuardDuty ,以充分利用您的調查結果。

開始之前

GuardDuty 是一種威脅偵測服務,可監控GuardDuty 基礎資料來源 AWS CloudTrail 事件日誌、 AWS CloudTrail 管理事件、Amazon VPC Flow Logs 和DNS日誌。 GuardDuty 還僅在您單獨啟用它們時,分析與其保護類型相關聯的功能。功能包括 Kubernetes 稽核日誌、RDS登入活動、S3 日誌、EBS磁碟區、執行期監控和 Lambda 網路活動日誌。使用這些資料來源和功能 (如果已啟用),為您的 帳戶 GuardDuty 產生安全調查結果。

啟用 後 GuardDuty,它會開始監控您的環境。您可以隨時針對任何區域中的任何帳戶停用 GuardDuty 。這將 GuardDuty 停止處理基礎資料來源和單獨啟用的任何功能。

您不需要明確啟用任何GuardDuty 基礎資料來源。當您啟用 S3 保護時,您不需要明確啟用 Amazon S3 資料事件記錄。同樣地,當您啟用EKS保護時,您不需要明確啟用 Amazon EKS 稽核日誌。Amazon 直接從這些服務 GuardDuty 提取獨立的資料串流。對於新 GuardDuty 帳戶,預設 AWS 區域 會啟用 中支援的某些可用保護類型,並包含在 30 天免費試用期中。您可以選擇不啟用任何或所有保護類型。如果您現有的 AWS 帳戶 GuardDuty 已啟用,您可以選擇啟用您區域中任何或所有可用的保護計畫。如需保護計畫和預設啟用哪些保護計畫的概觀,請參閱 中的定價 GuardDuty

啟用 時 GuardDuty,請考慮下列項目:

  • GuardDuty 是一項區域服務,這表示您在此頁面上遵循的任何組態程序都必須在您要使用 監控的每個區域中重複執行 GuardDuty。

    強烈建議您在 GuardDuty 所有支援的 AWS 區域中啟用 。這可讓 GuardDuty 產生有關未經授權或異常活動的調查結果,即使在您未主動使用的區域中也是如此。這也 GuardDuty 可讓您監控全域 AWS 服務 AWS CloudTrail 的事件,例如 IAM。如果 GuardDuty 未在所有支援的區域中啟用,則偵測涉及全域服務的活動的能力會降低。如需 GuardDuty 可用區域的完整清單,請參閱 區域與端點

  • AWS 帳戶中具有管理員權限的任何使用者都可以啟用 GuardDuty,但是,遵循最低權限的安全性最佳實務,建議您建立IAM角色、使用者或群組以進行特別管理 GuardDuty。如需啟用所需許可的相關資訊, GuardDuty 請參閱 啟用 GuardDuty 的必要許可

  • 當您 GuardDuty 第一次在任何 中啟用 時 AWS 區域,預設也會啟用該區域支援的所有可用保護類型,包括 的惡意軟體防護EC2。 會為名為 的帳戶 GuardDuty 建立服務連結角色AWSServiceRoleForAmazonGuardDuty。此角色包含許可和信任政策, GuardDuty 允許 直接從 取用和分析事件,GuardDuty 基礎資料來源以產生安全調查結果。的惡意軟體防護會為您名為 的帳戶EC2建立另一個服務連結角色AWSServiceRoleForAmazonGuardDutyMalwareProtection。此角色包含許可和信任政策,允許惡意軟體防護EC2執行無代理程式掃描,以偵測您 GuardDuty 帳戶中的惡意軟體。它允許在您的帳戶中 GuardDuty 建立EBS磁碟區快照,並與 GuardDuty 服務帳戶共用該快照。如需詳細資訊,請參閱的服務連結角色許可 GuardDuty。如需有關服務連結角色的詳細資訊,請參閱使用服務連結角色

  • 當您在任何 區域中 GuardDuty 第一次啟用 時,您的帳戶 AWS 會自動註冊該區域的 30 天 GuardDuty 免費試用。

下列影片說明如何在多個成員帳戶中開始使用 GuardDuty 並啟用管理員帳戶。

步驟 1:啟用 Amazon GuardDuty

使用 的第一個步驟 GuardDuty 是在您的帳戶中啟用它。啟用後, GuardDuty 將立即開始監控目前區域中的安全威脅。

如果您想要以 GuardDuty 管理員身分管理組織中其他帳戶的 GuardDuty 調查結果,則必須新增成員帳戶,並 GuardDuty 為其啟用。

注意

如果您想要在未啟用 的情況下啟用 GuardDuty 惡意軟體保護 S3 GuardDuty,請參閱 以取得步驟GuardDuty S3 的惡意軟體防護

Standalone account environment
  1. 在 開啟 GuardDuty 主控台 https://console.aws.amazon.com/guardduty/

  2. 選取 Amazon GuardDuty - 所有功能選項。

  3. 選擇開始使用

  4. 歡迎加入 GuardDuty頁面上,檢視服務條款。選擇啟用 GuardDuty

Multi-account environment
重要

作為此程序的先決條件,您必須與您要管理的所有帳戶位於同一個組織中,並有權存取 AWS Organizations 管理帳戶,以便在 GuardDuty 組織中委派管理員。委派管理員時可能需要其他許可,如需詳細資訊,請參閱指定委派 GuardDuty 管理員帳戶所需的許可

指定委派的 GuardDuty 管理員帳戶

  1. https://console.aws.amazon.com/organizations/使用 管理帳戶在 開啟 AWS Organizations 主控台。

  2. 在 開啟 GuardDuty 主控台https://console.aws.amazon.com/guardduty/

    您的帳戶中是否 GuardDuty 已啟用 ?

    • 如果 GuardDuty 尚未啟用,您可以選擇開始使用,然後在歡迎加入 GuardDuty頁面上指定 GuardDuty 委派管理員。

    • 如果 GuardDuty 已啟用,您可以在設定頁面上指定 GuardDuty 委派管理員。

  3. 輸入您要指定為組織 GuardDuty 委派管理員之帳戶的十二位數 AWS 帳戶 ID,然後選擇委派

    注意

    如果 GuardDuty 尚未啟用,則指定委派管理員將在您目前的區域中 GuardDuty 為該帳戶啟用 。

新增成員帳戶

此程序涵蓋透過 將成員帳戶新增至 GuardDuty 委派的管理員帳戶 AWS Organizations。此外,也有透過邀請新增成員的選項。若要進一步了解在 中關聯成員的這兩種方法 GuardDuty,請參閱 Amazon 中的多個帳戶 GuardDuty

  1. 登入委派管理員帳戶

  2. 在 開啟 GuardDuty 主控台https://console.aws.amazon.com/guardduty/

  3. 在導覽窗格中,選擇設定,然後選擇帳戶

    帳戶資料表會顯示組織中的所有帳戶。

  4. 選取帳戶 ID 旁邊的方塊,以選擇您要新增為成員的帳戶。然後從動作選單中選取新增成員

    提示

    您可以開啟自動啟用功能,自動將新帳戶新增為成員;不過,這僅適用於在啟用該功能之後加入組織的帳戶。

步驟 2:產生範例調查結果並探索基本操作

當 GuardDuty 發現安全問題時,會產生調查結果。 GuardDuty 調查結果是資料集,其中包含與該唯一安全問題相關的詳細資訊。調查結果的詳細資訊可用來協助您調查問題。

GuardDuty 支援產生具有預留位置值的範例調查結果,可用於測試 GuardDuty 功能,並在需要回應 發現的真正安全問題之前熟悉調查結果 GuardDuty。請遵循下列指南,為 中提供的每個調查結果類型產生範例調查結果 GuardDuty,如需產生範例調查結果的其他方法,包括在您的帳戶中產生模擬安全事件,請參閱 範例問題清單

建立和探索範例調查結果

  1. 在導覽窗格中,選擇設定

  2. 設定頁面的調查結果範例下,選擇產生調查結果範例

  3. 在導覽窗格中,選擇摘要以檢視您 AWS 環境中產生之調查結果的洞察。如需有關「摘要」儀表板中元件的詳細資訊,請參閱Amazon 中的摘要儀表板 GuardDuty

  4. 在導覽窗格中,選擇調查結果。範例調查結果會以字首 【SAMPLE】 顯示在目前調查結果頁面上。

  5. 從清單中選取一個調查結果,以顯示該調查結果的詳細資訊。

    1. 您可以檢閱調查結果詳細資訊窗格中的不同資訊欄位。不同類型的調查結果可以有不同的欄位。如需有關所有調查結果類型中可用欄位的詳細資訊,請參閱調查結果詳細資訊。您可以從詳細資訊窗格執行下列動作:

      • 選取窗格頂端的調查結果 ID,以開啟調查結果的完整JSON詳細資訊。也可以從此面板下載完整的JSON檔案。JSON 包含一些不包含在主控台檢視中的額外資訊,是其他工具和服務的擷取格式。

      • 檢視受影響的資源區段。在實際調查結果中,此處的資訊將協助您識別帳戶中應調查的資源,並將包含 AWS Management Console 適當可操作資源的連結。

      • 選取 + 或 - 鏡子圖示,為該詳細資訊建立包含或排除篩選條件。如需有關調查結果篩選條件的詳細資訊,請參閱在 中檢視篩選的結果 GuardDuty

  6. 封存您的所有範例調查結果

    1. 選取清單頂端的核取方塊,以選取所有調查結果。

    2. 取消選取要保留的任何調查結果。

    3. 選取動作選單,然後選取封存以隱藏範例調查結果。

      注意

      若要檢視已封存的調查結果,請依次選取目前已封存,以切換調查結果檢視。

步驟 3:設定將 GuardDuty 調查結果匯出至 Amazon S3 儲存貯體

GuardDuty 建議設定 設定以匯出調查結果,因為它允許您將調查結果匯出到 S3 儲存貯體,以無限期儲存超過 GuardDuty 90 天保留期。這可讓您保留調查結果的記錄,或 AWS 追蹤環境中的問題。此處概述的程序會逐步引導您設定新的 S3 儲存貯體,並建立新的KMS金鑰,以加密主控台內的調查結果。如需相關詳細資訊,包括如何使用自己現有的儲存貯體或其他帳戶中的儲存貯體,請參閱將產生的調查結果匯出至 Amazon S3

設定 S3 匯出調查結果選項
  1. 若要加密調查結果,您需要具有允許 GuardDuty 使用該KMS金鑰進行加密之政策的金鑰。下列步驟將協助您建立新的KMS金鑰。如果您使用來自另一個帳戶的KMS金鑰,您需要登入 AWS 帳戶 擁有金鑰的 來套用金鑰政策。KMS 金鑰和 S3 儲存貯體的區域必須相同。不過,您可以針對要匯出調查結果的每個區域,使用此相同的儲存貯體和金鑰對。

    1. https://console.aws.amazon.com/kms 開啟 AWS KMS 主控台。

    2. 若要變更 AWS 區域,請使用頁面右上角的區域選擇器。

    3. 在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。

    4. 選擇建立金鑰

    5. 金鑰類型下選擇對稱,然後選擇下一步

      注意

      如需建立KMS金鑰的詳細步驟,請參閱 AWS Key Management Service 開發人員指南 中的建立金鑰

    6. 提供金鑰的別名,然後選擇下一步

    7. 選擇下一步,然後再次選擇下一步以接受預設的管理和使用許可。

    8. 檢閱組態後,選擇完成來建立金鑰。

    9. 客戶自管金鑰頁面上,選擇您的金鑰別名。

    10. 金鑰政策索引標籤中,選擇切換為政策檢視

    11. 選擇編輯,並將下列金鑰政策新增至您的KMS金鑰,授予對金鑰的 GuardDuty 存取權。此陳述式僅允許 GuardDuty 使用您新增此政策的金鑰。編輯金鑰政策時,請確定JSON語法有效。如果您在最終陳述式之前新增陳述式,則必須在右括號後加上逗號。

      { "Sid": "AllowGuardDutyKey", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "kms:GenerateDataKey", "Resource": "arn:aws:kms:Region1:444455556666:key/KMSKeyId", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn:aws:guardduty:Region2:111122223333:detector/SourceDetectorID" } } }

      Replace (取代) Region1 金鑰的區域KMS。Replace (取代) 444455556666 擁有 KMS金鑰 AWS 帳戶 的 。Replace (取代) KMSKeyId 您為加密選擇之金鑰的KMS金鑰 ID。若要識別所有這些值 – 區域 AWS 帳戶和金鑰 ID,請檢視KMS金鑰ARN的 。若要尋找金鑰 ARN,請參閱尋找金鑰 ID 和 ARN

      同樣地,請取代 111122223333 帳戶的 AWS 帳戶 GuardDuty 。Replace (取代) Region2 帳戶 GuardDuty的區域。Replace (取代) SourceDetectorID 具有 GuardDuty 帳戶的偵測器 ID Region2.

      若要尋找detectorId您帳戶和目前區域的 ,請參閱https://console.aws.amazon.com/guardduty/主控台中的設定頁面,或執行 ListDetectors API.

    12. 選擇 Save (儲存)。

  2. 在 開啟 GuardDuty 主控台https://console.aws.amazon.com/guardduty/

  3. 在導覽窗格中,選擇設定

  4. 調查結果匯出選項下,選擇立即設定

  5. 選擇新儲存貯體。提供 S3 儲存貯體的唯一名稱。

  6. (選用) 您可以透過產生範例調查結果來測試新的匯出設定。在導覽窗格中,選擇設定

  7. 範例調查結果下,選擇產生範例調查結果。新的範例調查結果會在最多五分鐘 GuardDuty 內顯示為由 建立的 S3 儲存貯體中的項目。

步驟 4:透過 設定 GuardDuty 調查結果提醒 SNS

GuardDuty 與 Amazon 整合 EventBridge,可用於將調查結果資料傳送至其他應用程式和服務進行處理。透過 EventBridge ,您可以使用 GuardDuty 調查結果,將調查結果事件連接至 AWS Lambda 函數、Amazon EC2 Systems Manager 自動化、Amazon Simple Notification Service (SNS) 等目標,以啟動對調查結果的自動回應。

在此範例中,您將建立SNS主題作為 EventBridge 規則的目標,然後您將使用 EventBridge 建立規則,從 擷取調查結果資料 GuardDuty。產生的規則會將調查結果詳細資訊轉寄至某個電子郵件地址。若要了解如何將調查結果傳送至 Slack 或 Amazon Chime,以及如何修改傳送的調查結果提醒類型,請參閱設定 Amazon SNS主題和端點

為您的調查結果提醒建立SNS主題

  1. https://console.aws.amazon.com/sns/v3/home 開啟 Amazon SNS主控台。

  2. 在導覽窗格中,選擇主題

  3. 選擇建立主題

  4. 針對類型,選取標準

  5. 對於名稱,輸入 GuardDuty

  6. 選擇建立主題。新主題的主題詳細資訊隨即開啟。

  7. 訂閱區段中,選擇建立訂閱

  8. 對於通訊協定,選擇電子郵件

  9. 對於端點,輸入將通知傳送到的收件電子郵件地址。

  10. 選擇 Create subscription (建立訂閱)。

    建立訂閱後,您必須透過電子郵件確認訂閱。

  11. 若要檢查訂閱訊息,請前往您的電子郵件收件匣,然後在訂閱訊息中選擇確認訂閱

    注意

    若要檢查電子郵件確認狀態,請前往SNS主控台並選擇訂閱

建立 EventBridge 規則以擷取 GuardDuty 調查結果並將其格式化

  1. 在 開啟 EventBridge 主控台https://console.aws.amazon.com/events/

  2. 在導覽窗格中,選擇規則

  3. 選擇建立規則

  4. 輸入規則的名稱和描述。

    在同一個區域和同一個事件匯流排上,規則不能與另一個規則同名。

  5. 針對事件匯流排選擇預設值

  6. 針對規則類型選擇具有事件模式的規則

  7. 選擇下一步

  8. 事件來源,選擇 AWS 事件

  9. 針對事件模式,選擇事件模式表單

  10. 事件來源欄位中,選擇 AWS 服務

  11. AWS 服務中選擇 GuardDuty

  12. 針對事件類型 ,選擇GuardDuty尋找

  13. 選擇 Next (下一步)

  14. 目標類型欄位中,選擇 AWS 服務

  15. 針對選取目標 ,選擇SNS主題 ,針對主題 ,選擇您先前建立SNS的主題名稱。

  16. 其他設定區段中,針對設定目標輸入,選擇輸入轉換器

    新增輸入轉換器會將從 傳送的JSON調查結果資料格式化 GuardDuty 為人類可讀取的訊息。

  17. 選擇設定輸入轉換器

  18. 目標輸入轉換器區段中,針對輸入路徑,貼上下列程式碼:

    { "severity": "$.detail.severity", "Finding_ID": "$.detail.id", "Finding_Type": "$.detail.type", "region": "$.region", "Finding_description": "$.detail.description" }
  19. 若要格式化電子郵件,請在範本 中貼上下列程式碼,並確定將紅色文字取代為您的區域適用的值:

    "You have a severity severity GuardDuty finding type Finding_Type in the Region_Name Region." "Finding Description:" "Finding_Description." "For more details open the GuardDuty console at https://console.aws.amazon.com/guardduty/home?region=region#/findings?search=id%3DFinding_ID"
  20. 選擇確認

  21. 選擇 Next (下一步)

  22. (選用) 為規則輸入一或多個標籤。如需詳細資訊,請參閱 Amazon 使用者指南 中的 Amazon EventBridge 標籤 EventBridge

  23. 選擇 Next (下一步)

  24. 檢閱規則的詳細資訊,然後選擇建立規則

  25. (選用) 使用步驟 2 中的程序產生範例調查結果,以測試新規則。您將收到每個產生的範例調查結果的電子郵件。

後續步驟

當您繼續使用 時 GuardDuty,您將了解與您環境相關的調查結果類型。每當收到新調查結果時,您都可以從調查結果詳細資訊窗格中的調查結果說明中,選取進一步了解,或在 GuardDuty 調查結果類型 中搜尋調查結果名稱,以尋找資訊,包括有關該調查結果的修復建議。

下列功能可協助您調校, GuardDuty 以便為您的 AWS 環境提供最相關的調查結果:

  • 若要根據特定條件輕鬆排序調查結果,例如執行個體 ID、帳戶 ID、S3 儲存貯體名稱等,您可以在 中建立並儲存篩選條件 GuardDuty。如需詳細資訊,請參閱在 中檢視篩選的結果 GuardDuty

  • 如果您收到環境中預期行為的調查結果,您可以根據使用隱藏規則定義的條件,自動將調查結果封存。

  • 若要防止調查結果從受信任 的子集產生IPs,或要在正常監控範圍IPs之外進行 GuardDuty 監控,您可以設定受信任 IP 和威脅清單