Заметку я хочу написать не об этом, а о бесплатном продукте той же Nemesida - WAF Bypass Tool. Это open source утилита для проверки эффективности работы WAF. Она прогоняет через сайт кучу различных запросов на тестирование всевозможных уязвимостей (Cross Site Scripting (XSS), Open Redirect (OR), Remote File Execution (RCE) и т.д.) и в конце сводит результаты в табличный вид. С её помощью можно быстро оценить качество работы того или иного продукта, а также различных режимов настроек.
Для базовой проверки достаточно указать только адрес сайта и запустить любым удобным способом инструмент. Либо скачать python скрипт:
# git clone https://github.com/nemesida-waf/waf_bypass.git /opt/waf-bypass/# python3 -m pip install -r /opt/waf-bypass/requirements.txt# python3 /opt/waf-bypass/main.py --host='example.com'Либо запустить в контейнере из Docker Hub, тогда вообще ничего делать не надо:
# docker run nemesida/waf-bypass --host='example.com'Ключами можно управлять настройками. Например, использовать прокси, ограничивать число потоков (имеет смысл сделать, так как утилита выполняет около 3000 тысяч запросов, можно получить бан за интенсивность), выводить результаты в json, управлять детализацией вывода, выбирать отдельные наборы тестов и т.д. Можно писать свои тесты, запускать их на постоянку и забирать результаты в мониторинг.
Утилита проверяет количество ложно-положительных (FP - False Positive) и ложно-отрицательных (FN - False Negative) срабатываний. Это один из наиболее значимых критериев работы WAF. Значение PASSED (OK) покажет количество заблокированных проверок.
#waf