Microsoft Defender XDRの設定方法を学び、Advanced HuntingイベントをAzure Event Hubsにストリーミングし、下りの処理、統合、長期保存が可能です。
この記事では、Microsoft Defender XDRストリーミングAPIを設定し、Advanced HuntingイベントをAzure Event Hubsに転送し、ダウンストリームの処理、統合、長期保存を行う方法について説明します。 セキュリティ管理者はこのガイドを使ってストリーミングの設定、イベントスキーマの理解、必要なイベントハブ容量の見積もりが可能です。 始める前に、イベントハブの環境と権限が整っているか確認するために、前提条件を確認してください。
適用対象:
注:
MS Graph セキュリティ API を使用して、新しい API をお試しください。 詳細情報: Microsoft Graph セキュリティ API を使用する - Microsoft Graph |Microsoft Learn。
重要
この記事の一部の情報は、市販される前に大幅に変更される可能性があるプレリリース製品に関するものです。 Microsoft は、ここで提供されるいかなる情報に関して、明示または黙示を問わず、いかなる保証も行いません。
前提条件
Microsoft Defenderでイベントハブへのデータをストリーミングする設定をする前に、以下の前提条件が満たされていることを確認してください。
Event Hubs を作成します (詳細については、「 Event Hubs のセットアップ」を参照してください)。
Event Hubs 名前空間の作成 (詳細については、「 Event Hubs 名前空間のセットアップ」を参照してください)。
このエンティティが Event Hubs にデータをエクスポートできるように、 共同作成者 の権限を持つエンティティにアクセス許可を追加します。 アクセス許可の追加の詳細については、「アクセス許可の追加」を参照してください。
注:
ストリーミング API は、Event Hubs またはストレージ アカウントAzure経由で統合できます。
生データ ストリーミングを有効にする
生データのストリーミングをAzureイベントハブに有効にするには、Microsoft Defenderポータルで以下の手順を踏みます:
ポータルMicrosoft Defenderセキュリティ管理者以上としてサインインします。
[ ストリーミング API の設定] ページに移動します。
[追加] を選択します。
新しい設定の名前を選択します。
[イベントをAzureイベント ハブに転送する] を選択します。
イベント データを 1 つの Event Hub にエクスポートするか、各イベント テーブルを Event Hubs 名前空間の別の Event Hubs にエクスポートするかを選択できます。
イベント データを 1 つの Event Hub にエクスポートするには、 イベント ハブ名 と イベント ハブの名前空間リソース ID を入力します。
イベント ハブの名前空間リソース ID を取得するには、Azure ポータルの [Azure Event Hubs名前空間] ページに移動します>[プロパティ] タブ>リソース ID のテキストをコピーします。
Microsoft 365 ストリーミング API のイベントの種類のサポート状態を確認するには、イベント ストリーミング API でサポートされているMicrosoft Defender XDRイベントの種類に移動します。
ストリーミングするイベントを選択し、[保存] を選択 します。
Azure イベント ハブのイベント スキーマ
以下のJSONサンプルは、ストリーミングAPIによってAzure Event Hubsに配信されるイベントペイロードの構造を示しています。
{
"records": [
{
"time": "<The time Microsoft Defender XDR received the event>"
"tenantId": "<The Id of the tenant that the event belongs to>"
"category": "<The Advanced Hunting table name with 'AdvancedHunting-' prefix>"
"properties": { <Microsoft Defender XDR Advanced Hunting event as Json> }
}
...
]
}
Azure Event Hubs内の各 Event Hubs メッセージには、レコードの一覧が含まれています。
各レコードにはイベント名、Microsoft Defenderがイベントを受信した時刻、属するテナント(イベントはテナントからのみ取得)、そして「properties」というプロパティ内のJSON形式のイベントが含まれています。
Microsoft Defenderイベントのスキーマの詳細については、「Advanced Hunting」の概要をご覧ください。
Advanced Hunting の DeviceInfo テーブルには、デバイスのグループを含む MachineGroup という名前の列があります。 ここでは、すべてのイベントにもこの列が追加されています。
データ型マッピング
イベントプロパティのデータ型を取得するには:
Microsoft Defender XDRサインインし、[高度なハンティング] ページに移動します。
{EventType}をイベント テーブル名に置き換え、次のクエリを実行して、そのイベントの列名とデータ型を取得します。{EventType} | getschema | project ColumnName, ColumnType
初期 Event Hub 容量の見積もり
次の高度なハンティング クエリは、イベント/秒と推定 MB/秒に基づいて、データ ボリュームのスループットと初期イベント ハブ容量の大まかな見積もりを提供するのに役立ちます。"実際の" スループットをキャプチャするために、通常の営業時間中にクエリを実行することをお勧めします。
このクエリを使用して、過去 7 日間のテーブルの量を見積もります。 出力には、1 秒あたりの平均イベントと各テーブルの推定 MB/秒が表示されます。これを使用して、必要なイベント ハブのスループット ユニットを決定できます。
let bytes_ = 1000;
union withsource=MDTables MyDefenderTable // TODO: Insert desired tables one by one separated by a comma (for example: DeviceEvents, DeviceInfo) or with a wildcard (Device*)
| where Timestamp > startofday(ago(7d))
| summarize count() by bin(Timestamp, 1m), MDTables
| extend EPS = count_ /60
| summarize avg(EPS), estimatedMBPerSec = avg(EPS) * bytes_ / (1024*1024) by MDTables, bin(Timestamp, 3h)
| summarize avg_EPS=max(avg_EPS), estimatedMBPerSec = max(estimatedMBPerSec) by MDTables
| sort by toint(estimatedMBPerSec) desc
| project MDTables, avg_EPS, estimatedMBPerSec
各種 Event Hubs の制限を確認するには、Azure Event Hubs のクォータと制限を参照してください。
作成されたリソースの監視
Azure Monitor を使用して、ストリーミング API によって作成されたリソースを監視できます。 ストリーミング API リソースを分析するためにログ データをエクスポートする方法については、Azure Monitorでのワークスペース データのエクスポートLog Analytics参照してください。
関連記事
ヒント
さらに詳しく知りたいですか? Tech Community 内の Microsoft Security コミュニティにご参加ください: 「Microsoft Defender XDR Tech Community」。