R-Vision SOAR

Настройки интеграции R-Vision SIEM позволяют настроить систему на отправку инцидентов в R-Vision SOAR. Когда интеграция включена, создание оповещения в R-Vision SIEM приводит к созданию инцидента в R-Vision SOAR.

Интеграция между R-Vision SOAR и R-Vision SIEM настраивается в обеих системах.

Настройка R-Vision SOAR

Выполните следующие шаги в системе R-Vision SOAR для настройки получения событий из R-Vision SIEM:

Создание пользователя

Чтобы создать пользователя, выполните следующие шаги в системе R-Vision SOAR:

  1. Перейдите в раздел Настройки системы → Общие → Пользователи системы → Пользователи.

  2. Выберите опцию Добавить нового пользователя в выпадающем меню кнопки Добавить (add). Система отобразит окно добавления пользователя.

  3. Введите уникальный логин пользователя.

  4. Укажите организации, от которых будут поступать инциденты.

  5. Введите описание пользователя.

  6. Установите пароль для пользователя.

  7. В разделе Системные роли нажмите на кнопку Добавить, чтобы назначить пользователю соответствующие роли.

    Убедитесь, что у роли есть права на добавление и изменение инцидентов. Роли можно просмотреть в разделе Настройки системы → Общие → Роли пользователей.

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

Создание токена для отправки запросов

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

Чтобы создать токен, выполните следующие шаги в системе R-Vision SOAR:

  1. Перейдите в раздел Настройки системы → Общие → API.

  2. Нажмите на кнопку Добавить в заголовке списка токенов. Система отобразит окно выбора пользователя.

  3. Выберите пользователя, для которого будет создан токен.

  4. Нажмите на кнопку Выбрать, чтобы подтвердить выбор пользователя. Токен пользователя будет отображен в списке.

Настройка категории инцидента

Категория инцидента в системе R-Vision SOAR представляет собой набор полей, используемых для описания инцидента. В рамках категории существуют различные типы инцидентов.

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

Для возможности настройки синхронизации систем R-Vision SOAR и R-Vision SIEM требуется настроить поля категории инцидента.

Чтобы настроить категории инцидента, выполните следующие шаги в системе R-Vision SOAR:

  1. Перейдите в раздел Настройки системы → Инциденты → Категории.

  2. Выберите требуемую категорию нажатием на ее строку в списке или создайте новую с помощью кнопки Добавить (add).

  3. В секции Поля нажмите на кнопку Изменить. Система отобразит окно выбора полей.

  4. Выберите поля, требуемые для настраиваемой интеграции, и запомните теги этих полей.

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

Настройка R-Vision SIEM

Выполните следующие действия в системе R-Vision SIEM для настройки отправки событий в R-Vision SOAR:

  1. Перейдите в раздел Ресурсы → Секреты и создайте секрет типа Токен, поместив в него API-ключ (токен пользователя) для подключения к R-Vision SOAR.

  2. Перейдите в раздел Ресурсы → Интеграции. Система отобразит сведения об имеющихся интеграциях, в том числе их текущий статус (включена/выключена).

  3. Нажмите на кнопку Создать (plus) и выберите R-Vision SOAR из выпадающего меню. Система отобразит окно создания интеграции.

  4. Заполните поля:

    1. Название.

    2. Описание (опционально).

    3. URL-адрес сервера R-Vision SOAR, например https://rvision_soar.local.

  5. Выберите секрет типа Токен, созданный на шаге 1.

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

  6. Нажмите на кнопку Проверить подключение. Система проверит доступность подключения к системе и отобразит его статус (Успешное соединение/Ошибка подключения).

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

    На данном этапе вы можете отправить тестовое оповещение в систему R-Vision SOAR с помощью кнопки Отправить тестовое оповещение.
  8. Выберите шаблон, по которому будут настраиваться инциденты в R-Vision SOAR.

  9. Задайте название категории инцидента из системы R-Vision SOAR.

    Название категории можно задать с помощью шаблона, заключенного в двойные фигурные скобки {{...}}. Подробности использования шаблонов приведены в разделе Работа с шаблонами полей.

  10. Укажите тип инцидента из системы R-Vision SOAR (опционально).

  11. Нажмите на кнопку Создать. Система отобразит уведомление об успешном создании интеграции. Интеграция отобразится в списке раздела Ресурсы → Интеграции.

Соответствие атрибутов и полей инцидента

При настройке интеграции важно понимать правила соответствия между атрибутами R-Vision SIEM и полями инцидентов, отправленных в R-Vision SOAR.

Чтобы задать соответствие полей инцидента из системы R-Vision SOAR и атрибутов в системе R-Vision SIEM, укажите следующие настройки поля в шаблоне сообщения:

  1. Тег поля SOAR — тег поля инцидента из системы R-Vision SOAR.

  2. Тип поля — тип поля инцидента из системы R-Vision SOAR. Позволяет передать в R-Vision SOAR поле нужного типа. Доступные типы поля: Строка, Число, Логический тип.

  3. Значение поля — значение атрибута из системы R-Vision SIEM.

Доступны следующие варианты заполнения значений атрибутов в R-Vision SIEM:

  • Константы — значения, которые всегда передаются в поле инцидента в статичном виде, без изменений. Например: "Оповещение SIEM".

  • Шаблоны — значения, которые будут передаваться в поле инцидента на основе шаблона, указанного в двойных фигурных скобках: {{...}}. Подробности использования шаблонов приведены в разделе Работа с шаблонами полей.

Пример заполнения полей

Рассмотрим пример заполнения полей с помощью констант.

  • Тип: Подозрение на инцидент (событие ИБ)

  • Категория: Инцидент SIEM

Table 1. Пример соответствия между атрибутами и полями инцидента в системах
Имя поля SIEM Тег поля SOAR Имя поля SOAR (RU) Имя поля SOAR (ENG)

alertId

SIEMAlertId

R-Vision SIEM Alert ID

R-Vision SIEM Alert ID

statusName

STATUS

Статус инцидента

Incident status

severityLevel

LEVEL

Уровень инцидента

Incident level

correlationEventsLink

correlationEvents

Ссылка на корреляционные события

Correlation events link

correlationEventsCount

correlationEventsCount

Количество корреляционных событий

Correlation events count

correlationRuleName

sense_rule_name

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

Rule name

Так как интеграция настроена на основе констант, то поля инцидентов, отправляемых по этой интеграции из R-Vision SIEM в R-Vision SOAR, всегда будут хранить одни и те же указанные данные:

  • SIEMAlertId: alertId.

  • STATUS: statusName.

  • LEVEL: severityLevel.

  • correlationEvents: correlationEventsLink.

  • correlationEventsCount: correlationEventsCount.

  • sense_rule_name: correlationRuleName.

Работа с шаблонами инцидентов

Для создания инцидентов в R-Vision SOAR по интеграции необходимо использовать шаблоны. Шаблоны позволяют задавать тег, тип и значение для полей инцидента.

По умолчанию в списке шаблонов отображается стандартный шаблон для инцидентов SOAR. Стандартный шаблон недоступен для изменения или удаления.

Стандартный шаблон для оповещений SOAR-интеграции

Поле 1:

  • Тег поля SOAR: LEVEL

  • Тип поля: string

  • Значение поля:

    {{#switch alert.severity }}
        {{#case 'SEVERITY_LOW'}} Незначительный {{/case}}
        {{#case 'SEVERITY_MEDIUM'}} Средний {{/case}}
        {{#case 'SEVERITY_HIGH'}} Высокий {{/case}}
        {{#case 'SEVERITY_CRITICAL'}} Критичный {{/case}}
        {{#default 'Средний' }} {{/default}}
    {{/switch}}

Поле 2:

  • Тег поля SOAR: STATUS

  • Тип поля: string

  • Значение поля:

    {{#switch alert.status }}
        {{#case 'STATUS_OPEN'}} Создан {{/case}}
        {{#case 'STATUS_IN_PROGRESS'}} Создан {{/case}}
        {{#case 'STATUS_RESOLVED'}} Закрыт {{/case}}
        {{#case 'STATUS_FALSE_POSITIVE'}} Закрыт {{/case}}
        {{#default 'Создан' }} {{/default}}
    {{/switch}}

Поле 3:

  • Тег поля SOAR: AlertLink

  • Тип поля: string

  • Значение поля:

    {{alert.link}}

Поле 4:

  • Тег поля SOAR: DESCRIPTION

  • Тип поля: string

  • Значение поля:

    {{{alert.correlationRuleDescription}}}

Вы можете добавлять, изменять, дублировать и удалять шаблоны инцидентов.

Добавление шаблона инцидента

Чтобы добавить новый шаблон инцидента:

  1. Нажмите на кнопку Добавить шаблон в окне настройки интеграции с R-Vision SOAR. Отобразится окно добавления шаблона сообщения.

  2. Укажите название шаблона.

  3. Задайте настройки для каждого поля:

  4. Тег поля SOAR — укажите тег поля инцидента из системы R-Vision SOAR. Тег может содержать латинские буквы, цифры, символ "_". Первый символ должен быть буквой. Длина тега — от 2 до 60 символов

  5. Тип поля — выберите из выпадающего списка тип поля инцидента из системы R-Vision SOAR. Позволяет передать в R-Vision SOAR поле нужного типа. Доступные типы поля: Строка, Число, Логический тип.

  6. Значение поля — укажите значение атрибута из системы R-Vision SIEM.

    В качестве значения можно передавать поля оповещений и корреляционных событий с помощью специальных шаблонов полей. Подробности использования шаблонов приведены в разделе Работа с шаблонами полей.

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

    Пример

    При нажатии на поле Статус оповещения в справочнике, Значение поля заполнится шаблоном {{alert.status}}.

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

  7. Нажмите на кнопку Добавить. Новый шаблон инцидента будет добавлен в список шаблонов.

Изменение шаблона инцидента

Чтобы изменить шаблон инцидента:

  1. Откройте выпадающий список Шаблоны в окне настройки интеграции с R-Vision SOAR.

  2. Нажмите на кнопку edit в строке нужного шаблона. Отобразится окно изменения шаблона сообщения.

  3. Внесите требуемые изменения в шаблон инцидента.

  4. Нажмите на кнопку Сохранить. Измененные данные шаблона будут сохранены.

Дублирование шаблона инцидента

Чтобы добавить новый шаблон инцидента на основе существующего:

  1. Откройте выпадающий список Шаблоны в окне настройки интеграции с R-Vision SOAR.

  2. Нажмите на кнопку plus в строке нужного шаблона. Отобразится окно добавления шаблона сообщения, поля которого будут автоматически заполнены данными из выбранного шаблона.

  3. Измените название шаблона инцидента.

  4. При необходимости измените настройки полей в шаблоне.

  5. Нажмите на кнопку Добавить. Новый шаблон инцидента будет добавлен в список шаблонов.

Удаление шаблона инцидента

Чтобы удалить шаблон инцидента:

  1. Откройте выпадающий список Шаблоны в окне настройки интеграции с R-Vision SOAR.

  2. Нажмите на кнопку trash в строке нужного шаблона. Отобразится окно подтверждения удаления шаблона.

  3. Нажмите на кнопку Удалить. Выбранный шаблон инцидента будет удален.

Работа с шаблонами полей

В качестве значений полей и названий категорий для инцидентов R-Vision SOAR можно передавать поля оповещений или корреляционных событий, сгенерировавших оповещения. Для этого поля необходимо указать в двойных фигурных скобках: {{...}}.

Для корректной передачи символов используйте экранирование, задаваемое тройными фигурными скобками: {{{...}}}.

Шаблоны могут принимать данные из:

  • Оповещений. Для этого используйте шаблон вида: {{alert.<поле оповещения>}}.

    Example 1. Пример шаблона на основе оповещения
    {{alert.link}}

    В примере выше шаблон получает данные из поля link оповещения. Например, если поле link содержит значение "https://1.0.0.0/alert/id", то такое значение и будет передаваться в поле инцидента через этот шаблон.

    Для удобства добавления шаблонов на основе оповещения вы можете воспользоваться функционалом справочника.
  • Корреляционных событий, сгенерировавших оповещение. Для этого используйте шаблон вида: {{correlationEvent.<поле события>}}.

    Данные будут браться только из первого корреляционного события, сгенерировавшего оповещение. Все последующие события, поступающие на то же оповещение, учитываться не будут.
    Example 2. Пример шаблона на основе корреляционного события
    {{correlationEvent.name}}

    В примере выше шаблон получает данные из названия корреляционного события. Например, если в качестве названия используется "UsualCorrelationEvent", то такое значение и будет передаваться в поле инцидента через этот шаблон.

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

Построение сложных шаблонов

В системе R-Vision SOAR можно создавать и настраивать пользовательские поля инцидента. По этой причине может возникнуть необходимость гибкой настройки шаблона, обрабатывающего различные значения поля. Для этого, помимо простых шаблонов, в R-Vision SIEM можно использовать шаблоны с конструкцией ветвления switch.

Example 3. Общая структура switch-конструкции
{{#switch <поле> }}
    {{#case '<значение 1>'}} <результат 1> {{/case}}
    {{#case '<значение 2>'}} <результат 2> {{/case}}
    ...
    {{#default '<значение по умолчанию>' }} <результат по умолчанию> {{/default}}
{{/switch}}

Конструкция работает следующим образом:

  1. Проверяется поле <поле> оповещения или корреляционного события.

  2. Содержимое поля сравнивается с заданным списком значений: <значение 1>, <значение 2>, …​, <значение по умолчанию>.

  3. В зависимости от значения поля, соответствующее ему поле инцидента, передаваемого из R-Vision SIEM в R-Vision SOAR, заполняется требуемым содержимым: <результат 1>, <результат 2>, …​, <результат по умолчанию>.

Рассмотрим пример switch-конструкции, работающей на основе оповещения.

Example 4. Пример switch-конструкции
{{#switch alert.status }}
    {{#case 'STATUS_OPEN'}} Создан {{/case}}
    {{#case 'STATUS_IN_PROGRESS'}} Создан {{/case}}
    {{#case 'STATUS_RESOLVED'}} Закрыт {{/case}}
    {{#case 'STATUS_FALSE_POSITIVE'}} Закрыт {{/case}}
    {{#default 'Создан' }} {{/default}}
{{/switch}}

Пример выше проверяет поле status оповещения, а затем заполняет соответствующее поле инцидента значением, отвечающим содержимому поля status. Например, если поступившее оповещение имеет статус STATUS_OPEN, то поле инцидента заполнится значением "Создан".