検索とダッシュボードで重複除去を使用する

以下でサポートされています。

このドキュメントでは、Google Security Operations でデータを検索する際に何が起こるかについて説明します。結果に重複が含まれることがあります。これは、多くの場合、エンタープライズ インフラストラクチャが複数のシステムから同じイベントのログを生成することが原因で発生します。たとえば、認証システムとセキュリティ システムの両方が単一のログイン イベントをログに記録する場合があります。

重複する結果を減らすには、YARA-L 構文の dedup セクションで UDM フィールドを使用します。このセクションに UDM フィールドを追加すると、値の個別の組み合わせごとに 1 つの結果が返されます。.

クエリでの重複除去

重複除去は、次のタイプの検索クエリとダッシュボード クエリに適用されます。

  • 集計された検索クエリ: matchmatchoutcome、または aggregated outcome のセクションが含まれます。重複除去は、結果が決定された後に行われます。

    集計検索クエリの場合は、次のフィールドを dedup セクションに含めます。

    • match セクションのフィールド
    • outcome セクションのフィールド
  • UDM 検索クエリ: matchoutcomeaggregated outcome の各セクションを除外します。集計がなく、match セクションがない限り、UDM 検索クエリに outcome セクションを含めることができます。

    UDM クエリの場合は、次のフィールドを dedup セクションに追加します。

    • 繰り返し、配列、グループ化されていないイベント フィールド
    • events セクションのプレースホルダ フィールド
    • outcome セクションの結果変数

このセクションでは、YARA-L 構文を示します。この構文は、検索で実行できます。

例: 一意の IP アドレスの簡単な検索

次の検索例では、企業内の固有の IP アドレス(principal.ip)が企業外の固有の外部 IP アドレス(target.ip)に接続しているイベント間のネットワーク接続が表示されます。イベントは principal.ip に基づいて重複除去されます。

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.ip != ""
   principal.ip != ""
match:
   target.ip, principal.ip
dedup:
   principal.ip

例: 一意の IP アドレス

前の例と同様に、次の検索例では、一意の IP アドレスを持つネットワーク接続イベントが表示されます。dedupprincipal.ip に適用すると、結果は一意の IP に関連付けられたイベントに絞り込まれます。outcome セクションには、principal.iptarget.ip の間で送信された合計バイト数が表示され、トラフィック量の多い順に結果が並べられます。

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.ip != ""
   principal.ip != ""
match:
   target.ip, principal.ip
outcome:
   $total_bytes = sum(network.sent_bytes)
dedup:
   principal.ip
order:
   $total_bytes desc

例: 一意のホスト名の単純な検索

次の例では、企業からアクセスされた一意のホスト名を検索します。target.hostnamededup を適用すると、結果は一意の外部ホスト名に関連付けられたイベントに絞り込まれます。

metadata.log_type != ""
dedup:
    target.hostname

dedup オプションを使用しない同等の例を次に示します。通常、より多くのイベントが返されます。

metadata.log_type != "" AND target.hostname != ""

例: 一意のホスト名

前の例と同様に、この検索では一意のホスト名を持つネットワーク接続イベントが表示されます。principal.hostnamededup オプションを適用すると、結果は一意のホストに関連付けられたイベントに絞り込まれます。

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.hostname != ""
   principal.hostname != ""
match:
   target.hostname, principal.hostname
outcome:
   $total_bytes = sum(network.sent_bytes)
dedup:
   principal.hostname
order:
   $total_bytes desc

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。