
- Advanced Huntingとは何か
- 調査できるデータの範囲
- 代表的な利用シーン
- Exchange Online管理者にとっての活用ポイント
- よく使うKQLクエリ例
- 覚えておくべき主要テーブル
- 必要なライセンスと権限(ロール)
- 使い方の基本的な流れ
- まとめ
Advanced Huntingとは何か
Microsoft Defender XDRに搭載されている「高度なハンティング(Advanced Hunting)」は、セキュリティログを自由に検索・分析し、通常のアラートでは見つからない脅威や異常を能動的に調査するための機能です。
KQL(Kusto Query Language)というクエリ言語を使い、最大30日分の生データに対して検索をかけることができます。
通常のDefenderアラートとの違いをひと言でまとめると、次のようになります。
- 通常のアラート:Microsoftが「危険な可能性がある」と判断したものだけを通知する
- Advanced Hunting:「怪しい動きを自分で探しに行く」ための機能
調査できるデータの範囲
Advanced Huntingでは、以下のようなMicrosoft 365関連のセキュリティデータを横断的に検索できます。
| 製品 | 調査できる内容 |
|---|---|
| Defender for Endpoint | プロセス実行、ファイル操作、ネットワーク接続 |
| Defender for Office 365 | メール、添付ファイル、URLクリック |
| Defender for Identity | AD認証、Kerberos、認証イベント |
| Defender for Cloud Apps | クラウドサービス利用状況 |
| Microsoft Sentinel | Sentinel連携データ |
代表的な利用シーン
実務でよく使われるのは、次のような場面です。
- 不審メールの調査:特定の件名や送信元のメールが誰に届いたかを確認
- マルウェア感染調査:特定のハッシュ値を持つEXEファイルを実行した端末を特定
- PowerShellの不審実行確認:誰が・いつ・どの端末でPowerShellを実行したかを追跡
- アカウント侵害調査:深夜の海外からのサインインや認証失敗の連続を検知
- 社内全体への影響範囲調査:危険な添付ファイルを誰が受信・開封したかを横断的に確認
Exchange Online管理者にとっての活用ポイント
Exchange Onlineの運用担当者にとって特に身近なのは、メール関連とセキュリティ関連の調査です。
- 特定の件名のメール検索、危険な添付ファイルの追跡、URLクリック履歴の確認、誤配信範囲の調査
- 侵害されたユーザーの活動確認、不審な送信元IPの調査、OAuthアプリ悪用調査、BEC(なりすましメール)分析
メッセージトレース(メッセージ追跡)との違い
| 機能 | 用途 |
|---|---|
| Message Trace | メール配送の調査(届いたかどうか) |
| Advanced Hunting | セキュリティ調査(誰がURLをクリックしたか等) |
よく使うKQLクエリ例
Exchange Online管理者の観点でよく利用するのは、EmailEvents、EmailAttachmentInfo、EmailUrlInfo、UrlClickEventsの4テーブルです。代表的なクエリをいくつか紹介します。
①特定の送信者からのメールを検索
EmailEvents
| where Timestamp > ago(30d)
| where SenderFromAddress =~ "attacker@example.com"
| project Timestamp, NetworkMessageId, Subject, RecipientEmailAddress, DeliveryAction
| order by Timestamp desc
②特定の件名のメールを検索
EmailEvents
| where Timestamp > ago(30d)
| where Subject contains "請求書"
| project Timestamp, SenderFromAddress, RecipientEmailAddress, Subject
③ユーザーがクリックしたURLの調査
UrlClickEvents
| where Timestamp > ago(30d)
| project Timestamp, AccountUpn, Url, ActionType
④NetworkMessageIdから配送状況を確認
EmailEvents
| where NetworkMessageId == "<NetworkMessageId>"
| project Timestamp, SenderFromAddress, RecipientEmailAddress, DeliveryAction, DeliveryLocation
この他にも、外部送信された添付ファイル付きメールの調査、SPF・なりすまし疑いメールの調査、特定ユーザーの送信履歴確認など、インシデント対応の各局面で使えるクエリが数多くあります。
覚えておくべき主要テーブル
| テーブル | 用途 |
|---|---|
| EmailEvents | メール全般 |
| EmailAttachmentInfo | 添付ファイル |
| EmailUrlInfo | メール内URL |
| UrlClickEvents | URLクリック |
| EmailPostDeliveryEvents | 配信後の隔離・削除 |
| CampaignInfo | 攻撃キャンペーン情報 |
| MessageEvents | Teams等を含むメッセージ情報 |
必要なライセンスと権限(ロール)
Advanced Huntingは、契約しているライセンスと割り当てられている権限(ロール)によって、参照できるデータの範囲が変わります。導入前に以下を確認しておくと安心です。
必要なライセンス
スキーマ(テーブル群)ごとに前提となる製品・ライセンスが異なります。
- Alerts & behaviors(アラート系):Microsoft Defender XDR(Microsoft Defender for Endpoint、Microsoft Defender for Identity、Microsoft Defender for Cloud Apps などのいずれかが前提)
- Email & collaboration(メール系:EmailEvents、EmailAttachmentInfo、EmailUrlInfo、UrlClickEventsなど):Microsoft Defender for Office 365(Plan 2、またはPlan 2を含むMicrosoft 365 E5 / E5 Security など)
- Identity系のテーブル:Microsoft Defender for Identity
- Cloud Apps系のテーブル:Microsoft Defender for Cloud Apps
Exchange Online管理者が主に使うEmailEventsなどのメール関連テーブルは、Defender for Office 365 Plan 2(Microsoft 365 E5に含まれるライセンス)が前提になっている点がポイントです。
必要な権限(ロール)
ライセンスを保有していても、権限が割り当てられていなければAdvanced Huntingでデータを参照できません。権限の付与方法は、Defender XDRの統合ロールベースアクセス制御(Unified RBAC / URBAC)を使うか、個別のロールグループを使うかで異なります。
①Microsoft Defender XDR 統合RBAC(URBAC)を利用する場合
メール関連データ(Email & collaboration スキーマ)にアクセスするには、次のURBAC権限が必要です。
Security operations > Raw data > Email & collaboration metadata(読み取り):EmailEventsなどメール関連テーブルの参照に必要Security operations > Security data > Security data basics(読み取り):アラートや調査情報など「Alerts & behaviors」スキーマの参照に必要(メール系スキーマは含まれない点に注意)
なお、隔離メールの解放やメールの移動・削除といった「アクション実行」まで行う場合は、上記に加えてEmail & collaboration advanced actions(管理)やResponse(管理)といった権限も別途必要になります。
②従来のロールグループを利用する場合(URBAC未移行のテナント)
URBACへ移行していないテナントでは、Microsoft Defenderポータルの以下のようなロールにメンバーとして所属していることで、メール関連のAdvanced Huntingにアクセスできます。
- Security Reader/Security Operator/Security Administrator
- Exchange Administrator/Organization Management
- Global Reader
- View-Only Recipients など
また、Microsoft Entra(旧Azure AD)側の管理者ロール(Global Administrator、Security Administrator、Security Readerなど)を持つユーザーも、Advanced Huntingデータへの読み取りアクセスが可能です。ただし、Global Administratorのような強い権限を通常業務に使うことは推奨されておらず、必要最小限の権限を持つロールを個別に割り当てるのがMicrosoftの推奨アプローチです。
③エンドポイント系データへのアクセス
Defender for Endpoint関連のデータ(DeviceProcessEvents、DeviceFileEventsなど)へのアクセス範囲は、Microsoft Defender for EndpointのRBAC設定(デバイスグループ単位の権限設定など)に従います。
まとめ:導入前のチェックポイント
- Advanced Huntingで見たいデータ(メール/エンドポイント/ID/クラウドアプリ)に対応するDefender製品のライセンスがあるか
- 自分(または調査担当者)のアカウントに、対象スキーマを読み取れる権限(URBACの該当パーミッション、または該当ロールグループ)が割り当てられているか
- メールの隔離解除や削除など「アクションの実行」まで必要な場合は、読み取り権限とは別に管理系の権限が必要になる点
特に2024年5月以降、メール関連スキーマ(Email & collaboration)へのアクセス権限の仕組みがThreat Explorerと揃える形で変更されており、以前は参照できていたロールでも見えなくなるケースがあるため、既存の運用担当者は自分に割り当てられている権限を一度見直しておくことをおすすめします。
使い方の基本的な流れ
- Microsoft Defenderポータルにサインインし、[ハンティング]→[高度なハンティング]を選択
- クエリエディタでKQLを入力(Guided ModeとAdvanced Modeの2種類あり)
- まずは
EmailEvents | where Timestamp > ago(7d) | take 100のような簡単なクエリで動作確認 - 目的に応じてフィルタ条件を絞り込み(送信者、件名、受信者など)
- 結果画面右上の「Export」からCSVやExcel形式で証跡として保存
Exchange Online管理者の実務では、次のような流れで使われることが多いです。
- ユーザーから不審メールの報告を受ける
- Message TraceでNetworkMessageIdを取得
- Advanced HuntingでEmailEventsを検索し、受信者一覧を取得
- UrlClickEventsでクリックの有無を確認
- 必要に応じてメールの削除・隔離対応を実施
まとめ
Advanced Huntingは、Microsoft 365のセキュリティログに対してKQLクエリを実行し、脅威や異常を能動的に調査するための機能です。
特にExchange Online/Microsoft 365管理者の観点では、フィッシングメール調査・添付ファイル感染調査・URLクリック調査・アカウント侵害調査・メール影響範囲の特定といった、インシデント対応の場面で非常に強力なツールとなります。
「メールが届いたか」を調べたいときはMessage Trace、「メール内のURLを誰がクリックしたか」など一歩踏み込んだセキュリティ調査をしたいときはAdvanced Hunting、という使い分けを意識すると運用しやすくなります。
なお、利用できるテーブルやデータ範囲は、契約しているライセンス(Microsoft 365 E5、Defender for Office 365 Plan 2、Defender XDRなど)によって異なるため、事前の確認をおすすめします。



