Гарда WAF: настройка источника
Гарда WAF — это комплексное решение класса WAAP (Web Application and API Protection), которое включает расширенные инструменты для защиты веб-приложений и API от атак и уязвимостей, выявляет аномалии и угрозы нулевого дня.
Данное руководство описывает процесс настройки сбора и отправки событий программного комплекса Гарда WAF в R-Vision SIEM.
Предварительные требования
-
Сетевой доступ к БД Гарда WAF.
-
Учетная запись в СУБД с правами на чтение БД Гарда WAF (Сбор событий из БД).
Настройка Гарда WAF
Настройки СУБД PostgreSQL
События Гарда WAF записываются в базу данных waf СУБД PostgreSQL. Чтобы подключиться к базе данных (далее — БД) для сбора логов, используйте специально созданную сервисную учетную запись (далее — УЗ).
Создание учетной записи в СУБД PostgreSQL
Чтобы создать сервисную УЗ, подключитесь к СУБД с правами администратора. Для этого выполните следующие действия на сервере с установленной СУБД:
-
Выполните следующую команду от имени пользователя
postgres:sudo -u postgres psql -
Создайте сервисную учетную запись, выполнив следующие команды:
CREATE USER "gwaf_reader"; ALTER ROLE gwaf_reader WITH PASSWORD 'passw0rd'; -
Выдайте права на чтение БД:
GRANT SELECT ON ALL TABLES IN SCHEMA public TO gwaf_reader;
Настройка в R-Vision SIEM
Для настройки сбора и нормализации событий источника в R-Vision SIEM выполните следующие шаги:
-
В интерфейсе R-Vision SIEM создайте секрет со строкой подключения. Для этого:
-
Перейдите в раздел Ресурсы → Секреты.
-
Нажмите на кнопку Создать (
).
-
В раскрывшемся окне создания секрета заполните поля:
-
Название: введите название секрета.
-
Описание (опционально): опишите, для чего будет использоваться секрет.
-
Тип секрета: выберите вариант Строка подключения.
-
Строка подключения: введите строку вида:
jdbc:postgresql://DBSERVER:5432/waf?user=gwaf_reader&password=passw0rdЗдесь:
-
DBSERVER— FQDN или IP-адрес сервера СУБД. -
5432— порт подключения.

-
-
-
Нажмите на кнопку Создать.
-
-
В интерфейсе R-Vision SIEM создайте новый конвейер в коллекторе.
-
Добавьте на конвейер элемент Точка входа для событий аудита со следующими параметрами:
-
Название: введите название точки входа.
-
Тип точки входа: выберите вариант Database.
-
Драйвер базы данных: выберите вариант PostgreSQL.
-
Адрес подключения: выберите секрет, созданный ранее.
-
SQL-запрос: введите запрос вида:
SELECT ilr.id AS ilr_id, ilr.chain_id, ilr.accuracy, ilr.intervention_hostname, ilr.matched_data, ilr.maturity, ilr.message, ilr.passive, ilr.ref, ilr.rev, ilr.rule_id, ilr.severity, ilr.uri AS ilr_uri, ilr.ver, ilt.tags, icr.cluster_id, icr.cluster_name, icr.instance_id, icr.timestamp as timestamp, icr.worker_process_id, icr.worker_thread_id, icr.client_address, icr.hostname AS icr_hostname, icr.request_id, icr.request_id_hash, icr.server_id, icr.is_blocked, icr.status_code, icr.max_severity, icr.min_severity, icr.user_agent, icr.is_passive, rlr.uri AS request_uri, rlr.method as method, inet_server_addr() AS dvc, 'Garda WAF' as product FROM public.intervention_log_record ilr LEFT JOIN ( SELECT log_id, string_agg(name, ', ') AS tags FROM public.intervention_log_record_tag GROUP BY log_id ) ilt ON ilr.id = ilt.log_id JOIN public.interventions_chain_record icr ON ilr.chain_id = icr.id LEFT JOIN public.request_log_record rlr ON icr.request_id = rlr.request_id WHERE icr.timestamp > CAST(? AS BIGINT) ORDER BY icr.timestamp; -
Поле идентификатора: введите ключ
timestampсо значением1742380463. -
Интервал запроса, секунд: введите значение
20.
-
-
Добавьте на конвейер вторую точку входа для событий безопасности со следующими параметрами:
-
Название: введите название точки входа.
-
Тип точки входа: выберите вариант Database.
-
Драйвер базы данных: выберите вариант PostgreSQL.
-
Адрес подключения: выберите секрет, созданный ранее.
-
SQL-запрос: введите запрос вида:
SELECT ae.event_id as event_id, ae.cluster_id, ae.server_index, ae.timestamp, ae.username, ae.event_type, ae.entity_type, ae.event, ae.service_name, ae.cluster_name, ae.ip_address, scah.allowed_hostnames as server_name, inet_server_addr() AS dvc, 'Garda WAF' as product, 'Audit' as type_event FROM public.audit_event ae LEFT JOIN public.server_configuration_allowed_hostnames scah ON ae.server_index = scah.server_configuration_id WHERE ae.event_id > CAST(? AS BIGINT) ORDER BY ae.event_id ASC LIMIT 10000; -
Поле идентификатора: введите ключ
event_idсо значением1. -
Интервал запроса, секунд: введите значение
60.
-
-
Добавьте на конвейер элемент Нормализатор с правилом Garda WAF (идентификатор правила: RV-N-223).
-
Соедините нормализатор с точками входа.
-
Добавьте на конвейер элемент Конечная точка типа Хранилище событий.
-
Соедините конечную точку с нормализатором.
-
Установите конфигурацию конвейера.
Пример конфигурации конвейера:

После настройки передачи событий, если настройка выполнена корректно, в хранилище начнут поступать события Гарда WAF из PostgreSQL.
|
Найти события Гарда WAF в хранилище можно по следующему фильтру:
|
Была ли полезна эта страница?
