匯出調查結果 - Amazon GuardDuty

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

匯出調查結果

GuardDuty 保留產生的發現項目為期 90 天。 GuardDuty 將活動發現導出到 Amazon EventBridge (EventBridge)。您可以選擇將產生的發現結果匯出到 Amazon Simple Storage Service (Amazon S3) 儲存貯體。這可協助您追蹤帳戶中潛在可疑活動的歷史資料,並評估建議的補救步驟是否成功。

GuardDuty 產生的任何新作用中發現項目會在產生搜尋結果後約 5 分鐘內自動匯出。您可以設定匯出使用中發現項目的更新頻率 EventBridge。您選取的頻率適用於將現有發現項目的新發現項目匯出至 EventBridge、S3 儲存貯體 (設定時) 和 Detective (整合時)。如需如何 GuardDuty 彙總多個現有發現項目的相關資訊,請參閱GuardDuty 尋找彙總

當您設定設定以將發現項目匯出到 Amazon S3 儲存貯體時,請 GuardDuty 使用 AWS Key Management Service (AWS KMS) 來加密 S3 儲存貯體中的發現項目資料。這需要您將許可新增到 S3 儲存貯體和 AWS KMS 金鑰, GuardDuty 以便使用它們匯出帳戶中的發現項目。

考量事項

繼續匯出發現項目的先決條件和步驟之前,請考慮下列主要概念:

  • 匯出設定為區域性 — 您必須在使用的每個區域中設定匯出選項 GuardDuty。

  • 將發現項目匯出到不同 AWS 區域 (跨區域) 的 Amazon S3 儲存貯體 — GuardDuty 支援下列匯出設定:

    • 您的 Amazon S3 儲存貯體或物件和 AWS KMS 金鑰必須屬於同一個儲存貯體或物件 AWS 區域。

    • 對於在商業區域產生的發現項目,您可以選擇將這些發現項目匯出到任何商業區域的 S3 儲存貯體。但是,您無法將這些發現項目匯出到選擇加入區域中的 S3 儲存貯體。

    • 對於在選擇加入區域中產生的發現項目,您可以選擇將這些搜尋結果匯出至產生這些搜尋結果的相同選擇加入區域或任何商業區域。但是,您無法將搜尋結果從一個選擇加入的區域匯出到另一個選擇加入區域。

  • 匯出發現項目的權限 — 若要設定匯出作用中發現項目的設定,S3 儲存貯體必須具有允許 GuardDuty 上傳物件的許可。您也必須擁有 GuardDuty 可用來加密發現項目的 AWS KMS 金鑰。

  • 不會匯出已封存的發現項目 — 預設行為是不會匯出已封存的發現項目 (包括隱藏發現項目的新例項)。

    當 GuardDuty 發現項目產生為「已封存」時,您需要將其取消封存。這會將 [篩選器] 尋找狀態變更為 [使用中 GuardDuty 會根據您設定步驟 5 — 匯出發現項目的頻率的方式,將更新匯出至現有未封存的發現項目。

  • GuardDuty 管理員帳戶可以匯出關聯成員帳戶中產生的發現項目 — 當您在管理員帳戶中設定匯出發現項目時,在相同區域中產生的關聯成員帳戶中的所有發現項目也會匯出至您為管理員帳戶設定的相同位置。如需詳細資訊,請參閱 了解管理員帳戶和成 GuardDuty 員帳戶之間的關係

步驟 1 — 匯出發現項目所需的權限

設定匯出發現項目的設定時,您可以選取 Amazon S3 儲存貯體,您可以在其中存放發現項目和用於資料加密的 AWS KMS 金鑰。除了 GuardDuty 動作的權限之外,您還必須擁有下列動作的權限,才能成功設定匯出發現項目的設定:

  • s3:GetBucketLocation

  • s3:PutObject

  • s3:ListBucket

步驟 2 — 將政策附加到您的 KMS 金鑰

GuardDuty 使 AWS Key Management Service用加密值區中的發現項目資料。若要成功設定,您必須先授與使用 KMS 金鑰的 GuardDuty 權限。您可以透過將政策連接至 KMS 金鑰來授予許可。

當您使用其他帳戶的 KMS 金鑰時,您需要登入擁有 AWS 帳戶 該金鑰的金鑰來套用金鑰原則。當您設定匯出發現項目的設定時,您也需要擁有金鑰的帳戶中的金鑰 ARN。

修改用 GuardDuty 於加密匯出發現項目的 KMS 金鑰原則
  1. 開啟主 AWS KMS 控台,網址為 https://console.aws.amazon.com/kms

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

  3. AWS Key Management Service 開發人員指南中選取現有的 KMS 金鑰或執行步驟以建立新金鑰,您將使用該金鑰來加密匯出的發現項目。

    注意

    您 AWS 區域 的 KMS 金鑰和 Amazon S3 儲存貯體必須相同。

    您可以使用相同的 S3 儲存貯體和 KMS key pair,從任何適用的區域匯出發現項目。如需詳細資訊,請參閱跨區域匯考量事項出發現項目的資訊。

  4. Key policy (金鑰政策) 區段中,選擇 Edit (編輯)。

    如果顯示 [切換至原則檢視],請選擇它來顯示 [金鑰] 原則,然後選擇 [編輯]。

  5. 將下列原則區塊複製到您的 KMS 金鑰原則,以授與使用金鑰的 GuardDuty 權限。

    { "Sid": "AllowGuardDutyKey", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "kms:GenerateDataKey", "Resource": "KMS key ARN", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }
  6. 透過取代下列在策略範例中以紅色格式化的值來編輯策略:

    1. KMS 金鑰 ARN 取代為 KMS 金鑰的 Amazon 資源名稱 (ARN)。若要找出金鑰 ARN,請參閱AWS Key Management Service 開發人員指南中的尋找金鑰 ID 和 ARN

    2. 123456789012 取代為擁有匯出發現項目之 AWS 帳戶 帳戶的識別碼。 GuardDuty

    3. Region 2 取代為產生 GuardDuty 發現項目的 AWS 區域 位置。

    4. SourceDetectorID 取代為產生發現項目之特定區域中 GuardDuty 帳戶detectorID的 ID。

      要查找您detectorId的帳戶和當前區域的,請參閱 https://console.aws.amazon.com/guardduty/ 控制台中的 「設置」 頁面,或運行 ListDetectorsAPI

    注意

    如果您 GuardDuty 在選擇加入的區域中使用,請將「服務」的值取代為該區域的區域端點。例如,如果您 GuardDuty 在中東(巴林)(me-south-1)區域中使用,請替換"Service": "guardduty.amazonaws.com"為. "Service": "guardduty.me-south-1.amazonaws.com" 如需每個選擇加入區域之端點的相關資訊,請參閱GuardDuty 端點和配額

  7. 如果您在最終陳述式之前加入政策陳述式,請在新增此陳述式之前加上逗號。請確定 KMS 金鑰原則的 JSON 語法有效。

    選擇儲存

  8. (選擇性) 將金鑰 ARN 複製到記事本,以便在稍後的步驟中使用。

步驟 3 — 將政策附加到 Amazon S3 存儲桶

將許可新增至要匯出發現項目的 Amazon S3 儲存貯體, GuardDuty 以便將物件上傳到此 S3 儲存貯體。與使用屬於您帳戶或其他帳戶的 Amazon S3 儲存貯體無關 AWS 帳戶,您必須新增這些許可。

如果您決定在任何時間點將發現項目匯出到不同的 S3 儲存貯體,則若要繼續匯出發現項目,您必須將許可新增至該 S3 儲存貯體,然後再次設定匯出發現項目設定。

如果您還沒有要匯出這些發現項目的 Amazon S3 儲存貯體,請參閱 Amazon S3 使用者指南中的建立儲存貯體。

將許可附加到 S3 儲存貯體政策

  1. 執行 Amazon S3 使用者指南建立或編輯儲存貯體政策下的步驟,直到出現「編輯儲存貯體政策」頁面為止。

  2. 範例政策顯示如何 GuardDuty 授與將發現結果匯出到 Amazon S3 儲存貯體的權限。如果您在設定匯出發現項目之後變更路徑,則必須修改原則以授與新位置的權限。

    複製下列範例政策,並將其貼到值區政策編輯器中。

    如果您在最終陳述式之前加入政策陳述式,請在新增此陳述式之前加上逗號。請確定 KMS 金鑰原則的 JSON 語法有效。

    S3 儲存貯體範例政策

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGuardDutygetBucketLocation", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": "Amazon S3 bucket ARN", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }, { "Sid": "AllowGuardDutyPutObject", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }, { "Sid": "DenyUnencryptedUploadsThis is optional", "Effect": "Deny", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "aws:kms" } } }, { "Sid": "DenyIncorrectHeaderThis is optional", "Effect": "Deny", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption-aws-kms-key-id": "KMS key ARN" } } }, { "Sid": "DenyNon-HTTPS", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "Bool": { "aws:SecureTransport": "false" } } } ] }
  3. 透過取代下列在策略範例中以紅色格式化的值來編輯策略:

    1. Amazon S3 儲存貯體 ARN 取代為 Amazon S3 儲存貯體的亞馬遜資源名稱 (ARN)。您可以在 https://console.aws.amazon.com/s3/ 主控台的 「編輯值區政策」頁面上找到「儲存貯體 ARN」。

    2. 123456789012 取代為擁有匯出發現項目之 AWS 帳戶 帳戶的識別碼。 GuardDuty

    3. Region 2 取代為產生 GuardDuty 發現項目的 AWS 區域 位置。

    4. SourceDetectorID 取代為產生發現項目之特定區域中 GuardDuty 帳戶detectorID的 ID。

      要查找您detectorId的帳戶和當前區域的,請參閱 https://console.aws.amazon.com/guardduty/ 控制台中的 「設置」 頁面,或運行 ListDetectorsAPI

    5. S3 儲存貯體 ARN/ [選用前綴] 預留位置值的 [選用前綴] 部分取代為您要匯出發現項目的選用資料夾位置。如需有關使用前置詞的詳細資訊,請參閱 Amazon S3 使用者指南中的使用前置詞組織物件

      當您提供不存在的選用資料夾位置時,只有在與 S3 儲存貯體關聯的帳戶與匯出發現項目的帳戶相同時,才 GuardDuty會建立該位置。當您將發現項目匯出到屬於另一個帳戶的 S3 儲存貯體時,資料夾位置必須已存在。

    6. KMS 金鑰 ARN 取代為與匯出至 S3 儲存貯體的發現項目加密相關聯的 KMS 金鑰的 Amazon 資源名稱 (ARN)。若要找出金鑰 ARN,請參閱AWS Key Management Service 開發人員指南中的尋找金鑰 ID 和 ARN

    注意

    如果您 GuardDuty 在選擇加入的區域中使用,請將「服務」的值取代為該區域的區域端點。例如,如果您 GuardDuty 在中東(巴林)(me-south-1)區域中使用,請替換"Service": "guardduty.amazonaws.com"為. "Service": "guardduty.me-south-1.amazonaws.com" 如需每個選擇加入區域之端點的相關資訊,請參閱GuardDuty 端點和配額

  4. 選擇儲存

步驟 4-將發現結果導出到 S3 存儲桶(控制台)

GuardDuty 允許您將發現結果匯出至另一個儲存貯體中的現有值區 AWS 帳戶。

建立新的 S3 儲存貯體或選擇帳戶中的現有儲存貯體時,您可以新增選用的前置詞。設定匯出發現項目時,請在 S3 儲存貯體中為您的發現項目 GuardDuty 建立新資料夾。字首將附加至建立的預設資料 GuardDuty 夾結構。例如,可選前綴的格式/AWSLogs/123456789012/GuardDuty/Region

S3 物件的整個路徑將是DOC-EXAMPLE-BUCKET/prefix-name/UUID.jsonl.gzUUID是隨機產生的,不代表偵測器 ID 或尋找 ID。

重要

KMS 金鑰和 S3 儲存貯體必須位於同一區域。

在完成這些步驟之前,請確定已將個別政策附加到 KMS 金鑰和現有 S3 儲存貯體。

設定匯出發現項目
  1. 開啟主 GuardDuty 控台,網址為 https://console.aws.amazon.com/guardduty/

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

  3. [設定] 頁面的 [發現項目匯出選項] 下,對於 S3 儲存貯體,選擇 [立即設定] (或視需要編輯)。

  4. 對於 S3 儲存貯體 ARN,請輸入bucket ARN. 若要尋找儲存貯體 ARN,請參閱 Amazon S3 使用者指南中的檢視 S3 儲存貯體的屬性。在 https://console.aws.amazon.com/guardduty/ 主控台中相關值區「內容」頁面的「權限」索引標籤中。

  5. 對於 KMS 金鑰 ARN,請輸入 key ARN. 若要找出金鑰 ARN,請參閱AWS Key Management Service 開發人員指南中的尋找金鑰 ID 和 ARN

  6. 附加策略
  7. 選擇 Save (儲存)。

步驟 5 — 設定匯出更新的使用中發現項目的頻率

視您的環境設定匯出更新作用中發現項目的頻率。根據預設,每 6 小時匯出更新的問題清單。這表示任何在最近一次匯出之後更新的問題清單都會包含在下一個的匯出中。如果每 6 小時匯出更新的問題清單,且匯出在 12:00 進行,則您在 12:00 之後更新的任何問題清單都會在 18:00 匯出。

設定頻率
  1. 開啟主 GuardDuty 控台,網址為 https://console.aws.amazon.com/guardduty/

  2. 選擇設定

  3. 調查結果匯出選項區段中,選擇更新後的調查結果的頻率。這會設定將更新的作用中發現項目匯出至 EventBridge 和 Amazon S3 的頻率。您可以選擇下列項目:

    • 每 15 分鐘更新一次 EventBridge 和 S3

    • 每 1 EventBridge 小時更新一次 S3

    • Update CWE and S3 every 6 hours (default) (每 6 小時更新 CWE 和 S3 (預設值))

  4. 選擇儲存變更