トレーニング
認定資格
Microsoft Certified: Security Operations Analyst Associate - Certifications
Microsoft Sentinel、Microsoft Defender for Cloud、Microsoft 365 Defender を使って、脅威の調査、検索、軽減を行います。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
この記事では、Microsoft Sentinel ワークスペースで実行されるクエリとアクティビティの監査データを表示する方法について説明します。たとえば、セキュリティ運用 (SOC) ワークスペースでの内部および外部のコンプライアンス要件に対応します。
Microsoft Sentinel では次のアクセスが提供されます。
AzureActivity テーブル。警告ルールの編集など、Microsoft Sentinel で実行されるすべてのアクションに関する詳細を示します。 AzureActivity テーブルでは、特定のクエリ データは記録されません。 詳細については、「Azure アクティビティ ログを使用した監査」を参照してください。
LAQueryLogs テーブル。Microsoft Sentinel から実行されるクエリを含め、Log Analytics で実行されるクエリに関する詳細を示します。 詳細については、「LAQueryLogs を使用した監査」を参照してください。
ヒント
この記事で説明する手動クエリに加えて、組み込みのワークスペース監査ブックを使用して SOC 環境のアクティビティを監査することをお勧めします。 詳細については、「Microsoft Sentinel でブックを使用してデータを視覚化および監視する」を参照してください。
この記事のサンプル クエリを正常に実行するには、事前に関連するデータを Microsoft Sentinel ワークスペースに用意して、クエリを実行し、Microsoft Sentinel にアクセスする必要があります。
詳細については、「Microsoft Sentinel のコンテンツを構成する」および「Microsoft Sentinel のロールとアクセス許可」を参照してください。
Microsoft Sentinel の監査ログは、Azure アクティビティ ログに保持されます。ここでは、Microsoft Sentinel ワークスペースで実行されるすべてのアクションが AzureActivity テーブルに含まれています。
Microsoft Sentinel で SOC 環境のアクティビティを監査する場合は、AzureActivity テーブルを使用します。
AzureActivity テーブルに対してクエリを実行するには:
Sentinel 用 Azure アクティビティ ソリューションをインストールし、Azure Activity データ コネクタを接続して、AzureActivity
と呼ばれる新しいテーブルへの監査イベントのストリーミングを開始します。
他のテーブルの場合と同様に、Kusto 照会言語 (KQL) を使用してデータに対してクエリを実行します。
AzureActivity テーブルには、Microsoft Sentinel を含むさまざまなサービスのデータが含まれています。 Microsoft Sentinel のデータのみをフィルター処理するには、次のコードを使ってクエリを開始します。
AzureActivity
| where OperationNameValue startswith "MICROSOFT.SECURITYINSIGHTS"
たとえば、特定の分析ルールを最後に編集したユーザーを確認するには、次のクエリを使用します (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
を、確認するルールのルール ID に置き換えます)。
AzureActivity
| where OperationNameValue startswith "MICROSOFT.SECURITYINSIGHTS/ALERTRULES/WRITE"
| where Properties contains "alertRules/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
| project Caller , TimeGenerated , Properties
レポートに必要な内容に応じて、クエリにパラメーターをさらに追加して、AzureActivities テーブルを詳しく調べます。 次のセクションでは、AzureActivity テーブル データを使用して監査するときに使用するその他のサンプル クエリについて説明します。
詳細については、「Azure アクティビティ ログに含まれる Microsoft Sentinel データ」を参照してください。
次の AzureActivity テーブル クエリでは、過去 24 時間に特定の Microsoft Entra ユーザーによって実行されたすべてのアクションが一覧表示されます。
AzureActivity
| where OperationNameValue contains "SecurityInsights"
| where Caller == "[AzureAD username]"
| where TimeGenerated > ago(1d)
次の AzureActivity テーブル クエリでは、Microsoft Sentinel ワークスペースで実行されたすべての削除操作が一覧表示されます。
AzureActivity
| where OperationNameValue contains "SecurityInsights"
| where OperationName contains "Delete"
| where ActivityStatusValue contains "Succeeded"
| project TimeGenerated, Caller, OperationName
Microsoft Sentinel の監査ログは、Azure アクティビティ ログに保持され、次の種類の情報が含まれます。
Operation | 情報の種類 |
---|---|
作成済 | アラート ルール ケース コメント インシデント コメント 保存した検索条件 ウォッチリスト Workbooks |
Deleted | アラート ルール ブックマーク データ コネクタ インシデント 保存した検索条件 設定 脅威インテリジェンス レポート ウォッチリスト Workbooks ワークフロー |
更新 | アラート ルール ブックマーク ケース データ コネクタ インシデント インシデント コメント 脅威インテリジェンス レポート Workbooks ワークフロー |
また、Azure アクティビティ ログを使用して、ユーザーの認可とライセンスを確認することもできます。 たとえば、次の表は、Azure アクティビティ ログで検出された選択済みの操作と、ログ データのプル元である特定のリソースを示しています。
操作の名前 | リソースの種類 |
---|---|
ブックの作成または更新 | Microsoft.Insights/workbooks |
ブックの削除 | Microsoft.Insights/workbooks |
ワークフローの設定 | Microsoft.Logic/workflows |
ワークフローの削除 | Microsoft.Logic/workflows |
保存した検索条件を作成する | Microsoft.OperationalInsights/workspaces/savedSearches |
保存した検索条件の削除 | Microsoft.OperationalInsights/workspaces/savedSearches |
警告ルールの更新 | Microsoft.SecurityInsights/alertRules |
警告ルールの削除 | Microsoft.SecurityInsights/alertRules |
警告ルールの応答アクションの更新 | Microsoft.SecurityInsights/alertRules/actions |
警告ルールの応答アクションの削除 | Microsoft.SecurityInsights/alertRules/actions |
ブックマークの更新 | Microsoft.SecurityInsights/bookmarks |
ブックマークの削除 | Microsoft.SecurityInsights/bookmarks |
ケースの更新 | Microsoft.SecurityInsights/Cases |
ケース調査の更新 | Microsoft.SecurityInsights/Cases/investigations |
ケース コメントの作成 | Microsoft.SecurityInsights/Cases/comments |
データ コネクタの更新 | Microsoft.SecurityInsights/dataConnectors |
データ コネクタの削除 | Microsoft.SecurityInsights/dataConnectors |
設定の更新 | Microsoft.SecurityInsights/settings |
詳細については、「Azure アクティビティ ログ イベント スキーマ」を参照してください。
LAQueryLogs テーブルは、Log Analytics で実行されるログ クエリの詳細を示します。 Log Analytics は Microsoft Sentinel の基になるデータ ストアとして使われるため、Microsoft Sentinel ワークスペースで LAQueryLogs データを収集するようにシステムを構成できます。
LAQueryLogs データには、次のような情報が含まれます。
注意
LAQueryLogs テーブルには、Microsoft Sentinel の [ログ] ブレードで実行されたクエリのみが含まれます。 調査グラフを使って、Microsoft Sentinel の [ハンティング] ページまたは Defender ポータルの [高度なハンティング] ページで、スケジュールされた分析ルールによって実行されるクエリは含まれません。
クエリが実行されてから、LAQueryLogs テーブルにデータが設定されるまでに、短い遅延が発生する場合があります。 LAQueryLogs テーブルの監査データに対してクエリを実行するには、約 5 分間待つことをお勧めします。
LAQueryLogs テーブルに対してクエリを実行するには、次の手順に従います。
現在の Log Analytics ワークスペースでは、LAQueryLogs テーブルは既定で有効になっていません。 Microsoft Sentinel で監査するときに LAQueryLogs データを使うには、まず、Log Analytics ワークスペースの [診断設定] 領域で LAQueryLogs を有効にします。
詳細については、「Azure Monitor ログでのクエリの監査」を参照してください。
次に、他のテーブルの場合と同様に、KQL を使用してデータに対してクエリを実行します。
たとえば、次のクエリは、過去 1 週間に実行されたクエリの数を日単位で示しています。
LAQueryLogs
| where TimeGenerated > ago(7d)
| summarize events_count=count() by bin(TimeGenerated, 1d)
次のセクションでは、Microsoft Sentinel を使って SOC 環境でアクティビティを監査するときに、LAQueryLogs テーブルで実行するサンプル クエリをさらに示します。
次の LAQueryLogs テーブル クエリは、実行されたクエリの数を示しています。ここでは、200 OK の HTTP 応答以外の何らかのデータが受信されました。 たとえば、この数値には、実行に失敗したクエリが含まれます。
LAQueryLogs
| where ResponseCode != 200
| count
次の LAQueryLogs テーブル クエリでは、使用されている CPU とクエリ時間の長さに基づいて、最も多くの CPU 集約型のクエリを実行したユーザーが一覧表示されます。
LAQueryLogs
|summarize arg_max(StatsCPUTimeMs, *) by AADClientId
| extend User = AADEmail, QueryRunTime = StatsCPUTimeMs
| project User, QueryRunTime, QueryText
| order by QueryRunTime desc
次の LAQueryLogs テーブル クエリでは、過去 1 週間に最も多くのクエリを実行したユーザーが一覧表示されます。
LAQueryLogs
| where TimeGenerated > ago(7d)
| summarize events_count=count() by AADEmail
| extend UserPrincipalName = AADEmail, Queries = events_count
| join kind= leftouter (
SigninLogs)
on UserPrincipalName
| project UserDisplayName, UserPrincipalName, Queries
| summarize arg_max(Queries, *) by UserPrincipalName
| sort by Queries desc
Microsoft Sentinel 監査リソースを使って、プロアクティブなアラートを作成できます。
たとえば、Microsoft Sentinel ワークスペースに機密テーブルがある場合、次のクエリを使って、テーブルに対してクエリが実行されるたびに通知を受け取ることができます。
LAQueryLogs
| where QueryText contains "[Name of sensitive table]"
| where TimeGenerated > ago(1d)
| extend User = AADEmail, Query = QueryText
| project User, Query
Microsoft Sentinel の独自の機能を使って、Microsoft Sentinel 内で発生するイベントとアクションを監視します。
ブックでの監視。 いくつかの組み込みの Microsoft Sentinel ブックは、ワークスペースで作業しているユーザー、使用されている分析ルール、最も多く対象となった MITRE 戦術、停滞または停止している取り込み、SOC チームのパフォーマンスなどに関する情報を含めて、ワークスペース アクティビティを監視するのに役立ちます。
詳細については、「Microsoft Sentinel でブックを使用してデータを視覚化および監視する」および「一般的に使用される Microsoft Sentinel ブック」を参照してください
インジェストの遅延を監視。 インジェストの遅延の懸念がある場合、遅延を表す分析ルールの変数を設定します。
たとえば、次の分析ルールを使用すると、結果に重複が含まれないようにし、ルールの実行時にログが失われないようにすることができます。
let ingestion_delay= 2min;let rule_look_back = 5min;CommonSecurityLog| where TimeGenerated >= ago(ingestion_delay + rule_look_back)| where ingestion_time() > (rule_look_back)
- Calculating ingestion delay
CommonSecurityLog| extend delay = ingestion_time() - TimeGenerated| summarize percentiles(delay,95,99) by DeviceVendor, DeviceProduct
詳細については、「自動化ルールで Microsoft Sentinel でのインシデント処理を自動化する」を参照してください。
Connector Health Push Notification Solution プレイブックを使用してデータ コネクタの正常性を監視し、停滞または停止しているインジェストがないかどうかを監視し、コネクタがデータの収集を停止したとき、またはマシンがレポートを停止したときに通知を送信します。
Microsoft Sentinel でワークスペース監査ブックを使って、SOC 環境のアクティビティを監査します。 詳細については、「データの視覚化と監視」を参照してください。
トレーニング
認定資格
Microsoft Certified: Security Operations Analyst Associate - Certifications
Microsoft Sentinel、Microsoft Defender for Cloud、Microsoft 365 Defender を使って、脅威の調査、検索、軽減を行います。