Перейти к содержанию

Logstash

Вебмониторэкс может отправлять данные об обнаруженных событиях в сборщик логов Logstash. Для этого необходимо настроить соответствующую интеграцию в Консоли управления Вебмониторэкс.

В Logstash можно отправлять данные о следующих типах событий:

  • Обнаружен хит, за исключением:

  • Системные события: добавленные пользователи, удаленные и отключенные интеграции

  • Обнаружена уязвимость

  • Изменения сетевого периметра: обновления в списке доменов, IP‑адресов, сервисов

Формат уведомлений

Уведомления о событиях отправляются в Logstash через вебхуки в формате 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
            }
        }
    }
]

Требования

Конфигурация Logstash должна соответствовать следующим требованиям:

  • Принимать POST- или PUT-запросы

  • Принимать запросы по протоколу HTTPS

  • Иметь публичный URL

Пример конфигурации Logstash:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
input {
  http { # input‑плагин для HTTP и HTTPS‑трафика
    port => 5044 # порт для входящих запросов
    ssl => true # обработка HTTPS‑соединения
    ssl_certificate => "/etc/server.crt" # TLS-сертификат для Logstash
    ssl_key => "/etc/server.key" # приватный ключ сертификата
  }
}
output {
  stdout {} # output‑плагин для вывода логов Logstash в командную строку
  ...
}

Подробнее в официальной документации Logstash

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

  1. Перейдите в Консоль управления Вебмониторэкс → НастройкиИнтеграции и откройте окно настройки интеграции с Logstash.

  2. Введите имя интеграции.

  3. Введите Logstash URL (Webhook URL), на который необходимо отправлять уведомления.

  4. Если требуется, задайте дополнительные настройки:

    • Тип запроса: POST или PUT. По умолчанию отправляются POST-запросы.
    • Заголовок запроса и значение, если для запроса к серверу с указанным адресом требуется передать нестандартный заголовок. Количество заголовков не ограничено.
    • Корневой сертификат, который был использован для подписи TLS-сертификата сервера. Если корневой сертификат выдан доверенным центром, это поле опционально. Если TLS-сертификат сервера самоподписанный, необходимо загрузить корневой сертификат, который был использован для подписи TLS-сертификата.
    • Проверить TLS-сертификат: данная настройка позволяет отключить проверку TLS‑сертификата сервера с указанным адресом. По умолчанию Вебмониторэкс проверяет, что TLS-сертификат сервера подписан доверенным центром сертификации. Мы не рекомендуем отключать проверку. Если ваш сервер использует самоподписанный TLS-сертификат, для успешной проверки вам необходимо загрузить самоподписанный корневой сертификат.
    • Время ожидания ответа, сек: если сервер не отвечает на запрос в течение указанного времени, запрос завершается с ошибкой. По умолчанию: 15 секунд.
    • Время ожидания соединения, сек: если в течение указанного времени не удается установить соединение с сервером, запрос завершается с ошибкой. По умолчанию: 20 секунд.
  5. Выберите типы событий, которые необходимо логировать. Если события не выбраны, уведомления не отправляются.

  6. Протестируйте интеграцию и убедитесь в корректности настроек.

  7. Нажмите Добавить интеграцию.

    Добавление интеграции с Logstash

Тестирование интеграции

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

Тестирование интеграции выполняется следующим образом:

  • В выбранную систему отправляются тестовые уведомления с префиксом [Тестовое сообщение].

  • Тестовые уведомления отправляются для всех событий, которые доступны для выбранной системы. Если в карточке интеграции доступны 3 типа событий, в выбранную систему придет 3 уведомления.

    Для типа событий Системные события отправляется тестовое уведомление о добавлении нового пользователя.

  • В тестовых уведомлениях не используются реальные данные.

Пример записи в логах Logstash:

[
    {
        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"
            }
        }
    }
]

Редактирование интеграции

Чтобы обновить настройки интеграции:

  1. Перейдите в Консоль управления Вебмониторэкс → НастройкиИнтеграции.

  2. Откройте интеграцию.

  3. Обновите настройки интеграции и нажмите Сохранить.

Отключение интеграции

Чтобы временно остановить отправку отчетов безопасности и уведомлений, вы можете отключить интеграцию:

  1. Перейдите в Консоль управления Вебмониторэкс → НастройкиИнтеграции.

  2. Откройте активную интеграцию и нажмите Отключить.

Отключение интеграции является системным событием. Если вы получаете уведомления о системных событиях, в настроенные системы поступят сообщения об удаленной интеграции.

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

Удаление интеграции

Чтобы навсегда остановить отправку отчетов безопасности и уведомлений, вы можете удалить интеграцию. Удаление интеграции невозможно отменить. Интеграция исчезнет из общего списка навсегда.

  1. Перейдите в Консоль управления Вебмониторэкс → НастройкиИнтеграции.

  2. Откройте интеграцию и нажмите Удалить.

  3. Подтвердите действие.

Удаление интеграции является системным событием. Если вы получаете уведомления о системных событиях, в настроенные системы поступят сообщения об удаленной интеграции.

Интеграция с Logstash как с промежуточным коллектором логов

Схема логирования событий в комплексных системах может состоять из нескольких компонентов, например:

  • Коллектор логов: принимает логи от нескольких источников и выгружает логи в SIEM-систему.

  • SIEM-система или другая система управления логами: используется для анализа логов и мониторинга состояния системы.

Например:

Движение вебхука

Чтобы логировать события Вебмониторэкс таким образом, необходимо:

  1. Настроить коллектор логов для чтения входящих вебхуков и выгрузки логов в следующую систему. Вебмониторэкс отправляет события в коллектор логов через вебхуки.

  2. Настроить SIEM-систему для получения и чтения логов от коллектора.

  3. Настроить интеграцию Вебмониторэкс с коллектором логов.

    Вебмониторэкс может отправлять логи в любой коллектор через вебхуки.

    Для интеграции с коллектором Fluentd или Logstash, в Консоли управления есть отдельные вкладки.

    Для интеграции с другими коллекторами, в Консоли управления доступна webhook-интеграция.

Мы подготовили примеры интеграций с несколькими SIEM-системами, где в качестве промежуточного коллектора логов используется Logstash: