Cloudflare

Como bloquear caminhos suspeitos no Cloudflare WAF

Use o Security Analytics para encontrar tentativas contra rotas do WordPress e arquivos sensíveis. Veja como criar e testar regras no Cloudflare WAF sem bloquear páginas legítimas.

Meu site já deixou o WordPress, mas os bots continuam procurando caminhos como /wp-login.php e /xmlrpc.php. No painel da Cloudflare, dá para ver essas tentativas e decidir quais regras podem parar antes de chegarem ao servidor. Eu mostro também uma regra que parecia certa, mas não bloqueava o caminho que eu queria.

Assistir à demonstração no YouTube

Abra Security Analytics para identificar rotas suspeitas e o resultado das requisições. Depois crie uma Custom Rule no Cloudflare WAF, confira a expressão e teste o bloqueio. Bloqueie apenas caminhos que a sua aplicação não usa; uma regra ampla pode impedir acessos legítimos.

Encontre caminhos suspeitos nos relatórios do domínio.
Agrupe condições relacionadas em uma regra personalizada.
Teste o resultado e revise os eventos antes de ampliar o bloqueio.

Os bots continuam procurando WordPress

Mesmo depois de migrar um site para outra tecnologia, os robôs ainda podem tentar abrir endereços conhecidos do WordPress. No vídeo, mostro esses caminhos no relatório de um domínio meu. Aparecem tentativas para áreas administrativas, arquivos de configuração e outras rotas que não fazem parte do site atual.

Esse tráfego pode terminar em uma página 404, mas a resposta ainda pode exigir trabalho do servidor de origem. Se o domínio passa pela Cloudflare e a regra bloqueia a requisição no WAF, o pedido pode ser encerrado no proxy antes de chegar à origem. Isso reduz processamento para aquele pedido; não significa que qualquer regra vai melhorar a velocidade do site ou impedir toda forma de ataque.

Use o Security Analytics para investigar as rotas

Eu começo pelo domínio, na área de Analytics. O relatório ajuda a ver os caminhos acessados e as respostas HTTP. Um filtro para respostas 404 deixa a lista mais fácil de analisar. No meu exemplo aparecem nomes ligados a WordPress, como wp-admin, embora aquele site não use WordPress.

O filtro 404 é um ponto de partida, não uma lista completa de ameaças. Uma rota pode responder com redirecionamento ou outro código. Veja os caminhos mais acessados, confira o comportamento no site e confirme se a aplicação precisa deles antes de criar a regra. A documentação da Cloudflare explica os campos e filtros disponíveis no Security Analytics.

Reúna condições relacionadas em uma Custom Rule

Depois da análise, vá até Security rules e crie uma Custom Rule. No vídeo, uso uma regra para caminhos conhecidos de WordPress e arquivos que podem expor informação sensível. A Cloudflare permite comparar propriedades da requisição, como o caminho da URL, com valores definidos por você. A ação Block recusa as requisições que correspondem à expressão.

Na conta gratuita que mostro, o painel indicava quatro de cinco regras personalizadas em uso. Por isso agrupei vários caminhos em uma única condição. O número e os recursos disponíveis podem mudar conforme o plano e a configuração da conta. Confira o limite atual no seu painel antes de planejar as regras.

Não copie uma lista inteira sem avaliar o seu site. Um endpoint que parece estranho pode ser necessário para uma integração, um painel ou uma aplicação instalada. A própria documentação orienta a configurar a condição e a ação da regra no painel de Custom Rules.

Confira a expressão quando a regra não funciona

Em outro domínio, encontrei várias tentativas contra arquivos .env. Eu já tinha uma regra que deveria bloquear esses caminhos, mas o relatório ainda mostrava respostas 404. Em vez de presumir que a regra estava certa, investiguei a expressão e fiz um teste controlado com uma regra específica.

No teste do vídeo, configurei uma condição para o caminho e confirmei que o WAF passou a bloquear a requisição. O status exibido no navegador ou no painel ajuda a ver a ação, mas também confira os Security Events para identificar qual regra atuou. Se houver regras de reescrita ou outras funções de segurança, a ordem de avaliação pode afetar o resultado.

Trate sugestões de IA como uma lista para revisar

Também pedi à inteligência artificial exemplos de caminhos usados por bots, como /wp-config.php, /xmlrpc.php e /vendor. A lista serve para orientar a investigação. Ela não prova que esses endereços estão sendo acessados no seu domínio nem que todos podem ser bloqueados com segurança.

Compare cada sugestão com os relatórios e com a estrutura real do site. O objetivo é reduzir pedidos que não têm função para a aplicação. Se uma regra bloquear uma rota legítima, ajuste a condição ou remova o caminho. Uma regra curta e conferida vale mais do que uma expressão extensa que ninguém revisa.

O que conferir

  1. Confirme que o domínio está usando o proxy da Cloudflare.
  2. Revise o caminho e o código de resposta antes de bloquear.
  3. Confira os eventos depois de criar ou alterar a regra.

O que pode dar errado

Bloquear todos os caminhos com uma palavra comum, sem conferir se o site depende dela.

Usar apenas respostas 404 como sinal de ataque.

Confiar numa expressão sem testar uma requisição que corresponda a ela.

Perguntas frequentes

Bloquear uma rota no WAF reduz pedidos no servidor?

Quando a regra bloqueia a requisição no proxy antes da origem, aquele pedido não precisa ser processado pelo servidor. O efeito depende de a requisição passar pela Cloudflare e corresponder à regra.

Posso bloquear qualquer caminho que retorna 404?

Não automaticamente. Primeiro confirme que o caminho é indesejado. Uma resposta 404 pode ser legítima, e filtros de analytics não substituem a revisão da aplicação.

Preciso usar WordPress para receber tentativas contra wp-admin?

Não. Bots podem testar caminhos conhecidos em muitos domínios. O relatório ajuda a descobrir se essas tentativas chegam ao seu site.

Se você mantém um site em WordPress, veja também como proteger o WordPress contra cópias e abuso. Para entender outra forma de investigar tráfego, confira como separar sinais e hipóteses ao investigar um site.