BatchImportFindings を使用して結果を作成および更新する - AWS Security Hub

BatchImportFindings を使用して結果を作成および更新する

結果プロバイダーは、BatchImportFindings API オペレーションを使用して、新しい結果を作成し、作成した結果に関する情報を更新します。自分自身で作成したのではない結果を更新することはできません。

お客様、SIEM、チケット発行ツール、SOARツールは、結果プロバイダーからの結果の処理に関連する更新を行うために BatchUpdateFindings を使用します。「BatchUpdateFindings を使用して結果を更新する」を参照してください。

結果の作成または更新を求める BatchImportFindings リクエストを AWS Security Hub が受信した場合、必ず Amazon EventBridge に Security Hub Findings - Imported イベントを自動的に生成します。「自動応答および自動修復」を参照してください。

アカウントとバッチサイズに対する要件

BatchImportFindings を、次のいずれかで呼び出す必要があります。

  • 結果に関連付けられているアカウント。関連付けられたアカウントの識別子は、結果の AwsAccountId 属性の値です。

  • 公式の Security Hub パートナー統合で許可リストに載っているアカウント。

Security Hub は、Security Hub が有効になっているアカウントの結果更新のみを受け入れます。結果プロバイダーも有効にする必要があります。Security Hub が無効になっているが、結果プロバイダーとの統合が有効になっていない場合は、結果は FailedFindings リストで返され、InvalidAccess エラーが表示されます。

BatchImportFindings は、バッチあたり最大 100 件、1 回の結果あたり最大 240 KB、バッチあたり最大 6 MB の結果を受け入れます。スロットリングレートの制限は、各リージョンの 1 アカウントあたり 10 TPS で、バーストは 30 TPS です。

結果を作成するか更新するかの決定

結果を作成するか更新するかを決定するために、Security Hub は ID フィールドをチェックします。ID の値が既存の結果と一致しない場合は、新しい結果が作成されます。

ID が既存の結果と一致する場合、Security Hub は UpdatedAt フィールドに更新がないかをチェックします。

  • 更新上の UpdatedAt が一致するか、既存の結果の UpdatedAt より前に発生した場合、更新は無視されます。

  • 更新上の UpdatedAt が既存の結果の UpdatedAt の後に発生している場合、既存の結果は更新されます。

BatchImportFindings の制限された属性

既存の結果の場合、結果プロバイダーは BatchImportFindings を使用して次の属性とオブジェクトを更新することはできません。これらの属性は、BatchUpdateFindings を使用してのみ更新できます。

  • Note

  • UserDefinedFields

  • VerificationState

  • Workflow

Security Hub は、これらの属性およびオブジェクト内にある BatchImportFindings のコンテンツをすべて無視します。お客様、またはお客様を代行する他のプロバイダーは、BatchUpdateFindings を使用して更新します。

FindingProviderFields を使用する

結果プロバイダーも BatchImportFindings を使用して次の属性を更新するべきではありません。

  • Confidence

  • Criticality

  • RelatedFindings

  • Severity

  • Types

代わりに、結果プロバイダーは FindingProviderFields オブジェクトを使用して、これらの属性の値を提供します。

"FindingProviderFields": { "Confidence": 42, "Criticality": 99, "RelatedFindings":[ { "ProductArn": "arn:aws:securityhub:us-west-2::product/aws/guardduty", "Id": "123e4567-e89b-12d3-a456-426655440000" } ], "Severity": { "Label": "MEDIUM", "Original": "MEDIUM" }, "Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ] }

BatchImportFindings リクエストの場合、Security Hub はトップレベル属性内および FindingProviderFields 内の値を以下のとおり処理します。

(推奨) BatchImportFindingsFindingProviderFields 内の属性の値を提供しますが、対応するトップレベル属性には値を提供しません。

例えば、BatchImportFindingsFindingProviderFields.Confidence を提供しますが、Confidence は提供しません。これは、BatchImportFindings リクエストに推奨されるオプションです。

Security Hub は、FindingProviderFields 内の属性の値を更新します。

これは、属性が BatchUpdateFindings によってまだ更新されていない場合にのみ、値をトップレベル属性にレプリケートします。

BatchImportFindings は、トップレベル属性の値を提供しますが、FindingProviderFields 内の対応する属性には値を提供しません。

例えば、BatchImportFindingsConfidence を提供しますが、FindingProviderFields.Confidence は提供しません。

Security Hub は、値を使用して FindingProviderFields の属性を更新します。既存の値はすべて上書きされます。

Security Hub は、属性が BatchUpdateFindings によってまだ更新されていない場合にのみ、トップレベルの属性を更新します。

BatchImportFindings は、FindingProviderFields のトップレベル属性と対応する属性の両方の値を提供します。

例えば、BatchImportFindingsConfidenceFindingProviderFields.Confidence の両方を提供します。

新しい結果を得るために、Security Hub では FindingProviderFields 内の値を使用して、FindingProviderFields 内のトップレベル属性と対応する属性の両方を入力します。指定されたトップレベルの属性値は使用しません。

既存の結果の場合、Security Hub は両方の値を使用します。ただし、トップレベルの属性値が更新されるのは、BatchUpdateFindings により属性がまだ更新されていない場合のみです。

AWS CLI から batch-import-findings コマンドを使用する

AWS Command Line Interface の場合、batch-import-findings コマンドを使用して、結果を作成または更新します。

各結果は JSON オブジェクトとして提供します。

aws securityhub batch-import-findings --findings ' [{ "AwsAccountId": "123456789012", "CreatedAt": "2019-08-07T17:05:54.832Z", "Description": "Vulnerability in a CloudTrail trail", "FindingProviderFields": { "Severity": { "Label": "INFORMATIONAL", "Original": "0" }, "Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ] }, "GeneratorId": "TestGeneratorId", "Id": "Id1", "ProductArn": "arn:aws:securityhub:us-west-1:123456789012:product/123456789012/default", "Resources": [ { "Id": "arn:aws:cloudtrail:us-west-1:123456789012:trail/TrailName", "Partition": "aws", "Region": "us-west-1", "Type": "AwsCloudTrailTrail" } ], "SchemaVersion": "2018-10-08", "Title": "CloudTrail trail vulnerability", "UpdatedAt": "2020-06-02T16:05:54.832Z" }]'