Правила сегментации

Правила сегментации позволяют автоматически разделять связанные алерты на разные инциденты в соответствии с условиями, которые указанными при создании правил.

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

Алерты могут быть связаны только с инцидентом, принадлежащим тому же тенанту.

Правила сегментации срабатывают в соответствии с указанным приоритетом. Чем выше находится правило в списке правил сегментации, тем выше его приоритет. Если вы хотите изменить приоритет правила сегментации, вам нужно перетащить правило, нажав на его имя.

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

Чтобы создать правило сегментации:

  1. В главном окне приложения перейдите в раздел ПараметрыТенанты.

    Откроется список тенантов. Список содержит только те тенанты, к которым у вас есть хотя бы право на Чтение.

  2. Нажмите на тенант, для которого вы хотите создать правило сегментации.
  3. На вкладке Параметры нажмите на подраздел Правила сегментации в разделе Обнаружение и реагирование.

    Откроется список правил сегментации.

  4. Нажмите на кнопку Создать.

    Откроется окно Создать правило сегментации.

  5. Укажите параметры сегментации правила.
    • Статус

      Включите или выключите правило. По умолчанию правило выключено.

    • Правило

      Укажите уникальное имя правила.

    • Максимум алертов в инциденте

      Максимальное количество алертов в одном инциденте. Значение должно укладываться в диапазон от 1 до 200, а также должно быть больше или равно значению Минимум алертов в инциденте. Значение по умолчанию – 200. Если количество алертов превышает указанное значение, создается другой инцидент.

    • Минимум алертов в инциденте

      Минимальное количество алертов в одном инциденте. Минимальное значение и значение по умолчанию – 1. Значение должно быть меньше или равно значению Максимум алертов в инциденте. Если количество алертов не достигает указанного значения, инцидент не создается.

    • Интервал поиска

      Период, из которого следует выбирать алерты и инциденты. Значение можно указать в днях или часах. По умолчанию указано значение 30 дней.

    • Описание

      Необязательно. Описание правила.

    • Группы

      Выражение jq, определяющее массив идентификаторов строк, по которым назначаются алерты инцидентам.

      При необходимости вы можете скопировать выражение jq для раздела Группы из другого правила сегментации. Для этого нажмите на кнопку Копировать из другого правила.

      Пример: if any(.Observables[]? | select(.Type | ascii_downcase == "username") | .Value; startswith("adm_")) then ["Brute force admin"] else ["Brute force not admin"] end

    • Название инцидента

      Выражение jq, определяющее шаблон наименований инцидентов, созданных в соответствии с этим правилом сегментации. По умолчанию указано следующее выражение: "\(.Rules[]?.Name), \(.SourceCreatedAt)"

      Выражение jq для раздела Название инцидента можно скопировать из другого правила сегментации. Для этого нажмите на кнопку Копировать из другого правила.

      Пример: if any(.Observables[]? | select(.Type | ascii_downcase == "username") | .Value; startswith("adm_")) then "Brute force admin" else "Brute force not admin" end

    • Триггер

      Выражение jq, определяющее условие включения алертов в инцидент.

      При необходимости вы можете скопировать выражение jq для раздела Триггер из другого правила сегментации. Для этого нажмите на кнопку Копировать из другого правила.

      Пример: any(.Rules[]?; .ID == "123")

  6. Нажмите на кнопку Сохранить.

Правило сегментации сохраняется и отображается в таблице правил сегментации. Параметры правила можно изменить, нажав на его название в таблице.

Доступны следующие предварительно заданные правила сегментации:

Предварительно заданные правила автоматически применяются к тенантам.

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

loc_scheme_segmentation_rule_new_incident

Создание инцидента после срабатывания первого правила сегментации

Правило срабатывает, если выражение jq, указанное в разделе Триггер возвращает значение true.

Алерты не могут быть связаны с инцидентами, созданными вручную.

У инцидента также есть массив строковых идентификаторов, который включает в себя массивы алертов, уже связанных с этим инцидентом. Если в массиве алерта, для которого сработало правило сегментации, есть хотя бы один элемент, совпадающий с любым из элементов в массиве инцидента, алерт связывается с этим инцидентом. В результате массив этого алерта добавляется в массив инцидента.

loc_scheme_segmentation_rule_linking_to_incident

Привязка алерта к существующему инциденту после обнаружения совпадающих элементов

Если существует несколько инцидентов, удовлетворяющих условию, алерт связывается с инцидентом с наиболее поздним обновлением. Если в массивах не находится инцидентов с подходящими элементами, создается новый инцидент.

loc_scheme_segmentation_rule_no_match_new_incident

Создание инцидента после того, как не найдено ни одного подходящего элемента на основе первых двух правил сегментации

У новых инцидентов массив пуст. Массив строковых идентификаторов для нового инцидента берется из алерта после связывания алерта.

Правило сегментации. Пример

Настройте правила агрегации в разделе Правила агрегации. Пример раздела в этой статье.

В таблице ниже показано, как объединить все тестовые алерты на проникновение в один инцидент.

Правило сегментации

Атрибут

Значение

Триггер

.AggregationID == "Pentest"

Группы

["Pentest"]

Название инцидента

"Pentest incident"

Правила агрегации и сегментации. Пример

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

Правило агрегации

Атрибут

Значение

Описание

Триггер

any(.Rules[]?; .ID == "123")

Поиск алертов с идентификатором правила "123".

Идентификатор правила агрегации

if any(.OriginalEvents[]?.BaseEvents[]?.DestinationUserName // empty; startswith("adm_")) then "rule123_DestinationUserName_adm" else "rule123_DestinationUserName_not_adm" end

Поиск имен пользователей с префиксом "adm_".

Название алерта

if any(.OriginalEvents[]?.BaseEvents[]?.DestinationUserName // empty; startswith("adm_")) then "Rule123 admin" else "Rule123 not admin" end

Устанавливает название алерта в зависимости от префикса имени пользователя.

Правило сегментации

Атрибут

Значение

Триггер

.AggregationID | startswith("rule123_DestinationUserName")

Группы

[.AggregationID]

Название инцидента

.Name

В начало