В некоторых случаях анализ поступающих запросов может приводить к повышенному потреблению аппаратных ресурсов сервера фильтрующей ноды. Проблема может возникать в случае, если:
- неверно подобраны аппаратные характеристики сервера, исходя из требуемой интенсивности трафика;
- неправильная настройка WAF.
Неверно подобраны аппаратные характеристики сервера, исходя из требуемой интенсивности трафика
Для обеспечения корректной работы компонентов Немезида ВАФ необходимо для каждого сервера выделить достаточное количество аппаратных ресурсов в соответствии с рекомендуемыми техническими требованиями. Представленные показатели являются примерными и подбираются индивидуально, в зависимости от количества и типа поступаемого трафика. Если предоставленных аппаратных ресурсов оказалось недостаточно для стабильной работы компонента, то увеличение требуемого показателя может решить проблему, не приводя в будущем к перегрузке компонента.
Неправильная настройка WAF
В некоторых случаях повышение потребления аппаратных ресурсов сервера фильтрующей ноды может привести неправильная настройка WAF. Чаще всего к таким ошибкам относятся:
Не активирована опция автоматической блокировки IP-адреса
Опция автоматической блокировки позволяет блокировать IP-адрес источника запросов, если за определенный промежуток времени было заблокировано несколько запросов.
Опция состоит из параметров:
domain
— вирутальный хост (домен). Если параметр не задан, то правило блокировки будет применяться ко всем защищаемым приложениям;rate
— допустимое количество заблокированных запросов. В качестве условия срабатывания опции можно задать как 5 блокировок в секунду, например, при интенсивном трафике, так и 5 блокировок в минуту;block_time
— время блокировки IP-адреса.
Если опция не задана (по умолчанию опция дективирована) или заданы некорректные параметры, то злоумышленник может практически беспрепятственно проводить автоматизированные сканирования веб-приложения, создавая избыточную нагрузку на фильтрующую ноду.
Избыточная отправка запросов на дополнительный анализ
В некоторых случаях фильтрующая нода также может потреблять повышенное количество аппаратных ресурсов (в частности, ОЗУ сервера) из-за обработки большого количества запросов, которые избыточно передаются на дополнительный анализ модулем машинного обучения. Связано это с тем, что если при сигнатурном анализе запроса в зонах ARGS
, BODY
, URL
, HEADERS
обнаруживаются признаки атаки (сигнатуры с низким показателем score
), то запрос передается в модуль Nemesida AI MLA для дополнительного анализа. Модуль машинного обучения выявляет атаки с высокой точностью, но требует большего количества аппаратных ресурсов сервера, поэтому избыточная отправка запросов на дополнительный анализ может приводить к повышенному потреблению аппаратных ресурсов фильтрующей ноды. Для снижения общей нагрузки на фильтрующую ноду необходимо в первую очередь снизить нагрузку на модуль машинного обучения. Для этого необходимо проанализировать журнал ошибок веб-сервера и выяснить, срабатывание каких сигнатур приводит к отправке запроса в модуль машинного обучения. Такие запросы выглядят следующим образом:
2023/11/27 17:50:59 [error] 4292#4292: *466 Nemesida WAF: the request b3270f75de9c6a381fb645bd46f0d772 contains rule ID 1039 in zone BODY and will be sent to Nemesida AI MLA, client: 1.1.1.1, server: , request: "POST /admin/uploads.php HTTP/1.1", host: "example.com"
Запись означает, что при обработке запроса в зоне BODY
была выявлена сигнатура 1039
, которая привела к отправке на дополнительный анализ. Выявите наиболее распространенные сигнатуры и составьте правило исключения сигнатуры (или несколько правил), выбрав в качестве зоны срабатывания правила NoMLA
:
Зона NoMLA
исключает отправку запроса в модуль машинного обучения при срабатывании сигнатуры.