Microsoft Sentinel решение для приложений SAP — справочник по функциям

В этой статье описывается ряд функций, доступных в рабочей области после установки решения Microsoft Sentinel для приложений SAP. Узнайте больше о других функциях, перейдя в Microsoft Sentinel и загрузив код функции.

Найдите функции следующим образом:

  • В портал Azure на странице Общие > журналы на вкладке Функции и перечислены в разделе Функции рабочей области.
  • На портале Defender на странице "Исследование & ответ > " Расширенный поиск" на вкладке "Функции" в списке Sentinel функций рабочей области.

Содержимое этой статьи предназначено для ваших групп безопасности .

Использование функций в запросах вместо базовых журналов или таблиц

Мы настоятельно рекомендуем по возможности использовать функции, перечисленные в этой статье, в качестве субъектов их анализа, а не базовые журналы или таблицы.

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

SAPUsersAssignments

Функция SAPUsersAssignments собирает данные из нескольких источников данных SAP и создает ориентированное на пользователя представление текущих пользовательских master данных, включая назначенные роли и профили.

Эта функция суммирует назначения пользователей ролям и профилям и возвращает следующие данные:

Поле Описание Источник данных и заметки
Пользователь Идентификатор пользователя SAP Только SAL
Электронная почта SMTP-адрес USR21 (SMTP_ADDR)
UserType Тип пользователя USR02 (USTYP)
Timezone Часовой пояс USR02 (TZONE)
LockedStatus Состояние блокировки USR02 (UFLAG)
LastSeenDate Дата последнего просмотра USR02 (TRDAT)
LastSeenTime Время последней просмотр USR02 (LTIME)
UserGroupAuth Группа пользователей в обслуживании master пользователей USR02 (КЛАСС)
Профили Набор профилей (максимальный размер набора по умолчанию = 50) ["Profile 1", "Profile 2",...,"profile 50"]
DirectRoles Набор ролей, назначенных напрямую (максимальный размер набора по умолчанию = 50) ["Role 1", "Role 2",...,"”"Role 50"]
ChildRoles Набор косвенно назначенных ролей (максимальный размер набора по умолчанию = 50) ["Role 1", "Role 2",...,"”"Role 50"]
Клиент Идентификатор клиента
SystemID Идентификатор системы Как определено в соединителе

SAPUsersGetPrivileged

Функция SAPUsersGetPrivileged возвращает список привилегированных пользователей для каждого клиента и идентификатора системы.

Пользователи считаются привилегированными, если они соответствуют любому из следующих описаний:

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

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
TimeAgo Необязательный Семь дней Определяет, что функция ищет данные пользователя master от времени, определенного значениемTimeAgo, до времени, определенного значениемnow().

Функция SAPUsersGetPrivileged возвращает следующие данные:

Поле Описание
Пользователь Идентификатор пользователя SAP
Клиент Идентификатор клиента
SystemID Идентификатор системы

SAPUsersAuthorizations

Функция SAPUsersAuthorizations объединяет данные из нескольких таблиц для создания ориентированного на пользователя представления текущих ролей и назначенных авторизации. Возвращаются только пользователи с активными назначениями ролей и авторизации.

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
TimeAgo Необязательный Семь дней Определяет, что функция ищет данные пользователя master от времени, определенного значениемTimeAgo, до времени, определенного значениемnow().

Функция SAPUsersAuthorizations возвращает следующие данные:

Поле Описание Примечания
Пользователь Идентификатор пользователя SAP
Роли Набор ролей (максимальный размер набора по умолчанию = 50) ["Role 1", "Role 2",...,"Role 50"]
AuthorizationsDetails Набор авторизации (максимальный размер набора по умолчанию = 100) {{AuthorizationsDetails1},
Microsoft.Network/virtualNetworks/write,
...,
{AuthorizationsDetails100}}
Клиент Идентификатор клиента
SystemID Идентификатор системы

SAPConnectorHealth

Функция SAPConnectorHealth отражает состояние подключения агента и базовой системы SAP. На основе SAP_HeartBeat_CL журнала пульса и других показателей работоспособности он возвращает следующие данные:

Поле Описание
Агент Идентификатор агента в конфигурации агента (автоматически создается)
SystemID Идентификатор системы SAP
Состояние Общее состояние подключения
Сведения Сведения о подключении
ExtendedDetails Расширенные сведения о подключении
LastSeen Метка времени последней активности
StatusCode Код, отражающий состояние системы

SAPConnectorOverview

Функция SAPConnectorOverview показывает количество строк каждой таблицы SAP на идентификатор системы. Он возвращает список записей данных для каждого идентификатора системы и созданного времени.

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
TimeAgo Необязательный Семь дней Определяет, что функция ищет данные пользователя master от времени, определенного значениемTimeAgo, до времени, определенного значениемnow().

Функция SAPConnectorOverview возвращает следующие данные:

Поле Описание
TimeGenerated Значение datetime метки времени создания записи
SystemID_s Строка, представляющая идентификатор системы SAP.

Используйте следующий запрос Kusto для ежедневного анализа тенденций:

SAPConnectorOverview(7d)
| summarize count() by bin(TimeGenerated, 1d), SystemID_s

SAPUsersEmail

Функция SAPUsersEmail позволяет выполнять ориентированный на производительность поиск адреса электронной почты пользователя SAP для системы и клиента SAP, который обычно используется для связывания с учетной записью Active Directory.

Функция SAPUsersEmail использует данные, извлеченные из таблиц SAP USR21 (назначение ключа имени пользователя и адреса) и ADR6 (адреса электронной почты) для поиска адреса электронной почты. Если адрес электронной почты не найден, вместо этого возвращается идентификатор пользователя.

Это гарантирует, что учетные записи служб SAP, такие как DDIC, которые часто не связаны с адресами электронной почты, регистрируются как псевдо-учетные записи AD. Это также открывает некоторые функции UEBA, помогающие в расследовании инцидентов и охоте.

Функция SAPUsersEmail возвращает следующие данные:

Поле Описание
Clientid Идентификатор клиента SAP
SystemID Идентификатор системы SAP
Пользователь Идентификатор пользователя SAP
Электронная почта Адрес электронной почты пользователя SAP

SAPSystems

Функция SAPSystems используется для централизованного представления конфигурации для каждой системы, выполненной с помощью списка отслеживания SAP - Systems .

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
SelectedSystems Необязательный All Systems Используется для фильтрации определенных систем SAP
SelectedSystemRoles Необязательный All System Roles Определяет роли систем SAP для просмотра, как определено в списке отслеживания SAP — системы .

Функция SAPSystems возвращает следующие данные:

Поле Описание Источник данных и заметки
SearchKey Ключ поиска Индексированные поля для идентификатора системы SAP
SystemRole Роль системы SAP Рабочая среда, UAT
SystemUsage Основное использование системы SAP ERP, CRM
SystemID Идентификатор системы SAP

SAPAuditLogConfiguration

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

Функция SAPAuditLogConfiguration объединяет данные в конфигурации монитора журнала динамического аудита SAP и списках отслеживания SAP - Systems , чтобы обеспечить конфигурацию для каждой системы при каждой системной роли.

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
SelectedSystems Необязательный All Systems Используется для фильтрации конкретных систем SAP, на которые следует обратить внимание.
SelectedSystemRoles Необязательный All System Roles Определяет роли систем SAP для просмотра (как определено в списке отслеживания SAP - Systems ).
SelectedSeverities Необязательный [High, Medium] Используется для определения событий, которые необходимо рассматривать с точки зрения их серьезности. В списке отслеживания SAP_Dynamic_Audit_Log_Monitor_Configuration определяются серьезность для каждого идентификатора сообщения журнала аудита SAP и системной роли.
SelectedRuleTypes Необязательный All RuleTypes Определяет, какие события относятся к обнаружению аномалий. Типы правил для каждого идентификатора сообщения журнала аудита SAP и системной роли определяются в списке SAP_Dynamic_Audit_Log_Monitor_Configuration отслеживания.

Функция SAPAuditLogConfiguration возвращает следующие данные:

Поле Описание Источник данных и заметки
CategoryName Заданная sap категория событий Список отслеживания конфигурации монитора журнала динамического аудита SAP
DestinationEmail Email адрес назначенной команды Список отслеживания конфигурации монитора журнала динамического аудита SAP
Подробное описание Текст в формате Markdown для отображения в оповещениях Список отслеживания конфигурации монитора журнала динамического аудита SAP
MessageID Идентификатор сообщения журнала аудита SAP Список отслеживания конфигурации монитора журнала динамического аудита SAP
MessageText Пример текста сообщения Список отслеживания конфигурации монитора журнала динамического аудита SAP
RolesTagsToExclude a ABAP Role, Profile или free text tag Список отслеживания конфигурации монитора журнала динамического аудита SAP
RuleType Аномалии или детерминированные Список отслеживания конфигурации монитора журнала динамического аудита SAP
Тактики Тактика MITRE ATTA&CK Список отслеживания конфигурации монитора журнала динамического аудита SAP
TeamsChannelID Канал Teams Список отслеживания конфигурации монитора журнала динамического аудита SAP
SystemID Идентификатор системы SAP SAP — список наблюдения за системами
SystemRole Роль системы SAP SAP — список наблюдения за системами
SystemUsage Основное использование системы SAP SAP — список наблюдения за системами
IsProd Флаг рабочей системы SAP — список наблюдения за системами
Severity Производная серьезность Серьезность на использование системы
Порог Производное пороговое значение Количество событий на использование системы
BagOfDetails Пакет сведений Словарь с подробными сведениями об определении события

Дополнительные сведения см. в разделе Доступные списки отслеживания.

SAPAuditLogAnomalies

Функция SAPAuditLogAnomalies использует встроенные возможности машинного обучения базы данных Kusto Microsoft Sentinel для обнаружения аномальных событий, наблюдаемых в журнале аудита SAP.

Функция SAPAuditLogAnomalies была разработана для правила аналитики оповещений монитора журналов аудита на основе ДИНАМИЧЕСКИх аномалий SAP ( экспериментальная). Хотя его первоначальная конструкция заключается в оповещении о недавних аномалиях, он также может помочь выделить исторические аномалии. Дополнительные сведения см. в разделе Примеры использования.

Функция SAPAuditLogAnomalies изучает срез журнала, определенный различными входными параметрами, на следующих уровнях:

  • Пользователь
  • Сетевые атрибуты
  • Системные
  • Сезонность
  • Уровни действий

Затем функция SAPAuditLogAnomalies оценивает события, происходящие в течение последнего DetectingTime интервала времени, в соответствии с полученными данными, применяя пороговые значения и другие настраиваемые критерии исключения, полученные из списка отслеживания конфигурации журнала аудита SAP.

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

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
LearningTime Необязательный 14 дней Определяет интервал времени, используемый для обучения модели.
DetectingTime Необязательный Один час Определяет интервал времени, на который следует обращаться при обнаружении аномалий. Вызов этой функции с DetectingTime = 0h выделением аномалий во всем LearningTime диапазоне времени.
SelectedSystems Необязательный All Systems Используется для фильтрации конкретных систем SAP, на которые следует обратить внимание.
SelectedSystemRoles Необязательный All System Roles Определяет роли систем SAP для просмотра, как определено в списке отслеживания SAP — системы .
SelectedSeverities Необязательный [High, Medium] Используется для определения событий, которые необходимо рассматривать с точки зрения их серьезности. В списке отслеживания SAP_Dynamic_Audit_Log_Monitor_Configuration определяются серьезность для каждого идентификатора сообщения журнала аудита SAP и системной роли.
SelectedPrefixMask Необязательный 24 Используется для определения уровня маски подсети, используемого для обучения и обнаружения.
SelectedRuleTypes Необязательный AnomaliesOnly Определяет, какие события относятся к обнаружению аномалий. Типы правил для каждого идентификатора сообщения журнала аудита SAP и системной роли определяются в списке SAP_Dynamic_Audit_Log_Monitor_Configuration отслеживания.

Функция SAPAuditLogAnomalies возвращает следующие данные:

Поле Описание
Несколько полей из SAPAuditLog Ключевые поля из журнала аудита SAP
Несколько полей из SAPAuditLogConfiguration Ключевые поля из Microsoft Sentinel для конфигурации журнала аудита SAP
DiscoveredOn Округленный час, в течение которого аномалия наблюдалась на
EventCount Количество событий, подсчитываемых на каждую возвращаемую строку
AnomalCount Количество событий, наблюдаемых в соответствующем скользящем окне
MinTime Время первого наблюдаемого события
MaxTime Время последнего наблюдаемого события
Оценка оценки аномалий, созданные моделью аномалий;

Рекомендации.

Как и в случае с любым решением машинного обучения, функция SAPAuditLogAnomalies лучше работает со временем и может быть скорректирована по мере необходимости.

Рекомендуется ограничить размер изученной базы данных до 100 миллионов записей, используя множество доступных входных параметров.

Примеры использования:

  • Чтобы найти аномалии для событий с высокой степенью серьезности, произошедших в течение последнего часа в рабочих системах для типов событий, помеченных как AnomaliesOnly в списке отслеживания SAP_Dynamic_Audit_Log_Monitor_Configuration , выполните следующую команду:

    SAPAuditLogAnomalies(LearningTime = 14d, DetectingTime=1h, SelectedSystemRoles= dynamic(["Production"]), 
    SelectedSeverities= dynamic(["High"]), SelectedRuleTypes= dynamic(["AnomaliesOnly"]))
    
  • Чтобы найти все аномалии за последние 14 дней в системе BIP , выполните следующую команду:

    SAPAuditLogAnomalies(LearningTime = 14d, DetectingTime=0h, SelectedSystems= dynamic(["BIP"]))
    

Дополнительные сведения см. в статье Встроенные правила аналитики SAP для мониторинга журнала аудита SAP и обнаружения аномалий в журнале аудита SAP с помощью Microsoft Sentinel решения SAP (блог).

SAPAuditLogConfigRecommend

SAPAuditLogConfigRecommend — это вспомогательская функция, предназначенная для предоставления рекомендаций по настройке правила аналитики SAP — dynamic Anomaly based Audit Log Monitor Alerts (PREVIEW).

Дополнительные сведения см. в разделе Мониторинг журнала аудита SAP.

SAPUsersGetVIP

В решении Microsoft Sentinel для приложений SAP используется концепция тегов центрального пользователя и явных исключений, предназначенная для снижения ложноположительных результатов с минимальными усилиями.

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

Теги, указанные в качестве входных данных для функции SAPUsersGetVIP , исключают всех пользователей с тегом, указанным в списке SAP_User_Config отслеживания. Эта же функция расширена для работы с подстановочными знаками, что позволяет назначать один тег группе пользователей с тем же синтаксисом именования.

  1. Пометка пользователей в списке отслеживания SAP_User_Config следующим образом:

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

    • Используйте звездочку (*) в качестве подстановочного знака, чтобы включить пользователей с определенным шаблоном синтаксиса именования.

  2. Добавьте функцию SAPUsersGetVIP в правила аналитики, чтобы запросить список пользователей, которые вы определили для исключения из оповещений. В вызове функции добавьте массив с тегами, ролями SAP и профилями SAP, которые необходимо исключить.

Например, используйте следующий запрос KQL в правиле аналитики, чтобы исключить всех пользователей, настроенных с тегом RunObsoleteProgOK в списке SAP_User_Config отслеживания, или всех пользователей с примером роли SAP_BASIS_ADMIN_ROLE или примером профиля SAP_ADMIN_PROFILE .

При копировании этого примера вызова функции замените SAP_BASIS_ADMIN_ROLE роль и профиль SAP_ADMIN_PROFILE собственными ролями ИЛИ профилями SAP по мере необходимости.

Например, вы можете:

// Execution of Obsolete/Insecure Program
let ObsoletePrograms = _GetWatchlist("SAP - Obsolete Programs");
// here you can exclude system users which are OK to run obsolete/ sensitive programs
// by adding those users in the SAP_User_Config watchlist with a tag of 'RunObsoleteProgOK'
// can also specify SAP roles or SAP profiles that group the users you would like to exclude
let excludeUsersTagsRolesProfiles= dynamic(["RunObsoleteProgOK","SAP_BASIS_ADMIN_ROLE", "SAP_ADMIN_PROFILE"]);
let excludedUsers= SAPUsersGetVIP(SearchForTags= excludeUsersTagsRolesProfiles)| summarize by User2Exclude=SAPUser;
// Query logic
SAPAuditLog
| where MessageID == 'AUW'
| where ABAPProgramName in (ObsoletePrograms) // The program is obsolete
| join kind=leftantisemi excludedUsers on $left.User == $right.User2Exclude

Функция SAPUsersGetVIP обычно используется в детерминированных и аномальных оповещениях монитора журнала аудита . Свяжите тег с идентификатором сообщения журнала аудита SAP или расширьте шаблон правила на пользовательское правило, соответствующее потребностям вашей организации.

Совет

Мы рекомендуем обратиться к системному администратору SAP, чтобы понять, какие пользователи, роли и профили SAP следует включить в список отслеживания SAP_User_Config .

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
SearchForTags Необязательный dynamic('All Tags') Если SearchForTags равно All Tags, все пользователи возвращаются вместе со своими тегами.

В противном случае возвращаются только пользователи с тегами, ролями SAP или профилями SAP, указанными в SearchForTags . TagsIntersect отображает найденные теги и IntersectionSize содержит количество найденных тегов.
SpecialFocusTags Необязательный Do not return any in-focus users Возвращает всех пользователей с тегами, указанными в SpecialFocusTags, и помеченными для них .specialFocusTagged = true

Функция SAPUsersGetVIP возвращает следующие выходные данные:

Source Поле Описание Примечания
Список SAP_User_Config отслеживания SearchKey Ключ поиска
Список SAP_User_Config отслеживания SAPUser Пользователь SAP OSS, DDIC
Список SAP_User_Config отслеживания Tags Строка тегов, назначенных пользователю RunObsoleteProgOK
Список SAP_User_Config отслеживания Идентификатор объекта Microsoft Entra пользователя идентификатор объекта Microsoft Entra
Список SAP_User_Config отслеживания Идентификатор пользователя идентификатор пользователя каталога Azure
Список SAP_User_Config отслеживания Локальный идентификатор безопасности пользователя
Список SAP_User_Config отслеживания Имя субъекта-пользователя
Список SAP_User_Config отслеживания TagsList Список тегов, назначенных пользователю ChangeUserMasterDataOK;RunObsoleteProgOK
Логический оператор TagsIntersect Набор соответствующих тегов SearchForTags ["ChangeUserMasterDataOK","RunObsoleteProgOK"]
Логический оператор SpecialFocusTagged Специальная индикация фокусировки True, False
Логический оператор IntersectionSize Количество пересекающихся тегов

SAPUsersHeader

Функция SAPUsersHeader предназначена для предоставления высокоуровневого представления пользователя SAP. Он использует данные, извлеченные из таблиц данных пользователя SAP master, а также последние действия в журнале аудита SAP для сбора электронной почты и IP-адресов. Затем возвращается последняя известная электронная почта и IP-адреса, а также основной адрес электронной почты и IP-адреса.

Параметры:

Имя Необязательный или обязательный По умолчанию Описание
SelectedSystems Необязательный All Systems Используется для фильтрации определенных систем SAP для просмотра
SelectedSystemRoles Необязательный All System Roles Определяет роли систем SAP для просмотра, как определено в списке отслеживания SAP - Systems .
SelectedUsers Необязательный All Users Может вводить списки пользователей.
SelectedUser Необязательный All Users Принимает только одного пользователя.

Например, вы можете:

SelectedSystemRoles:dynamic = dynamic(["All System Roles"]) SelectedSystems:dynamic = dynamic(["All Systems"]) SelectedUsers:dynamic = dynamic(["All Users"]) SelectedUser:string = "All Users"

Совет

В целях повышения производительности учитываются действия аудита в течение всего нескольких дней. Чтобы создать полный журнал действий пользователей, выполните пользовательский запрос KQL к функции SAPAuditLog .

Функция SAPUsersHeader возвращает следующие выходные данные:

Source Поле Описание Примечания
Пользователь Пользователь SAP
Таблицы SAP ADR6 и USR21 Электронная почта Взято из данных master пользователя OSS, DDIC
Таблица SAP USR02 UserType Строка тегов, назначенных пользователю RunObsoleteProgOK
Таблица SAP USR02 Timezone идентификатор объекта Microsoft Entra
Таблица SAP USR02 LockedStatus идентификатор пользователя каталога Azure
Журнал аудита SAP LastSeen Метка времени Последнее событие аудита, наблюдаемое для пользователя
Журнал аудита SAP LastSeenDaysAgo Дни, прошедшие с тех пор LastSeen
Журнал аудита SAP PrimaryIP Наиболее часто используемый IP-адрес ChangeUserMasterDataOK;RunObsoleteProgOK
Журнал аудита SAP LastKnownIP Последний использованный IP-адрес ["ChangeUserMasterDataOK","RunObsoleteProgOK"]
Журнал аудита SAP PrimaryEmail Наиболее часто используемый адрес электронной почты True, False
Журнал аудита SAP Известные ip-адреса Список известных IP-адресов Отсортировано по наиболее частым первым
Журнал аудита SAP KnownEmails Список известных адресов электронной почты Отсортировано по наиболее частым первым
Клиент Идентификатор клиента SAP
SystemID Идентификатор системы SAP
SystemRole Роль системы SAP Рабочая среда, UAT
SystemUsage Основное использование системы SAP ERP, CRM

Дополнительные сведения см. в разделе: