Рекомендации по управлению модулем активной проверки атак¶
Что такое модуль активной проверки атак?¶
Вебмониторэкс использует несколько методов для обнаружения уязвимостей, один из них — Активная проверка атак.
Модуль активной проверки атак позволяет использовать атаки, отправленные злоумышленником, как инструмент для тестирования ваших приложений и API на наличие активных уязвимостей. Для этого модуль отправляет запросы с данными из реального трафика на адреса ваших приложений и анализирует ответ приложения. Если ответ содержит признаки активной уязвимости, модуль регистрирует соответствующую уязвимость и инцидент безопасности.
По умолчанию модуль активной проверки атак выключен. Чтобы включить его, ознакомьтесь с методом управления модулем.
Активная проверка атак при группировке хитов по IP
Если атака состоит из хитов, сгруппированных по IP-адресам, активная проверка недоступна.
Как работает модуль активной проверки атак?¶
При активной проверке атак генерируется набор тестовых запросов с разными вредоносными пэйлоадами, направленными на один адрес приложения. Каждый ответ приложения на запрос анализируется на наличие признаков активной уязвимостей:
-
Если в ответе нет признаков уязвимостей, которые могут быть проэксплуатированы отправленными вредоносными пэйлоадами, модуль считает приложение не уязвимым для этих пэйлоадов.
-
Если в ответе есть признаки уязвимостей, которые могут быть проэксплуатированы отправленными вредоносными пэйлоадами, модуль регистрирует активные уязвимости и инцидент безопасности.
Список уязвимостей, которые может обнаружить модуль
Модуль активной проверки атак использует следующий механизм для проверки приложений и API на наличие активных уязвимостей:
-
Для каждый группы вредоносных запросов (атаки), Вебмониторэкс WAF определяет атакуемый элемент запроса (например: URL, объект JSON, поле XML) и тип уязвимости, которую злоумышленник пытался эксплуатировать (например: SQLi, RCE, XSS). Например, следующий GET-запрос имеет характеристики:
https://example.com/login?token=IyEvYmluL3NoCg&user=UNION SELECT username, password
- Атакуемый URL:
https://example.com/login
. - Тип отправленной атаки: SQLi. Тип определен на основе вредоносного пэйлоада
UNION SELECT username, password
. - Атакуемый параметр URL:
user
. - Дополнительная информация, отправленная для авторизации запроса:
token=IyEvYmluL3NoCg
.
- Атакуемый URL:
-
На основе определенных данных, модуль активной проверки атак генерирует набор из 100-150 тестовых запросов с разными вредоносными пэйлоадами одного типа (SQLi) и с одинаковым адресом, на который запрос был отправлен изначально. Например:
https://example.com/login?token=IyEvYmluL3NoCg&user=1')+WAITFOR+DELAY+'0 indexpt'+AND+('wlrm'='wlrm https://example.com/login?token=IyEvYmluL3NoCg&user=1+AND+SLEEP(10)--+wlrm https://example.com/login?token=IyEvYmluL3NoCg&user=1);SELECT+PG_SLEEP(10)-- https://example.com/login?token=IyEvYmluL3NoCg&user=1'+OR+SLEEP(10)+AND+'wlrm'='wlrm https://example.com/login?token=IyEvYmluL3NoCg&user=1+AND+1=(SELECT+1+FROM+PG_SLEEP(10)) https://example.com/login?token=IyEvYmluL3NoCg&user=%23'%23\x22%0a-sleep(10)%23 https://example.com/login?token=IyEvYmluL3NoCg&user=1';+WAITFOR+DELAY+'0code:10'-- https://example.com/login?token=IyEvYmluL3NoCg&user=1%27%29+OR+SLEEP%280%29+AND+%28%27wlrm%27%3D%27wlrm https://example.com/login?token=IyEvYmluL3NoCg&user=SLEEP(10)/*'XOR(SLEEP(10))OR'|\x22XOR(SLEEP(10))OR\x22*/
-
Модуль активной проверки атак отправляет сгенерированные запросы приложению и определяет уязвимость приложения по указанному адресу к отправленному типу атаки. Если приложение уязвимо, модуль регистрирует соответствующее событие с типом инцидент.
При этом запросы не должны проверяться нодой Вебмониторэкс на наличие атак, для этого необходимо добавить IP-адреса Сканера Вебмониторэкс в белый список.
Значение HTTPS-заголовка
User-Agent
в запросахЗаголовок
User-Agent
в запросах модуля активной проверки атак имеет значениеWallarm Threat-Verification (v1.x)
. -
Обнаруженные инциденты безопасности отображаются в Консоли управления Вебмониторэкс. Чтобы отправить информацию об инцидентах вашей команде, вы можете настроить интеграции со сторонними приложениями и Триггеры.
Потенциальные риски использования модуля активной проверки атак¶
-
Легитимные запросы, распознанные WAF-нодой как атака (ложные срабатывания), также воспроизводятся модулем активной проверки атак. Если запросы меняют поведение приложения и в них переданы авторизационные данные, модуль активной проверки атак может выполнить нежелательные операции с приложением. Например: при активной проверке авторизованного запроса для создания нового объекта в приложении, модуль может создать набор нежелательных объектов в приложении.
Чтобы минимизировать описанный риск, модуль активной проверки атак автоматически вырезает следующие HTTP-заголовки из запросов:
Cookie
Authorization: Basic
Viewstate
-
Если в приложении используется нестандартный способ авторизации запросов или авторизация запросов не требуется, модуль активной проверки атак может воспроизвести любой запрос из трафика 100 и более раз и вызвать непредвиденное поведение системы. Например: повторить 100 и более транзакций или заказов. Чтобы минимизировать описанный риск, мы рекомендуем использовать тестовую или staging-среду для активной проверки атак и маскировать нестандартные параметры авторизации.
Рекомендации по управлению модулем активной проверки атак¶
Настройте корректную маскировку данных¶
В приложении могут использоваться нестандартные типы авторизации запросов, например: токен в строке запросе, нестандартный HTTP-заголовок или объект JSON в теле POST-запроса. Если в вашем приложении используется такой тип авторизации, мы рекомендуем настроить правило для маскировки данных. Если правило настроено, данные для авторизации запросов не будут выгружаться в Вычислительный кластер Вебмониторэкс и не будут использоваться при активной проверке атак. Такой подход позволит минимизировать риск нанесения вреда вашему приложению.
Изучите метод управления модулем активной проверки атак¶
Модуль активной проверки включается и выключается глобально для всех ваших приложений в Консоли управления Вебмониторэкс → секция Сканер. По умолчанию модуль выключен.
Добавьте IP-адреса Сканера Вебмониторэкс в белый список¶
Чтобы WAF-нода не блокировала атаки, которые генерирует и отправляет модуль активной проверки, необходимо добавить IP-адреса источника запросов в белый список. Модуль активной проверки атак является одним из модулей Сканера Вебмониторэкс, поэтому необходимо добавить IP-адреса Сканера в белый список по инструкции:
-
Инструкция для WAF‑ноды на основе NGINX (в том числе для образов GCP / Яндекс.Облака и Docker-контейнера)
-
Инструкция для Ingress-контроллера Вебмониторэкс в Kubernetes
-
Инструкция для sidecar-контейнера Вебмониторэкс, развернутного в Kubernetes с помощью Helm charts или Kubernetes-манифестов
Активная проверка атак может работать некорректно, если IP-адреса Сканера Вебмониторэкс не добавлены в белый список.
Настройте уведомление ваших команд об инцидентах безопасности¶
Чтобы получать уведомления о событиях безопасности, вы можете интегрировать Вебмониторэкс WAF со сторонними мессенджерами и SIEM-системами, которые вы используете в работе. Например: Telegram, PagerDuty, Opsgenie и другими. Чтобы ваша команда могла оперативно отреагировать на обнаруженный инцидент безопасности, мы рекомендуем настроить отправку соответствующих уведомлений в удобную систему.
Ознакомьтесь с действиями при отправке чувствительных данных в Вычислительный кластер Вебмониторэкс¶
Если вы обнаружили, что WAF-нода отправляет в Вычислительный кластер Вебмониторэкс ложные срабатывания с незамаскированными чувствительными данными, обратитесь в техническую поддержку Вебмониторэкс для удаления запросов из хранилища Вычислительного кластера.
Чтобы избежать отправки чувствительных данных в будущем, настройте правило для маскировки данных. Данные, которые уже были отправлены в Вычислительный кластер, невозможно замаскировать.
Опционально: Включите или выключите активную проверку атак для отдельных приложений¶
Если запросы к некоторым адресам ваших приложений изменяют работу приложения и не требуют авторизационных данных, мы рекомендует выключить активную проверку атак для таких адресов. Активная проверка может быть выключена для отдельных приложений, доменов или URL приложений с помощью правила Управлять режимом активной проверки атак.
Опционально: Настройте замену элементов запроса для активной проверки¶
Чтобы выполнять активную проверку атак не в боевой среде приложения, а в тестовой или staging-среде, вы можете настроить соответствующее правило для замены элементов оригинального запроса перед активной проверкой.