コンテンツにスキップ

Microsoft Defender for Endpoint インテグレーションガイド🔗

以下のガイドは、Microsoft Defender for Endpoint を Secureworks® Taegis™ XDR と連携する手順を説明します。

注意

  • Microsoft Defender for Endpoint を XDR と連携するには、適切な Microsoft ライセンスと有効な Azure サブスクリプションが必要です。詳細は Microsoft 365 ドキュメント Microsoft Defender for Endpoint の最小要件 を参照してください。
  • デバイスのテレメトリーイベント(プロセスや認証イベントなど)を受信するには、Microsoft Defender for Endpoint Plan 2、または Microsoft 365 E5 プラン、または Microsoft 365 A5 プランが必要です。Microsoft Defender for Business プランではアラートデータのみが提供されます。詳細は Microsoft 365 ドキュメント Microsoft エンドポイント セキュリティ プランの比較 を参照してください。
  • 各 Azure Active Directory テナントIDは、1つの XDR インテグレーションでのみ使用できます。既存の XDR インテグレーションがある Azure AD テナントで新しい XDR インテグレーションを構成しようとすると、失敗します。
  • Azure インテグレーションは US および EU リージョンでサポートされていますが、他のリージョンでは Microsoft によるサポートがない場合があります。他リージョンでのサービスサポートについては Microsoft に直接ご確認ください。
  • Azure Active Directory および Microsoft 365 インテグレーションはグローバル Azure クラウドで利用可能です。Azure Government、Azure China 21Vianet、Azure Germany などの他のナショナルクラウドは現在サポートされていません。

インテグレーションから提供されるデータ🔗

  検出 Auth DNS ファイル収集 HTTP NIDS Netflow Process ファイル変更 API Call Registry Scriptblock Management Persistence Thread Injection 検出結果 テクニックの検出結果 Generic
Microsoft Defender for Endpoint       * * *    

注意

API Call、Registry、および Thread Injection は Windows デバイスでのみ収集されます。

注意

Microsoft Defender Antivirus のログは、すべてのマルウェア検出、対応、および隔離イベントについて antivirus スキーマ に正規化されます。

スキャンライフサイクルやシグネチャ更新などの運用イベントは、設計上 Generic スキーマに正規化されます。

イベントレートの確認🔗

インテグレーションを進める前に、イベントレートを確認してください。Microsoft Defender ポータルの Advanced Hunting にアクセスし、以下のクエリを使用してイベントレートを計算します。

AlertInfo | where Timestamp > ago(7d) | join AlertEvidence on AlertId | summarize count() by bin(Timestamp, 1m)
| union (DeviceInfo | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m)
| union (DeviceNetworkInfo  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp,1m)
| union (DeviceProcessEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp,  1m)
| union (DeviceNetworkEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m)
| union (DeviceFileEvents   | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m)
| union (DeviceRegistryEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m)
| union (DeviceLogonEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m)
| union (DeviceImageLoadEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp,  1m)
| union (DeviceEvents  | where Timestamp > ago(7d) | summarize count() by bin(Timestamp, 1m) )))))))))
| summarize EventsPerMinute= sum(count_) by Timestamp | summarize EventsPerMinute= percentile(EventsPerMinute, 99.9)
 

Microsoft Defender でのクエリ結果は以下のようになります。

イベントレート例

このクエリは、エンドポイントが生成する Events per Minute(1分あたりのイベント数)を出力します。

インテグレーション方法の決定🔗

Defender for Endpoint は、Azure Storage Account または Azure Event Hub のいずれかを介して XDR と連携できます。

Azure Storage Account🔗

重要

上記 で計算したイベントレートが 600,000 イベント/分 を超える場合は、Azure Storage Account インテグレーション方法を使用しないでください。

Storage Account は従量課金モデルです。Defender for Endpoint が Storage Account に書き込む実際のデータ量に基づいて Azure サブスクリプションに課金されます。スループットが減少した場合は使用したデータ分のみ課金され、スループットが増加した場合は自動的に処理がスケールします。

Azure Event Hub🔗

Event Hub はプロビジョニングモデルです。Microsoft Defender エージェント数や想定イベント量に基づいてパーティションやスループットユニットを構成し、そのプロビジョニングされたスループットに対して課金されます。イベント量が減少してもプロビジョニングレートで課金され、スループットがプロビジョニング量を超えると XDR へのデータ転送が遅延し、Event Hub のスケーリングはより困難な手順となります。

Microsoft Defender for Endpoint インテグレーションの構成🔗

  1. Taegis Menu から インテグレーション → クラウドAPI を選択します。Cloud API インテグレーションページが表示されます。
  2. Cloud API インテグレーションテーブルの右上にある インテグレーションの追加 を選択します。Cloud API インテグレーションダイアログが表示されます。
  3. 最適化タブから Microsoft Defender for Endpoint カードを選択します。Microsoft Defender ダイアログが表示されます。

    Microsoft Defender for Endpoint インテグレーションタイプ

  4. 要件に応じて適切なインテグレーション方法を選択します。

    注意

    プレビューモード に参加している場合は、Storage Account 方法を選択し、Azure Government オプションを選択することで Azure Government テナント向けのインテグレーションを構成できます。

  5. 選択したインテグレーション方法に応じて、Event Hub テンプレートのダウンロード または Storage Account テンプレートのダウンロード をクリックし、Terraform テンプレートをダウンロードします。

  6. アーカイブを解凍し、terraform.tfvars ファイルを Notepad や vim などのテキストエディタで開きます。
  7. Storage Account または Event Hub の手順に従ってください。

Microsoft Defender for Endpoint Storage Account インテグレーションの構成🔗

  1. 以下の値をお客様の環境に合わせて変更します。詳細は Microsoft Azure ドキュメント Azure Active Directory テナントIDの確認方法 を参照してください。

    • storage_account_name
    • azure_tenant_id
    • azure_subscription_id

    リソースグループ名はそのままにしておくことを推奨します。

    注意

    Azure Government テナント向けにインテグレーションを構成する場合は、前のセクション のステップ4で Azure Government チェックボックスを選択し、以下の追加パラメータも更新してください。

    • azure_commercial
    • storage_account_name_queue

    注意

    Azure の要件により、storage_account_name および storage_account_name_queue には小文字と数字のみを使用し、24文字以内である必要があります。名前はグローバルで一意でなければなりません。

  2. Azure の構成 へ進んでください。

Microsoft Defender for Endpoint Event Hub インテグレーションの構成🔗

  1. 以下の値をお客様の環境に合わせて変更します。詳細は Microsoft Azure ドキュメント Azure Active Directory テナントIDの確認方法 を参照してください。

    • client_name
    • azure_tenant_id
    • azure_subscription_id

    注意

    Azure の要件により、client_name には英字、数字、ハイフンのみを使用できます。client_nameazure_region の合計文字数は30文字以内でなければなりません。空白は使用できません。

  2. 1,000台を超えるエンドポイントを構成する場合は、ステップ3~4に進んでください。それ以外の場合は、修正した terraform.tfvars ファイルを保存し、Azure の構成 へ進んでください。

  3. 下記 のスループットユニット計算機と、上記 で確認したイベントレート(Events per Minute)を用いて、必要なスループットユニット(TUs)とパーティション数 を計算します。

スループットユニットの計算🔗

名前空間に必要な スループットユニット および パーティション数 を計算する式は以下の通りです。

(1分あたりのイベント数 / 60*3/1024)+1 = スループットユニット数 = パーティション数

必要に応じて、下記のスループットおよびパーティション計算機をご利用ください。

計算機

イベント数を入力し、Enter キーを押して計算してください: 

必要なスループットユニット数は   0   スループットユニット および    0   パーティション です。

重要

大規模な導入では、より多くのパーティションと Event Hub ごとに多くの TU が必要です。エンドポイント数の増加が見込まれる場合は、パーティション数は作成後に変更できないため、最大必要数を入力してください。例えば、2つのスループットユニットを定義している場合は、4に設定してオンデマンドで2倍のキャパシティを確保できます。パーティションは自動で増加しません。

  1. 計算後、Event Hub のティアを選択し、terraform.tfvars ファイルを編集します。

    • 必要な TU 数が 1~32 の場合は、Standard Event Hub ティアを使用してください。
    フィールド デフォルト値 備考
    require_dedicated_cluster false 専用クラスターは使用しない
    eventhub_tier Standard Standard Event Hub ティアを使用
    eventhub_throughput_allocated 2 TU 計算 に基づき 1~32 を許可
    eventhub_throughput_inflate_cap 4 拡張のため割り当てた TU より大きい値を設定
    eventhub_partition_count 4 計算したパーティション数 に基づき 1~32 を許可
    data_retention_length 1 XDR では1日分のみ必要。用途に応じて最大7日まで追加可能
    • 必要な TU 数が 32 を超え、かつエンドポイントが 50,000 台未満の場合は、Premium Event Hub ティアを使用してください。
    フィールド デフォルト値 備考
    require_dedicated_cluster false 専用クラスターは使用しない
    eventhub_tier Premium Premium Event Hub ティアを使用
    eventhub_processing_units 8 TU 計算 に基づき 1, 2, 4, 8, 16 から選択。1 PU は約 5~10 TU 相当
    eventhub_partition_count 100 計算したパーティション数 に基づき 1~100 を許可
    data_retention_length 1 XDR では1日分のみ必要。用途に応じて最大90日まで追加可能
    • 50,000 台を超える場合は、専用 Event Hub クラスターの利用が必要となる場合があります。
    フィールド デフォルト値 備考
    require_dedicated_cluster true 非常に大規模な導入(50,000台以上)では専用クラスターが必要
    eventhub_partition_count 1024 計算したパーティション数 に基づき 1~1024 を許可
    data_retention_length 1 XDR では1日分のみ必要。用途に応じて最大90日まで追加可能
  2. 修正した terraform.tfvars ファイルを保存します。

Azure の構成🔗

  1. Azure Cloud Bash Shell を開き、編集済み terraform.tfvars ファイルを含むすべての Terraform ファイルを ファイルの管理 および アップロード ツールバーアクションボタンを使って Azure にアップロードします。

    Terraform アップロード

  2. Azure Cloud Bash Shell から以下のコマンドを実行します。この処理には数分かかります。

    terraform init && terraform plan -out ScwxAppTest.tfplan && terraform apply ScwxAppTest.tfplan && terraform output
    

    注意

    terraform apply コマンドを実行するユーザーには グローバル管理者 の Azure AD ロールが割り当てられている必要があります。

  3. コマンドの出力結果を安全に記録してください。以降の構成で必要となります。

Microsoft Defender の構成🔗

  1. 設定 → Microsoft 365 Defender → Streaming API に移動し、Microsoft Defender Data Export を構成します。

    注意

    この操作にはグローバル管理者またはセキュリティ管理者ロールが必要です。また、Data Export を作成するアカウントは Event Hub または Storage Account サブスクリプションへのアクセス権が必要です。

  2. + 追加 を選択し、以下のようにエクスポート設定を構成します。

    • 名前: SCWX-XDR-Integration-Export

    Azure Storage Account を使用する場合:

    • Azure Storage Account へのイベント転送: チェック
    • Storage Account Resource ID: Terraform の出力結果にある storage_account_resource_id の値をコピー&ペースト

    Namespace Resource ID の例:/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx/resourceGroups/xx-xxx-x-xx-xxxxxxxx/providers/Microsoft.Storage/storageAccounts/StorageAccountName

    Azure Event Hub を使用する場合:

    • Azure Event Hub へのイベント転送: チェック
    • Event Hub Resource Id: Terraform の出力結果にある event_hub_namespace_resource_id の値をコピー&ペースト

    Namespace Resource ID の例:/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx/resourceGroups/xx-xxx-x-xx-xxxxxxxx/providers/Microsoft.EventHub/namespaces/SCWX-XDR-Namespace-CustomerName

    • Event Hub 名: Terraform の出力結果にある event_hub_name の値をコピー&ペースト(例:SCWX-TDR-EventHub
  3. イベントタイプAlerts & BehaviorsAlertInfo および AlertEvidence、および Devices カテゴリ全体を選択します。

    Defender イベントタイプ選択

  4. 送信(または 保存)を選択します。

XDR での Microsoft Defender for Endpoint セットアップの完了🔗

前述の手順で得られた terraform の出力を使い、XDR でインテグレーションを完了します。

  1. Microsoft Defender ダイアログを開いたまま、インテグレーション方法(Event Hub または Storage Account)を選択し、次へ を選択します。

    Microsoft Defender for Endpoint インテグレーションタイプ

  2. Microsoft Defender for Endpoint インテグレーションの構成 で取得した Terraform の出力値を入力します。

  • Storage Account を選択した場合、以下のフォームが表示されます。

    Microsoft Defender for Endpoint Storage Account

  • Storage Account を選択し、Azure Government オプションをチェックした場合、以下のフォームが表示されます。

    Microsoft Defender for Endpoint Storage Account with Azure Government

  • Event Hub を選択した場合、以下のフォームが表示されます。

    Microsoft Defender for Endpoint Event Hub

  1. フォームの入力が完了したら 完了 を選択します。
  2. XDR の Cloud APIs ページでインテグレーションが正常に動作していることを確認できます。正常なインテグレーションは緑色の 連携可能 ステータスで表示されます。

    Cloud API インテグレーションステータス

Event Hub のスケーリング🔗

Incoming Bytes および Outgoing Bytes メトリクスで Event Hub のパフォーマンスを監視できます。

Incoming Bytes メトリクスが (Number_of_TUs * 1 MB/s) に、または Outgoing Bytes メトリクスが (Number_of_TUs * 2 MB/s) に達した場合、Event Hub のスループットが上限に達しているため、TU 数を増やす必要があります。

ただし、Event Hub のスループットが TU ベースの上限よりも低い「天井」に達し、Secureworks® Taegis™ XDR サポートから Event Hub のプロビジョニング不足と指摘された場合は、Event Hub を置き換える必要があります。

Event Hub のスケーリング の詳細情報もご参照ください。

Premium または Dedicated Event Hub のスケーリング🔗

以下を動的に変更できます:

  • Premium Event Hub の Processing Unit (PU)
  • Dedicated Event Hub クラスターの Capacity Unit (CU)(サポートリクエストが必要)
  • Event Hub のパーティション数

Standard Event Hub のスケーリング🔗

Event Hub のスループットを増やす最初のステップは、スループットユニット数の更新です。Azure Portal の Event Hub Namespace ページの [スケール] タブでスループットユニットを管理できます。同じスケール設定で Auto-Inflate 値を設定し、使用状況に応じて Event Hub が自動的にスループットユニット数を増やせるようにできます。

XDR で Event Hub からデータを十分な速度で読み取れない場合は、Event Hub 自体を置き換える必要があります。

Event Hub を置き換えるには:

  1. 新しい Event Hub を作成します(古い Event Hub はまだ削除しないでください)。

    1. 上記ドキュメント を参照し、必要なスループット、パーティション数、Event Hub ティア(Standard、Premium、Dedicated)を計算します。
    2. Terraform アーカイブを新しいディレクトリに解凍します。Terraform パラメータの更新手順に従ってください。
    3. terraform.tfvars ファイルを Notepad や vim などのテキストエディタで開きます。新しい Event Hub 名前空間を生成するには、terraform.tfvars の client_name を少し変更し、replacement_eventhubtrue に設定します。
    4. Terraform を計画・適用して Event Hub を作成します。
  2. Microsoft Defender ポータルで Streaming API 設定を変更します。

    1. 新しい設定を追加し、Event Hub Namespace Resource ID と新しい Event Hub 名を指定します。
    2. 古い設定を削除します。
  3. Azure Portal で、古い Event Hub の Outgoing Bytes および Outgoing Message メトリクスがゼロになったことを確認します。これには時間がかかる場合があります。古い Event Hub の残データを破棄しても問題ない場合は、このステップを省略できます。

  4. Secureworks® Taegis™ XDR で、新しい Event Hub のパラメータを Microsoft Defender for Endpoint インテグレーションに入力します。
  5. Azure Portal で古い Event Hub を削除します。

Microsoft Defender for Endpoint インテグレーションの削除🔗

Microsoft Defender for Endpoint インテグレーションを削除するには:

  1. XDR でインテグレーションを削除します。
  2. Microsoft Defender で Streaming API 設定(設定 → Microsoft 365 Defender → Streaming API)を削除します。
  3. 以下の Azure リソース(Terraform で作成したもの)を削除します:

    • terraform.tfvars で指定した名前の Storage Account('scwx-datp-integration-rg' リソースグループ内)
    • SCWX-TDR-Namespace で始まる Event Hub Namespace(該当する場合)

参考資料🔗

テストイベント🔗

Windows🔗

新たにオンボードしたデバイスで以下の PowerShell スクリプトを実行し、Defender for Endpoint サービスへの正常なレポートを確認します。コマンドプロンプトウィンドウは自動的に閉じます。成功した場合、約10分後にオンボード済みデバイスのポータルに新しい検知が表示されます。

  • フォルダーを作成:'C:\test-WDATP-test'
  • デバイスで管理者権限のコマンドプロンプトを開き、スクリプトを実行:

    powershell.exe -NoExit -ExecutionPolicy Bypass -WindowStyle Hidden $ErrorActionPreference = "SilentlyContinue";(New-Object System.Net.WebClient).DownloadFile('http://127.0.0.1/1.exe', 'C:\\test-WDATP-test\\invoice.exe');Start-Process 'C:\\test-WDATP-test\\invoice.exe'
    

MacOS/Linux🔗

curl -o ~/Downloads/eicar.com.txt https://www.eicar.org/download/eicar.com.txt