Voltar às atualizações
New releaseSep 13, 2026

waf-checker v1.2.0

Ferramenta automatizada de avaliação de WAF que detecta fornecedores de firewall, testa 19 categorias de ataque com payloads de evasão avançados e fornece análise de bypass codificada por cores via CLI, Cloudflare Worker ou Docker.

Compartilhar

Verificador de WAF

GitHub Release GitHub Action Coverage: Core Coverage: CLI Tests

Este projeto ajuda você a verificar quão bem seu Web Application Firewall (WAF) protege seu produto contra ataques web comuns. Ele pode ser executado como um Cloudflare Worker (com uma interface Web interativa integrada) ou como uma ferramenta CLI autônoma para Node.js.

🧪 Cobertura de Testes e Status

Todos os pacotes são minuciosamente testados com suítes automatizadas de testes unitários, de integração, baseados em propriedades (fuzzing com fast-check), de resiliência de rede e de engenharia reversa (100% de conformidade com segurança SSRF, técnicas de evasão de protocolo e formatadores de relatórios):

PacoteCobertura de LinhasInstruçõesFunçõesSuíte de Testes
@waf-checker/core93.0% 🟢92.6%96.4%🟢 282 passando
@waf-checker/cli93.5% 🟢92.8%96.7%🟢 54 passando
@waf-checker/workerPassando 🟢——🟢 30 passando
Suíte Total do Monorepo93.2%92.7%96.6%🟢 366 testes passando

Recursos

Testes Principais

  • Insira uma URL de destino, escolha métodos HTTP (GET, POST, etc.) e categorias de ataque.
  • Envia requisições com payloads de ataque (em parâmetros, cabeçalhos ou como caminhos de arquivo).
  • Resultados no terminal e na web com código de cores: 🟢 403/BLOQUEADO = bloqueado, 🔴 2xx/5xx = possível bypass, 🟠 3xx = redirecionamento.
  • Resultados exibidos em uma tabela filtrável com detalhes para cada payload.

🕵️ Engenharia Reversa de WAF e Matriz CRS (--reverse)

  • Mapeamento do OWASP Core Rule Set (CRS v3/v4): Audita IDs de regras ativas versus desativadas (920xxx, 921xxx, 930xxx, 931xxx, 932xxx, 933xxx, 934xxx, 941xxx, 942xxx, 943xxx, 944xxx) com Níveis de Paranoia (PL1-PL4).
  • Detecção de Limite do Corpo de Inspeção: Sondagem por busca binária (8KB – 128KB, precisão ~1KB) para identificar os limites de truncamento do buffer.
  • Detecção do Modo de Pontuação de Anomalias: Sonda o modo de pontuação colaborativa versus o modo de bloqueio estrito por regex e identifica os limites de pontuação.
  • Sondagem Segura de Limite de Taxa: Aumento gradual seguro até 30 req/s com encerramento antecipado imediato ao receber HTTP 429 e extração de Retry-After.

🛡️ Patching Virtual de WAF e Correção Automática (--patch / comando patch)

  • Mitigação Instantânea: Transforma automaticamente os bypasses de WAF detectados (HTTP 200) em regras de firewall prontas para implantação, configurações de proxy reverso e Infraestrutura como Código (Terraform HCL / Cloud CLI).
  • Plataformas Suportadas (11 Dialetos):
    • Cloudflare WAF: Expressões Wirefilter (http.request.uri.query contains ... / matches ...) e cloudflare_ruleset Terraform HCL.
    • AWS WAF v2: Declarações de Regras JSON nativas (ByteMatchStatement, RegexPatternSet, OrStatement) e aws_wafv2_rule_group Terraform HCL.
    • Google Cloud Armor: Expressões CEL (request.path.matches(...), request.headers[...]), comandos CLI gcloud compute security-policies e Terraform google_compute_security_policy.
    • Azure WAF (Front Door e App Gateway): Definições JSON de Regras Personalizadas, comandos CLI az network front-door waf-policy e Terraform azurerm_cdn_frontdoor_firewall_policy.
    • ModSecurity e OWASP Coraza: Diretivas SecRule compatíveis com OWASP CRS (SecLang) com colapso de tokens @pm. Suportado via --patch modsecurity ou --patch coraza.
    • NGINX: Blocos de configuração nativos location ~* \.(ext)$ { return 403; }, location ~ /\.(git|svn) e map.
    • HAProxy: ACLs nativas de alto desempenho (path_end -i, path_beg -i, query -m sub -i, req.hdr()) com http-request deny deny_status 403.
    • Caddy Server: Matchers nomeados idiomáticos do Caddyfile (@waf_patch_*) com expressões CEL (expression {http.request.uri.query}.matches(...)) e respond 403.
    • Apache HTTP Server: Regras mod_rewrite (RewriteCond %{QUERY_STRING} / %{REQUEST_URI} / %{HTTP_USER_AGENT} + RewriteRule ^ - [F,L]) para httpd.conf, <VirtualHost> ou .htaccess. Suportado via --patch apache.
    • Envoy Proxy: Entradas de rota correspondendo a :path/cabeçalhos via safe_regex RE2 com direct_response: 403 (ou encaminhar-e-marcar no modo de simulação) para um virtual_host de route_configuration. Suportado via --patch envoy.
    • Kubernetes Ingress (K8s): Manifests YAML kind: Ingress prontos para produção com anotações nginx.ingress.kubernetes.io/server-snippet.
  • Defesa em Duas Camadas:
    • Hotfix Estrito: Assinaturas de token exatas com risco de falso positivo de 0% para resposta imediata a incidentes de dia zero.
    • Padrão Heurístico: Expressões regulares generalizadas cobrindo toda a estrutura da classe de vulnerabilidade.
  • Web UI Remediation Studio: Modal interativo do painel com pré-visualizações ao vivo em todos os fornecedores, cópia para a área de transferência com 1 clique, alternância de formatos e exportação de arquivos.

Categorias de Ataque (28 no total)

Injeção de SQL, XSS, Injeção de Comandos, Path Traversal, SSRF, Inclusão de Arquivo Local, Arquivos Sensíveis, Redirecionamento Aberto, SSTI, XXE, Injeção NoSQL, Injeção GraphQL, Ataque JWT (Cabeçalho), Ataque JWT (Parâmetro), Prototype Pollution (Corpo JSON), Prototype Pollution (URL/Parâmetro), Injeção LDAP, Injeção XPath, Injeção de Fórmula de Planilha, Log4Shell (JNDI), Injeção CRLF, Poluição de Parâmetros HTTP, User-Agent, Bypass de IP, HTTP Request Smuggling, Web Cache Poisoning, Bypass UTF8/Unicode, Bypass de Limite de Inspeção de WAF (Padding).

Detecção de WAF

  • Detecção automática do tipo de WAF antes dos testes (Cloudflare, AWS WAF, OWASP Coraza, BunkerWeb, ModSecurity, Akamai, Imperva, F5 BIG-IP, etc.).
  • Sugere técnicas de bypass específicas com base no WAF detectado.
  • Pode alternar automaticamente para payloads avançados específicos do WAF.

Payloads Avançados e Codificação

  • Payloads de Bypass de WAF — codificação dupla, unicode, caixa mista, injeção de comentários, payloads poliglotas.
  • Payloads Aprimorados — técnicas modernas de evasão.
  • Variações de Codificação — codificação URL, Unicode, Entidade HTML, Hex, Octal, Base64 com combinações automáticas.
  • Bypasses específicos de WAF para Cloudflare, AWS WAF, ModSecurity.

Manipulação do Protocolo HTTP

  • HTTP Verb Tampering — testa métodos HTTP incomuns.
  • Parameter Pollution — duplica e divide parâmetros entre query/body.
  • Content-Type Confusion — tipos de conteúdo alternativos para contornar regras.
  • Cabeçalhos de Request Smuggling.
  • Variações de Host Header Injection.
  • HTTP Method Override via cabeçalhos (X-HTTP-Method-Override, etc.).

Testes em Lote

  • Testa múltiplos URLs de uma só vez.
  • Concorrência e atraso entre requisições configuráveis.
  • Acompanhamento de progresso em tempo real.

Categorias