pular para o conteúdo
voltar ao mapa
técnica
etapa: agir
3 min de leitura

WAF - observação, shadow e enforcement

Um WAF bem operado não é uma caixa que se liga: é um programa que começa observando, valida cada regra em sombra e só então bloqueia, com um dono e uma métrica para cada decisão.

Cloudflare WAFOWASP Core Rule SetAWS WAFModSecurity

O que é

Um WAF () inspeciona o tráfego HTTP na camada 7 e decide, requisição a requisição, se ela segue, é desafiada, limitada ou bloqueada. Ele enxerga o que um firewall de rede não vê: caminho, método, cabeçalhos, parâmetros e o corpo da requisição.

Ele não corrige a aplicação. O papel é reduzir a superfície exposta e ganhar tempo: bloquear padrões conhecidos de ataque, aplicar um "" enquanto o time corrige a falha de verdade e conter automação abusiva antes que ela chegue à origem.

Modelo negativo e modelo positivo

O modelo negativo bloqueia o que parece ruim: assinaturas de injeção SQL, , path traversal, como as regras gerenciadas (OWASP Core Rule Set e os rulesets mantidos pelo fornecedor). É a base, pronta para usar, mas gera falso positivo e é contornável por quem conhece o padrão.

O define o que é válido e bloqueia o resto: para um endpoint crítico, quais métodos, quais caminhos, quais tipos de conteúdo e tamanhos são aceitos. Dá muito mais precisão, mas exige conhecer a aplicação, então se aplica endpoint por endpoint, começando pelos mais críticos (login, pagamento, administração).

  • Negativo: cobertura ampla e rápida, ruído maior, atualizado pelo fornecedor.
  • Positivo: precisão alta e superfície mínima, custo de manutenção maior, escrito por quem conhece a aplicação.
  • Na prática se combinam: o gerenciado como rede de proteção e o positivo nos endpoints que mais importam.

Observação, shadow e enforcement

A regra de ouro é nunca ligar uma regra nova direto em bloqueio. O caminho seguro tem três fases:

  • Observação: a regra só registra (ação de log). Você mede quanto tráfego ela pegaria e de quem.
  • Shadow: a regra roda em paralelo e a decisão simulada é comparada com a realidade (o que teria sido bloqueado e era legítimo?). Aqui se acerta a precisão.
  • Enforcement: a regra passa a agir, começando por desafio (challenge) em vez de bloqueio seco quando há dúvida, e ganha um responsável e uma métrica de falso positivo.

Exemplo: regras na linguagem de expressões da Cloudflare

Duas regras ilustrativas. A primeira é positiva: em um endpoint de pedidos, só GET e POST são aceitos. A segunda protege o login: requisições de login vindas de fora de uma lista confiável recebem um desafio. Os nomes de campo seguem a linguagem de regras da Cloudflare; ajuste ao seu ambiente.

custom rules - ilustrativotext
# 1) modelo positivo: método inesperado em /api/orders
(http.request.uri.path eq "/api/orders" and not http.request.method in {"GET" "POST"})
  -> action: Block

# 2) login fora da lista confiável recebe desafio
(http.request.method eq "POST" and http.request.uri.path eq "/api/login" and not ip.src in $trusted_ips)
  -> action: Managed Challenge

# fase de observação: mesma expressão, só registrando
  -> action: Log

Falso positivo é o custo real

Bloquear um cliente legítimo custa receita e confiança, e é o que faz times desligarem o WAF. Por isso cada regra precisa de uma métrica de precisão, de uma exceção documentada (e com prazo) e de um ciclo semanal de revisão. Um WAF que ninguém ajusta vira, em poucos meses, ou um muro que atrapalha ou um enfeite que não bloqueia nada.

WAFweb application firewallFiltro na borda que bloqueia padrões de ataque conhecidos em HTTP. Complementa o código — não substitui corrigir a vulnerabilidade, apenas compra tempo.ver no glossário →Patch virtualvirtual patchingRegra de WAF que bloqueia a exploração de uma vulnerabilidade conhecida enquanto a correção real não chega à aplicação. Ganha tempo, não elimina a falha.ver no glossário →XSScross-site scriptingInjeção em uma página web: entrada não confiável é renderizada como HTML ou script no navegador de outro usuário. Faça escape na saída conforme o contexto e adicione uma Content-Security-Policy.ver no glossário →Modelo positivoallowlistDefinir o que é válido para um endpoint (métodos, caminhos, formatos, tamanhos) e bloquear o resto. Mais preciso que assinaturas, mas exige conhecer a aplicação.ver no glossário →

conexões no mapa

atualizado em 14/10/2026 · fontes para aprofundar · reportar erro

em outros domínios

Estude antes

Desbloqueia

teste o que entendeu

Carregando perguntas…