Infowatch Traffic Monitor
Данная инструкция описывает настройку сбора событий на сервере Infowatch Traffic Monitor и последующую отправку в R-Vision SIEM.
Предварительные требования
Чтобы работать с Infowatch Traffic Monitor, убедитесь, что у вас имеется:
-
сетевой доступ к БД;
-
учетная запись в СУБД с правами на чтение таблиц arc_view_audit_log и arc_view_objects2.
Настройка Infowatch Traffic Monitor
Описание подсистемы журналирования
Infowatch Traffic Monitor записывает свои события в таблицы arc_view_audit_log и arc_view_objects2 базы данных Postgres.
Чтобы настроить сбор логов из базы данных, необходимо к ней подключиться, используя специальную сервисную учетную запись (далее — УЗ).
Создание сервисной учетной записи в PostgreSQL
Чтобы создать сервисную УЗ, подключитесь к СУБД с правами администратора. Для этого выполните следующие действия на сервере с установленной СУБД:
-
Выполните следующую команду от имени пользователя postgres:
sudo -u postgres psql
-
Создайте сервисную учетную запись, выполнив следующие команды:
CREATE USER "infowatch"; ALTER ROLE infowatch WITH PASSWORD 'passw0rd';
-
Выдайте созданной УЗ права на подключение к базе и чтение таблицы:
GRANT CONNECT ON DATABASE postgres to infowatch; GRANT SELECT ON arc_view_audit_log TO infowatch; GRANT SELECT ON arc_view_objects2 TO infowatch;
== Настройка в R-Vision SIEM
Для настройки сбора и нормализации событий источника в R-Vision SIEM выполните следующие шаги:
-
В интерфейсе R-Vision SIEM создайте секрет со строкой подключения. Для этого:
-
Перейдите в раздел Ресурсы → Секреты и нажмите на кнопку Создать.
-
В раскрывшемся окне создания секрета заполните поля:
-
Описание (опционально): опишите, для чего будет использоваться секрет.
-
Тип секрета: выберите вариант Строка подключения.
-
Строка подключения: введите строку вида:
jdbc:postgresql://<address>:<port>/<database>?user=<user>&password=<password>
где:
-
<address>
— адрес сервера базы. -
<port>
— порт подключения. -
<database>
— имя базы событий аудита. -
<user>
— логин пользователя базы. -
<password>
— пароль пользователя базы.
Пример 1. Пример строки подключенияjdbc:postgresql://DBSERVER:5432/postgres?user=infowatch&password=passw0rd
-
-
-
Нажмите на кнопку Создать.
-
-
Перейдите в раздел Ресурсы → Коллекторы и создайте новый конвейер в коллекторе.
-
Добавьте на конвейер элементы Точка входа. Понадобится создать две точки входа, для таблицы arc_view_audit_log и arc_view_objects2. Поля для обеих точек идентичны, за исключением SQL-запроса:
-
Название: название точки входа.
-
Тип точки входа: Database.
-
SQL-запрос для таблицы arc_view_audit_log: события Infowatch TM:
SELECT CAST(AUDIT_LOG_ID AS bigint) AS AUDIT_LOG_ID_KF, change_date, operation, entity_type, entity_display_name, entity_id, property_changes, user_login, user_fullname, user_email FROM iwtm.arc_view_audit_log WHERE change_date > (SELECT CURRENT_TIMESTAMP - INTERVAL '1 minutes') ORDER BY AUDIT_LOG_ID LIMIT 1000;
-
SQL-запрос для таблицы arc_view_objects2: аудит пользователей Infowatch TM:
SELECT cast(insert_date as VARCHAR(26)) AS "EVENT_DATE_KF", insert_date AS "INSERT_DATE", capture_server_hostname AS "CAPTURE_SERVER_HOSTNAME", capture_server_ip AS "CAPTURE_SERVER_IP", categories AS "CATEGORIES", date_of_capture AS "DATE_OF_CAPTURE", device AS "DEVICE_NAME", filepath AS "FILEPATH", fingerprints AS "FINGERPRINTS", monitorcode AS "MONITOR_CODE", object_id AS "OBJECT_ID", perimetersin AS "PERIMETERSIN", perimetersout AS "PERIMETERSOUT", policies AS "POLICIES", protecteddocuments AS "PROTECTED_DOCUMENTS", protocol AS "PROTOCOL", recipientscontacts AS "RECIPIENTSCONTACTS", recipientsfullname AS "RECIPIENTSFULLNAME", sendermachinecontacts AS "SENDERMACHINECONTACTS", sendermachinefullname AS "SENDERMACHINEFULLNAME", senderscontacts AS "SENDERSCONTACTS", sendersfullname AS "SENDERSFULLNAME", tags AS "TAGS", text_objects AS "TEXT_OBJECTS", url AS "URL", userdecision AS "USER_DECISION", verdict AS "VERDICT", violationtype AS "VIOLATION_TYPE", websource AS "WEBSOURCE" FROM iwtm.arc_view_objects2 WHERE insert_date > cast('EVENT_DATE_KF' as timestamp) ORDER BY insert_date LIMIT 10000;
-
База данных: PostgreSQL.
-
Интервал запроса: от 15 до 60.
-
Поле идентификатора:
-
Ключ:
EVENT_DATE_KF
. -
Значение:
1970-01-01 00:00:00
.
-
-
Строка подключения в секрете:
jdbc:postgresql://<address>:<port>/postgres?user=infowatch&password=passw0rd
Здесь:
-
<address>
— FQDN или IP-адрес сервера СУБД. -
<port>
— порт подключения.
-
-
-
Добавьте VRL-трансформацию:
.dproduct = "Traffic Monitor"
-
Соедините добавленную точку входа и VRL трансформацию.
-
Добавьте нормализатор с правилом Infowatch Traffic Monitor (идентификатор правила: RV-N-45). Соедините нормализатор с VRL-трансформацией.
-
Добавьте конечную точку типа Хранилище событий. Соедините конечную точку с нормализатором.
-
Установите конфигурацию конвейера.
Пример конфигурации конвейера:
После настройки передачи событий, если настройка выполнена корректно, в хранилище начнут поступать события Infowatch.
Найти события источника в хранилище можно по следующему фильтру:
|
Таблица маппинга
Таблица соответствия полей события для всех рассмотренных типов событий представлена по ссылке.