抑制ルール - Amazon GuardDuty

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

抑制ルール

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

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

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

GuardDuty は、抑制ルールに一致している場合でも結果を生成します。ただし、これらの結果は自動的に「アーカイブ済み」としてマークされます。アーカイブされた結果は GuardDuty に 90 日間保存され、その期間中いつでも表示することができます。抑制された所見は、 GuardDuty コンソールを選択します。 アーカイブ済み 結果表から、または GuardDuty を使用したAPI リスト検索 APIと findingCriteria 基準 service.archived 真と等しくなります。

抑制ルールの一般的な使用例

以下に、抑制ルールを適用するための一般的ユースケースがある結果タイプを示します。結果名をクリックすると、そのユースケースに抑制ルールを適用する方法の詳細が表示されます。

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

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

  • UnauthorizedAccess:EC2/SSHBruteForce – 踏み台インスタンスをターゲットとする場合に、結果を自動的にアーカイブするために抑制ルールを使用します。

  • Recon:EC2/PortProbeUnprotectedPort – 意図的に公開しているインスタンスをターゲットとする場合に、結果を自動的にアーカイブするために抑制ルールを使用します。

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

GuardDuty コンソールでは、抑制ルールを簡単に視覚化、作成、管理することができます。

  1. GuardDuty の [結果] ページで、[Suppress findings (結果を表示しない)] を選択します。

  2. 以下のいずれかの操作を行います。

    • ルールに既存のフィルタを使用するには、[Saved rules (保存されたルール)] ドロップダウンリストからフィルタを選択します。

    • 新しいルールを作成するには、フィルター条件を追加して抑制ルールのフィルターを作成します。後で使用するためにフィルタを保存するには、フィルタ条件フィールドの最後にある [保存] を選択します。

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

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

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

APIを使用して抑制ルールを作成するには:

  1. 抑制ルールは、CreateFilter API を使用して作成することもできます。以下に示す例の形式に従って JSON ファイルでフィルター条件を指定できます。この例では、test.example.com への DNS リクエストが行われたアーカイブされていない結果が選択されます。

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

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

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

    aws guardduty list-findings --detector-id 12abc34d567e8fa901bc2d34e56789f0 --finding-criteria file://criteria.json
  2. 抑制ルールとして使用するフィルターを CreateFilter API を使用してアップロードするか、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 を使用します。