Google Security Operations でのエイリアスと UDM の拡充の概要
このドキュメントでは、Google Security Operations のエイリアスと UDM 拡充の概要について説明します。一般的なユースケースの概要と、プラットフォーム内でのエイリアス設定とエンリッチメントの仕組みについて説明します。
エイリアシングと UDM 拡充は、Google SecOps の重要なコンセプトです。両者は連携して動作しますが、目的は異なります。
- エイリアスは、指標を説明するさまざまな名前と追加のコンテキスト データを識別します。
- 拡充では、エイリアスを使用して UDM イベントにコンテキストを追加します。
たとえば、UDM イベントにホスト名 alex-macbook
が含まれており、悪意のあるファイル ハッシュがユーザー alex
によって実行されたことを示しています。エイリアスを使用して、イベント時にホスト名 alex-macbook
に IP アドレス 192.0.2.0
が割り当てられており、alex
が 2 週間後に退職することがわかります。これらのエイリアスを元の UDM イベントにステッチすると、コンテキストが追加されます。
サポートされているエイリアス設定とエンリッチメント機能
Google SecOps は、次のエイリアスとエンリッチメントをサポートしています。
- アセット
- ユーザー
- プロセス
- ファイル ハッシュのメタデータ
- 地域
- クラウド リソース
エイリアスの仕組み
エイリアスを使用すると、エンリッチメントが可能になります。たとえば、エイリアスを使用すると、ホスト名に関連付けられている他の IP アドレスと MAC アドレス、またはユーザー ID に関連付けられている役職と雇用ステータスを確認できます。
Google SecOps の他の機能と同様に、エイリアスにはデータの取り込みとインデックス登録が必要です。エイリアシングは、主に次の 3 つのカテゴリに分類されます。
- 顧客固有のデータ: 顧客に固有のデータ。たとえば、
Aristocrat
のみがamal@aristocrat.com
のデータを提供できます。顧客固有のエイリアス タイプには、アセット、ユーザー、プロセスなどがあります。 - グローバル データ: すべての顧客に適用される取り込み済みデータとインデックス付きデータ。たとえば、悪意のあるファイルに関するグローバルな情報を使用して、企業内にそのファイルが存在するかどうかを確認できます。
- サードパーティ サービス: サードパーティ サービス プロバイダによって行われたエイリアス設定。Google SecOps は、地理情報サービスを使用して IP アドレスの物理的な位置を特定します。
これらのエイリアス タイプを組み合わせて使用して、アセット エイリアス結果を生成します。
アセットのエイリアス
アセットのエイリアス設定では、ホスト名、IP アドレス、MAC アドレス、アセット ID などのメタデータをリンクします。次の作業を行います。
- EDR エイリアス: プロダクト ID(アセット ID)をホスト名にマッピングします。EDR マッピング フィールドは、
CS_EDR
ログタイプからのみ取得されます。 - DHCP エイリアス: DHCP イベントを使用して、ホスト名、MAC アドレス、IP アドレスをリンクします。
- アセット コンテキストのエイリアス設定: アセット インジケーターをホスト名、IP アドレス、MAC アドレス、ソフトウェア バージョン、デプロイ ステータスなどのエンティティ データに関連付けます。
EDR マッピングのインデックス フィールド
Google SecOps は、EDR マッピング フィールドをインデックスに登録して、ホスト名とプロダクト固有の ID をリンクするエイリアスを生成します。
次の表に、UDM フィールドと対応するインジケーター タイプを示します。
UDM フィールド | インジケーターのタイプ |
---|---|
principal.hostname と principal.asset.hostname | HOSTNAME |
principal.asset_id と principal.asset.asset_id | PRODUCT_SPECIFIC_ID |
DHCP インデックス フィールド
Google SecOps は DHCP レコードをインデックスに登録して、ホスト名、IP アドレス、MAC アドレスをリンクするエイリアスを生成します。
次の表に、アセット エイリアスに使用される UDM フィールドと対応するインジケーター タイプを示します。
UDM フィールド | インジケーターのタイプ |
---|---|
principal.ip と principal.asset.ip | ASSET_IP_ADDRESS |
principal.mac と principal.asset.mac | MAC |
principal.hostname と principal.asset.hostname | HOSTNAME |
principal.asset_id と principal.asset.asset_id | PRODUCT_SPECIFIC_ID |
ACK、OFFER、WIN_DELETED、WIN_EXPIRED で network.dhcp.yiaddr | ASSET_IP_ADDRESS |
INFORM、RELEASE、REQUEST の network.dhcp.ciaddr | ASSET_IP_ADDRESS |
DECLINE の network.dhcp.requested_address | ASSET_IP_ADDRESS |
network.dhcp.chaddr | MAC |
network.dhcp.client_hostname | HOSTNAME |
アセット コンテキストのインデックス フィールド
Google SecOps は、ASSET_CONTEXT
イベントを UDM イベントではなくエンティティ コンテキスト イベントとして取り込みます。
次の表に、エンティティ フィールドと対応するインジケーター タイプを示します。
エンティティ フィールド | インジケーターのタイプ |
---|---|
entity.asset.product_object_id | PRODUCT_OBJECT_ID |
entity.metadata.product_entity_id (アセットの商品オブジェクト ID がない場合) | PRODUCT_OBJECT_ID |
entity.asset.asset_id | PRODUCT_SPECIFIC_ID |
entity.asset.hostname | HOSTNAME |
entity.asset.ip | ASSET_IP_ADDRESS |
entity.asset.mac | MAC |
entity.namespace | NAMESPACE |
ユーザー エイリアス
ユーザー エイリアスは、ユーザー インジケーターを通じて情報を見つけます。たとえば、従業員のメールアドレスを使用して、その従業員の名前、役職、雇用状況などの詳細情報を確認できます。ユーザー エイリアスは、エイリアスに USER_CONTEXT
イベント バッチタイプを使用します。
ユーザー コンテキストのインデックス フィールド
Google SecOps は、USER_CONTEXT
イベントを UDM イベントではなくエンティティ コンテキスト イベントとして取り込みます。
次の表に、エンティティ フィールドと対応するインジケーター タイプを示します。
エンティティ フィールド | インジケーターのタイプ |
---|---|
entity.user.product_object_id | PRODUCT_OBJECT_ID |
entity.metadata.product_entity_id (ユーザーの商品オブジェクト ID がない場合) | PRODUCT_OBJECT_ID |
entity.user.userid | USERNAME |
entity.user.email_addresses | EMAIL |
entity.user.windows_sid | WINDOWS_SID |
entity.user.employee_id | EMPLOYEE_ID |
entity.namespace | NAMESPACE |
プロセス エイリアシング
プロセス エイリアシングは、プロダクト固有のプロセス ID(product_specific_process_id
)を実際のプロセスにマッピングし、親プロセスに関する情報を取得します。プロセス エイリアスは、エイリアスに EDR イベント バッチタイプを使用します。
プロセス エイリアシングの EDR インデックス フィールド
プロセスが起動されると、コマンドライン、ファイル ハッシュ、親プロセスの詳細などのメタデータが収集されます。マシンで実行されている EDR ソフトウェアは、ベンダー固有のプロセス UUID を割り当てます。
次の表に、プロセス起動イベント中にインデックス登録されるフィールドを示します。
UDM フィールド | インジケーターのタイプ |
---|---|
target.product_specific_process_id | PROCESS_ID |
target.process | プロセス全体(インジケーターだけではない) |
Google SecOps は、正規化されたイベントの target.process
フィールドに加えて、親プロセスの情報も収集してインデックスに登録します。
ファイル ハッシュ メタデータのエイリアス設定
ファイル ハッシュ メタデータのエイリアス設定は、指定されたファイル ハッシュ(sha256、sha1、md5)に基づいて、他のファイル ハッシュやファイルサイズなどのファイル メタデータを識別します。ファイル ハッシュ メタデータのエイリアス設定では、エイリアス設定に FILE_CONTEXT
イベント バッチタイプを使用します。
ファイル コンテキストのインデックス フィールド
Google SecOps は、VirusTotal から FILE_CONTEXT
イベントをエンティティ コンテキスト イベントとして取り込みます。これらのイベントはグローバルであり、お客様固有のものではありません。
次の表に、インデックス登録されたエンティティ フィールドと、対応するインジケーター タイプを示します。
エンティティ フィールド | インジケーターのタイプ |
---|---|
entity.file.sha256 | PRODUCT_OBJECT_ID |
entity.metadata.product_entity_id (ファイル sha256 がない場合) |
PRODUCT_OBJECT_ID |
entity.file.md5 | HASH_MD5 |
entity.file.sha1 | HASH_SHA1 |
entity.file.sha256 | HASH_SHA256 |
entity.namespace | NAMESPACE |
IP 位置情報エイリアス
地理的エイリアスは、外部 IP アドレスの位置情報が拡充されたデータを提供します。UDM イベントの principal
、target
、src
フィールドの各 IP アドレスについて、アドレスがエイリアスなしの場合、関連するロケーションと ASN 情報を含む ip_geo_artifact
サブプロトコルが作成されます。
地理的エイリアスは、ルックバックやキャッシュ保存を使用しません。イベントの量が多い場合、Google SecOps はメモリにインデックスを保持します。インデックスは IPGeo simple server MPM から取得され、2 週間ごとに更新されます。
リソースのエイリアス
リソース エイリアスは、指定されたリソース ID のクラウド リソース情報を返します。たとえば、 Google Cloud URI を使用して Bigtable インスタンスの情報を返すことができます。ルックバックやキャッシュ保存は使用しません。
リソース エイリアスは UDM イベントを拡充しません。ただし、アラートグラフなどの一部のプロダクトでは、リソース エイリアスを使用します。クラウドリソースのエイリアス設定では、RESOURCE_CONTEXT
イベント バッチタイプが使用されます。
リソース コンテキストのインデックス フィールド
クラウド リソース メタデータ コンテキスト イベントは、RESOURCE_CONTEXT
イベントとして取り込まれます。
次の表に、エンティティ フィールドと対応するエンティティ タイプを示します。
エンティティ フィールド | インジケーターのタイプ |
---|---|
entity.resource.product_object_id | PRODUCT_OBJECT_ID |
entity.metadata.product_entity_id (リソースの商品オブジェクト ID が欠落している場合) | PRODUCT_OBJECT_ID |
entity.resource.name | CLOUD_RESOURCE_NAME |
entity.namespace | NAMESPACE |
拡充
エンリッチメントでは、エイリアシングを使用して、次の方法で UDM インジケーターまたはイベントにコンテキストを追加します。
- インジケーター(通常は UDM フィールド)を記述するエイリアス エンティティを識別します。
- 返されたエイリアスまたはエンティティにリンクされた強化された値を使用して、UDM メッセージの関連部分を入力します。
アセットの拡充
パイプラインは、各 UDM イベントについて、principal
、src
、target
エンティティから次の UDM フィールドを抽出します。
UDM フィールド | インジケーターのタイプ |
---|---|
hostname | HOSTNAME |
asset_id | PRODUCT_SPECIFIC_ID |
mac | MAC |
ip (IFF asset_id が空の場合) | IP |
各アセット インジケーターは名前空間で区切られます。空の名前空間は有効として扱われます。パイプラインは、アセット インジケーターごとに次のアクションを実行します。
- イベントの時間の全日のエイリアスを取得します。
- エイリアシング レスポンスから
backstory.Asset
メッセージをビルドします。 - 各名詞タイプとインジケーターを backstory.Asset メッセージにマッピングし、関連するすべての proto を統合します。
- マージされた backstory.Asset メッセージを使用して、最上位のアセット フィールドと
asset
proto メッセージを設定します。
ユーザーの拡充
パイプラインは、各 UDM イベントについて、principal
、src
、target
から次の UDM フィールドを抽出します。
UDM フィールド | インジケーターのタイプ |
---|---|
email_addresses | EMAIL |
userid | USERNAME |
windows_sid | WINDOWS_SID |
employee_id | EMPLOYEE_ID |
product_object_id | PRODUCT_OBJECT_ID |
パイプラインは、指標ごとに次のアクションを実行します。
- ユーザー エンティティのリストを取得します。たとえば、
principal.email_address
とprincipal.userid
のエンティティは同じであることも、異なることもあります。 WINDOWS_SID
、EMAIL
、USERNAME
、EMPLOYEE_ID
、PRODUCT_OBJECT_ID
の優先順位で、最適なインジケーター タイプからエイリアスを選択します。- 有効期間がイベント時間と交差するエンティティで
noun.user
を入力します。
プロセスの拡充
パイプラインは、各 UDM イベントについて、次のフィールドから process.product_specific_process_id (PSPI)
を抽出します。
principal
src
target
principal.process.parent_process
src.process.parent_process
target.process.parent_process
次に、パイプラインはプロセス エイリアスを使用して PSPI から実際のプロセスを見つけます。これにより、親プロセスに関する情報も返されます。このデータは、エンリッチ メッセージの関連する noun.process
フィールドに統合されます。
アーティファクトの拡充
アーティファクトの拡充では、VirusTotal のファイル ハッシュ メタデータと、位置情報データから取得した IP の位置情報が追加されます。パイプラインは、各 UDM イベントについて、principal
、src
、target
エンティティからこれらのアーティファクト インジケーターのコンテキスト データを抽出してクエリします。
- IP アドレス: パブリックまたはルーティング可能な場合にのみデータをクエリします。
- ファイル ハッシュ: 次の順序でハッシュをクエリします。
file.sha256
file.sha1
file.md5
process.file.sha256
process.file.sha1
process.file.md5
パイプラインは、UNIX エポックとイベント時間を使用して、ファイル アーティファクト クエリの期間を定義します。位置情報データが利用可能な場合、パイプラインは、位置情報データの取得元に基づいて、それぞれの principal
、src
、target
の次の UDM フィールドを上書きします。
artifact.ip
artifact.location
artifact.network
(データに IP ネットワーク コンテキストが含まれている場合のみ)location
(元のデータにこのフィールドが含まれていない場合のみ)
パイプラインがファイル ハッシュ メタデータを見つけると、インジケーターの取得元に応じて、そのメタデータをファイルまたは process.file
フィールドに追加します。パイプラインは、新しいデータと重複しない既存の値を保持します。
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。