サプレッションルール - Amazon GuardDuty

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

サプレッションルール

サプレッションルールは、値とペアになっているフィルター属性で構成され、指定した条件に一致する新しい結果を自動的にアーカイブして結果をフィルタリングするために使用されます。抑制ルールを使用して、重要ではない結果、誤検出の結果、対応を行わない脅威をフィルタリングすることにより、環境に最も影響があるセキュリティの脅威を認識しやすくなります。

抑制ルールを作成すると、その抑制ルールが適用されている限り、ルールで定義された条件に一致する新しい結果が自動的にアーカイブされます。既存のフィルタを使用してサプレッションルールを作成したり、定義した新しいフィルタからサプレッションルールを作成したりできます。結果タイプ全体を抑制するようサプレッションルールを設定したり、特定の結果タイプの特定のインスタンスのみを抑制する、よりきめ細かいフィルタ条件を定義したりできます。抑制ルールはいつでも編集できます。

抑制された結果はAWS Security Hub、Amazon S3、Detective、CloudWatch を使用して GuardDuty の結果を Security Hub、サードパーティーの SIEM、またはその他のアラート、チケット発行などのアプリケーションで利用する場合に検出のノイズが減ります。

GuardDuty は、抑制ルールに一致している場合でも結果を生成し続けます。ただし、これらの結果は自動的にarchived。アーカイブされた結果は GuardDuty に 90 日間保存され、その期間中いつでも表示することができます。GuardDuty コンソールで抑制された結果を表示するには、アーカイブ済みを使用して結果テーブルから、または GuardDuty API を介してListFindingsAPI をfindingCriteriacriterionservice.archivedtrue に等しいです。

注記

マルチアカウント環境では、GuardDuty 管理者のみが抑制ルールを作成できます。

サプレッションルールおよび例の一般的ユースケース

以下の結果タイプには、抑制ルールを適用するための一般的なユースケースがあります。結果名を選択してその結果の詳細を確認したり、コンソールでその結果タイプに対する抑制ルールを作成するために情報を確認したりできます。

重要

GuardDuty では、誤検出を繰り返し特定した結果に対してのみ、抑制ルールをリアクティブに作成することをお勧めします。

  • UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS— VPC Internet Gateway からではなく、オンプレミスゲートウェイからエグレスされるという方法で、インターネットトラフィックがルーティングされるように VPC ネットワークが設定されている場合に、生成された結果を自動的にアーカイブするためにサプレッションルールを使用します。

    この結果が生成されるのは、VPC Internet Gateway (IGW) からではなく、オンプレミスゲートウェイからエグレスされるという方法で、インターネットトラフィックがルーティングされるように、ネットワークが設定されている場合です。使用など、一般的な構成AWS Outposts、VPC VPN 接続では、この方法でトラフィックがルーティングされる可能性があります。これが予期した動作である場合は、 の抑制ルールを使用して、2 つのフィルター条件で構成されるルールを作成することをお勧めします。1 つ目の条件では、[結果タイプ] に UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration を使用します。2 番目のフィルタ基準はAPI 発信者の IPv4 アドレスオンプレミスのインターネットゲートウェイの IP アドレスまたは CIDR 範囲に置き換えます。以下の例は、API 呼び出し元 IP アドレスに基づいて、この検索タイプを抑制するために使用するフィルタを表しています。

    Finding type: UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration API caller IPv4 address: 198.51.100.6
    注記

    複数の API 呼び出し元 IP を含めるには、それぞれに新しい API 呼び出し元 IPv4 アドレスフィルタを追加できます。

  • Recon:EC2/Portscan:脆弱性評価アプリケーションを使用する際に、結果を自動的にアーカイブするためにサプレッションルールを使用します。

    サプレッションルールは、2 つのフィルタ条件で構成する必要があります。1 つ目の条件では、[結果タイプ] 属性に Recon:EC2/Portscan という値を使用します。2 番目のフィルタ条件は、これらの脆弱性評価ツールをホストする 1 つ以上のインスタンスと一致する必要があります。以下のいずれかを使用できます。インスタンスイメージ ID属性またはのタグ付けこれらのツールをホストするインスタンスで識別可能な条件によって異なります。以下の例は、特定の AMI を持つインスタンスに基づいて、この検索タイプを抑制するために使用するフィルタを示しています。

    Finding type: Recon:EC2/Portscan Instance image ID: ami-999999999
  • UnauthorizedAccess:EC2/SSHBruteForce— 踏み台インスタンスをターゲットとする場合に、結果を自動的にアーカイブするために抑制ルールを使用します。

    総当たり試行のターゲットが踏み台ホストである場合、これはAWS環境。このような状況が発生した場合は、この結果に対するサプレッションルールを設定することをお勧めします。サプレッションルールは、2 つのフィルタ条件で構成する必要があります。1 つ目の条件では、[結果タイプ] 属性に UnauthorizedAccess:EC2/SSHBruteForce という値を使用します。2 番目のフィルタ条件は、踏み台ホストとして機能する 1 つ以上のインスタンスと一致する必要があります。以下のいずれかを使用できます。インスタンスイメージ ID属性またはのタグ付けこれらのツールをホストするインスタンスで識別可能な条件によって異なります。以下の例は、特定のインスタンスタグ値を持つインスタンスに基づいて、この検索タイプを抑制するために使用するフィルタを示しています。

    Finding type: UnauthorizedAccess:EC2/SSHBruteForce Instance tag value: devops
  • Recon:EC2/PortProbeUnprotectedPort— 意図的に公開しているインスタンスをターゲットとする場合に、結果を自動的にアーカイブするためにサプレッションルールを使用します。

    インスタンスがウェブサーバーをホストしている場合など、インスタンスが意図的に公開されている場合があります。これがあなたのAWS環境では、この結果に対するサプレッションルールを設定することをお勧めします。サプレッションルールは、2 つのフィルタ条件で構成する必要があります。1 つ目の条件では、[結果タイプ] 属性に Recon:EC2/PortProbeUnprotectedPort という値を使用します。2 番目のフィルタ条件は、踏み台ホストとして機能する 1 つ以上のインスタンスと一致する必要があります。以下のいずれかを使用できます。インスタンスイメージ ID属性またはのタグ付け値の属性を使用します。これらのツールをホストするインスタンスで識別可能な条件によって異なります。以下の例は、コンソール内の特定のインスタンスタグキーを持つインスタンスに基づいて、この検索タイプを抑制するために使用するフィルタを示しています。

    Finding type: Recon:EC2/PortProbeUnprotectedPort Instance tag key: prod

GuardDuty で抑制ルールを作成するには

Console

GuardDuty コンソールでは、サプレッションルールを簡単に視覚化、作成、管理することができます。抑制ルールはフィルタと同じ方法で生成され、既存の保存済みフィルタは抑制ルールとして使用できます。フィルターの作成の詳細については、結果のフィルタリング

コンソールを使用して抑制ルールを作成するには

  1. On The GuardDuty結果ページで [] を選択します。結果の抑制をクリックして、抑制ルールパネルを開きます。

  2. Selectフィルタ条件の追加をクリックして、フィルタ条件メニューを開きます。リストから基準を選択し、その基準に有効な値を入力します。使用する正しい値を決定するには、結果テーブルから非表示にする結果を選択し、コンソールの同じページから詳細を確認します。除外する結果のみが結果テーブルに表示されるまで、フィルタ条件の追加を続行できます。

  3. サプレッションルールの名前と説明を入力します。

  4. [Save] を選択します。

既存の保存済みフィルタからサプレッションルールを作成することもできます。フィルターの作成の詳細については、結果のフィルタリング

保存したフィルタからサプレッションルールを作成するには

  1. On The GuardDuty結果ページで [] を選択します。結果の抑制をクリックして、抑制ルールパネルを開きます。

  2. からの保存されたルールドロップダウンで、保存したフィルタを選択します。

  3. サプレッションルールの名前と説明を入力します。

  4. [Save] を選択します。

抑制ルールは、コンソールの [保存済みのルール] ドロップダウンからルールを選択して、いつでも表示、編集、削除できます。

API

APIを使用してサプレッションルールを作成するには:

  1. サプレッションルールは、CreateFilterAPI. そのために、以下に示す例の形式に従って JSON ファイルでフィルター条件を指定します。以下の例では、test.example.com への DNS リクエストが行われたアーカイブされていない結果を抑制します。

    { "Criterion": { "service.archived": { "Eq": [ "false" ] }, "service.action.dnsRequestAction.domain": { "Eq": [ "test.example.com" ] } } }

    JSON のフィールド名とそれに相当するコンソールのフィールド名の一覧については、「フィルタ属性」を参照してください。

    フィルター条件を最初にテストするには、同じ JSON 条件をListFindingsAPI を使用して、正しい結果が選択されていることを確認するか、AWS独自のディテクタ ID、および.json ファイルを使用して、以下の例に従ってCLIを実行します。

    AWS guardduty list-findings --detector-id 12abc34d567e8fa901bc2d34e56789f0 --finding-criteria file://criteria.json
  2. フィルタをアップロードして、抑制ルールとして使用するCreateFilterAPI を使用して使用するか、AWS以下の例に従って CLI で独自のディテクター ID、サプレッションルールの名前、.json ファイルを使用します。

    AWS guardduty create-filter --action ARCHIVE --detector-id 12abc34d567e8fa901bc2d34e56789f0 --name yourfiltername --finding-criteria file://criteria.json

ListFilter API を使用すると、フィルターの一覧をプログラムで表示できます。GetFilter API でフィルター名を指定すると、個々のフィルターの詳細を表示できます。フィルターを更新するには UpdateFilter API を使用し、フィルターを削除するには DeleteFilter API を使用します。