Аудит запросов и действий Microsoft Sentinel

В этой статье описывается, как просмотреть данные аудита для выполнения запросов и действий, выполняемых в рабочей области Microsoft Sentinel, например для внутренних и внешних требований к соответствию в рабочей области "Операции безопасности" (SOC).

Microsoft Sentinel предоставляет доступ к:

  • Таблица AzureActivity, в которой содержатся сведения обо всех действиях, выполняемых в Microsoft Sentinel, таких как изменение правил генерации оповещений. Таблица AzureActivity не регистрирует определенные данные запроса. Дополнительные сведения см. в разделе Аудит с помощью журналов действий Azure.

  • Таблица LAQueryLogs, в которой содержатся сведения о запросах, выполняемых в Log Analytics, включая запросы, выполняемые из Microsoft Sentinel. Дополнительные сведения см. в статье Аудит с помощью LAQueryLogs.

Совет

Помимо запросов вручную, описанных в этой статье, рекомендуется использовать встроенную книгу аудита рабочей области , которая помогает выполнять аудит действий в среде SOC. Дополнительные сведения см. в статье «Визуализация и мониторинг данных с помощью книг в Microsoft Sentinel».

Предварительные условия

Аудит с помощью журналов действий Azure

Журналы аудита Microsoft Sentinel хранятся в журналах действий Azure, где таблица AzureActivity содержит все действия, выполняемые в рабочей области Microsoft Sentinel.

Используйте таблицу AzureActivity при аудите действий в среде SOC с Microsoft Sentinel.

Чтобы запросить таблицу AzureActivity, выполните следующие действия:

  1. Установите решение действия Azure для решения Sentinel и подключите соединитель данных Azure Activity, чтобы начать потоковую передачу событий аудита в новую таблицу с именем AzureActivity.

  2. Выполните запрос к данным с помощью языка запросов Kusto (KQL), как и к любой другой таблице:

    • В портале Azure выполните запрос к этой таблице на странице Журналы.
    • На портале Defender выполните запрос к этой таблице на странице Расследование и реагирование > Поиск >Расширенный поиск.

    Таблица AzureActivity содержит данные из многих служб, включая Microsoft Sentinel. Используйте следующий запрос для фильтрации таблицы AzureActivity, чтобы отображать только операции Microsoft Sentinel:

     AzureActivity
    | where OperationNameValue startswith "MICROSOFT.SECURITYINSIGHTS"
    

    Например, чтобы узнать, кто последним пользователем редактировал определенное правило аналитики, используйте следующий запрос (заменив xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx идентификатором правила, которое вы хотите проверка):

    AzureActivity
    | where OperationNameValue startswith "MICROSOFT.SECURITYINSIGHTS/ALERTRULES/WRITE"
    | where Properties contains "alertRules/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    | project Caller , TimeGenerated , Properties
    

Добавьте дополнительные параметры в запрос для дальнейшего изучения таблицы AzureActivities в зависимости от того, что нужно сообщить. В следующих разделах приведены другие примеры запросов для использования при аудите данных таблицы AzureActivity .

Дополнительные сведения см. в статье Данные Microsoft Sentinel, включенные в журналы действий Azure.

Поиск всех действий, выполненных конкретным пользователем за последние 24 часа

В следующем запросе таблицы AzureActivity перечислены все действия, выполненные конкретным пользователем Microsoft Entra за последние 24 часа.

AzureActivity
| where OperationNameValue contains "SecurityInsights"
| where Caller == "[AzureAD username]"
| where TimeGenerated > ago(1d)

Найти все операции удаления

Чтобы определить удалённые ресурсы Microsoft Sentinel, выполните следующий запрос для фильтрации журналов активности Azure на предмет успешных операций удаления в вашем рабочем пространстве.

AzureActivity
| where OperationNameValue contains "SecurityInsights"
| where OperationName contains "Delete"
| where ActivityStatusValue contains "Succeeded"
| project TimeGenerated, Caller, OperationName

данные Microsoft Sentinel, включенные в журнал активности Azure

Журналы аудита Microsoft Sentinel хранятся в журналах действий Azure и включают следующие типы сведений:

Операция Типы сведений
Created Правила оповещений
Комментарии к обращению
Комментарии к инциденту
Сохраненные поисковые запросы
Списки наблюдения
Рабочие книги
Deleted Правила оповещений
Закладки
Соединители данных
Инциденты
Сохраненные поисковые запросы
Параметры
Отчеты об аналитике угроз
Списки наблюдения
Рабочие книги
Рабочий процесс
Updated Правила оповещений
Закладки
Случаи
Соединители данных
Инциденты
Комментарии к инциденту
Отчеты об аналитике угроз
Рабочие книги
Рабочий процесс

Вы также можете использовать журналы действий 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

Таблица LAQueryLogs содержит сведения о запросах журналов, выполняемых в Log Analytics. Так как Log Analytics используется в качестве базового хранилища данных Microsoft Sentinel, вы можете настроить систему для сбора данных LAQueryLogs в рабочей области Microsoft Sentinel.

Данные LAQueryLogs включают в себя следующие сведения:

  • Когда выполнялись запросы
  • Кто выполнял запросы в Log Analytics
  • Какое средство использовалось для выполнения запросов в Log Analytics, например Microsoft Sentinel
  • Сами тексты запроса
  • Данные о производительности при каждом выполнении запроса

Примечание.

  • Таблица LAQueryLogs содержит только запросы, которые были выполнены на вкладке «Журналы» в Microsoft Sentinel. Сюда не входят запросы, выполняемые аналитическими правилами по расписанию, с использованием графа расследования, на странице Поиск угроз в Microsoft Sentinel или на странице Расширенный поиск на портале Defender.

  • Между выполнением запроса и заполнением данных в таблице LAQueryLogs может быть небольшая задержка. Рекомендуется подождать около 5 минут, чтобы запросить данные аудита в таблице LAQueryLogs .

Чтобы запросить таблицу LAQueryLogs, выполните следующие действия:

  1. Таблица LAQueryLogs не включена по умолчанию в рабочей области Log Analytics. Чтобы использовать данные LAQueryLogs при аудите в Microsoft Sentinel, сначала включите LAQueryLogs в области параметров диагностики рабочей области Log Analytics.

    Дополнительные сведения см. в статье Запросы аудита в журналах мониторинга Azure.

  2. Затем запросите данные с помощью KQL, как и любая другая таблица.

    Например, следующий запрос показывает, сколько запросов было выполнено за последнюю неделю в день:

    LAQueryLogs
    | where TimeGenerated > ago(7d)
    | summarize events_count=count() by bin(TimeGenerated, 1d)
    

В следующих разделах показаны дополнительные примеры запросов для выполнения в таблице LAQueryLogs при аудите действий в среде SOC с помощью Microsoft Sentinel.

Количество запросов, выполняемых, когда ответ не был "ОК"

Используйте следующий запрос для подсчета запросов Log Analytics, которые вернули код ответа без успеха. В этот счёт входят запросы, которые не выполнились или вернули что-либо, кроме ответа HTTP 200 OK .

LAQueryLogs
| where ResponseCode != 200 
| count 

Отображение пользователей для запросов с интенсивным использованием ЦП

Чтобы найти пользователей или клиентов, использующих наиболее ресурсоёмкие запросы, используйте следующий запрос, чтобы выявить максимальный CPU-запрос по идентификатору клиента Microsoft Entra, отсортированный по затраченному времени процессора.

LAQueryLogs
|summarize arg_max(StatsCPUTimeMs, *) by AADClientId
| extend User = AADEmail, QueryRunTime = StatsCPUTimeMs
| project User, QueryRunTime, QueryText
| sort by QueryRunTime desc

Отображение пользователей, которые выполнили больше всего запросов за последнюю неделю

Используйте следующий запрос, чтобы подытожить, сколько запросов выполнил каждый пользователь за последние семь дней, что поможет определить наиболее активных пользователей в вашем рабочем пространстве для аудита или анализа использования.

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.

Например, если в вашем рабочем пространстве Microsoft Sentinel есть чувствительные таблицы, вы можете определить, когда к ним обращаются. Следующий запрос проводит аудит доступа к конкретной чувствительной таблице, перечисляя запросы, которые ссылались на неё за последние 24 часа. Замените [Name of sensitive table] название таблицы, которую хотите отслеживать:

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.

  • Мониторинг с помощью книг. Несколько встроенных книг 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 с помощью правил автоматизации.

  • Отслеживайте работоспособность соединителя данных с помощью сценария решения push-уведомлений о работоспособности соединителя, чтобы выявлять застой или остановку приема данных, а также отправлять уведомления, когда соединитель перестает собирать данные или компьютеры перестают отправлять данные.

См. документацию Kusto для операторов и функций, используемых в примерах KQL, в этой статье:

Дополнительные сведения о KQL см. в статье Общие сведения о язык запросов Kusto (KQL).

Другие ресурсы

Дальнейшие действия

В Microsoft Sentinel используйте книгу аудита рабочей области для аудита действий в среде SOC. Дополнительные сведения см. в статье Визуализация и мониторинг данных.