---
title: "O que é WAF (firewall de aplicação web) e como funciona?"
description: "Um WAF (firewall de aplicação web) analisa as requisições HTTP antes que cheguem ao site e bloqueia ataques. Veja onde ele fica e como as regras decidem."
url: https://proxynet.io/pt-br/blog/what-is-a-waf
date: 2026-10-06
author: "Acar Diveroli"
category: "Web scraping, Proxy 101"
lang: pt-BR
---

# O que é WAF (firewall de aplicação web) e como funciona?

Você cola uma mensagem de erro em um formulário de suporte, clica em Enviar e recebe uma página em branco: "403 Forbidden", com "Microsoft-Azure-Application-Gateway/v2" logo abaixo. Em outro lugar, um script de monitoramento de preços que rodava sem problemas havia um mês passa a receber páginas de "Request blocked" em vez dos dados dos produtos. Em nenhum dos casos quem decidiu foi o código do próprio site. Foi um firewall de aplicação web posicionado na frente dele.

Este post explica onde fica um WAF, o que ele lê e como as regras dele decidem. Também compara o WAF com um firewall de rede e com um proxy reverso, lista as páginas de bloqueio mais comuns e termina com uma seção para quem vê seus monitores ou scrapers esbarrarem em um.

> **Nota: Resposta rápida**
>
> Um WAF (firewall de aplicação web) é um filtro posicionado na frente de um site ou de uma API que analisa cada requisição HTTP antes de o servidor vê-la. Ele lê o que um firewall de rede ignora: o endereço da página, a query string, os cabeçalhos, os cookies, o formulário enviado e a velocidade com que as requisições chegam. Padrões de ataque como injeção de SQL aumentam uma pontuação, as regras próprias do site permitem ou bloqueiam por caminho, país ou IP, e as regras de taxa e de bots julgam o padrão do tráfego. Uma requisição que passa do limite recebe uma página de bloqueio, normalmente com o status 403 e um ID que o dono do site pode consultar. Um WAF protege o servidor; não é uma VPN nem um proxy para os visitantes.

## O que é um WAF?

Um firewall de aplicação web é uma camada de segurança para o HTTP, o protocolo que navegadores e aplicativos usam para conversar com sites. O OWASP, o projeto aberto de segurança, define o WAF como um firewall de aplicação para aplicações HTTP que aplica um conjunto de regras a uma conversa HTTP.

"Aplicação" é a palavra-chave. Um firewall de rede decide por endereços e portas, por isso não consegue diferenciar um login normal de um formulário de login recheado de comandos de banco de dados: os dois chegam pela porta 443. Um WAF abre a requisição, lê o conteúdo e compara com regras escritas para ataques web.

Um WAF protege o site, não o visitante: ele funciona como um proxy reverso (reverse proxy), que fica no lugar do servidor e recebe cada requisição primeiro.

## Onde fica um WAF?

Um WAF sempre fica entre a internet e o servidor web. Há quatro lugares comuns para ele:

- **Na borda de uma CDN.** Cloudflare, Akamai e Imperva operam redes de servidores na frente dos sites dos clientes; o domínio aponta para o provedor, então os visitantes chegam primeiro ao WAF dele.
- **Em um balanceador de carga na nuvem.** O AWS WAF se conecta ao CloudFront, ao Application Load Balancer e ao API Gateway; o Azure roda o seu WAF no Application Gateway e no Front Door.
- **Em um appliance** como o F5 BIG-IP, na frente dos servidores da própria empresa.
- **Dentro do servidor web.** O ModSecurity, um motor de WAF de código aberto para Apache, IIS e Nginx que hoje é mantido pelo OWASP, é o módulo clássico; muitas empresas de hospedagem o ativam para todos os clientes.

Para ler uma requisição, o WAF precisa dela em texto puro. Ele guarda o certificado do site, encerra a conexão HTTPS do navegador e abre outra, separada, até o servidor de origem. O navegador continua mostrando o cadeado, porque para ele o WAF é o site.

## Como funciona um WAF?

Uma requisição passa por um WAF em seis etapas:

1. **A conexão termina no WAF,** que descriptografa o HTTPS e recebe a requisição completa.
2. **A requisição é desmontada e decodificada,** para que um ataque não se esconda atrás de `%27` no lugar de um apóstrofo.
3. **As regras personalizadas do dono rodam primeiro:** liberar a faixa de IPs do escritório, bloquear um país, manter `/admin` privado.
4. **Regras de ataque e contadores de taxa dão a pontuação.** Regras de injeção de SQL, cross-site scripting e violações de protocolo somam pontos; os contadores acompanham as requisições por IP ou por sessão.
5. **Um veredito é aplicado:** encaminhar ao servidor, bloquear com uma página de erro, mostrar um desafio (challenge) ou só registrar.
6. **O evento é registrado com um ID,** como o Ray ID da Cloudflare ou o número de referência da Akamai. Esse ID liga a reclamação de um visitante à regra que disparou.

## O que um WAF inspeciona?

Um firewall de rede só consegue agir sobre a última linha desta tabela; o resto só aparece na camada de aplicação.

| Parte da requisição | O que o WAF procura | Exemplo de correspondência |
|---|---|---|
| Caminho e URL | Caminhos sensíveis ou inesperados | `/wp-admin` vindo do exterior, travessia de diretórios com `../` |
| Query string, campos de formulário | Código onde deveria haver dados | Comandos de banco de dados em uma caixa de busca |
| Cabeçalhos e cookies | Valores ausentes, estranhos ou adulterados | Sem o cabeçalho `User-Agent` |
| Corpo (formulário, JSON, XML) | Cargas de ataque, uploads grandes demais | Um campo JSON com um comando de shell |
| Taxa | Requisições demais por IP ou sessão | Centenas de tentativas de login por minuto |
| IP de origem e país | Listas de reputação, regras geográficas | Um endereço que aparece em um feed de ameaças |

## Quais regras um WAF usa?

**Assinaturas** reconhecem técnicas de ataque conhecidas, como trechos de SQL em um campo de formulário ou tags `<script>` em um comentário. São precisas contra ataques conhecidos e cegas para os novos. A coleção aberta mais conhecida é o **OWASP Core Rule Set (CRS)**: regras genéricas contra ataques para o ModSecurity e motores compatíveis como o Coraza. O WAF do Azure é baseado nele, e a Cloudflare oferece a sua própria implementação.

**Regras gerenciadas** (managed rules) são escritas e atualizadas pelo fornecedor do WAF: quando uma falha grave em um software popular se torna pública, uma nova regra passa a cobrir todos os clientes. **Regras personalizadas** são as do próprio dono, como bloquear um caminho ou liberar o IP de um parceiro.

**Limite de taxa** (rate limiting) conta as requisições por IP, sessão ou chave em uma janela de tempo. A página de rate limiting da Cloudflare retorna `429 Too Many Requests` em vez de `403`.

**Gerenciamento de bots**, em geral um complemento pago, separa os clientes em pessoas, bots verificados (como os rastreadores dos mecanismos de busca) e todo o resto. A Cloudflare expressa isso como uma pontuação de bot de 1 (automatizado) a 99 (humano).

**Patch virtual** (virtual patching) é definido no [guia de virtual patching do OWASP](https://cheatsheetseries.owasp.org/cheatsheets/Virtual_Patching_Cheat_Sheet.html) como uma camada que bloqueia tentativas de explorar uma vulnerabilidade conhecida sem alterar o código vulnerável. Ele ganha tempo; não fecha a brecha.

### Como a pontuação de anomalias decide?

O CRS não bloqueia na primeira correspondência. Cada regra que corresponde soma pontos conforme a gravidade: 5 para crítico, 4 para erro, 3 para aviso, 2 para informativo. Quando o total chega ao limite de entrada, que a [documentação do CRS](https://coreruleset.org/docs/2-how-crs-works/2-1-anomaly_scoring/) recomenda definir em 5, a requisição é negada. Uma correspondência crítica basta; um único aviso não basta, mas um aviso mais um informativo, sim.

O CRS também tem quatro níveis de paranoia (paranoia levels). Cada nível acima de 1 acrescenta regras mais rígidas, que pegam mais ataques e também mais visitantes legítimos.

## WAF, firewall de rede e proxy reverso: diferenças

Os três podem rodar no mesmo equipamento. [Proxy ou firewall: qual é a diferença?](/pt-br/blog/proxy-vs-firewall) explica a diferença básica entre filtrar e repassar tráfego; aqui você vê onde o WAF se encaixa.

| | Firewall de rede | WAF | Proxy reverso |
|---|---|---|---|
| Camada | Rede, transporte | Aplicação (HTTP) | Aplicação (HTTP) |
| Lê | IPs, portas, estado da conexão | URL, cabeçalhos, corpo, taxa | Host e caminho, para rotear |
| Função principal | Permitir ou descartar conexões | Barrar ataques e abusos | Distribuir carga, fazer cache, terminar TLS |
| Exemplo | Firewall do roteador do escritório | ModSecurity com CRS | Nginx na frente dos servidores de aplicação |

Um WAF é um proxy reverso com regras de segurança; sem elas, um proxy reverso repassa um ataque com a mesma fidelidade que uma requisição normal. A proteção contra DDoS para inundações de rede é uma camada separada.

## Como é a página de bloqueio de um WAF?

A página padrão costuma revelar qual produto barrou você.

| Produto | O que a página diz | ID para enviar ao site |
|---|---|---|
| Cloudflare | "Sorry, you have been blocked" ou Error 1020 | Ray ID |
| Akamai | "Access Denied. You don't have permission to access …" | Reference # |
| Imperva | "Request unsuccessful. Incapsula incident ID" | Incident ID |
| AWS WAF via CloudFront | "The request could not be satisfied. Request blocked." | Horário e URL |
| Azure Application Gateway | "403 Forbidden", "Microsoft-Azure-Application-Gateway/v2" | Horário e URL |
| F5 BIG-IP | "The requested URL was rejected" | Support ID |

A maioria retorna `403 Forbidden`: o servidor entendeu a requisição e se recusa a atendê-la. Para diferenciar o 403 de um WAF de um 403 causado por uma verificação de login ou por permissões de arquivo, veja o [guia do erro 403 Forbidden](/pt-br/blog/403-forbidden-error).

Como visitante, você não pode mudar a regra, mas pode remover os gatilhos mais comuns:

1. Desligue a VPN ou a extensão de proxy e recarregue; endereços de VPN compartilhados costumam ter má reputação.
2. Teste uma janela anônima, que começa sem cookies antigos e com a maioria das extensões desligada.
3. Se o bloqueio veio depois de um formulário, confira o que você digitou: código ou texto parecido com SQL pode corresponder a uma regra de ataque.
4. Ainda bloqueado? Envie ao site o ID, o horário e o que você estava fazendo. Só quem opera o site consegue ver qual regra disparou.

## Por que um WAF bloqueia visitantes reais?

Um falso positivo é uma requisição legítima que uma regra trata como ataque. As origens mais comuns:

- **Conteúdo que parece código:** um fórum de desenvolvedores, um formulário de suporte com logs colados, um editor que salva HTML.
- **Endereços compartilhados:** uma rede de escritório ou móvel pode colocar milhares de pessoas atrás de poucos IPs, e um limite de taxa pensado para uma pessoa dispara para todas.
- **Listas de reputação:** saídas de VPN e servidores em nuvem são compartilhados, e alguns dos seus usuários se comportam mal.
- **Configurações rígidas:** um nível de paranoia mais alto também pega mais clientes.

Os donos de sites podem corrigir isso sem desligar a proteção:

1. **Comece no modo só de registro.** A [visão geral do WAF](https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/ag-overview) do Azure recomenda rodar um WAF novo no modo de detecção por um curto período antes de passar ao modo de prevenção; no AWS WAF, a ação **Count** (apenas conta) cumpre a mesma função.
2. **Encontre a regra** buscando no log do WAF o Ray ID, o número de referência ou o horário do bloqueio.
3. **Escreva uma exclusão estreita:** isente um campo de uma regra em vez de desativar o conjunto de regras inteiro.
4. **Teste de fora.** Regras geográficas e listas de reputação tratam de forma diferente os visitantes do exterior. Os [Proxies residenciais](https://proxynet.io/pt-br/residential-proxy) no país-alvo mostram o seu site do jeito que um usuário doméstico de lá o vê.

## Por que os WAFs bloqueiam scrapers e ferramentas de monitoramento?

Um monitor de preços, um verificador de uptime ou um rastreador de pesquisa encontra o WAF antes de encontrar o site, e várias regras miram o tráfego automatizado:

- **Regras de protocolo.** O WAF do Azure protege contra requisições sem o cabeçalho `Host`, `User-Agent` ou `Accept` e tem regras para rastreadores e scanners. Por isso, um cliente HTTP cru pode ser barrado logo no início.
- **Grupos de regras de bots.** O [grupo de regras Bot Control](https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html) da AWS rotula bibliotecas HTTP, frameworks de scraping, serviços de monitoramento e navegadores automatizados, e bloqueia os que não consegue verificar. Bots verificados, como os rastreadores dos grandes mecanismos de busca, passam.
- **Sinais de rede e de taxa.** Data centers muito usados por bots ficam sinalizados, e um rastreador que busca uma página a cada 200 milissegundos parece um ataque, seja qual for a intenção.

[Como funciona a detecção de bots: a lógica anti-bot](/pt-br/blog/how-bot-detection-works) cobre o lado da detecção camada por camada. Um bloqueio é a resposta do site, e a reação legítima trabalha com ela:

1. Use a API oficial, o feed de dados ou o programa de parceiros, se houver.
2. Respeite o robots.txt e os termos de uso.
3. Identifique o seu cliente com honestidade: um `User-Agent` real com um endereço de contato.
4. Vá mais devagar e espere mais quando vir `429` ou `403`.
5. Peça para entrar em uma lista de permitidos (allow-list). Muitos operadores liberam um monitor bem-comportado se você informar um contato e um endereço IP fixo; os [Proxies ISP](https://proxynet.io/pt-br/static-isp-residential-proxy) oferecem um endereço dedicado que não muda.

Não rotacione endereços IP para passar por um bloqueio nem use ferramentas que falsificam a impressão digital do navegador. Isso ignora a decisão do site, e é exatamente o comportamento que essas regras foram ajustadas para encontrar.

## Quem usa um WAF?

- **Lojas online e páginas de pagamento.** O requisito 6.4.2 do PCI DSS 4.0, o padrão de segurança do setor de cartões, exige uma solução automatizada na frente das aplicações web públicas que detecte e previna ataques web. O [resumo de mudanças do PCI DSS](https://listings.pcisecuritystandards.org/documents/PCI-DSS-v3-2-1-to-v4-0-Summary-of-Changes-r1.pdf) tratou isso como boa prática até 31 de março de 2025; desde então é obrigatório.
- **Páginas de login,** onde os limites de taxa freiam o credential stuffing: testar senhas vazadas em muitas contas.
- **APIs,** que enfrentam os mesmos riscos de injeção que os formulários web.
- **Sites em WordPress ou outro software popular,** onde uma única falha em um plugin expõe milhares de sites de uma vez.

## Erros comuns

- **Usar o WAF em vez de corrigir o código.** Um patch virtual cobre só o tráfego que o WAF vê.
- **Deixar o servidor de origem acessível diretamente.** Se ele responde a requisições enviadas direto ao seu endereço IP, os atacantes pulam o WAF.
- **Bloquear desde o primeiro dia** sem um período só de registro.
- **Desativar um conjunto de regras inteiro** para corrigir um único falso positivo.
- **Recarregar uma página de bloqueio várias vezes** como visitante, o que alimenta o contador de taxa.

## Guia de decisão

| Sua situação | O que fazer |
|---|---|
| Você vê uma página de bloqueio com um ID | Envie o ID, o horário e a URL ao site |
| Você tem um site pequeno em hospedagem compartilhada | Pergunte se a hospedagem roda ModSecurity com o CRS, ou use o WAF de uma CDN |
| Você aceita pagamentos com cartão on-line | O PCI DSS 6.4.2 exige um WAF ou uma solução equivalente |
| Você vai adicionar um WAF a um site no ar | Rode primeiro no modo de detecção ou de contagem (Count) |
| Clientes reais estão sendo bloqueados | Encontre o ID da regra e escreva uma exclusão estreita |
| Seu monitor ou rastreador recebe erros 403 | Vá mais devagar, identifique-se e peça para entrar em uma lista de permitidos |
| Você precisa ver o seu site como os visitantes do exterior | Teste por meio de um IP residencial naquele país |

## Perguntas frequentes

### WAF é a mesma coisa que firewall?

É um tipo de firewall. Um firewall de rede permite ou descarta conexões por endereço e porta; um WAF lê o conteúdo das requisições HTTP. A maioria dos sites precisa dos dois, porque cada um enxerga o que o outro não consegue.

### A Cloudflare é um WAF?

A Cloudflare é uma rede de servidores proxy reversos na frente de sites. O WAF dela, com regras personalizadas, limite de taxa e conjuntos de regras gerenciadas, é um dos serviços dessa rede, ao lado do cache e da proteção contra DDoS.

### Um WAF consegue parar ataques DDoS?

Em parte. Ele consegue absorver enxurradas de requisições HTTP com limites de taxa e desafios. Inundações que lotam a própria conexão de rede exigem uma proteção contra DDoS dedicada.

### Existe WAF gratuito ou de código aberto?

Sim. O ModSecurity com o OWASP Core Rule Set é a dupla de código aberto mais conhecida, e o Coraza é um motor mais novo que roda as mesmas regras. Algumas CDNs incluem um conjunto básico de regras gerenciadas nos planos gratuitos.

### Por que um WAF me bloqueia quando uso VPN?

Servidores de VPN são compartilhados por muitas pessoas, então os endereços deles vão parar em listas de reputação, e alguns sites bloqueiam países inteiros ou redes de nuvem. Se a página abre assim que você desconecta a VPN, a regra era sobre o endereço, não sobre você.

### Um WAF consegue ler o tráfego HTTPS?

Sim, ele precisa. Ele guarda o certificado do site, descriptografa e inspeciona a requisição e depois a repassa ao servidor, normalmente por uma nova conexão criptografada. Entre o seu navegador e o WAF, o tráfego continua criptografado.

## Em resumo

Um firewall de aplicação web é um proxy reverso com regras de segurança que lê cada requisição HTTP antes do site. Ele julga as requisições por assinaturas, pontuações de anomalia, regras personalizadas, limites de taxa e sinais de bots, e as suas páginas de bloqueio trazem um ID que só o operador do site consegue rastrear. Os visitantes devem remover os gatilhos óbvios e falar com o site; os donos devem registrar primeiro, bloquear depois e criar exclusões estreitas. Para um endereço fixo em uma lista de permitidos, ou IPs locais para testar as suas próprias regras a partir do exterior, conheça os [nossos proxies](/pt-br/proxy).
