Назад к обновлениям
New releaseAug 23, 2026

waf-checker v1.1.0

Автоматизированный инструмент оценки WAF, который определяет производителей брандмауэров, тестирует 19 категорий атак с использованием продвинутых обходных полезных нагрузок и предоставляет цветовой анализ обхода через CLI, Cloudflare Worker или Docker.

Поделиться

WAF Checker

GitHub Release GitHub Action Coverage: Core Coverage: CLI Tests

Этот проект помогает проверить, насколько хорошо ваш Web Application Firewall (WAF) защищает ваш продукт от распространённых веб-атак. Его можно запускать как Cloudflare Worker (со встроенным интерактивным веб-интерфейсом) или как автономный CLI-инструмент Node.js.

🧪 Покрытие тестами и статус

Все пакеты тщательно протестированы с помощью автоматизированных наборов модульных, интеграционных тестов, тестов на основе свойств (фаззинг fast-check), тестов на устойчивость к сетевым сбоям и тестов на обратную разработку (100% соответствие требованиям безопасности SSRF, методы обхода протоколов и средства форматирования отчётов):

ПакетПокрытие строкОператорыФункцииНабор тестов
@waf-checker/core93.0% 🟢92.6%96.4%🟢 282 проходят
@waf-checker/cli93.5% 🟢92.8%96.7%🟢 54 проходят
@waf-checker/workerПроходят 🟢——🟢 30 проходят
Всего по монорепозиторию93.2%92.7%96.6%🟢 366 тестов проходят

Возможности

Основное тестирование

  • Введите целевой URL, выберите HTTP-методы (GET, POST и т. д.) и категории атак.
  • Отправляет запросы с полезными нагрузками атак (в параметрах, заголовках или в виде путей к файлам).
  • Цветовая маркировка результатов в терминале и веб-интерфейсе: 🟢 403/BLOCKED = заблокировано, 🔴 2xx/5xx = возможный обход, 🟠 3xx = перенаправление.
  • Результаты отображаются в фильтруемой таблице с подробностями для каждой полезной нагрузки.

🕵️ Обратная разработка WAF и матрица CRS (--reverse)

  • Сопоставление с OWASP Core Rule Set (CRS v3/v4): Аудит активных и отключённых идентификаторов правил (920xxx, 921xxx, 930xxx, 931xxx, 932xxx, 933xxx, 934xxx, 941xxx, 942xxx, 943xxx, 944xxx) с уровнями паранойи (PL1-PL4).
  • Обнаружение ограничения размера тела запроса при инспекции: Бинарный поиск (8 КБ – 128 КБ, точность ~1 КБ) для определения границ усечения буфера.
  • Обнаружение режима оценки аномалий: Проверяет совместный режим оценки в сравнении со строгим режимом блокировки по регулярным выражениям и определяет пороговые значения оценки.
  • Безопасное зондирование ограничения частоты запросов: Безопасное постепенное увеличение до 30 запросов/с с немедленным досрочным прекращением при получении HTTP 429 и извлечением Retry-After.

🛡️ Виртуальное патчинг WAF и автоматическое устранение (--patch / команда patch)

  • Мгновенное устранение: автоматически преобразует обнаруженные обходы WAF (HTTP 200) в готовые к развёртыванию правила межсетевого экрана, конфигурации обратного прокси и Infrastructure-as-Code (Terraform HCL / Cloud CLI).
  • Поддерживаемые платформы (11 диалектов):
    • Cloudflare WAF: выражения Wirefilter (http.request.uri.query contains ... / matches ...) и Terraform HCL cloudflare_ruleset.
    • AWS WAF v2: нативные JSON Rule Statements (ByteMatchStatement, RegexPatternSet, OrStatement) и Terraform HCL aws_wafv2_rule_group.
    • Google Cloud Armor: выражения CEL (request.path.matches(...), request.headers[...]), CLI-команды gcloud compute security-policies и Terraform google_compute_security_policy.
    • Azure WAF (Front Door и App Gateway): JSON-определения Custom Rule, CLI-команды az network front-door waf-policy и Terraform azurerm_cdn_frontdoor_firewall_policy.
    • ModSecurity и OWASP Coraza: директивы SecRule (SecLang), совместимые с OWASP CRS, со свёртыванием токенов @pm. Поддерживается через --patch modsecurity или --patch coraza.
    • NGINX: нативные блоки конфигурации location ~* \.(ext)$ { return 403; }, location ~ /\.(git|svn) и map.
    • HAProxy: высокопроизводительные нативные ACL (path_end -i, path_beg -i, query -m sub -i, req.hdr()) с http-request deny deny_status 403.
    • Caddy Server: идиоматичные именованные матчеры Caddyfile (@waf_patch_*) с выражениями CEL (expression {http.request.uri.query}.matches(...)) и respond 403.
    • Apache HTTP Server: правила mod_rewrite (RewriteCond %{QUERY_STRING} / %{REQUEST_URI} / %{HTTP_USER_AGENT} + RewriteRule ^ - [F,L]) для httpd.conf, <VirtualHost> или .htaccess. Поддерживается через --patch apache.
    • Envoy Proxy: записи маршрутов, сопоставляющие :path/заголовки через RE2 safe_regex с direct_response: 403 (или forward-and-tag в режиме симуляции) для virtual_host в route_configuration. Поддерживается через --patch envoy.
    • Kubernetes Ingress (K8s): готовые к эксплуатации манифесты YAML kind: Ingress с аннотациями nginx.ingress.kubernetes.io/server-snippet.
  • Двухуровневая защита:
    • Строгий хотфикс: точные сигнатуры токенов с 0% риска ложных срабатываний для немедленного реагирования на инциденты нулевого дня.
    • Эвристический шаблон: обобщённые регулярные выражения, охватывающие всю структуру класса уязвимости.
  • Web UI Remediation Studio: интерактивное модальное окно панели управления с живым предпросмотром для всех вендоров, копированием в буфер обмена в один клик, переключением форматов и экспортом файлов.

Категории атак (всего 28)

SQL-инъекции, XSS, инъекции команд, обход путей, SSRF, локальное включение файлов, конфиденциальные файлы, открытый редирект, SSTI, XXE, NoSQL-инъекции, GraphQL-инъекции, атака на JWT (заголовок), атака на JWT (параметр), загрязнение прототипа (JSON-тело), загрязнение прототипа (URL/параметр), LDAP-инъекции, XPath-инъекции, инъекции формул в электронные таблицы, Log4Shell (JNDI), CRLF-инъекции, загрязнение HTTP-параметров, User-Agent, обход IP, контрабанда HTTP-запросов, отравление веб-кэша, обход UTF8/Unicode, обход ограничения инспекции WAF (паддинг).

Обнаружение WAF

  • Автоматическое определение типа WAF перед тестированием (Cloudflare, AWS WAF, OWASP Coraza, BunkerWeb, ModSecurity, Akamai, Imperva, F5 BIG-IP и др.).
  • Предлагает конкретные методы обхода на основе обнаруженного WAF.
  • Может автоматически переключаться на расширенные полезные нагрузки, специфичные для WAF.

Расширенные полезные нагрузки и кодирование

  • Полезные нагрузки для обхода WAF — двойное кодирование, unicode, смешанный регистр, инъекция комментариев, полиглотные полезные нагрузки.
  • Улучшенные полезные нагрузки — современные методы уклонения.
  • Вариации кодирования — URL, Unicode, HTML Entity, Hex, Octal, Base64 с автоматическими комбинациями.
  • Обходы, специфичные для Cloudflare, AWS WAF, ModSecurity.

Манипуляции с HTTP-протоколом

  • Подмена HTTP-метода (HTTP Verb Tampering) — проверка необычных HTTP-методов.
  • Загрязнение параметров (Parameter Pollution) — дублирование и разделение параметров между query и body.
  • Путаница Content-Type — альтернативные типы содержимого для обхода правил.
  • Заголовки Request Smuggling.
  • Вариации инъекции Host-заголовка.
  • Переопределение HTTP-метода через заголовки (X-HTTP-Method-Override и т. п.).

Пакетное тестирование

  • Тестирование нескольких URL одновременно.
  • Настраиваемая конкурентность и задержка между запросами.
  • Отслеживание прогресса в реальном времени.

Категории