Resolvendo bloqueios do WAF: Liberar endereço de IP ou URL

Mensagem de Bloqueio do WAF

Neste artigo, nós te ensinaremos a resolver os temidos (e necessários) bloqueios do WAF e quais são os riscos envolvidos.

Primeiramente, é importante entender que o WAF tem como objetivo impedir que pessoas e bots má intencionados causem danos e/ou roubem informações de aplicações web, como lojas virtuais, apis etc.

A Infinite oferece, gratuitamente em todos os planos, um WAF profissional, com rede e hardware especializados. Isso é bastante raro no mercado de hospedagem, mas nós sentimos a necessidade de garantir que os sites dos nossos clientes estejam seguros.

Toda medida de segurança pode causar algum efeito colateral, por mais necessária que ela seja. Portanto, lembre-se: o WAF é uma necessidade, já que deixar o seu site sem proteção é muito perigoso.

Algumas atividades como alterações de páginas, posts, produtos, temas etc podem ser vistas pelo WAF como uma tentativa de invasão, uma vez que as mesmas são atividades que visam alterar o conteúdo do site.

Até mesmo algumas atividades em sites que usam sistemas personalizados ou plugins específicos podem ser bloqueados pelo WAF devido ao padrão da requisição, o que em muitos casos podem ser apenas falsos positivos.

Para resolver isso, você pode:
a) liberar o endereço de IP do administrador (preferível);
b) liberar a URL (perigoso); ou
c) tentar investigar, junto a um desenvolvedor, os motivos do bloqueio (díficil).

Caso você já saiba os riscos da liberação de endereço de IP e URL, pule para o final da página, na seção "Passo a passo".

Considerações Importantes (antes de proceder)

Motivo dos Bloqueios

O WAF contém centenas de milhares de filtros de segurança e os bloqueios podem ocorrer por uma grande diversidade de motivos.

Geralmente, o WAF bloqueia por conta de uso de caracteres especiais, URLs muito longas e vários outros indicadores de ataque, em sua maioria reportados na OWASP 10.

Infelizmente, nós não temos acesso às regras de segurança do WAF e, também, nem seria prudente explicar exatamente o porquê de um bloqueio ocorrer. Afinal, um hacker poderia ajustar o seu ataque para burlar o filtro.

No geral, caso você queira investigar a fundo, ao invés de fazer a liberação do endereço de IP bloqueado, recomendamos que analise bem as documentações da OWASP 10 e tente reproduzir o bloqueio alterando, a cada vez, o conteúdo da requisição até que a requisição não seja mais bloqueada.

Como este é um procedimento trabalhoso e difícil, liberar o endereço de IP do administrador é o caminho mais recomendado.

Riscos

Quando você libera a URL no WAF, o WAF não protegerá mais o seu site naquele ponto e, logo, um hacker poderá tentar utilizar essa liberação para causar danos em seu negócio.

Tome bastante cuidado com esse tipo de liberação! Somente o faça se tiver certeza de que está disposto a correr os riscos e de que o bloqueio é um falso positivo.

Jamais libere caminhos como "/wp-admin", "index.php", "route=catalog" e qualquer outro caminho que seja abrangente demais ou que todo visitante use. Afinal, você não quer deixar o seu site vulnerável, correto?

Quando for fazer uma liberação de URL, tenha certeza de que o caminho liberado é o mais específico possível. Por exemplo, se você precisar liberar uma URL "/modulos/pagamentos/mercadopago.php", não libere apenas a palavra "mercadopago", mas todo o caminho.

O motivo disso é que, se você liberar apenas uma palavra, basta que uma pessoa use essa palavra em qualquer URL (exemplo /admin/?mercadopago) para que o WAF não bloqueie a requisição, o que é bastante perigoso. Toda liberação de URL deve ser específica, precisa.

Já quanto à liberação de endereço de IP, o único risco seria se o endereço pertecer a um visitante que você não conhece, já que, uma vez liberado o endereço de IP no WAF, esse usuário terá livre acesso ao site, podendo explorar qualquer vulnerabilidade que ali existir. Dessa forma, só libere endereço de IPs de usuários confiáveis.

Endereço de IP Dinâmico

Alguns provedores de internet mudam os endereços de IP de seus usuários todos os dias, o que dificulta o processo já que todos os dias você precisará ficar liberando o seu endereço de IP.

Para resolver isso, recomendamos que contrate uma VPN com endereço de IP estático/dedicado/fixo, pois, além de proteger sua conexão contra espionagem e roubo de dados, a VPN terá um endereço de IP que nunca muda e, por isso, pode ser liberado somente uma vez no WAF.

Existem diversas VPNs no mercado com diversos preços. Busque uma que tenha servidores em seu país de acesso - para evitar problemas com latência - e que tenha uma boa reputação.

Outra solução não-tão-segura seria a liberação de URL, mas se lembre do que informamos acima quanto aos riscos.

Liberar o "User Agent"

Muitos clientes tem dúvidas quanto a tentar resolver o bloqueio do WAF liberando o "User Agent" (agente de usuário). No entanto, ele é um cabeçalho HTTP que pode ser manipulado por qualquer visitante e, em virtude disso, não é uma informação confiável.

Liberar um "User Agent" seria o mesmo que liberar uma URL como "/", "index.php", etc. Isso faria do seu site um prato cheio para atacantes.

Passo a passo

Agora que você sabe os motivos e os riscos, vamos ao procedimento de liberação.

Via Painel

1) Acesse o painel da Infinite e clique em seu plano de hospedagem;
Exemplo de como acessar o seu plano de hospedagem

2) Encontre a opção "Acessar Painel de Controle do WAF":
Link para painel de controle do WAF

3) Confira se seu plano está correto no menu lateral esquerdo.

Em seguida, você poderá liberar o seu próprio endereço de IP (caso você mesmo esteja sendo bloqueado) ao clicar no botão "Liberar Acesso".

Caso você esteja liberando um endereço de IP de um outro administrador ou visitante, na seção "Permitidos" insira o endereço de IP bloqueado e clique no ícone "+".

Liberar IP no WAF

Pronto: endereço de IP liberado! Basta aguardar 2 minutos e o WAF passará a confiar no endereço de IP adicionado.

4) Caso você esteja tentando liberar uma URL e não um IP, clique então em "URL" na aba à esquerda. Em seguida, insira a URL na seção "Permitidos" e clique no ícone "+".
Liberar URL no WAF

Via SSH/CLI

Caso você queira fazer o procedimento de liberação utilizando a linha de comando, utilize o cli8.

1) Acesse o SSH de seu plano de hospedagem;
2) Execute o seguinte comando, substituindo "8.8.8.8" pelo endereço de IP que deseja liberar:

cli8 waf access-control allow add --type="ip" --value="8.8.8.8"

Caso queira liberar uma URL, use o comando à seguir, dessa vez substituindo "/path/to/folder" pela URL desejada, sem o https://domínio/ (somente o conteúdo após o /).

cli8 waf access-control allow add --type="uri" --value="/path/to/folder"
Artigos Populares