Fluentd¶
Вебмониторэкс может отправлять данные об обнаруженных событиях в сборщик логов Fluentd. Для этого необходимо настроить соответствующую интеграцию в Консоли управления Вебмониторэкс.
Во Fluentd можно отправлять данные о следующих типах событий:
-
Обнаружен хит, за исключением:
- Экспериментального хита, обнаруженного на основе регулярного выражения. Хиты без метки Экспериментально учитываются.
- Хита, не включенного в выборку при семплировании.
-
Системные события: добавленные пользователи, удаленные и отключенные интеграции
-
Обнаружена уязвимость
-
Изменения сетевого периметра: обновления в списке доменов, IP‑адресов, сервисов
Формат уведомлений¶
Уведомления о событиях отправляются во Fluentd через вебхуки в формате JSON. Набор объектов в JSON зависит от события, для которого отправлено уведомление.
Пример уведомления о новом хите:
[
{
"summary": "[Вебмониторэкс] Обнаружен новый хит",
"details": {
"client_name": "TestCompany",
"cloud": "RU",
"notification_type": "new_hits",
"hit": {
"domain": "www.example.com",
"heur_distance": 0.01111,
"method": "POST",
"parameter": "SOME_value",
"path": "/news/some_path",
"payloads": [
"say ni"
],
"point": [
"post"
],
"probability": 0.01,
"remote_country": "PL",
"remote_port": 0,
"remote_addr4": "8.8.8.8",
"remote_addr6": "",
"tor": "none",
"request_time": 1603834606,
"create_time": 1603834608,
"response_len": 14,
"response_status": 200,
"response_time": 5,
"stamps": [
1111
],
"regex": [],
"stamps_hash": -22222,
"regex_hash": -33333,
"type": "sqli",
"block_status": "monitored",
"id": [
"hits_production_999_202010_v_1",
"c2dd33831a13be0d_AC9"
],
"object_type": "hit",
"anomaly": 0
}
}
}
]
Требования¶
Конфигурация Fluentd должна соответствовать следующим требованиям:
-
Принимать POST- или PUT-запросы
-
Принимать запросы по протоколу HTTPS
-
Иметь публичный URL
Пример конфигурации Fluentd:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
Подробнее в официальной документации Fluentd
Настройка интеграции¶
-
Перейдите в Консоль управления Вебмониторэкс → Настройки → Интеграции и откройте окно настройки интеграции с Fluentd.
-
Введите имя интеграции.
-
Введите Fluentd URL (Webhook URL), на который необходимо отправлять уведомления.
-
Если требуется, задайте дополнительные настройки:
- Тип запроса:
POST
илиPUT
. По умолчанию отправляются POST-запросы. - Заголовок запроса и значение, если для запроса к серверу с указанным адресом требуется передать нестандартный заголовок. Количество заголовков не ограничено.
- Корневой сертификат, который был использован для подписи TLS-сертификата сервера. Если корневой сертификат выдан доверенным центром, это поле опционально. Если TLS-сертификат сервера самоподписанный, необходимо загрузить корневой сертификат, который был использован для подписи TLS-сертификата.
- Проверить TLS-сертификат: данная настройка позволяет отключить проверку TLS‑сертификата сервера с указанным адресом. По умолчанию Вебмониторэкс проверяет, что TLS-сертификат сервера подписан доверенным центром сертификации. Мы не рекомендуем отключать проверку. Если ваш сервер использует самоподписанный TLS-сертификат, для успешной проверки вам необходимо загрузить самоподписанный корневой сертификат.
- Время ожидания ответа, сек: если сервер не отвечает на запрос в течение указанного времени, запрос завершается с ошибкой. По умолчанию: 15 секунд.
- Время ожидания соединения, сек: если в течение указанного времени не удается установить соединение с сервером, запрос завершается с ошибкой. По умолчанию: 20 секунд.
- Тип запроса:
-
Выберите типы событий, которые необходимо логировать. Если события не выбраны, уведомления не отправляются.
-
Протестируйте интеграцию и убедитесь в корректности настроек.
-
Нажмите Добавить интеграцию.
Тестирование интеграции¶
Тестирование интеграции позволяет проверить корректность настроек, соединение с Вычислительным кластером Вебмониторэкс и формат уведомлений о событиях. Чтобы протестировать интеграцию, вы можете использовать кнопку Протестировать в окне создания и редактирования интеграции.
Тестирование интеграции выполняется следующим образом:
-
В выбранную систему отправляются тестовые уведомления с префиксом
[Тестовое сообщение]
. -
Тестовые уведомления отправляются для всех событий, которые доступны для выбранной системы. Если в карточке интеграции доступны 3 типа событий, в выбранную систему придет 3 уведомления.
Для типа событий Системные события отправляется тестовое уведомление о добавлении нового пользователя.
-
В тестовых уведомлениях не используются реальные данные.
Пример записи в логах Fluentd:
[
{
summary:"[Тестовое сообщение] [Вебмониторэкс] Обнаружена новая уязвимость",
description:"Тип события: vuln
В вашей системе обнаружена новая уязвимость.
ID:
Название: Test
Домен: example.com
Путь:
Метод:
Источник:
Параметры:
Тип: Info
Уровень риска: Medium
Подробнее: https://my.wallarm.ru/object/555
Клиент: TestCompany
Вычислительный кластер: RU
",
details:{
client_name:"TestCompany",
cloud:"RU",
notification_type:"vuln",
vuln_link:"https://my.wallarm.ru/object/555",
vuln:{
domain:"example.com",
id:null,
method:null,
parameter:null,
path:null,
title:"Test",
discovered_by:null,
threat:"Medium",
type:"Info"
}
}
}
]
Редактирование интеграции¶
Чтобы обновить настройки интеграции:
-
Перейдите в Консоль управления Вебмониторэкс → Настройки → Интеграции.
-
Откройте интеграцию.
-
Обновите настройки интеграции и нажмите Сохранить.
Отключение интеграции¶
Чтобы временно остановить отправку отчетов безопасности и уведомлений, вы можете отключить интеграцию:
-
Перейдите в Консоль управления Вебмониторэкс → Настройки → Интеграции.
-
Откройте активную интеграцию и нажмите Отключить.
Отключение интеграции является системным событием. Если вы получаете уведомления о системных событиях, в настроенные системы поступят сообщения об удаленной интеграции.
Для повторного включения отчетов безопасности и уведомлений откройте отключенную интеграцию и нажмите Включить.
Удаление интеграции¶
Чтобы навсегда остановить отправку отчетов безопасности и уведомлений, вы можете удалить интеграцию. Удаление интеграции невозможно отменить. Интеграция исчезнет из общего списка навсегда.
-
Перейдите в Консоль управления Вебмониторэкс → Настройки → Интеграции.
-
Откройте интеграцию и нажмите Удалить.
-
Подтвердите действие.
Удаление интеграции является системным событием. Если вы получаете уведомления о системных событиях, в настроенные системы поступят сообщения об удаленной интеграции.
Интеграция с Fluentd как с промежуточным коллектором логов¶
Схема логирования событий в комплексных системах может состоять из нескольких компонентов, например:
-
Коллектор логов: принимает логи от нескольких источников и выгружает логи в SIEM-систему.
-
SIEM-система или другая система управления логами: используется для анализа логов и мониторинга состояния системы.
Например:
Чтобы логировать события Вебмониторэкс таким образом, необходимо:
-
Настроить коллектор логов для чтения входящих вебхуков и выгрузки логов в следующую систему. Вебмониторэкс отправляет события в коллектор логов через вебхуки.
-
Настроить SIEM-систему для получения и чтения логов от коллектора.
-
Настроить интеграцию Вебмониторэкс с коллектором логов.
Вебмониторэкс может отправлять логи в любой коллектор через вебхуки.
Для интеграции с коллектором Fluentd или Logstash, в Консоли управления есть отдельные вкладки.
Для интеграции с другими коллекторами, в Консоли управления доступна webhook-интеграция.
Мы подготовили примеры интеграций с несколькими SIEM-системами, где в качестве промежуточного коллектора логов используется Fluentd:
-
Вебмониторэкс → Fluentd → Datadog
Вебмониторэкс также поддерживает нативную интеграцию с Datadog через Datadog API, без промежуточного коллектора логов.