Организация совместной работы KOMRAD Enterprise SIEM и сервера авторизации Blitz Identity Provider
С помощью KOMRAD Enterprise SIEM можно получить информацию об администрировании Blitz Identity Provider (далее - Blitz IDP), а также об авторизации пользователей, сменах токенов, изменении аутентификаторов и т.п.
Для этого необходимо настроить взаимодействие KOMRAD Enterprise SIEM и Blitz IDP.
Настройка Blitz IDP для передачи информации в KOMRAD Enterprise SIEM
-
Подразумевается, что сервер Blitz IDP настроен, развёрнут и функционирует в полном объёме. Убедитесь, пожалуйста, что Вы включили и настроили Syslog-коллектор в KOMRAD Enterprise SIEM
-
Наличие лицензии (разрешения) на использование Syslog-коллектора в KOMRAD (см. Обзор пользовательского интерфейса ⇒ О системе ⇒ Информация о лицензии)
-
Отсутствуют какие-либо ограничения на передачу трафика по выбранному порту между источником событий ИБ и сервером KOMRAD
Настройка сервера для передачи информации о событиях KOMRAD Enterprise SIEM
Порядок настройки аудита на сервере Blitz IDP
Подробнее об аудите в Blitz IDP, его настройке, а также ключевых параметрах можно прочитать здесь.
Далее показан пример настройки отправки всех типов событий Blitz IDP.
Откройте конфигурационный файл blitz.conf
:
sudo nano /usr/share/identityblitz/blitz-config/blitz.conf
Приведите фрагмент audit
в конфигурационном файле blitz.conf
к следующему виду:
"audit" : {
"emitters" : [
{
"enabled" : true,
"type" : "log",
"logger" : "FOR_SIEM"
},
{
"enabled" : true,
"type" : "audit-store"
}
]
},
Сохраните изменения в файле.
Откройте конфигурационный файл logback.xml
:
sudo nano /usr/share/identityblitz/blitz-config/logback.xml
Настройте новый логгер:
<appender name="FOR_SIEM" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${dir.logs}/audit-${app.name}.log</file>
<encoder>
<pattern>%message%n%xException{20}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${dir.logs}/archive/audit-${app.name}.%d{yyyy-MM-dd}.log.gz</fileNamePattern>
<maxHistory>90</maxHistory>
<totalSizeCap>5GB</totalSizeCap>
</rollingPolicy>
</appender>
<logger name="FOR_SIEM" additivity="false">
<appender-ref ref="FOR_SIEM" />
</logger>
Сохраните изменения в файле.
Перезагрузите службу blitz-console
:
sudo systemctl restart blitz-console.service
Пример записи в логе:
{"ip":"10.0.2.2","session_id":"940e965d-c050-4009-86ca-74c018afd088","ch_platform":"\"Windows\"","process_id":"b3b24a4c-77e9-47df-acfa-c39a79c6dbcb","error":"internal","failed_method":"sms","client_auth_method":"internal","type":"auth_failed","protocol":"oAuth","timestamp":1716277733455,"ch_platform_version":"\"10.0.0\"","ch_ua":"\"Chromium\";v=\"124\", \"Microsoft Edge\";v=\"124\", \"Not-A.Brand\";v=\"99\"","user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0","used_login":"+79771374828","lp_id":"grafana","id":"525567207778936-97306161"}
Порядок настройки rsyslog на сервере Blitz IDP для отправки событий
-
Убедитесь, что на сервере установлена утилита
rsyslog
для отправки событий по протоколу Syslog:systemctl status rsyslog.service
-
Если результат выполнения команды -
Unit rsyslog.service could not be found
, то выполнить:sudo apt install rsyslog
-
С правами суперпользователя создайте дополнительный конфигурационный файл
rsyslog
, задайте ему любое произвольное имя, например,blitz-siem.conf
. Для этого выполните:sudo nano /etc/rsyslog.d/blitz-siem.conf
-
Заполните конфигурационный файл следующим содержимым (без цифр, стоящих в конце строк):
$ModLoad (1)
$InputFilePollInterval (2)
$InputFileName (3)
$InputFileTag (4)
$InputFileFacility (5)
$InputRunFileMonitor (6)
(7).* action(type="omfwd" target="(8)" port="(9)" protocol="(10)")где:
-
(1) - загрузка необходимого модуля. Необходим модуль
imfile
для отправки логов из конкретного файла в операционной системе -
(2) - интервал опроса в секундах. По умолчанию: 10
Этот параметр определяет, как часто файлы будут опрашиваться на наличие н овых данных. Короткий интервал опроса обеспечивает более быструю пересылку сообщений, но потребляет больше системных ресурсов. Не рекомендуется указывать значение меньше 1.
- (3) - абсолютный путь к файлу, из которого необходимо считывать данные. Можно использовать регулярные выражения. Вы можете указать любой файл из каталога
/var/log/identityblitz
.
Поскольку Blitz IDP пишет достаточно подробные логи, которые зачастую в SIEM не требуется, рекомендуется настроить аудит в Blitz IDP и указать в данном пункте
/var/log/identityblitz/audit-blitz-*.log
- (4) - тэг файла. Можно указать любой. Если указать
blitz:
, то сырой текст в событиях на SIEM будет выглядеть следующим образом:
<133>May 21 10:59:09 idp blitz: {"ip":"10.0.2.2","session_id":"9f159502-d2ce-48db-8501-04f40df80e0c","ch_platform":"\"Windows\"","client_auth_method":"redirectUri","type":"authz_granted","object_id":"BIP-HLWXPJY","protocol":"oAuth","subject_id":"BIP-HLWXPJY","timestamp":1716278339372,"ch_platform_version":"\"10.0.0\"","process_id":"c8f66437-2975-4e05-86b9-bb7867c532b3","scopes":"profile","ch_ua":"\"Chromium\";v=\"124\", \"Microsoft Edge\";v=\"124\", \"Not-A.Brand\";v=\"99\"","user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0","lp_id":"grafana","id":"526173124797224-1969196518"}
- (5) - наименование идентификатора Sysog. По умолчанию: local0
Может иметь любое наименование
local0
,local1
,local2
и т.п.-
(6) - директива (параметры с символом
$
в начале), активирующая текущий монитор. Не имеет параметров. Если вы забудете эту директиву, мониторинг файлов осуществляться не будет. Необходимо указать в конце всех директив -
(7) - перечисление идентификаторов (facility) для выполнения с ними дальнейших действий. Указываем то же, что в п. (5)
-
(8) - IP-адрес хоста с Syslog-коллектором, на который нужно посылать события
-
(9) - порт хоста с коллектором, на который нужно посылать события. Стандартные порты Syslog-коллектора - TCP
49000
и UDP49050
-
(10) - протокол (
tcp
илиudp
)
Пример конфигурационного файла
blitz-siem.conf
:$ModLoad imfile
$InputFilePollInterval 1
$InputFileName /var/log/identityblitz/audit-blitz-*.log
$InputFileTag blitz:
$InputFileFacility local0
$InputRunFileMonitor
local0.* action(type="omfwd" target="192.168.2.15" port="49000" protocol="tcp") -
-
После этого шага необходимо перезапустить сервис
rsyslog
командой:sudo systemctl restart rsyslog.service
Если команда не выведет ничего, и сервер выдаст приглашение командной строки, значит, всё настроено правильно.
Пример интеграции Blitz IDP и KOMRAD Enterprise SIEM
После завершения настройки сервера для передачи информации о событиях в KOMRAD Enterprise SIEM выполните любое действие для генерации новых событий. Например, создайте пользователя:
Пример карточки события:
Для нормализации Вы можете воспользоваться плагином json. Используйте функцию Эвристический анализ паттерна
для нормализации логов, получаемых от Blitz IDP.
Из данной карточки можно создать фильтр, например, следующий:
На основе данного фильтра можно создать директиву:
После срабатывания директивы инцидент выглядит следующим образом:
Для корректной работы директив корреляции из пакета экспертиз Blitz IDP не забудьте включить плагин "Blitz IDP" на Syslog-коллекторе!
Фильтры (58 шт.) и директивы корреляции (58 шт.) под источник событий можно скачать в рамках расширенной технической поддержки