UDM の使用ガイド
このドキュメントでは、次の内容について説明します。
- 統合データモデル(UDM)スキーマ フィールドの詳細な説明
- エンティティ タイプの必須フィールドとオプション フィールド
- イベントタイプごとの必須フィールドとオプション フィールド
特定の UDM フィールド(列挙型番号など)の詳細については、統合データモデルのフィールド リストをご覧ください。
UDM フィールド名の形式:
- ルールエンジンの評価では、接頭辞は udm で始まります。
- 構成ベースの正規化(CBN)の場合、接頭辞は event.idm.read_only_udm で始まります。
イベントのメタデータの入力
UDM イベントのイベント メタデータ セクションには、各イベントに関する一般情報が格納されます。
Metadata.event_type
- 目的: イベントのタイプを指定します。イベントに複数のタイプが考えられる場合、この値には最も具体的なタイプを指定する必要があります。
- 必須: はい。
- エンコード: 事前に定義された UDM の
event_typeの列挙型のいずれかである必要があります。 - 有効な値: 次のセクションでは、UDM 内の
metadata.event_typeに使用可能なすべての値を示します。各カテゴリの必須フィールドとオプション フィールドについては、イベントタイプごとの必須フィールドとオプション フィールドをご覧ください。
アナリスト向けイベント
- ANALYST_ADD_COMMENT
- ANALYST_UPDATE_PRIORITY
- ANALYST_UPDATE_REASON
- ANALYST_UPDATE_REPUTATION
- ANALYST_UPDATE_RISK_SCORE
- ANALYST_UPDATE_ROOT_CAUSE
- ANALYST_UPDATE_SEVERITY_SCORE
- ANALYST_UPDATE_STATUS
- ANALYST_UPDATE_VERDICT
デバイスのイベント
デバイス(産業用制御システムや運用技術アセットなど)のファームウェア、構成、プログラムの更新に関連するイベント。
- DEVICE_CONFIG_UPDATE
- DEVICE_FIRMWARE_UPDATE
- DEVICE_PROGRAM_DOWNLOAD
- DEVICE_PROGRAM_UPLOAD
メールのイベント
メール トランザクションとメール セキュリティ検査に関連するイベント:
- EMAIL_UNCATEGORIZED
- EMAIL_TRANSACTION
- EMAIL_URL_CLICK(非推奨)
未指定のイベント
初期化されていないイベントタイプのプレースホルダ値(EVENTTYPE_UNSPECIFIED に設定されたイベントは UDM 検証に失敗します)。
- EVENTTYPE_UNSPECIFIED
エンドポイント上で実行されるファイルのイベント
- FILE_UNCATEGORIZED
- FILE_COPY(例: USB メモリへのファイルのコピー)
- FILE_CREATION
- FILE_DELETION
- FILE_MODIFICATION
- FILE_MOVE
- FILE_OPEN(例: ファイルを開くと、セキュリティ侵害が示される場合があります)
- FILE_READ(例: パスワード ファイルの読み取り)
- FILE_SYNC
他のカテゴリに分類されないイベント
他のカテゴリに分類されないイベント(未分類のオペレーティング システム イベントなど)。
- GENERIC_EVENT
グループ アクティビティ イベント
ユーザー グループまたはシステム グループの作成、変更、削除に関連するイベント:
- GROUP_UNCATEGORIZED
- GROUP_CREATION
- GROUP_DELETION
- GROUP_MODIFICATION
ミューテックス イベント
エンドポイントでの相互排他(ミューテックス)オブジェクトの作成または管理に関連するイベント:
- MUTEX_UNCATEGORIZED
- MUTEX_CREATION
ネットワーク テレメトリー イベント
ネットワーク テレメトリー イベント。これには、DHCP や DNS などの未加工のプロトコル ペイロード、HTTP、SMTP、FTP などのプロトコルの概要、NetFlow やファイアウォールからのフロー イベントや接続イベントが含まれます。
- NETWORK_UNCATEGORIZED
- NETWORK_CONNECTION(例: ファイアウォールのネットワーク接続の詳細)
- NETWORK_DHCP
- NETWORK_DNS
- NETWORK_FLOW(例: Netflow からのフローを集計した統計情報)
- NETWORK_FTP
- NETWORK_HTTP
- NETWORK_SMTP
プロセス イベント
プロセスの起動、悪意のあるプロセスの作成、別のプロセスへの挿入、レジストリキーの変更、ディスクでの悪意のあるファイルの作成など、プロセスに関連するイベント。
- PROCESS_UNCATEGORIZED
- PROCESS_INJECTION
- PROCESS_LAUNCH
- PROCESS_MODULE_LOAD
- PROCESS_OPEN
- PROCESS_PRIVILEGE_ESCALATION
- PROCESS_TERMINATION
レジストリ イベント
Microsoft Windows 固有のレジストリ イベントを扱う場合は、SETTING イベントではなく、次の REGISTRY イベントを使用します。
- REGISTRY_UNCATEGORIZED
- REGISTRY_CREATION
- REGISTRY_MODIFICATION
- REGISTRY_DELETION
リソース イベント
リソースの作成、読み取り、書き込み、削除、権限の変更に関連するイベント:
- RESOURCE_CREATION
- RESOURCE_DELETION
- RESOURCE_PERMISSIONS_CHANGE
- RESOURCE_READ
- RESOURCE_WRITTEN
スキャン関連イベント
スキャン指向のイベントには、エンドポイントまたはネットワーク セキュリティ プロダクト(EDR、ウイルス対策、脆弱性スキャナ、DLP など)が実行するオンデマンドのスキャンと振る舞い検知が含まれます。
- SCAN_UNCATEGORIZED
- SCAN_FILE
- SCAN_HOST
- SCAN_NETWORK
- SCAN_PROCESS
- SCAN_PROCESS_BEHAVIORS(非推奨)
- SCAN_VULN_HOST
- SCAN_VULN_NETWORK
スケジュールされたタスクのイベント(Windows タスク スケジューラ、cron など)
- SCHEDULED_TASK_UNCATEGORIZED
- SCHEDULED_TASK_CREATION
- SCHEDULED_TASK_DELETION
- SCHEDULED_TASK_DISABLE
- SCHEDULED_TASK_ENABLE
- SCHEDULED_TASK_MODIFICATION
サービス イベント
オペレーティング システムまたはアプリケーション サービスの作成、削除、変更、開始、停止に関連するイベント。
- SERVICE_UNSPECIFIED
- SERVICE_CREATION
- SERVICE_DELETION
- SERVICE_MODIFICATION
- SERVICE_START
- SERVICE_STOP
イベントの設定
設定イベントの要件については、SETTING_UNCATEGORIZED、SETTING_CREATION、SETTING_MODIFICATION、SETTING_DELETION をご覧ください。
設定のイベント(エンドポイントでシステム設定が変更される場合を含む):
- SETTING_UNCATEGORIZED
- SETTING_CREATION
- SETTING_DELETION
- SETTING_MODIFICATION
セキュリティ プロダクトからのステータス メッセージ
セキュリティ プロダクトからのステータス メッセージ。エージェントが稼働中であることを示し、バージョン、フィンガープリント、その他のタイプのデータを送信します。
- STATUS_UNCATEGORIZED
- STATUS_HEARTBEAT(プロダクトが有効であることを示します)
- STATUS_STARTUP
- STATUS_SHUTDOWN
- STATUS_UPDATE(ソフトウェアまたはフィンガープリントの更新)
システム監査ログイベント
- SYSTEM_AUDIT_LOG_UNCATEGORIZED
- SYSTEM_AUDIT_LOG_WIPE
ユーザー認証アクティビティ イベント
- USER_UNCATEGORIZED
- USER_BADGE_IN(例: ユーザーがサイトに物理的にバッジを表示するとき)
- USER_CHANGE_PASSWORD
- USER_CHANGE_PERMISSIONS
- USER_COMMUNICATION
- USER_CREATION
- USER_DELETION
- USER_LOGIN
- USER_LOGOUT
- USER_RESOURCE_ACCESS
- USER_RESOURCE_CREATION
- USER_RESOURCE_DELETION
- USER_RESOURCE_UPDATE_CONTENT
- USER_RESOURCE_UPDATE_PERMISSIONS
- USER_STATS(非推奨)
Metadata.collected_timestamp
- 目的: ベンダーのローカルの収集用インフラストラクチャによってイベントが収集された場合に、GMT のタイムスタンプをエンコードします。
- エンコード: RFC 3339(JSON または Proto3 のタイムスタンプ形式に適したもの)。
- 例:
- RFC 3339: 2019-09-10T20:32:31-08:00
- Proto3 形式: 2012-04-23T18:25:43.511Z
Metadata.event_timestamp
- 目的: イベントが生成された場合に GMT のタイムスタンプをエンコードします。
- 必須: はい
- エンコード: RFC 3339(JSON または Proto3 のタイムスタンプ形式に適したもの)。
- 例:
- RFC 3339: 2019-09-10T20:32:31-08:00
- Proto3 形式: 2012-04-23T18:25:43.511Z
Metadata.description
- 目的: イベントについての、人が読める形式の説明。
- エンコード: 英数字の文字列、句読点を使用可能、最大 1,024 バイト
- 例: ファイル c:\bar\foo.exe から機密ドキュメント c:\documents\earnings.docx へのアクセスがブロックされました。
Metadata.product_event_type
- 目的: 短く、わかりやすく、人が読める形式の、プロダクト固有のイベント名またはタイプ。
- エンコード: 英数字の文字列。句読点を使用できます。最大 64 バイト。
- 例:
- レジストリ作成イベント
- ProcessRollUp
- 権限昇格が検出されました
- マルウェアがブロックされました
Metadata.product_log_id
- 目的: ベンダー固有のイベント識別子をエンコードして、イベントを一意に識別します(GUID)。ユーザーはこの識別子を使用して、対象イベントのベンダーの専用コンソールを探す場合があります。
- エンコード: 大文字と小文字を区別する英数字の文字列。句読点を使用できます。最大 256 バイト。
- 例: ABcd1234-98766
Metadata.product_name
- 目的: 商品の名前を指定します。
- エンコード: 大文字と小文字を区別する英数字の文字列。句読点を使用できます。最大 256 バイト。
- 例:
- Falcon
- Symantec Endpoint Protection
Metadata.product_version
- 目的: 商品のバージョンを指定します。
- エンコード: 英数字の文字列、ピリオドとダッシュを使用可能、最大 32 バイト
- 例:
- 1.2.3b
- 10.3:rev1
Metadata.url_back_to_product
- 目的: この特定のイベント(または一般的なイベント カテゴリ)に関する詳細情報を確認できる関連ウェブサイトへのリンク URL。
- エンコード: 有効な RFC 3986 URL。ポート情報などのオプション パラメータを含めることができます。URL の前にプロトコルのプレフィックス(https://、http:// など)が必要です。
- 例: https://newco.altostrat.com:8080/event_info?event_id=12345
Metadata.vendor_name
- 目的: プロダクト ベンダーの名前を指定します。
- エンコード: 大文字と小文字を区別する英数字の文字列。句読点を使用できます。最大 256 バイト。
- 例:
- CrowdStrike
- Symantec
名詞のメタデータの入力
このセクションでは、名詞とは、principal、src、target、intermediary、observer、about の各エンティティを表す包括的な用語です。これらのエンティティには共通の属性がありますが、イベント内の異なるオブジェクトを表すものです。エンティティと、イベントで各エンティティが表す内容の詳細については、UDM イベントの形式を設定するをご覧ください。
Noun.asset_id
- 目的: ベンダー固有の一意のデバイス識別子(たとえば、新しいデバイスにエンドポイント セキュリティ ソフトウェアをインストールするときに生成される GUID。この GUID は、その一意のデバイスを継続的に追跡するために使用されます)。
- エンコード: (VendorName または VendorAbbreviation):ID。ここで、VendorName または VendorAbbreviation は、
Carbon BlackやCBなどの大文字と小文字を区別しないベンダー名です。ID は、ベンダー固有の顧客識別子で、顧客の環境内でグローバルに一意です(GUID や一意のデバイスを識別する一意の値など)。VendorName は、32 文字以下の英数字です。ID は、最大 128 文字で、英数字、ダッシュ、ピリオドを使用できます。 - 例:
CrowdStrike:0bce4259-4ada-48f3-a904-9a526b01311f - 例:
CS:0bce4259-4ada-48f3-a904-9a526b01311f
Noun.email
- 目的: メールアドレス
- エンコード: 標準のメールアドレス形式。
- 例: johns@test.altostrat.com
Noun.file
- 目的: 詳細なファイルのメタデータ。
- タイプ: オブジェクト
- ファイルのメタデータの入力をご覧ください。
Noun.hostname
- 目的: クライアントのホスト名またはドメイン名のフィールド。URL が存在する場合は含めないでください。
- エンコード: 有効な RFC 1123 ホスト名。
- 検証の制限: 検索インデックス登録の制限に準拠するため、ホスト名文字列の長さは 255 バイト以下にする必要があります。
- 例:
- userwin10
- www.altostrat.com
Noun.platform
- 目的: プラットフォームのオペレーティング システム。
- Encoding: 列挙型
- 有効な値:
- Linux
- MAC
- Windows
- UNKNOWN_PLATFORM
Noun.platform_patch_level
- 目的: プラットフォームのオペレーティング システムのパッチレベル。
- エンコード: 句読点を含む英数字の文字列(最大 64 文字)。
- 例: Build 17134.48
Noun.platform_version
- 目的: プラットフォームのオペレーティング システムのバージョン。
- エンコード: 句読点を含む英数字の文字列(最大 64 文字)。
- 例: Microsoft Windows 10 バージョン 1803
Noun.process
- 目的: 詳細なプロセスのメタデータ。
- タイプ: オブジェクト
- プロセスのメタデータの入力をご覧ください。
Noun.ip
- 目的:
- ネットワーク接続に関連付けられた単一の IP アドレス。
- イベント発生時に関与しているデバイスに関連付けられた 1 つ以上の IP アドレス(たとえば、EDR プロダクトがデバイスに関連付けられた IP アドレスをすべて認識している場合、それらをすべて IP フィールドにエンコードできます)。
- エンコード: ASCII でエンコードされた有効な IPv4(4 バイト)または IPv6(16 バイト)アドレス文字列(RFC 5942)。
- 再現性:
- イベントで特定のネットワーク接続(srcip:srcport > dstip:dstport など)を記述する場合は、単一の IP アドレスのみを指定する必要があります。
- イベントが、特定のネットワーク接続ではなく、参加者デバイスで発生している一般的なアクティビティを記述している場合は、イベント発生時にデバイスに関連付けられているすべての IP アドレスを指定できます。
- 例:
- 192.168.1.2
- 2001:db8:1:3::1
Noun.port
- 目的: イベント内で特定のネットワーク接続を記述するときのソースまたは宛先ネットワークのポート番号。
- エンコード: 1 ~ 65,535 の有効な TCP/IP ポート番号。
例:
- 80
- 443
Noun.mac
- 目的: デバイスに関連付けられた 1 つ以上の MAC アドレス。
- エンコード: ASCII でエンコードされた 48 ビットの拡張固有識別子(EUI-48)形式に準拠した有効な 6 バイトの MAC アドレス。
- 再現性: イベント発生時にデバイスに関連付けられているすべての MAC アドレスを提供できる。
- 例:
- 00:24:98:7B:19:02
- 00:00:5e:00:53:2a
Noun.administrative_domain
- 目的: デバイスが属しているドメイン(Windows ドメインなど)。
- エンコード: 有効なドメイン名の文字列(最大 128 文字)。
- 例: corp.altostrat.com
Noun.registry
- 目的: 詳細なレジストリのメタデータ。
- タイプ: オブジェクト
- レジストリのメタデータの入力をご覧ください。
Noun.url
- 目的: 標準 URL
- エンコード: URL(RFC 3986)。有効なプロトコルのプレフィックス(https://、ftp:// など)が含まれる必要があります。ドメインの完全なパスが含まれる必要があります。 URL のパラメータが含まれる場合があります。
- 例: https://foo.altostrat.com/bletch?a=b;c=d
Noun.user
- 目的: 詳細なユーザーのメタデータ。
- タイプ: オブジェクト
- ユーザーのメタデータの入力をご覧ください。
認証のメタデータの入力
Authentication.AuthType
- 目的: 認証イベントが関連付けられているシステムの種類(Google Security Operations UDM)。
- エンコード: 列挙型。
- 有効な値:
- AUTHTYPE_UNSPECIFIED
- MACHINE - マシン認証
- PHYSICAL - 物理的な認証(バッジリーダーなど)
- SSO
- TACACS - ネットワーク接続システムの認証に使用される TACACS ファミリー プロトコル(TACACS、TACACS+ など)
- VPN
Authentication.Authentication_Status
- 目的: ユーザーまたは特定の認証情報の認証ステータスを記述します。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_AUTHENTICATION_STATUS - デフォルトの認証ステータス
- ACTIVE - 認証方式がアクティブな状態です
- SUSPENDED - 認証方式が一時停止または無効な状態です
- DELETED - 認証方法が削除されました
- NO_ACTIVE_CREDENTIALS - 認証方法に有効な認証情報がありません。
Authentication.auth_details
- 目的: ベンダー定義の認証の詳細。
- エンコード: 文字列。
Authentication.Mechanism
- 目的: 認証に使用されるメカニズム。
- エンコード: 列挙型。
- 有効な値:
- MECHANISM_UNSPECIFIED - デフォルトの認証メカニズム。
- BADGE_READER
- BATCH - 一括認証。
- CACHED_INTERACTIVE - キャッシュされた認証情報を使用するインタラクティブ認証。
- HARDWARE_KEY
- LOCAL
- MECHANISM_OTHER - ここで定義されていない他のメカニズム。
- NETWORK - ネットワーク認証。
- NETWORK_CLEAR_TEXT - ネットワーク平文認証。
- NEW_CREDENTIALS - 新しい認証情報を使用する認証。
- OTP
- REMOTE -リモート認証
- REMOTE_INTERACTIVE - RDP、ターミナル サービス、Virtual Network Computing(VNC)など。
- SERVICE - サービス認証。
- UNLOCK - 人間による直接インタラクティブ ロック解除認証。
- USERNAME_PASSWORD
DHCP のメタデータの入力
Dynamic Host Control Protocol(DHCP)のメタデータ フィールドは、DHCP のネットワーク管理プロトコルのログ情報を記録します。
Dhcp.client_hostname
- 目的: クライアントのホスト名。詳しくは、RFC 2132、DHCP のオプション、BOOTP のベンダー拡張についてご確認ください。
- エンコード: 文字列。
- 検証の制限: 検索インデックス登録の制限に準拠するため、ホスト名オプション文字列の長さは 255 バイト以下にする必要があります。
Dhcp.client_identifier
- 目的: クライアント識別子。詳しくは、RFC 2132、DHCP のオプション、BOOTP のベンダー拡張についてご確認ください。
- エンコード: バイト。
Dhcp.file
- 目的: ブートイメージのファイル名。
- エンコード: 文字列。
Dhcp.flags
- 目的: DHCP フラグのフィールドの値。
- エンコード: 32 ビットの符号なし整数。
Dhcp.hlen
- 目的: ハードウェア アドレスの長さ。
- エンコード: 32 ビットの符号なし整数。
Dhcp.hops
- 目的: DHCP ホップ数。
- エンコード: 32 ビットの符号なし整数。
Dhcp.htype
- 目的: ハードウェア アドレスのタイプ。
- エンコード: 32 ビットの符号なし整数。
Dhcp.lease_time_seconds
- 目的: クライアントがリクエストした、IP アドレスのリース期間(秒単位)。詳しくは、RFC 2132、DHCP のオプション、BOOTP のベンダー拡張についてご確認ください。
- エンコード: 32 ビットの符号なし整数。
Dhcp.opcode
- 目的: BOOTP オペコード(RFC 951 のセクション 3 を参照)。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_OPCODE
- BOOTREQUEST
- BOOTREPLY
Dhcp.requested_address
- 目的: クライアント識別子。詳しくは、RFC 2132、DHCP のオプション、BOOTP のベンダー拡張についてご確認ください。
- エンコード: ASCII でエンコードされた有効な IPv4 または IPv6 アドレス(RFC 5942)。
Dhcp.seconds
- 目的: クライアントがアドレスの取得または更新プロセスを開始してからの経過時間(秒)。
- エンコード: 32 ビットの符号なし整数。
Dhcp.sname
- 目的: クライアントによる起動リクエスト発信元サーバーの名前。
- エンコード: 文字列。
Dhcp.transaction_id
- 目的: クライアントのトランザクション ID。
- エンコード: 32 ビットの符号なし整数。
Dhcp.type
- 目的: DHCP メッセージ タイプ。詳しくは、RFC 1533 についてご確認ください。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_MESSAGE_TYPE
- DISCOVER
- 割引
- リクエスト
- DECLINE
- ACK
- NAK
- RELEASE
- 情報提供
- WIN_DELECTED
- WIN_EXPIRED
Dhcp.chaddr
- 目的: クライアントのハードウェア アドレス。
- エンコード: MAC アドレス。
Dhcp.ciaddr
- 目的: クライアントの IP アドレス。
- エンコード: ASCII でエンコードされた有効な IPv4 または IPv6 アドレス(RFC 5942)。
Dhcp.giaddr
- 目的: リレー エージェントの IP アドレス。
- エンコード: ASCII でエンコードされた有効な IPv4 または IPv6 アドレス(RFC 5942)。
Dhcp.siaddr
- 目的: 次のブートストラップ サーバーの IP アドレス。
- エンコード: ASCII でエンコードされた有効な IPv4 または IPv6 アドレス(RFC 5942)。
Dhcp.yiaddr
- 目的: ユーザーの IP アドレス。
- エンコード: ASCII でエンコードされた有効な IPv4 または IPv6 アドレス(RFC 5942)。
DHCP オプションのメタデータの入力
DHCP オプション メタデータ フィールドには、DHCP オプションログの情報が記録されます。
Option.code
- 目的: DHCP オプション コードの保存詳しくは、RFC 1533 のDHCP のオプションとBOOTP のベンダー拡張をご確認ください。
- エンコード: 32 ビットの符号なし整数。
Option.data
- 目的: DHCP オプション データの保存。詳しくは、RFC 1533 のDHCP のオプションとBOOTP のベンダー拡張をご確認ください。
- エンコード: バイト。
DNS メタデータの入力
DNS メタデータ フィールドには、DNS リクエストおよびレスポンス パケットに関連する情報が取得されます。DNS リクエストとレスポンスのデータグラムにあるデータとは 1 対 1 で対応しています。
Dns.authoritative
- 目的: 権威 DNS サーバーの場合は true に設定します。
- エンコード: ブール値。
Dns.id
- 目的: DNS クエリ ID の保存。
- エンコード: 32 ビット整数。
Dns.response
- 目的: イベントが DNS レスポンスの場合は true に設定します。
- エンコード: ブール値。
Dns.opcode
- 目的: DNS クエリのタイプ(標準、逆引き、サーバー ステータスなど)を指定するために使用される DNS OpCode を保存します。
- エンコード: 32 ビット整数。
Dns.recursion_available
- 目的: 再帰 DNS ルックアップが利用可能な場合は true に設定します。
- エンコード: ブール値。
Dns.recursion_desired
- 目的: 再帰的な DNS ルックアップがリクエストされた場合は true に設定します。
- エンコード: ブール値。
Dns.response_code
- 目的: RFC 1035(ドメイン名 - 実装と仕様)で定義されている DNS レスポンス コードを保存します。
- エンコード: 32 ビット整数。
Dns.truncated
- 目的: これが切り捨てられた DNS レスポンスの場合は true に設定します。
- エンコード: ブール値。
Dns.questions
- 目的: ドメイン プロトコル メッセージの質問を保存します。DNS Question メタデータの入力をご覧ください。
Dns.answers
- 目的: ドメイン名クエリに対する回答を保存します。DNS リソース レコードのメタデータの入力をご覧ください。
Dns.authority
- 目的: ドメイン名クエリに対する答えを検証したドメイン ネームサーバーを保存します。DNS リソース レコードのメタデータの入力をご覧ください。
Dns.additional
- 目的: ドメインに対する答えを検証するために使用できる追加のドメイン名サーバーを保存します。DNS リソース レコードのメタデータの入力をご覧ください。
DNS Question メタデータの入力
DNS Question メタデータ フィールドには、ドメイン プロトコル メッセージの question セクションに含まれている情報が入力されています。
Question.name
- 目的: ドメイン名を保存します。
- エンコード: 文字列。
- 検証の制限: ドメイン クエリ文字列は空にできません。また、RFC 1035 の規則と検索インデックスの制限に従って、255 オクテット(バイト)以下にする必要があります。
Question.class
- 目的: クエリのクラスを指定するコードを保存します。
- エンコード: 32 ビット整数。
Question.type
- 目的: クエリのタイプを指定するコードを保存します。
- エンコード: 32 ビット整数。
DNS リソース レコードのメタデータの入力
DNS リソース レコード メタデータ フィールドには、ドメイン プロトコル メッセージのリソース レコードに含まれる情報が入力されます。
ResourceRecord.binary_data
- 目的: DNS レスポンスの一部として含まれる可能性のある UTF8 以外の文字列の未加工バイトを保存します。DNS サーバーが返すレスポンス データに UTF8 以外のデータが含まれている場合にのみ、このフィールドを使用する必要があります。それ以外の場合は、DNS レスポンスを「data」フィールドに配置します。このタイプの情報は、ResourceRecord.data ではなく、ここに保存する必要があります。
エンコード: バイト。
ResourceRecord.class
- 目的: リソース レコードのクラスを指定するコードを保存します。
- エンコード: 32 ビット整数。
ResourceRecord.data
- 目的: UTF-8 形式でエンコードされたすべてのレスポンスの DNS 質問に対するペイロードまたはレスポンスを保存します。たとえば、データ フィールドは、ドメイン名が参照するマシンの IP アドレスを返すことができます。リソース レコードが別のタイプまたはクラスの場合、別のドメイン名が含まれている可能性があります(1 つのドメイン名が別のドメイン名にリダイレクトされた場合)。データは DNS レスポンスと同じように保存する必要があります。
- エンコード: 文字列。
ResourceRecord.name
- 目的: リソース レコードのオーナーの名前を保存します。
- エンコード: 文字列。
ResourceRecord.ttl
- 目的: 情報源に再度クエリを実行する前に、リソース レコードをキャッシュに保存できる期間を保存します。
- エンコード: 32 ビット整数。
ResourceRecord.type
- 目的: リソース レコードのタイプを指定するコードを保存します。
- エンコード: 32 ビット整数。
メールのメタデータの入力
メールのメタデータ フィールドのほとんどには、メッセージ ヘッダーに含まれるメールアドレスを記録します。また、RFC 5322 で定義されている標準的なメールアドレスの形式(local-mailbox@domain)に従う必要があります。例: frank@email.example.com。
Email.from
- 目的: from のメールアドレスを保存します。
- エンコード: 文字列。
Email.reply_to
- 目的: reply_to のメールアドレスを保存します。
- エンコード: 文字列。
Email.to
- 目的: to メールアドレスを保存します。
- エンコード: 文字列。
Email.cc
- 目的: cc メールアドレスを保存します。
- エンコード: 文字列。
Email.bcc
- 目的: bcc メールアドレスを保存します。
- エンコード: 文字列。
Email.mail_id
- 目的: メール(またはメッセージ)の ID を保存します。
- エンコード: 文字列。
- 例: 192544.132632@email.example.com
Email.subject
- 目的: メールの件名を保存します。
- エンコード: 文字列。
- 例: 「このメッセージを読んでください。」
拡張機能のメタデータの入力
Google SecOps UDM でまだ分類されていない、組み込みメタデータを含むイベントタイプ。
Extensions.auth
- 目的: 認証メタデータの拡張。
- エンコード: 文字列。
- 例:
- サンドボックス メタデータ(ファイルによって示されたすべての行動。FireEye など)。
- ネットワーク アクセス制御(NAC)のデータ
- ユーザーに関する LDAP の詳細(ロール、組織など)
Extensions.auth.auth_details
- 目的: 認証のタイプまたはメカニズムのベンダー固有の詳細を指定します。認証プロバイダは、認証タイプに関する有用な情報を提供する via_mfa や via_ad などのタイプを定義することがよくあります。これらのタイプは、ユーザビリティとデータセット間のルールの互換性のために、引き続き auth.type または auth.mechanism として一般化できます。
- エンコード: 文字列。
- 例: via_mfa、via_ad。
Extensions.vulns
- 目的: 脆弱性メタデータの拡張。
- エンコード: 文字列。
- 例: ホストの脆弱性スキャンデータ。
ファイルのメタデータの入力
File.file_metadata
- 目的: ファイルに関連付けられたメタデータ。
- エンコード: 文字列。
- 例:
- 作成者
- リビジョン番号
- バージョン番号
- 最終保存日
File.full_path
- 目的: システム上のファイルの場所を特定するフルパス。
- エンコード: 文字列。
- 例: \Program Files\Custom Utilities\Test.exe
File.md5
- 目的: ファイルの MD5 ハッシュ値。
- エンコード: 文字列、小文字の 16 進数。
- 例: 35bf623e7db9bf0d68d0dda764fd9e8c
File.mime_type
- 目的: ファイルの Multipurpose Internet Mail Extensions(MIME)タイプ。
- エンコード: 文字列。
- 例:
- PE
- PowerShell スクリプト
File.sha1
- 目的: ファイルの SHA-1 ハッシュ値。
- エンコード: 文字列、小文字の 16 進数。
- 例: eb3520d53b45815912f2391b713011453ed8abcf
File.sha256
- 目的: ファイルの SHA-256 ハッシュ値。
- エンコード: 文字列、小文字の 16 進数。
- 例: d7173c568b8985e61b4050f81b3fd8e75bc922d2a0843d7079c81ca4b6e36417
File.size
- 目的: ファイルのサイズ。
- エンコード: 64 ビットの符号なし整数。
- 例: 342135
FTP のメタデータの入力
Ftp.command
- 目的: FTP コマンドを保存します。
- エンコード: 文字列。
- 例:
- バイナリ
- delete
- get
- put
グループのメタデータの入力
組織のグループに関する情報。正規化中に有効な組織グループ ID を表すには、Group.email_addresses のメールアドレスまたは Group.windows_sid の Windows セキュリティ ID を指定して、少なくとも 1 つのコアグループ属性をパラメータ化する必要があります。
Group.creation_time
- 目的: グループの作成日時。
- エンコード: RFC 3339(JSON または Proto3 のタイムスタンプ形式に適したもの)。
Group.email_addresses
- 目的: 連絡先情報をグループ化する。
- エンコード: メール。
Group.group_display_name
- 目的: グループの表示名。
- エンコード: 文字列。
- 例:
- 財務
- HR
- マーケティング
Group.product_object_id
- 目的: プロダクトのグローバルに一意のユーザー オブジェクト識別子(LDAP オブジェクト識別子など)。
- エンコード: 文字列。
Group.windows_sid
- 目的: Microsoft Windows セキュリティ識別子(SID)グループ属性フィールド。
- エンコード: 文字列。
HTTP のメタデータの入力
Http.method
- 目的: HTTP リクエスト メソッドを保存します。HTTP または HTTPS トランスポート プロトコルを介してトラフィックが発生する場合は、アクティブなリクエスト メソッドを指定する必要があります。メソッドを METHOD_UNSPECIFIED に設定したままにすることはできません。
- エンコード: 文字列。
- 例:
- GET
- HEAD
- POST
Http.referral_url
- 目的: HTTP リファラーの URL を保存します。
- エンコード: 有効な RFC 3986 URL。
- 例: https://www.altostrat.com
Http.response_code
- 目的: HTTP レスポンスのステータス コードを保存します。このコードは、特定の HTTP リクエストが正常に完了したかどうかを示します。
- エンコード: 32 ビット整数。
- 例:
- 400
- 404
Http.user_agent
- 目的: ユーザー エージェントのリクエスト ヘッダーを保存します。このヘッダーには、リクエスト側のソフトウェア ユーザー エージェントのアプリケーション タイプ、オペレーティング システム、ソフトウェア ベンダー、ソフトウェア バージョンが含まれます。ユーザー エージェント ヘッダー文字列は、有効な UTF-8 でエンコードされた文字配列のみで構成されている必要があります。
- エンコード: 文字列。
- 例:
- Mozilla / 5.0(X11。Linux x86_64)
- AppleWebKit / 534.26(KHTML。Gecko など)
- Chrome / 41.0.2217.0
- Safari/527.33
位置情報メタデータの入力
Location.city
- 目的: 都市の名前を保存します。
- エンコード: 文字列。
- 例:
- サニーベール
- シカゴ
- マラガ
Location.country_or_region
- 目的: 世界の国または地域の名前を保存します。
- エンコード: 文字列。
- 例:
- 米国
- 英国
- スペイン
Location.name
- 目的: 建物やキャンパスなど、企業に固有の名前を保存します。
- エンコード: 文字列。
- 例:
- キャンパス 7B
- 建物 A2
Location.state
- 目的: 州、県、地域の名前を保存します。
- エンコード: 文字列。
- 例:
- カリフォルニア
- イリノイ
- オンタリオ
ネットワークのメタデータの入力
Network.application_protocol
- 目的: ネットワーク アプリケーション プロトコルを示します。
- エンコード: 列挙型。
有効な値:
- UNKNOWN_APPLICATION_PROTOCOL
- AFP
- APPC
- AMQP
- ATOM
- ビープ音
- BITCOIN
- BIT_TORRENT
- CFDP
- CIP
- COAP
- COTP
- DCERPC
- DDS
- DEVICE_NET
- DHCP
- DICOM
- DNP3
- DNS
- E_DONKEY
- ENRP
- FAST_TRACK
- FINGER
- FREENET
- FTAM
- GOOSE
- GOPHER
- GRPC
- HL7
- H323
- HTTP
- HTTPS
- IEC104
- IRCP
- KADEMLIA
- KRB5
- LDAP
- LPD
- MIME
- MMS
- MODBUS
- MQTT
- NETCONF
- NFS
- NIS
- NNTP
- NTCIP
- NTP
- OSCAR
- PNRP
- PTP
- QUIC
- RDP
- RELP
- RIP
- RLOGIN
- RPC
- RTMP
- RTP
- RTPS
- RTSP
- SAP
- SDP
- SIP
- SLP
- SMB
- SMTP
- SNMP
- SNTP
- SSH
- SSMS
- STYX
- SV
- TCAP
- TDS
- TOR
- TSP
- VTP
- WHOIS
- WEB_DAV
- X400
- X500
- XMPP
Network.direction
- 目的: ネットワーク トラフィックの方向を指定します。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_DIRECTION
- INBOUND
- OUTBOUND
- BROADCAST
Network.email
- 目的: 送信者 / 受信者のメールアドレスを指定します。
- エンコード: 文字列。
- 例: jcheng@company.example.com
Network.ip_protocol
- 目的: IP プロトコルを示します。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_IP_PROTOCOL
- EIGRP - Enhanced Interior Gateway Routing Protocol
- ESP - カプセル化セキュリティ ペイロード
- ETHERIP - Ethernet-within-IP Encapsulation
- GRE - Generic Routing Encapsulation
- ICMP - Internet Control Message Protocol
- IGMP - Internet Group Management Protocol
- IP6IN4 - IPv6 Encapsulation
- PIM - Protocol Independent Multicast
- TCP - 伝送制御プロトコル
- UDP - User Datagram Protocol
- VRRP - Virtual Router Redundancy Protocol
Network.received_bytes
- 目的: 受信するバイト数を指定します。
- エンコード: 64 ビットの符号なし整数。
- 例: 12,453,654,768
Network.sent_bytes
- 目的: 送信するバイト数を指定します。
- エンコード: 64 ビットの符号なし整数。
- 例: 7,654,876
Network.session_duration
- 目的: ネットワーク セッション継続時間を保存します。通常、セッションのドロップ イベントで返されます。期間を設定するには、network.session_duration.seconds = 1(int64 型)または network.session_duration.nanos = 1(int32 型)のいずれかに設定します。
- エンコード:
- 32 ビットの整数 - 秒(network.session_duration.seconds)。
- 64 ビット整数 - ナノ秒(network.session_duration.nanos)。
Network.session_id
- 目的: ネットワーク セッション ID を保存します。
- エンコード: 文字列。
- 例: SID:ANON:www.w3.org:j6oAOxCWZh/CD723LGeXlf-01:34
プロセスのメタデータの入力
Process.command_line
- 目的: プロセスのコマンドライン文字列を保存します。
- エンコード: 文字列。
- 例:
c:\windows\system32\net.exeグループ。
Process.product_specific_process_id
- 目的: プロダクト固有のプロセス ID を保存します。
- エンコード: 文字列。
- 例: 、
MySQL:78778またはCS:90512。
Process.parent_process.product_specific_process_id
- 目的: 親プロセスのプロダクト固有のプロセス ID を保存します。
- エンコード: 文字列。
- 例: 、
MySQL:78778またはCS:90512。
Process.file
- 目的: プロセスで使用されているファイルのファイル名を保存します。
- エンコード: 文字列。
- 例: report.xls
Process.parent_process
- 目的: 親プロセスの詳細を保存します。
- エンコード: 名詞(プロセス)
Process.pid
- 目的: プロセス ID を保存します。
- エンコード: 文字列。
- 例:
- 308
- 2002
レジストリのメタデータの入力
Registry.registry_key
- 目的: アプリケーションまたはシステム コンポーネントに関連付けられたレジストリ キーを保存します。
- エンコード: 文字列。
- 例: HKEY_LOCAL_MACHINE/SYSTEM/DriverDatabase
Registry.registry_value_name
- 目的: アプリケーションまたはシステム コンポーネントに関連付けられたレジストリ値の名前を保存します。
- エンコード: 文字列。
- 例: TEMP
Registry.registry_value_data
- 目的: レジストリ値に関連付けられたデータを保存します。
- エンコード: 文字列。
- 例: %USERPROFILE%\Local Settings\Temp
セキュリティ結果のメタデータの入力
セキュリティ結果のメタデータには、セキュリティ システムによって検出された、またはセキュリティ上のリスクや脅威を低減するために行ったアクションによって検出されたセキュリティ上のリスクや脅威の詳細を含めます。
SecurityResult.about
- 目的: セキュリティ結果の説明を入力します。
- エンコード: 名詞。
SecurityResult.action
- 目的: セキュリティ アクションを指定します。
- エンコード: 列挙型。
- 有効な値: Google SecOps UDM では、次のセキュリティ アクションが定義されています。
- 許可
- ALLOW_WITH_MODIFICATION - ファイルやメールがウイルス駆除されて、または書き換えられて、転送されました。
- ブロック
- QUARANTINE - 後で分析するために保存します(ブロックするわけではありません)。
- UNKNOWN_ACTION
SecurityResult.action_details
- 目的: セキュリティ インシデントの結果として行われたアクションに関するベンダー提供の詳細。一般的に、セキュリティ アクションはより一般的な Security_Result.action UDM フィールドに変換されます。ただし、場合によっては、ベンダー提供のアクションの説明のために正確なルールを記述する必要があります。
- エンコード: 文字列。
- 例: drop、block、decrypt、encrypt。
SecurityResult.category
- 目的: セキュリティ カテゴリを指定します。
- Encoding: 列挙型。
- 有効な値: Google SecOps UDM では、次のセキュリティ カテゴリが定義されています。
- ACL_VIOLATION - ファイル、ウェブサービス、プロセス、ウェブ オブジェクトへのアクセスなどの不正なアクセスが試行されました。
- AUTH_VIOLATION - パスワードが正しくないか、2 要素認証などの認証に失敗しました。
- DATA_AT_REST - DLP: スキャン中に保存されたセンサーデータ。
- DATA_DESTRUCTION - データの破壊または削除を試みる。
- DATA_EXFILTRATION - DLP: センサーデータの送信、USB メモリへのコピー。
- EXPLOIT - オーバーフロー、プロトコル エンコードの誤り、ROP、SQL インジェクションなど、ネットワークとホストベースの試行。
- mail_PHISHING - フィッシング メール、チャット メッセージなど。
- MAIL_SPAM - 迷惑メール、メッセージなど。
- MAIL_SPOOFING - なりすまし送信元のメールアドレス。
- NETWORK_CATEGORIZED_CONTENT
- NETWORK_COMMAND_AND_CONTROL - コマンド&コントロール チャネルが既知の場合。
- NETWORK_DENIAL_OF_SERVICE
- NETWORK_MALICIOUS - コマンド&コントロール、ネットワーク エクスプロイト、不審なアクティビティ、潜在的なリバース トンネルなど。
- NETWORK_SUSPICIOUS - セキュリティに関連しないもの(URL がギャンブルにリンクされている場合など)。
- NETWORK_RECON - IDS によって検出されたポートスキャン、ウェブ アプリケーションによるプローブ。
- POLICY_VIOLATION - ファイアウォール、プロキシ、HIPS ルールの違反、NAC ブロック アクションなどのセキュリティ ポリシー違反。
- SOFTWARE_MALICIOUS - マルウェア、スパイウェア、ルートキットなど。
- SOFTWARE_PUA - アドウェアなど、望ましくないアプリ。
- SOFTWARE_SUSPICIOUS
- UNKNOWN_CATEGORY
SecurityResult.confidence
- 目的: プロダクトによって推定されたセキュリティ イベントに関する信頼度を指定します。
- Encoding: 列挙型。
- 有効な値: Google SecOps UDM では、次のプロダクトの信頼カテゴリが定義されています。
- UNKNOWN_CONFIDENCE
- LOW_CONFIDENCE
- MEDIUM_CONFIDENCE
- HIGH_CONFIDENCE
SecurityResult.confidence_details
- 目的: プロダクト ベンダーが推定したセキュリティ イベントの信頼度に関する追加の詳細。
- エンコード: 文字列。
SecurityResult.priority
- 目的: プロダクト ベンダーが推定したセキュリティ イベントに関する優先度を指定します。
- Encoding: 列挙型。
- 有効な値: Google SecOps UDM では、次のプロダクト優先度のカテゴリが定義されています。
- UNKNOWN_PRIORITY
- LOW_PRIORITY
- MEDIUM_PRIORITY
- HIGH_PRIORITY
SecurityResult.priority_details
- 目的: セキュリティ結果の優先度に関するベンダー固有の情報。
- エンコード: 文字列。
SecurityResult.rule_id
- 目的: セキュリティ ルールの識別子。
- エンコード: 文字列。
- 例:
- 08123
- 5d2b44d0-5ef6-40f5-a704-47d61d3babbe
SecurityResult.rule_name
- 目的: セキュリティ ルールの名前。
- エンコード: 文字列。
- 例: BlockInboundToOracle。
SecurityResult.severity
- 目的: Google SecOps UDM で定義された値を使用して、プロダクト ベンダーが推定したセキュリティ イベントの重大度。
- Encoding: 列挙型。
- 有効な値: Google SecOps UDM では、次のプロダクト重大度が定義されています。
- UNKNOWN_SEVERITY - 悪意がない
- INFORMATIONAL - 悪意がない
- ERROR - 悪意がない
- LOW - 悪意がある
- MEDIUM - 悪意がある
- HIGH—悪意がある
SecurityResult.severity_details
- 目的: プロダクト ベンダーが推定したセキュリティ イベントの重大度。
- エンコード: 文字列。
SecurityResult.threat_name
- 目的: セキュリティ脅威の名前。
- エンコード: 文字列。
- 例:
- W32/File-A
- Slammer
SecurityResult.url_back_to_product
- 目的: このセキュリティ イベントのソース プロダクト コンソールに移動するための URL。
- エンコード: 文字列。
ユーザーのメタデータの入力
User.email_addresses
- 目的: ユーザーのメールアドレスを保存します。
- エンコード: 繰り返し文字列。
- 例: johnlocke@company.example.com
User.employee_id
- 目的: ユーザーの人事従業員 ID を保存します。
- エンコード: 文字列。
- 例: 11223344。
User.first_name
- 目的: ユーザーの名を保存します。
- エンコード: 文字列。
- 例: 太郎。
User.middle_name
- 目的: ユーザーのミドルネームを保存します。
- エンコード: 文字列。
- 例: Anthony
User.last_name
- 目的: ユーザーの姓を保存します。
- エンコード: 文字列。
- 例: Locke。
User.group_identifiers
- 目的: ユーザーに関連付けられたグループ ID(GUID、LDAP OID など)を保存します。
- エンコード: 繰り返し文字列。
- 例: admin-users。
User.phone_numbers
- 目的: ユーザーの電話番号を保存します。
- エンコード: 繰り返し文字列。
- 例: 18005550101
User.title
- 目的: ユーザーの役職を保存します。
- エンコード: 文字列。
- 例: 顧客関係管理。
User.user_display_name
- 目的: ユーザーの表示名を保存します。
- エンコード: 文字列。
- 例: John Locke。
User.userid
- 目的: ユーザー ID を保存します。
- エンコード: 文字列。
- 例: jlocke。
User.windows_sid
- 目的: ユーザーに関連付けられた Microsoft Windows セキュリティ識別子(SID)を保存します。
- エンコード: 文字列。
- 例: S-1-5-21-1180649209-123456789-3582944384-1064
脆弱性のメタデータの入力
Vulnerability.about
- 目的: 脆弱性が特定の名詞に関するものである場合(executable など)、ここに追加します。
- エンコード: 名詞。名詞のメタデータの入力をご覧ください。
- 例: executable。
Vulnerability.cvss_base_score
- 目的: 共通脆弱性評価システム(CVSS)の基本スコア。
- エンコード: 浮動小数点。
- 範囲: 0.0 ~ 10.0
- 例: 8.5
Vulnerability.cvss_vector
目的: 脆弱性の CVSS プロパティのベクトル。CVSS のスコアは次の指標で構成されます。
- 攻撃ベクトル(AV)
- アクセスの複雑さ(AC)
- 認証(Au)
- 機密性への影響(C)
- 整合性への影響(I)
- 可用性への影響(A)
詳細については、https://nvd.nist.gov/vuln-metrics/cvss/v2-compute をご覧ください。
エンコード: 文字列。
例: AV:L/AC:H/Au:N/C:N/I:P/A:C
Vulnerability.cvss_version
- 目的: 脆弱性スコアまたはベクトルの CVSS バージョン。
- エンコード: 文字列。
- 例: 3.1
Vulnerability.description
- 目的: 脆弱性の説明。
- エンコード: 文字列。
Vulnerability.first_found
- 目的: 脆弱性スキャンの履歴を保持するプロダクトでは、このアセットの脆弱性が最初に検出された時刻を first_found に入力する必要があります。
- エンコード: 文字列。
Vulnerability.last_found
- 目的: 脆弱性スキャンの履歴を保持するプロダクトでは、このアセットの脆弱性が最後に検出された時刻を last_found に入力する必要があります。
- エンコード: 文字列。
Vulnerability.name
- 目的: 脆弱性の名前。
- エンコード: 文字列。
- 例: サポートされていない OS バージョンが検出されました。
Vulnerability.scan_end_time
- 目的: アセット スキャン中に脆弱性が検出された場合は、このフィールドにスキャンの終了時刻を入力します。終了時刻が不明な場合や該当しない場合は、このフィールドを空白のままにします。
- エンコード: 文字列。
Vulnerability.scan_start_time
- 目的: アセットスキャン中に脆弱性が検出された場合は、このフィールドにスキャンの開始時刻を入力します。開始時間が利用できない場合や該当しない場合は、このフィールドを空のままにします。
- エンコード: 文字列。
Vulnerability.severity
- 目的: 脆弱性の重大度。
- エンコード: 列挙型。
- 有効な値:
- UNKNOWN_SEVERITY
- 低
- 中
- 高
Vulnerability.severity_details
- 目的: ベンダー固有の重大度の詳細。
- エンコード: 文字列。
アラート メタデータの入力
idm.is_significant
- 目的: Enterprise Insights にアラートを表示するかどうかを指定します。
- エンコード: ブール値。
idm.is_alert
- 目的: イベントがアラートかどうかを識別します。
- エンコード: ブール値。
エンティティ タイプの必須フィールドとオプション フィールド
| エンティティ タイプ | エンティティ固有の要件 |
|---|---|
IP_ADDRESS |
|
FILE |
|
DOMAIN_NAME |
|
URL |
|
MUTEX |
|
USER |
|
RESOURCE |
|
CIDR_BLOCK |
|
ASSET |
|
GROUP |
|
AI |
|
イベントタイプごとの必須フィールドとオプション フィールド
このセクションでは、各 UDM イベントタイプに入力する必要がある必須フィールドとオプション フィールドについて説明します。
特定の UDM フィールド(列挙型番号など)の詳細については、統合データモデルのフィールド リストをご覧ください。
DEVICE_CONFIG_UPDATE、DEVICE_FIRMWARE_UPDATE、DEVICE_PROGRAM_DOWNLOAD、DEVICE_PROGRAM_UPLOAD
必須フィールド:
- metadata: 必須フィールド(
event_timestampとevent_type)を含めます。 - principal: 1 つ以上のマシン識別子(
principal.hostname、principal.ip、principal.mac、またはprincipal.asset_id)を含めます。
オプション フィールド:
- principal.user: デバイスの更新を開始したアカウントのユーザー情報が利用可能な場合は、このフィールドに入力します。
- target:
principalと異なる場合は、対象デバイス、ファームウェア、構成リソース、プログラム ファイルの詳細を入力します。 - security_result: 検出された悪意のあるアクティビティや異常なアクティビティを記述します。
DEVICE_FIRMWARE_UPDATE の UDM の例
次の例は、Google SecOps UDM の DEVICE_FIRMWARE_UPDATE イベントをフォーマットする方法を示しています。
{
"metadata": {
"event_timestamp": "2025-03-10T14:22:05.000000Z",
"event_type": "DEVICE_FIRMWARE_UPDATE"
},
"principal": {
"hostname": "plc-controller-01",
"ip": [
"10.20.30.40"
]
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: ファームウェアの更新が行われたデバイスに関する情報。
EMAIL_TRANSACTION、EMAIL_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal: メール メッセージの送信元マシンに関する情報を入力します(送信者の IP アドレスなど)。
オプション フィールド:
- about: メールの本文に埋め込まれている URL、IP、ドメイン、添付ファイル。about.file.hash は、ファイルハッシュのインデックス付きフィールドではありません。ハッシュビューは、このフィールドに正規化された添付ファイル ハッシュから入力されません。
- securityResult.about: メール本文に埋め込まれている不正な URL、IP、ファイル。
- network.email: メールの送信者または受信者の情報。network.email はエイリアス フィールドではありません。検索または検出にエイリアスと拡充が必要な場合は、パーサー拡張機能を使用してプリンシパルまたはターゲットにインデックスを付ける必要があります。
- principal: メールの送信元であるクライアント マシンデータがある場合は、principal にサーバーの詳細(クライアント プロセス、ポート番号、ユーザー名など)を入力します。
- target: 宛先メールサーバーのデータがある場合は、target にサーバーの詳細(IP アドレスなど)を入力します。
- intermediary: メールサーバーのデータまたはメールプロキシのデータがある場合は、intermediary にサーバーの詳細を入力します。
注:
- principal.email または target.email には入力しないでください。
- security_result.about または network.email のメール フィールドにのみ入力してください。
- 通常、最上位のセキュリティ結果には名詞のセットが含まれます(迷惑メールの場合は省略できます)。
- EMAIL_URL_CLICK は非推奨としてマークされています。
EMAIL_TRANSACTION の UDM の例
次の例では、EMAIL_TRANSACTION タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata {
event_timestamp: "2023-07-06T06:26:10.448584Z"
event_type: EMAIL_TRANSACTION
}
principal {
ip: "1.2.3.4"
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: メールの送信元デバイスに関する情報。
FILE_CREATION、FILE_DELETION、FILE_MODIFICATION、FILE_READ、FILE_OPEN、FILE_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 少なくとも 1 つのマシン ID。
- (省略可)principal.process に、ファイルにアクセスするプロセスに関する情報を入力します。
- target:
- ファイルがリモートの場合(SMB 共有など)、target にはマシンのマシン ID が少なくとも 1 つ含まれている必要があります。それ以外の場合、すべてのマシン ID は空白である必要があります。
- target.file に、ファイルに関する情報を入力します。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
- principal.user: プロセスに関するユーザー情報が利用可能かどうかを入力します。
FILE_MODIFICATION の UDM の例
次の例では、FILE_MODIFICATION タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata {
event_timestamp: "2023-07-03T12:14:38.164507Z"
event_type: FILE_MODIFICATION
}
principal {
hostname: "pinguino-01"
}
target {
file {
full_path: "foo.bar"
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: ファイルの変更が行われたデバイスに関する情報。
- target: 変更されたファイルに関する情報。
FILE_COPY
必須フィールド:
- metadata: 説明されている必須フィールドを含めます。
- principal:
- 少なくとも 1 つのマシン ID。
- (省略可)principal.process に、ファイルコピー オペレーションを実行するプロセスに関する情報を入力します。
- src:
- src.file に、ソースファイルに関する情報を入力します。
- ファイルがリモートの場合(SMB 共有など)、src にはソースファイルを保存するソースマシンのマシン識別子が少なくとも 1 つ含まれている必要があります。
- target:
- target.file に、ターゲット ファイルに関する情報を入力します。
- ファイルがリモートの場合(SMB 共有など)、target フィールドには、ターゲット ファイルを保持するターゲット マシンのマシン識別子を 1 つ以上含める必要があります。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
- principal.user: プロセスに関するユーザー情報が利用可能かどうかを入力します。
FILE_MOVE、FILE_SYNC
必須フィールド:
- metadata: イベントの背景情報。
- principal: 1 つ以上のマシン識別子(例:
principal.hostname)。 - src:
src.file(src.file.full_pathなど)を入力して、元のファイルを表します。このフィールドはFILE_MOVEとFILE_COPYで必須です。FILE_SYNCの場合、src.fileまたはtarget.fileの少なくとも 1 つに値を入力する必要があります(targetは空にできません)。 - target:
target.file(例:target.file.full_path)を入力して、宛先ファイルを表します。このフィールドはFILE_MOVEとFILE_COPYで必須です。FILE_SYNCの場合、src.fileまたはtarget.fileの少なくとも 1 つに値を入力する必要があります。
FILE_MOVE の UDM の例
次の例では、FILE_MOVE タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-03T12:45:02.557878Z",
"event_type": "FILE_MOVE"
},
"src": {
"file": {
"full_path": "foo.bar"
}
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"file": {
"full_path": "foo.bar"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: ファイルの移動が行われたデバイスに関する情報。
- src: ソースファイルに関する情報。
- target: 宛先ファイルに関する情報。
GENERIC_EVENT
GENERIC_EVENT は、イベントが他の UDM イベントタイプ カテゴリに適合しない場合にのみ使用します。
必須フィールド:
- metadata: 必須フィールド(
event_timestampとevent_type)を含めます。
オプション フィールド:
- metadata.product_event_type と metadata.description: ベンダー固有のイベント名と人が読める説明が含まれます。
- principal、target、src、intermediary、observer、about: イベントに関連するエンティティを入力します。
GENERIC_EVENTは、標準のスカラー型検証(有効な IP アドレスや 255 バイトまでのホスト名など)を超えるエンティティ固有のフィールド要件を適用しません。 - security_result: 検出された悪意のあるアクティビティや異常なアクティビティを記述します。
GENERIC_EVENT の UDM の例
次の例は、Google SecOps UDM の GENERIC_EVENT イベントをフォーマットする方法を示しています。
{
"metadata": {
"event_timestamp": "2025-03-10T15:00:00.000000Z",
"event_type": "GENERIC_EVENT",
"product_event_type": "CustomAuditEvent",
"description": "Custom audit event recorded on host"
},
"principal": {
"hostname": "workstation-01"
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報とベンダー固有の説明。
- principal: イベントに関連付けられたデバイスに関する情報。
GROUP_CREATION、GROUP_DELETION、GROUP_MODIFICATION、GROUP_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールド(
event_timestampとevent_type)を含めます。 - principal:
principal.userに 1 つ以上のユーザー識別子(userid、windows_sid、email_addresses、employee_id)を含めます。 - target: 作成、削除、変更されるグループの詳細を
target.groupに入力します(ユーザーがグループに追加または削除される場合はtarget.user)。targetフィールドは空にできません。
オプション フィールド:
- principal: グループ オペレーションの起点となったデバイスのマシン識別子を含めます。
- target.group:
group_display_name、product_object_id、windows_sid、email_addressesなどのグループ ID を含めます。 - security_result: 検出された悪意のあるアクティビティを記述します。
GROUP_MODIFICATION の UDM の例
次の例は、Google SecOps UDM の GROUP_MODIFICATION イベントをフォーマットする方法を示しています。
{
"metadata": {
"event_timestamp": "2025-03-10T16:10:00.000000Z",
"event_type": "GROUP_MODIFICATION"
},
"principal": {
"user": {
"userid": "admin_user"
}
},
"target": {
"group": {
"group_display_name": "Domain Admins",
"windows_sid": "S-1-5-21-3623811015-3361044348-30300820-512"
},
"user": {
"userid": "jdoe"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: グループを変更したユーザーに関する情報。
- target: 変更されたグループと影響を受けるユーザーに関する情報。
MUTEX_CREATION、MUTEX_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 1 つ以上のマシン識別子。
- principal.process に、ミューテックスを作成するプロセスに関する情報を入力します。UDM 検証では、プリンシパルにプロセス オブジェクトが必要です。ターゲットにのみプロセスがある場合、UDM 検証に合格できません。
- target:
- target.resource に入力します。
- target.resource.type に MUTEX を入力します。
- target.resource.name に、作成したミューテックスの名前を入力します。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
- principal.user: プロセスに関するユーザー情報が利用可能かどうかを入力します。
MUTEX_CREATION の UDM の例
次の例では、MUTEX_CREATION タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: MUTEX_CREATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "test.altostrat.com"
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
target {
resource {
type: "MUTEX"
name: "test-mutex"
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスとプロセスの詳細。
- target: ミューテックスの情報。
NETWORK_CONNECTION、NETWORK_FLOW、NETWORK_FTP、NETWORK_SMTP
必須フィールド:
- metadata: event_timestamp
- principal: ネットワーク接続を開始したマシンの詳細(ソースなど)を含めます。
- target: プリンシパル マシンと異なる場合はターゲット マシンの詳細を含めます。
- network: ネットワーク接続(ポート、プロトコルなど)の詳細を含めます。
オプション フィールド:
- principal.process と target.process: ネットワーク接続のプリンシパルとターゲットに関連付けられたプロセス情報を含めます(該当する場合)。
- principal.user と target.user: ネットワーク接続のプリンシパルとターゲットに関連付けられたユーザー情報を含めます(該当する場合)。
- network: ポートやプロトコルなど、ネットワーク接続に関する詳細をキャプチャします。
NETWORK_DHCP
必須フィールド:
- metadata: イベントの背景情報。
- principal: 1 つ以上のマシン識別子(例: principal.ip)。
- network: network.application_protocol を DHCP として指定する必要があります。また、network.dhcp.opcode を入力する必要があります(例: BOOTREQUEST、BOOTREPLY)。
NETWORK_DHCP の UDM の例
次の例は、NETWORK_DHCP タイプのイベントを Google SecOps UDM にフォーマットする方法を示しています。
{
"metadata": {
"event_timestamp": "2023-07-04T18:52:22.142364Z",
"event_type": "NETWORK_DHCP"
},
"principal": {
"ip": [
"1.2.3.4"
]
},
"network": {
"application_protocol": "DHCP",
"dhcp": {
"opcode": "BOOTREPLY"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: DHCP リースをリクエストまたは受信するデバイスに関する情報。
- network: DHCP ネットワーク接続とオペレーション コードの詳細。
NETWORK_DNS
必須フィールド:
- principal: 1 つ以上のマシン識別子(例: principal.ip)。
- network: network.application_protocol を DNS として指定する必要があります。network.dns.questions.name も必要です。
- metadata: イベントの背景情報。
NETWORK_DNS の UDM の例
次の例は、NETWORK_DNS タイプのイベントを Google SecOps UDM にフォーマットする方法を示しています。
{
"metadata": {
"event_timestamp": "2023-07-04T18:54:15.943301Z",
"event_type": "NETWORK_DNS"
},
"principal": {
"ip": [
"1.2.3.4"
]
},
"network": {
"application_protocol": "DNS",
"dns": {
"questions": {
"name": "www.acme.com"
}
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: DNS リクエストを送信するデバイスに関する情報。
- network: DNS ネットワーク接続とクエリされたドメイン名の詳細。
NETWORK_HTTP
NETWORK_HTTP イベントタイプは、プリンシパルからターゲットのウェブサーバーへの HTTP ネットワーク接続を表します。
必須フィールド:
- metadata: 必須フィールドを含めます。
- target: ウェブサーバーを表します。デバイス情報とオプションのポート番号を含めます。
- ターゲット ポート番号を取得できる場合は、そのネットワーク接続に関連付けられたポート番号に加えて IP アドレスを 1 つだけ指定します(ただし、ターゲットにはその他の複数のマシン識別子を指定できます)。
target.urlには、アクセスした URL を入力します。
オプション フィールド:
- principal: ウェブリクエストを開始するクライアントを表します。1 つ以上のマシン識別子(ホスト名、IP、MAC、独自のアセット識別子など)またはユーザー識別子(ユーザー名など)を含めます。
- 特定のネットワーク接続が記述され、クライアント ポート番号が利用可能な場合は、そのネットワーク接続に関連付けられたポート番号とともに 1 つの IP アドレスのみを指定します(ただし、参加デバイスをより適切に記述するために、他のマシン識別子を指定することもできます)。
- 送信元ポートが使用できない場合は、プリンシパル デバイスを記述するすべての IP アドレス、MAC アドレス、アセット ID、ホスト名の値を指定できます。
- network と network.http: HTTP ネットワーク接続の詳細を含めます。次のフィールドを入力する必要があります。
- network.ip_protocol
- network.application_protocol
- network.http.method
- about: HTTP トランザクションで見つかった他のエンティティ(アップロードしたファイルまたはダウンロードしたファイルなど)を表します。
- intermediatery: プロキシ サーバーを表します(プリンシパルまたはターゲットと異なる場合)。
- metadata: 他のメタデータ フィールドに入力します。
- network: 他のネットワーク フィールドに入力します。
- network.email: HTTP ネットワーク接続がメール メッセージに表示された URL から発信された場合は、network.email に詳細を入力します。
- observer: パッシブ スニファーを表します(存在する場合)。
- security_result: 1 つ以上の項目を security_result フィールドに追加して、検出される悪意のあるアクティビティを表します。
NETWORK_HTTP の UDM の例
次の例は、NETWORK_HTTP タイプの Sophos ウイルス対策イベントを Google SecOps UDM 形式に変換する方法を示しています。
元の Sophos ウイルス対策イベントは次のとおりです。
date=2013-08-07 time=13:27:41 timezone="GMT" device_name="CC500ia" device_id= C070123456-ABCDE log_id=030906208001 log_type="Anti-Virus" log_component="HTTP" log_subtype="Virus" status="" priority=Critical fw_rule_id=0 user_name="john.smith" iap=7 av_policy_name="" virus="TR/ElderadoB.A.78" url="altostrat.fr/img/logo.gif" domainname="altostrat.fr" src_ip=10.10.2.10 src_port=60671 src_country_code= dst_ip=203.0.113.31 dst_port=80 dst_country_code=FRA
Google SecOps UDM 構文を使用して、Proto3 で同じ情報をフォーマットする方法は次のとおりです。
metadata {
event_timestamp: "2013-08-07T13:27:41+00:00"
event_type: NETWORK_HTTP
product_name: "Sophos Antivirus"
product_log_id: "030906208001"
}
principal {
hostname: "CC500ia"
asset_id: "Sophos.AV:C070123456-ABCDE"
ip: "10.10.2.10"
port: 60671
user { userid: "john.smith" }
}
target {
hostname: "altostrat.fr"
ip: "203.0.113.31"
port: 80
url: "altostrat.fr/img/logo.gif"
}
network {
ip_protocol: TCP
}
security_result {
about {
url: "altostrat.fr/img/logo.gif"
category: SOFTWARE_MALICIOUS
category_details: "Virus"
threat_name: "TR/ElderadoB.A.78"
severity: HIGH # Google Security Operations-normalized severity
severity_details: "Critical" # Vendor-specific severity string
}
}
additional { "dst_country_code" : "FRA", "iap" : "7" "fw_rule_id" : "0" }
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: イベントを検出したセキュリティ デバイス。
- target: 悪意のあるソフトウェアを受信したデバイス。
- network: 悪意のあるホストに関するネットワーク情報。
- security_result: 悪意のあるソフトウェアのセキュリティの詳細。
- additional: UDM の範囲外のベンダー情報。
PROCESS_INJECTION、PROCESS_LAUNCH、PROCESS_OPEN、PROCESS_TERMINATION、PROCESS_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 少なくとも 1 つのマシン ID。
- プロセス挿入イベントとプロセス終了イベントについては(取得できる場合)、アクションを開始するプロセスに関する情報を principal.process に含める必要があります(たとえば、プロセス起動イベントの場合、principal.process に親プロセスの詳細を含める必要があります(取得できる場合))。
- target:
- target.process: 挿入、オープン、起動、終了の状態のプロセスに関する情報が含まれます。
- ターゲット プロセスがリモートの場合、ターゲットには、ターゲット マシンの少なくとも 1 つのマシン ID(IP アドレス、MAC、ホスト名、サードパーティのアセット ID など)が含まれている必要があります。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
- principal.user と target.user: ユーザー情報を取得できる場合は、開始プロセス(プリンシパル)とターゲット プロセスを入力します。
PROCESS_LAUNCH の UDM の例
次の例では、Google SecOps UDM 構文を使用して PROCESS_LAUNCH イベントをフォーマットする方法を示します。
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: PROCESS_LAUNCH
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "altostrat.com"
}
target {
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスの詳細。
- target: プロセスの詳細。
PROCESS_MODULE_LOAD
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 1 つ以上のマシン識別子(
principalまたはtarget)を含めます。 - principal.process: モジュールを読み込むプロセスに関する情報を入力します。
- 1 つ以上のマシン識別子(
- target:
- target.process: 読み込まれたモジュール プロセスに関する情報を入力します。これには、
target.process.file(DLL や共有オブジェクトなど)またはtarget.process.product_specific_process_idの少なくとも 1 つが含まれます。
- target.process: 読み込まれたモジュール プロセスに関する情報を入力します。これには、
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
- principal.user: プロセスに関するユーザー情報が利用可能かどうかを入力します。
PROCESS_MODULE_LOAD の UDM の例
次の例では、Google SecOps UDM 構文を使用して PROCESS_MODULE_LOAD イベントをフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-03T20:40:29.854097Z",
"event_type": "PROCESS_MODULE_LOAD"
},
"principal": {
"hostname": "pinguino-01",
"process": {
"file": {
"full_path": "foo.bar"
}
}
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスとモジュールを読み込むプロセスに関する詳細。
- target: プロセスとモジュールの詳細。
PROCESS_PRIVILEGE_ESCALATION
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 1 つ以上のマシン識別子(
principalまたはtarget)を含めます。 - principal.process: 権限昇格を開始するプロセスに関する情報を入力します。
- principal.user: 権限昇格を開始したユーザーに関する情報を入力します。これには、少なくとも 1 つのユーザー ID が含まれます。
- 1 つ以上のマシン識別子(
- target: 権限昇格のターゲットに関する情報を入力します(例: 権限が昇格されたプロセスの
target.process)。targetフィールドは空にできません。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
PROCESS_PRIVILEGE_ESCALATION の UDM の例
次の例では、PROCESS_PRIVILEGE_ESCALATION タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-04T19:04:12.573338Z",
"event_type": "PROCESS_PRIVILEGE_ESCALATION"
},
"principal": {
"user": {
"userid": "pinguino"
},
"hostname": "pinguino-01",
"process": {
"file": {
"full_path": "foo.bar"
}
}
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイス、ユーザー、エスカレーションを開始するプロセスに関する詳細。
- target: エスカレーションされるプロセスに関する詳細。
REGISTRY_CREATION、REGISTRY_MODIFICATION、REGISTRY_DELETION、REGISTRY_UNCATEGORIZED
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal:
- 少なくとも 1 つのマシン ID。
- ユーザーモードのプロセスでレジストリの変更を行う場合、principal.process にレジストリを変更するプロセスに関する情報を含める必要があります。
- カーネル プロセスでレジストリの変更を行う場合、principal にプロセス情報を含めないでください。
- target:
- target.registry: ターゲット レジストリがリモートの場合は、ターゲットに少なくとも 1 つの識別子(IP アドレス、MAC、ホスト名、サードパーティのアセット識別子など)を含める必要があります。
- target.registry.registry_key: すべてのレジストリ イベントに、影響を受けるレジストリキーが含まれている必要があります。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。たとえば、不正なレジストリキーが該当します。
- principal.user: プロセスに関するユーザー情報が利用可能かどうかを入力します。
REGISTRY_MODIFICATION の UDM の例
次の例では、Google SecOps UDM 構文を使用して Proto3 で REGISTRY_MODIFICATION イベントをフォーマットする方法を示します。
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: REGISTRY_MODIFICATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "test-win"
user {
userid: "test"
windows_sid: "ABCDEFGH-123456789-1111111-1000"
}
process {
pid: "0xc45"
file {
full_path: "C:\\Windows\\regedit.exe"
}
}
}
target {
registry {
registry_key: "\\REGISTRY\\USER\\TEST_USER\\Control Panel\\PowerCfg\\PowerPolicy"
registry_value_name: "Description"
registry_value_data: "For extending battery life."
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイス、ユーザー、プロセスの詳細。
- target: 変更の影響を受けるレジストリ エントリ。
RESOURCE
イベントタイプ:
- RESOURCE_CREATION
- RESOURCE_DELETION
- RESOURCE_PERMISSIONS_CHANGE
- RESOURCE_READ
- RESOURCE_WRITTEN
最小限の UDM イベント:
{
"metadata": {
"event_timestamp": "2023-07-04T20:19:53.394745Z",
"event_type": "RESOURCE_CREATION"
},
"principal": {
"user": {
"userid": "pinguino"
}
},
"target": {
"resource": {
"name": "foo.bar"
}
}
}
SCAN_FILE、SCAN_HOST、SCAN_PROCESS、SCAN_VULN_HOST、SCAN_VULN_NETWORK
SCAN_FILE の場合:
{
"metadata": {
"event_timestamp": "2023-07-06T06:57:08.443142Z",
"event_type": "SCAN_FILE"
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"file": {
"full_path": "foo.bar"
}
}
}
SCAN_PROCESS の場合:
{
"metadata": {
"event_timestamp": "2023-07-06T06:59:17.690425Z",
"event_type": "SCAN_PROCESS"
},
"principal": {
"hostname": "pinguino-01"
},
"target": {
"process": {
"file": {
"full_path": "foo.bar"
}
}
}
}
必須フィールド:
- metadata: event_timestamp とイベントに関する背景情報。
- observer: スキャナ自体の情報を記録します。スキャナがリモートの場合は、マシンの詳細をオブザーバー フィールドで記録する必要があります。ローカル スキャナの場合は空白のままにします。
- target: スキャンされるオブジェクトを保持するマシンの情報を記録しますスキャン中のファイルの場合、target.file はスキャンされたファイルに関する情報を記録します。プロセスがスキャン中の場合は、target.process はスキャンされたプロセスに関する情報を記録します。
- extensions: SCAN_VULN_HOST と SCAN_VULN_NETWORK の場合は、extensions.vuln フィールドを使用して脆弱性を定義します。
オプション フィールド:
- principal: 接続を開始するデバイスを表します。1 つ以上のマシン識別子(ホスト名、IP アドレス、MAC アドレス、独自のアセット識別子など)またはユーザー識別子が含まれます。
- target: ターゲット オブジェクトに関する詳細(ファイル作成者やプロセス所有者など)は、target.user で取得する必要があります。
- security_result: 検出された悪意のあるアクティビティを記述します。
SCAN_HOST の UDM の例
次の例では、SCAN_HOST タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata: {
event_timestamp: {
seconds: 1571386978
}
event_type: SCAN_HOST
vendor_name: "vendor"
product_name: "product"
product_version: "1.0"
}
target: {
hostname: "testHost"
asset_id: "asset"
ip: "192.168.200.200"
}
observer: {
hostname: "testObserver"
ip: "192.168.100.100"
}
security_result: {
severity: LOW
confidence: HIGH_CONFIDENCE
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- target: 悪意のあるソフトウェアを受け取ったデバイス。
- observer: 該当のイベントを監視してレポートするデバイス。
- security_result: 悪意のあるソフトウェアのセキュリティの詳細。
SCAN_VULN_HOST の UDM の例
次の例では、SCAN_VULN_HOST タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata: {
event_timestamp: "2025-05-09T12:59:52.45298Z",
event_type: 18005,
product_name: "TestProduct",
vendor_name: "TestVendor"
},
principal {
asset_id: "TEST:Mwl8ABcd",
ip: "127.0.0.3",
hostname: "TEST-Localhost",
mac: ["02:00:00:00:00:01"]
},
extensions: {
vulns: {
vulnerabilities: [
{
cve_id: "CVE-6l9VxQmz",
vendor_vulnerability_id: "TEST:7gmCmFWX",
name: "CVE pA7DzwPU",
severity: 2,
vendor: "TestVendor",
last_found: "2025-05-09T14:59:52.45300Z",
first_found: "2025-05-09T13:59:52.45300Z"
}
]
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: 悪意のあるソフトウェアを受信したデバイス。
- extensions: 脆弱性の詳細。
SCHEDULED_TASK_CREATION、SCHEDULED_TASK_DELETION、SCHEDULED_TASK_DISABLE、SCHEDULED_TASK_ENABLE、SCHEDULED_TASK_MODIFICATION、SCHEDULED_TASK_UNCATEGORIZED
必須フィールド:
- principal: すべての SCHEDULED_TASK イベントについて、principal にマシン識別子とユーザー識別子が含まれている必要があります。
- target:
target.resource.resource_typeをTASKに設定した有効なtarget.resourceを含めます。
オプション フィールド:
- security_result: 検出された悪意のあるアクティビティを記述します。
SCHEDULED_TASK_CREATION の UDM の例
次の例では、Google SecOps UDM の SCHEDULED_TASK_CREATION タイプのイベントをフォーマットする方法を示します。
metadata: {
event_timestamp: {
seconds: 1577577998
}
event_type: SCHEDULED_TASK_CREATION
vendor_name: "Microsoft"
product_name: "Windows"
}
principal: {
hostname: "fake-host.altostrat.com"
user: {
userid: "TestUser"
windows_sid: "AB123CDE"
}
process {
pid: "1234"
}
}
target: {
resource: {
resource_type: TASK
name: "\\Adobe Acrobat Update Task"
}
}
intermediary: {
hostname: "fake-intermediary.altostrat.com"
}
security_result: {
rule_name: "EventID: 6789"
summary: "A scheduled task was created."
severity: INFORMATIONAL
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: 不審なタスクをスケジュールしたデバイス。
- target: 不審なタスクのターゲットとなるソフトウェア。
- intermediary: 不審なタスクに関与した仲介者。
- security_result: 不審なタスクに関するセキュリティの詳細。
SETTING_UNCATEGORIZED、SETTING_CREATION、SETTING_MODIFICATION、SETTING_DELETION
必須フィールド:
principal: 存在し、空ではなく、マシン識別子を含める必要があります。
target: 存在し、空ではなく、
target.resource.resource_typeがSETTINGとして指定されたリソースを含める必要があります。
SETTING_MODIFICATION イベントタイプの UDM の例
次の例では、SETTING_MODIFICATION タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-05T14:15:27.070909Z",
"event_type": "SETTING_MODIFICATION"
},
"principal": {
"hostname": "foo.bar"
},
"target": {
"resource": {
"resource_type": "SETTING",
"name": "foo.bar"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: 設定の変更が行われたデバイスに関する情報。
- target: 設定リソースの詳細。
SERVICE_UNSPECIFIED、SERVICE_CREATION、SERVICE_DELETION、SERVICE_MODIFICATION、SERVICE_START、SERVICE_STOP
必須フィールド:
- metadata: 必須フィールド(
event_timestampとevent_type)を含めます。 - principal: 1 つ以上のマシン識別子(
principal.hostname、principal.ip、principal.mac、またはprincipal.asset_id)を含めます。 - target:
target.processまたはtarget.applicationの少なくとも 1 つを指定します。
オプション フィールド:
- target.user: サービス アカウントまたはターゲット ユーザーのユーザー情報が利用可能かどうかを入力します。
- target.resource: サービス リソースの詳細(
resource_type: SERVICEなど)を入力します。
SERVICE_UNSPECIFIED の UDM の例
次の例では、SERVICE_UNSPECIFIED タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
metadata: {
event_timestamp: {
seconds: 1595656745
nanos: 832000000
}
event_type: SERVICE_UNSPECIFIED
vendor_name: "Preempt"
product_name: "PREEMPT_AUTH"
product_event_type: "SERVICE_ACCESS"
description: "Remote Procedures (RPC)"
}
principal: {
hostname: "XXX-YYY-ZZZ"
ip: "10.10.10.10"
}
target: {
hostname: "TestHost"
user: {
userid: "ORG\\User"
user_display_name: "user name"
}
application: "application.name"
resource: {
resource_type: SERVICE
name: "RPC"
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスとロケーションの詳細。
- target: ホスト名とユーザー識別子。
- application: アプリケーション名とリソースタイプ。
STATUS_HEARTBEAT、STATUS_STARTUP、STATUS_SHUTDOWN、STATUS_UNCATEGORIZED、STATUS_UPDATE
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal: 1 つ以上のマシン識別子(IP または MAC アドレス、ホスト名、またはアセット識別子)。
STATUS_HEARTBEAT の UDM の例
次の例では、Google SecOps UDM の STATUS_HEARTBEAT タイプのイベントをフォーマットする方法を示します。
metadata: {
event_timestamp: {
seconds: 1588180305
}
event_type: STATUS_HEARTBEAT
vendor_name: "DMP"
product_name: "ENTRE"
}
principal: {
hostname: "testHost"
location: {
name: "Building 1"
}
}
intermediary: {
ip: "8.8.8.8"
}
security_result: {
summary: "Event - Locked"
description: "description"
severity: LOW
severity_details: "INFO"
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスとロケーションの詳細。
- intermediary: デバイスの IP アドレス。
- security_result: セキュリティの結果の詳細。
SYSTEM_AUDIT_LOG_UNCATEGORIZED、SYSTEM_AUDIT_LOG_WIPE
必須フィールド:
- principal: ログに対するオペレーションを行ったユーザーのユーザー ID と、ログが保存されているマシンまたはマシンが保存されているか、保存されていた(ワイプの場合)マシンの IDを含めます。
SYSTEM_AUDIT_LOG_WIPE の UDM の例
次の例では、Google SecOps UDM の SYSTEM_AUDIT_LOG_WIPE タイプのイベントをフォーマットする方法を示します。
metadata {
event_timestamp: "2020-01-01T13:27:41+00:00"
event_type: SYSTEM_AUDIT_LOG_WIPE
vendor_name: "Microsoft"
product_name: "Windows"
}
principal {
hostname: "altostrat.com"
user {
userid: "test"
windows_sid: "ABCDEFGH-123456789-1111111-1000"
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- principal: デバイスとユーザーの詳細。
USER_BADGE_IN
必須フィールド:
- metadata: 必須フィールドを含めます。
- target: 1 つ以上のマシン識別子(target.hostname など)を含める必要があります。
- extensions: 認証メカニズムは extensions.auth.type で指定する必要があります。
USER_BADGE_IN の UDM の例
次の例では、USER_BADGE_IN タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-05T20:31:18.303584Z",
"event_type": "USER_BADGE_IN"
},
"target": {
"hostname": "jamon-01"
},
"extensions": {
"auth": {
"type": "MACHINE"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- target: バッジインが発生したデバイスまたは場所に関する情報。
- extensions: 使用される認証メカニズムに関する詳細。
USER_CHANGE_PASSWORD、USER_CHANGE_PERMISSIONS
必須フィールド:
- metadata: 必須フィールドを含めます。
- target: 空にすることはできません。変更されたユーザー アカウント(
target.user)または変更が行われたターゲット マシン、アプリケーション、リソースに関する情報をtargetに入力します。 - target.user または principal.user:
target.user(変更されたユーザー アカウント)またはprincipal.user(変更を開始したユーザー)の少なくとも 1 つに、ユーザー識別子(userid、windows_sid、email_addresses、employee_id)を入力します。
オプション フィールド:
- principal:
target.userでユーザー ID を指定する場合、principal.userは省略可能です。ユーザー アカウントが遠隔地から変更された場合、変更を行ったマシンに関する情報をprincipalに入力します。 - intermediary: SSO ログインの場合、
intermediaryには SSO サーバー用のマシン ID が 1 つ以上含まれている必要があります(利用可能な場合)。
USER_COMMUNICATION
必須フィールド:
- principal: principal.user フィールドに、Google Chat や Slack のチャット メッセージ、Zoom や Google Meet の動画やビデオ会議、VoIP 接続など、ユーザー(送信者)が開始した通信に関連する詳細を入力します。
オプション フィールド:
- target: (推奨) target.user フィールドに、クラウド通信リソースのターゲット ユーザー(受信者)に関する情報を入力します。(推奨)target.application フィールドに、ターゲット クラウド通信アプリケーションに関する情報を入力します。
USER_CREATION、USER_DELETION
必須フィールド:
- metadata:
event_timestampとevent_typeを含めます。 - principal: 作成または削除を開始したアカウントの
principal.user(userid、windows_sid、email_addresses、employee_id、最大 256 文字)に、有効なユーザー ID を 1 つ以上含めます。target.applicationが設定されていない場合、principalには少なくとも 1 つのマシン ID(hostname、ip、mac、asset_id)も含める必要があります。 - target: 作成または削除するユーザー アカウントの有効なユーザー ID を
target.userに 1 つ以上含めます(最大 256 文字)。principalにマシン識別子が含まれていない場合は、target.applicationを入力します。
オプション フィールド:
- principal.process: ユーザーの作成または削除リクエストが開始されたマシンのプロセスの詳細。
- target: ターゲット マシンに関する情報(プリンシパル マシンとは異なる場合)。
USER_LOGIN、USER_LOGOUT
必須フィールド:
- metadata: 必須フィールドを含めます。
- principal: リモート ユーザーのアクション(リモート ログインなど)の場合は、ユーザー アクションを行ったマシンに関する情報をプリンシパルに入力します。ローカル ユーザーのアクション(ローカル ログインなど)の場合は、プリンシパルを設定しないでください。
- target: ログインまたはログオフしたユーザーに関する情報を target.user に入力します。プリンシパルが設定されていない場合(ローカル ログインなど)、ターゲット マシンを識別するマシン識別子を 1 つ以上含める必要があります。マシン間のユーザー アクション(リモート ログイン、SSO、クラウド サービス、VPN など)の場合、ターゲットに、ターゲット アプリケーション、ターゲット マシン、ターゲット VPN サーバーのいずれかの情報を含める必要があります。
- intermediary: SSO ログインの場合、SSO サーバー用のマシン ID が 1 つ以上含まれている必要があります(利用可能な場合)。
- network と network.http: ログインが HTTP 経由で発生する場合は、network.ip_protocol、network.application_protocol、network にすべての詳細情報を含める必要があります。
- authentication extension: イベントに関連する認証システムの種類(マシン、SSO、VPN など)と、使用するメカニズム(ユーザー名とパスワード、OTP)を指定する必要があります。
- security_result: ログインに失敗した場合、security_result フィールドを追加してログイン ステータスを示します。認証に失敗した場合は、AUTH_VIOLATION の値で security_result.category を指定します。
USER_LOGIN の UDM の例
次の例では、USER_LOGIN タイプのイベントを Google SecOps UDM にフォーマットする方法を示します。
{
"metadata": {
"event_timestamp": "2023-07-05T20:48:50.657334Z",
"event_type": "USER_LOGIN"
},
"target": {
"user": {
"userid": "jamon"
}
},
"extensions": {
"auth": {
"type": "MACHINE"
}
}
}
この例に示すように、イベントは次の UDM カテゴリに分かれています。
- metadata: イベントの背景情報。
- target: ログインするユーザーに関する情報。
- extensions: 使用される認証メカニズムに関する詳細。
USER_RESOURCE_ACCESS
必須フィールド:
- principal: principal.user フィールドに、クラウド リソース(Salesforce のケース、Office365 のカレンダー、Google ドキュメント、ServiceNow のチケットなど)に対するアクセスの試行の詳細を入力します。
- target: target.resource フィールドに、ターゲット クラウド リソースに関する情報を入力します。
オプション フィールド:
- target.application:(推奨) target.application フィールドに、ターゲット クラウド アプリケーションに関する情報を入力します。
USER_RESOURCE_CREATION、USER_RESOURCE_DELETION
必須フィールド:
- principal: principal.user フィールドに、クラウド リソース(Salesforce のケース、Office 365 のカレンダー、Google ドキュメント、ServiceNow チケットなど)内で作成されたユーザーの詳細情報を入力します。
- target: target.resource フィールドに、ターゲット クラウド リソースに関する情報を入力します。
オプション フィールド:
- target.application:(推奨) target.application フィールドに、ターゲット クラウド アプリケーションに関する情報を入力します。
USER_RESOURCE_UPDATE_CONTENT
必須フィールド:
- principal: principal.user フィールドに、クラウド リソース(Salesforce のケース、Office365 のカレンダー、Google ドキュメント、ServiceNow のチケットなど)内でコンテンツが更新されたユーザーの詳細を入力します。
- target: target.resource フィールドに、ターゲット クラウド リソースに関する情報を入力します。
オプション フィールド:
- target.application:(推奨) target.application フィールドに、ターゲット クラウド アプリケーションに関する情報を入力します。
USER_RESOURCE_UPDATE_PERMISSIONS
必須フィールド:
- principal: principal.user フィールドに、クラウド リソース(Salesforce のケース、Office 365 のカレンダー、Google ドキュメント、ServiceNow のチケットなど)内で権限が更新されたユーザーの詳細を入力します。
- target: target.resource フィールドに、ターゲット クラウド リソースに関する情報を入力します。
オプション フィールド:
- target.application:(推奨) target.application フィールドに、ターゲット クラウド アプリケーションに関する情報を入力します。
USER_UNCATEGORIZED
必須フィールド:
- metadata:
event_timestampとevent_typeを含めます。 - プリンシパルまたはターゲット:
targetが入力されていない場合、principalには、principal.user(userid、windows_sid、email_addresses、employee_id、最大 256 文字)に少なくとも 1 つの有効なユーザー ID、または少なくとも 1 つのマシン ID(hostname、ip、mac、asset_id)を含める必要があります。targetが入力されている場合は、target.userのユーザー ID、targetのマシン ID、principal.userの有効なユーザー ID のうち、少なくとも 1 つを入力する必要があります。
オプション フィールド:
- principal.process: ユーザー アクティビティに関連付けられたプロセスの詳細。
- security_result: 検出された悪意のあるアクティビティや異常なアクティビティを記述します。