從 Amazon Inspector 匯出發現報告 - Amazon Inspector

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

從 Amazon Inspector 匯出發現報告

您可以將發現結果匯出到 Amazon EventBridge AWS Security Hub,但也可以將發現結果匯出到 Amazon Simple Storage Service (Amazon S3) 儲存貯體作為發現報告。發現項目報告是 CSV 或 JSON 檔案,可在特定時間點提供發現項目的詳細快照。如需詳細資訊,請參閱了解 Amazon Inspector 中的發現項目

設定發現項目報告時,您可以指定要包含在發現項目報告中的發現項目。根據預設,Amazon Inspector 會包含目前 AWS 區域 狀態為「用中」狀態的所有發現項目資料。如果您是組織委派的 Amazon Inspector 管理員,Amazon Inspector 會包含組織中所有成員帳戶的發現項目資料。

您可以建立並套用篩選條件,以自訂您的發現項目報告。建立篩選器時,您可以決定要在發現項目報告中包含哪些發現項目資料。如需詳細資訊,請參閱篩選 Amazon Inspector 發現項目

注意

根據預設,當您使用 CreateFindingsReportAPI 匯出發現項目報告時,您只能檢視作用中的發現項目。如果您要檢視隱藏已關閉的發現項目,您必須指定SUPPRESSEDCLOSED作為 API 篩選條件的值。

當您匯出發現結果報告時,Amazon Inspector 會使用您指定的 AWS Key Management Service (AWS KMS) 金鑰加密資料,並將報告新增至您指定的 Amazon S3 儲存貯體。 AWS KMS 金鑰必須是對稱加密金鑰,而且金 AWS KMS 鑰政策必須允許 Amazon Inspector 使用金鑰。 AWS KMS 金鑰和 Amazon S3 儲存貯體必須在同一個儲存貯體中使用 AWS 區域,而且 Amazon S3 儲存貯體政策必須允許 Amazon Inspector 將物件新增至 Amazon S3 儲存貯體。

Amazon Inspector 加密並存放您的發現結果報告後,您可以從 Amazon S3 儲存貯體下載發現報告,或將發現報告傳輸到新位置。您可以選擇將發現報告保留在同一個 Amazon S3 儲存貯體中,以便將 Amazon S3 儲存貯體用作其他發現報告的儲存庫,供您隨後匯出的其他發現項目報告使用。

本主題說明如何使用匯 AWS Management Console 出發現項目報告。此程序包括驗證您擁有必要的權限、設定資源,以及匯出發現項目報告。

注意

您一次只能匯出一個發現項目報告。如果匯出目前正在進行中,您必須等到匯出完成,才能匯出其他發現項目報告。

第一次匯出發現項目報告之後,步驟 1—3 是選擇性的。遵循這些步驟是根據您是否要使用相同的 S3 儲存貯體以及後續 AWS KMS key 發現項目報告而定。如果您想要在完成步驟 1 到 3 之後以程式設計方式匯出發現結果報告,請使用 Amazon Inspector API 的CreateFindingsReport操作。

步驟 1:驗證您的權限

從 Amazon Inspector 匯出發現項目報告之前,請確認您具有匯出發現項目報告和設定資源以加密和存放報告所需的許可。若要驗證您的許可,請使用 AWS Identity and Access Management (IAM) 檢閱附加到 IAM 身分的 IAM 政策。然後將這些策略中的資訊與下列您必須被允許執行的動作清單進行比較,才能匯出發現項目報告。

Amazon Inspector

對於 Amazon Inspector,請確認您是否允許執行下列動作:

  • inspector2:ListFindings

  • inspector2:CreateFindingsReport

這些動作可讓您擷取帳戶的發現項目資料,並將該資料匯出到發現項目報告中。

如果您打算以程式設計方式匯出大型報表,您也可以確認您是否允許執行下列動作:inspector2:GetFindingsReportStatus、檢查報表的狀態inspector2:CancelFindingsReport,以及取消進行中的匯出。

AWS KMS

對於 AWS KMS,請確認您是否被允許執行下列動作:

  • kms:GetKeyPolicy

  • kms:PutKeyPolicy

這些動作可讓您擷取和更新您希望 Amazon Inspector 用來加密報告的金鑰政策。 AWS KMS key

若要使用 Amazon Inspector 主控台匯出報告,請確認您是否可以執行下列 AWS KMS 動作:

  • kms:DescribeKey

  • kms:ListAliases

這些動作可讓您擷取和顯示您帳戶 AWS KMS keys 的相關資訊。然後,您可以選擇其中一個金鑰來加密報表。

如果您打算建立新的 KMS 金鑰來加密報表,您也需要被允許執行kms:CreateKey動作。

Amazon Simple Storage Service (Amazon S3)

對於 Amazon S3,請確認您是否允許執行下列動作:

  • s3:CreateBucket

  • s3:DeleteObject

  • s3:PutBucketAcl

  • s3:PutBucketPolicy

  • s3:PutBucketPublicAccessBlock

  • s3:PutObject

  • s3:PutObjectAcl

這些動作可讓您建立和設定您希望 Amazon Inspector 存放報表的 S3 儲存貯體。它們也可讓您從值區新增和刪除物件。

如果您打算使用 Amazon Inspector 主控台匯出報告,請確認您是否可以執行s3:ListAllMyBucketss3:GetBucketLocation動作。這些動作可讓您擷取和顯示帳戶 S3 儲存貯體的相關資訊。然後,您可以選擇其中一個值區來儲存報表。

如果您無法執行一或多個必要動作,請在繼續執行下一個步驟之前,向 AWS 管理員尋求協助。

步驟 2:設定 S3 儲存貯體

驗證許可後,您就可以設定要在其中存放發現結果報告的 S3 儲存貯體。它可以是您自己帳戶的現有值區,也可以是另一個帳戶所擁有 AWS 帳戶 且您可以存取的現有值區。如果您想要將報告儲存在新值區中,請先建立值區,然後再繼續。

S3 儲存貯體必須與 AWS 區域 您要匯出的發現項目資料相同。例如,如果您在美國東部 (維吉尼亞北部) 區域使用 Amazon Inspector,並且想要匯出該區域的發現項目資料,則該值區也必須位於美國東部 (維吉尼亞北部) 區域。

此外,儲存貯體的政策必須允許 Amazon Inspector 將物件新增至儲存貯體。本主題說明如何更新值區政策,並提供要新增至政策的陳述式範例。如需新增和更新儲存貯體政策的詳細資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用儲存貯體政策。

如果您想要將報告存放在另一個帳戶擁有的 S3 儲存貯體中,請與儲存貯體的擁有者合作更新儲存貯體的政策。同時取得值區的 URI。匯出報表時,您必須輸入此 URI。

若要更新值區政策
  1. 使用您的登入資料登入,然後開啟 Amazon S3 主控台,網址為 https://console.aws.amazon.com/s3

  2. 在導覽窗格中,選擇 儲存貯體

  3. 選擇您要存放發現結果報告的 S3 儲存貯體。

  4. 選擇許可索引標籤標籤。

  5. 儲存貯體政策區段中,選擇編輯

  6. 將下列範例陳述式複製到剪貼簿:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "allow-inspector", "Effect": "Allow", "Principal": { "Service": "inspector2.amazonaws.com" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:inspector2:Region:111122223333:report/*" } } } ] }
  7. 在 Amazon S3 主控台的儲存貯體政策編輯器中,將前述陳述式貼到政策中,以將其新增至政策。

    當您新增陳述式時,請確定語法有效。儲存貯體政策使用 JSON 格式。這表示您需要在陳述式之前或之後新增逗號,視您將陳述式新增至原則的位置而定。如果您將陳述式新增為最後一個陳述式,請在前述陳述式的右括號後加上逗號。如果您將它新增為第一個陳述式或兩個現有陳述式之間,請在陳述式的右括號後加上逗號。

  8. 使用適用於您環境的正確值更新陳述式,其中:

    • 文檔示例桶是存儲桶的名稱。

    • 111122223333 是您的帳戶識別碼。 AWS 帳戶

    • 區域是您正 AWS 區域 在使用 Amazon Inspector,並希望允許 Amazon Inspector 向存儲桶添加報告。例如,us-east-1針對美國東部 (維吉尼亞北部) 區域。

    注意

    如果您在手動啟用的情況下使用 Amazon Inspector AWS 區域,請同時將適當的區域代碼新增至Service欄位的值。此欄位指定 Amazon Inspector 服務主體。

    例如,如果您在具有區域代碼的中東 (巴林) 區域中使用 Amazon Inspectorme-south-1,請inspector2.me-south-1.amazonaws.com在陳述式中取inspector2.amazonaws.com代。

    請注意,範例陳述式定義了使用兩個 IAM 全域條件金鑰的條件:

    • aws:SourceAccount-這種情況允許 Amazon Inspector 僅為您的帳戶將報告添加到存儲桶中。它可以防止 Amazon Inspector 向其他帳戶的存儲桶添加報告。更具體地說,條件會指定哪個帳戶可以針對條aws:SourceArn件指定的資源和動作使用值區。

      若要將其他帳戶的報告儲存在值區中,請將每個額外帳戶的帳戶 ID 新增至此條件。例如:

      "aws:SourceAccount": [111122223333,444455556666,123456789012]
    • aws:SourceArn— 此條件會根據要添加到存儲桶的對象的來源限制對存儲桶的訪問。它可以防 AWS 服務 止其他人將物件新增至值區。這也可以防止 Amazon Inspector 在為您的帳戶執行其他動作時,將物件新增至儲存貯體。更具體地說,此條件允許 Amazon Inspector 只有在物件為發現項目報告時,才能將物件新增至儲存貯體,且僅當這些報表是由帳戶建立並在條件中指定的區域中時。

      若要允許 Amazon Inspector 針對其他帳戶執行指定的動作,請將每個額外帳戶的 Amazon 資源名稱 (ARN) 新增至此情況。例如:

      "aws:SourceArn": [ "arn:aws:inspector2:Region:111122223333:report/*", "arn:aws:inspector2:Region:444455556666:report/*", "arn:aws:inspector2:Region:123456789012:report/*" ]

      aws:SourceAccountaws:SourceArn條件所指定的帳戶應該符合。

    這兩種情況都有助於防止 Amazon Inspector 在與 Amazon S3 進行交易時被用作混淆的副手。雖然我們不建議這樣做,但您可以從值區政策中移除這些條件。

  9. 完成值區政策更新後,請選擇 [儲存變更]。

步驟 3:設定 AWS KMS key

驗證許可並設定 S3 儲存貯體後,請確定 AWS KMS key 您希望 Amazon Inspector 用來加密發現結果報告的內容。金鑰必須是客戶管理的對稱式加密 KMS 金鑰。此外,金鑰必須與 AWS 區域 您設定用來存放報表的 S3 儲存貯體位於相同。

金鑰可以是您自己帳戶中的現有 KMS 金鑰,也可以是其他帳戶擁有的現有 KMS 金鑰。如果您想要使用新的 KMS 金鑰,請先建立金鑰,然後再繼續。如果您想要使用其他帳戶擁有的現有金鑰,請取得該金鑰的 Amazon 資源名稱 (ARN)。當您從 Amazon Inspector 導出報告時,您需要輸入此 ARN。如需建立和檢閱 KMS 金鑰設定的詳細資訊,請參閱AWS Key Management Service 開發人員指南中的管理金鑰

決定要使用的 KMS 金鑰之後,請授與 Amazon Inspector 使用金鑰的權限。否則,Amazon Inspector 將無法加密和導出報告。若要授予 Amazon Inspector 使用金鑰的權限,請更新金鑰的金鑰政策。如需有關金鑰原則和管理 KMS 金鑰存取權的詳細資訊,請參閱AWS Key Management Service 開發人員指南 AWS KMS中的金鑰政策

注意

下列程序適用於更新現有金鑰以允許 Amazon Inspector 使用該金鑰。如果您沒有現有的金鑰,請參閱AWS Key Management Service 開發人員指南中的建立金鑰

若要更新金鑰原則
  1. 使用您的認證登入,然後在 https://console.aws.amazon.com/kms 開啟 AWS KMS 主控台。

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

  3. 選擇您要用來加密報表的 KMS 金鑰。金鑰必須是對稱加密 (對稱加密) 金鑰。

  4. 金鑰原則索引標籤上,選擇編輯。如果您看不到含 [編輯] 按鈕的金鑰原則,您必須先選取 [切換至原則檢視]。

  5. 將下列範例陳述式複製到剪貼簿:

    { "Sid": "Allow Amazon Inspector to use the key", "Effect": "Allow", "Principal": { "Service": "inspector2.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:inspector2:Region:111122223333:report/*" } } }
  6. 在 AWS KMS 主控台的金鑰原則編輯器中,將前述陳述式貼到金鑰原則中,以將其新增至原則。

    當您新增陳述式時,請確定語法有效。金鑰政策使用 JSON 格式。這表示您需要在陳述式之前或之後新增逗號,視您將陳述式新增至原則的位置而定。如果您將陳述式新增為最後一個陳述式,請在前述陳述式的右括號後加上逗號。如果您將它新增為第一個陳述式或兩個現有陳述式之間,請在陳述式的右括號後加上逗號。

  7. 使用適用於您環境的正確值更新陳述式,其中:

    • 111122223333 是您的帳戶識別碼。 AWS 帳戶

    • 區域是您要允許 Amazon Inspector 使用金鑰加密報告的 AWS 區域 位置。例如,us-east-1針對美國東部 (維吉尼亞北部) 區域。

    注意

    如果您在手動啟用的情況下使用 Amazon Inspector AWS 區域,請同時將適當的區域代碼新增至Service欄位的值。例如,如果您在中東 (巴林) 區域使用 Amazon Inspector,請取代inspector2.amazonaws.cominspector2.me-south-1.amazonaws.com.

    如同前一步驟中儲存貯體政策的範例陳述式,此範例中的Condition欄位使用兩個 IAM 全域條件金鑰:

    • aws:SourceAccount— 這種情況允許 Amazon Inspector 僅為您的帳戶執行指定的操作。更具體地說,它決定哪個帳戶可以針對aws:SourceArn條件指定的資源和動作執行指定的動作。

      若要允許 Amazon Inspector 針對其他帳戶執行指定的動作,請將每個額外帳戶的帳戶 ID 新增至此情況。例如:

      "aws:SourceAccount": [111122223333,444455556666,123456789012]
    • aws:SourceArn-此條件可防 AWS 服務 止其他人執行指定的操作。這也可以防止 Amazon Inspector 在為您的帳戶執行其他動作時使用金鑰。換句話說,它允許 Amazon Inspector 僅在物件為發現項目報告時使用金鑰加密 S3 物件,且僅當這些報告是由帳戶建立並在條件中指定的區域中建立時。

      若要允許 Amazon Inspector 針對其他帳戶執行指定的動作,請為每個額外的帳戶新增 ARN 至此條件。例如:

      "aws:SourceArn": [ "arn:aws:inspector2:us-east-1:111122223333:report/*", "arn:aws:inspector2:us-east-1:444455556666:report/*", "arn:aws:inspector2:us-east-1:123456789012:report/*" ]

      aws:SourceAccountaws:SourceArn條件所指定的帳戶應該符合。

    這些條件有助於防止 Amazon Inspector 在與交易期間被用作混淆的副手 AWS KMS。雖然我們不建議這樣做,但您可以從陳述式中移除這些條件。

  8. 完成金鑰原則更新後,請選擇 [儲存變更]。

步驟 4:設定及匯出發現項目報告

驗證您的權限並設定資源以加密和儲存發現項目報告之後,您就可以設定和匯出報告了。

若要設定及匯出發現項目報告
  1. 使用您的憑據登錄,然後在 https://console.aws.amazon.com/inspector/v2/home 打開 Amazon Inspector 控制台。

  2. 在瀏覽窗格的「現項目」下,選擇「所有發現項目」。

  3. (選擇性) 使用「發現項目」表格上方的篩選列,新增篩選條件,以指定要包含在報告中的發現項目。當您新增條件時,Amazon Inspector 會更新表格,以僅包含符合條件的發現項目。此表格提供報表將包含之資料的預覽。

    注意

    我們建議您新增篩選條件。如果不 AWS 區域 這樣做,報告會包含目前狀態為「用中」之所有發現項目的資料。如果您是某個組織的 Amazon Inspector 管理員,這包括組織中所有成員帳戶的發現項目資料。

    如果報告包含所有或多個發現項目的資料,產生和匯出報告可能需要很長時間,而且您一次只能匯出一個報告。

  4. 選擇匯出搜尋結果

  5. 在「匯出設定」區段中,對於「匯出檔案類型」,指定報告的檔案格式:

    • 若要建立包含資料的 JavaScript 物件標記法 (.json) 檔案,請選擇 [JSON]。

      如果您選擇 JSON 選項,報告將包含每個發現項目的所有欄位。如需可能的 JSON 欄位清單,請參閱 Amazon Inspector API 參考資料中的尋找資料類型。

    • 若要建立包含資料的逗號分隔值 (.csv) 檔案,請選擇 [CSV]。

      如果您選擇 CSV 選項,則報告只會包含每個發現項目的一部分欄位,大約 45 個報告發現項目關鍵屬性的欄位。欄位包括:「尋找項目類型」、「標題」、「嚴重性」、「狀態」、「描述」、「第一次上線」、「上次上線時間」、「可用的修程式」、「 AWS 帳號 ID」、「資源 ID」 這些欄位除了可擷取每個發現項目的評分詳細資料和參考 URL 的欄位之外。以下是發現項目報告中 CSV 標頭的範例:

      AWS 帳號識別碼 嚴重性 可用的修復 尋找類型 Title 描述 查找 ARN 第一次看到 最後上線 上次更新 資源 ID 容器圖像標籤 區域 平台 資源標籤 受影響套件 Package 安裝版本 已在版本中修正 Package 修正 檔案路徑 網路路徑 年齡 (天) 修補 Inspector 得分 Inspector 得分向量 Status 弱點識別碼 廠商 廠商嚴重性 供應商諮詢 供應商公告出版 NVD CVSS3 得分数 無患處 CVSS3 向量 NVD CVSS2 得分数 無患處 CVSS2 向量 供應商 CVSS3 得分 供應商 CVSS3 向量 供應商 CVSS2 得分 供應商 CVSS2 向量 資源類型 Ami 公共資源 私人資源 資源 IPV6 虛擬私人資源 連接埠範圍 可用的漏洞 上次利用於 Lambda Lambda Package 類型 Lambda 最後更新於 參考網址
  6. 在「匯出位置」下,對於 S3 URI,指定要存放報表的 S3 儲存貯體:

    • 若要將報表存放在您帳戶擁有的儲存貯體中,請選擇瀏覽 S3。Amazon Inspector 會為您的帳戶顯示 S3 儲存貯體的表格。選取您要的時段資料列,然後選擇「選」。

      提示

      若要同時為報表指定 Amazon S3 路徑前置詞,請在 S3 URI 方塊中的值附加斜線 (/) 和前置詞。然後,Amazon Inspector 會在將報告新增至儲存貯體時包含前置詞,而 Amazon S3 會產生前置詞指定的路徑。

      例如,如果您想要使用您的 AWS 帳戶 識別碼做為前置詞,而您的帳戶識別碼是 111122223333,請附加/111122223333至 S3 URI 方塊中的值。

      前綴類似於 S3 存儲桶中的目錄路徑。它允許您將類似的對象組合在一個存儲桶中,就像您可以將類似的文件一起存儲在文件系統上的文件夾中。如需詳細資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用資料夾組織 Amazon S3 主控台中的物件。

    • 若要將報表儲存在其他帳戶擁有的值區中,請輸入儲存貯體的 URI — 例如,s3://DOC-EXAMPLE_BUCKET其中 DOC/EXAMPLE _BUCKET 是值區的名稱。值區擁有者可以在值區的屬性中找到此資訊。

  7. 對於 KMS 金鑰,請指 AWS KMS key 定您要用來加密報表的金鑰:

    • 若要使用您自己帳戶中的金鑰,請從清單中選擇金鑰。此清單會顯示您帳戶的客戶管理、對稱加密 KMS 金鑰。

    • 若要使用其他帳戶擁有的金鑰,請輸入該金鑰的 Amazon 資源名稱 (ARN)。金鑰擁有者可以在金鑰的屬性中找到此資訊。如需詳細資訊,請參閱AWS Key Management Service 開發人員指南中的尋找金鑰 ID 和金鑰 ARN

  8. 選擇 Export (匯出)。

Amazon Inspector 會產生發現項目報告,使用您指定的 KMS 金鑰加密該報告,然後將其新增至您指定的 S3 儲存貯體。視您選擇包含在報告中的發現項目數量而定,此程序可能需要數分鐘或數小時。匯出完成後,Amazon Inspector 會顯示一則訊息,指出您的發現項目報告已成功匯出。選擇性地選擇訊息中的「檢視報告」以導覽至 Amazon S3 中的報告。

請注意,您一次只能匯出一份報告。如果匯出目前正在進行中,請等到匯出完成,然後再嘗試匯出其他報告。

排解匯出錯誤

如果您嘗試匯出發現項目報告時發生錯誤,Amazon Inspector 會顯示說明錯誤的訊息。您可以使用本主題中的資訊做為指南,以識別錯誤的可能原因和解決方案。

例如,確認 S3 儲存貯體是否在目前儲存貯體中, AWS 區域 而儲存貯體的政策允許 Amazon Inspector 將物件新增至儲存貯體。此外,請確認目前區域中已啟用,並確保金鑰政策允許 Amazon Inspector 使用金鑰。 AWS KMS key

解決錯誤後,請嘗試再次匯出報告。

無法有多個報告錯誤

如果您嘗試建立報告,但 Amazon Inspector 已經產生報告,您會收到錯誤訊息,說明原因:無法有多個正在進行中的報告。因為 Amazon Inspector 一次只能為一個帳戶產生一份報告,就會發生這個錯誤。

若要解決此錯誤,您可以等待其他報告完成或取消,然後再要求新的報告。

您可以使用作業來檢查報表的狀態,此GetFindingsReportStatus作業會傳回目前正在產生之任何報表的報告 ID。

如有需要,您可以使用作業指定的報告 ID,使用GetFindingsReportStatus作業來取消目前正在進行的CancelFindingsReport匯出。