Ir para conteúdo
  • Cadastre-se

Como bloquear ataques ao admin do Wordpress para ips internacionais.


MyWay Hosting

Posts Recomendados

Esse tutorial foi baseado na minha dica do htacess ? lembro de ter postado dizendo para bloquear determinadas pastas do servidor usando regras deny, já uso assim faz um tempo no whmcs, e em determinados sites wordpress. é bem prático e funcional. excelente dica no /home farei isso hoje mesmo, só temos que tomar cuidado para não bloquear o domínio de suporte ao cliente, caso contrário se o cara estiver viajando e precisar abrir um ticket, aí complica rs

 

Olá Ronan, não conheço o tutorial que fez mas a prática é bem comum, ou seja, usar o .htaccess.

O .htacces serve para bloquear pastas e arquivos. Essa proteção serve para não permitir que determinados arquivos como os do Wordpress sejam acessados por ips internacionais e de quebra evita o site ficar sob brutal force o que tem sido muito comum encontrarmos. 

 

Abraços 

Link para o comentário
Compartilhar em outros sites

Engraçado, eu senti um rebote ao implementar essa técnica conforme as instruções. Isso deixou o apache ainda mais instável e elevou o load, removendo o .htaccess melhorou bastante. Estou realizando otimizações e ajustes no apache para tentar uma implementação em alguns dias.

Link para o comentário
Compartilhar em outros sites

Engraçado, eu senti um rebote ao implementar essa técnica conforme as instruções. Isso deixou o apache ainda mais instável e elevou o load, removendo o .htaccess melhorou bastante. Estou realizando otimizações e ajustes no apache para tentar uma implementação em alguns dias.

 

Olá Dimosn

 

quantos sites tem seu servidor e qual a configuração do mesmo ? Está usando o NGINX ?

Link para o comentário
Compartilhar em outros sites

Ainda sem nginx, é um servidor novo. 700 sites no momento. Vi muitas requisições sendo duplicadas no Apache (loop parece).

 

Como a máquina é nova e estamos ainda migrando alguns clientes e implementando apps, ainda não otimizamos o apache, não instalamos cpnginx ainda, nem tunamos o MySQL.

Link para o comentário
Compartilhar em outros sites

Ainda sem nginx, é um servidor novo. 700 sites no momento. Vi muitas requisições sendo duplicadas no Apache (loop parece).

 

Como a máquina é nova e estamos ainda migrando alguns clientes e implementando apps, ainda não otimizamos o apache, não instalamos cpnginx ainda, nem tunamos o MySQL.

 

Eu recomendo você usar o NGINX. Alem de ficar muito mais rápido o servidor, não terás tantos PIDs no Apache 

 

Normalmente nós fazemos uma vistoria nos sites que mais consomem bandwidth e encontramos nestes sites muitos acessos de fora do Brasil geralmente para as admins de Wordpress.

 

O final do arquivo serve para você configurar uma página de erro caso deseje exibir a quem foi bloqueado. Caso contrário um deny padrão será mostrado.

 

Abraços

Link para o comentário
Compartilhar em outros sites

Obrigado!

Já implementamos Nginx, Otimizamos Apache e MySQL e implementamos novamente seu sistema de bloqueio. Ficou show, valeu!

 

Tem ainda alguns sites com muitos acessos internacionais, que precisariam ser completamente fechados, mas fazendo isso, bloqueamos o googlebot e o site perderá posição drasticamente. Estou tentando achar as ranges do googlebot para colocar na lista permitida e ser feliz.

Link para o comentário
Compartilhar em outros sites

Olá Dimon

 

infelizmente os spiders mudam constantemente os ips e isso infelizmente não ajuda a criarmos um firewall com .htaccess para colocarmos dentro da /home/USER/. Lembrando que se o cliente tiver um .htaccess com allow liberando tudo dentro da public_html o firewall que está antes da public_html perderá a validade. Porem usamos firewall com muita frequencia em sites hackeados

 

Que bom que agora está tudo ok e que você esteja se beneficiando dessa dica ! Abraços !

Link para o comentário
Compartilhar em outros sites

Fala pessoal,

Primeiramente parabéns ao @MyWay Hosting pela contribuição.

Tenho algumas observações com relação a este método de bloqueio.

Coloquei este método de bloqueio em 2 servidores em produção, ambos com aproximadamente 700 domínios hospedados, com variados tipos de scripts e bastante Wordpress, e o testei por aproximadamente 1 semana (até hoje).

Observei que o IP que estava fazendo o ataque, utilizando o htaccess padrão do amigo @MyWay Hosting era redirecionado para uma página 404, em termos de carga do servidor não ajuda muito já que a maioria das instalações Wordpress possuem uma página personalizada 404, carregando assim todo o header/footer do template do usuário + página personalizada 404, em resumo uma página normal do Wordpress, então dependendo da quantidade de tentativas que determinado IP realiza, não é uma boa.

Para contornar isto alterei um pouco o htaccess e ficou conforme link abaixo:

- http://pastebin.com/0t62iF56

Agora com o htaccess modificado o IP é redirecionado a uma página 403 de acesso negado, ajudou um pouco na questão da carga, uma vez que aparece apenas uma página com o texto "Forbidden". Mas encontrei outro problema, onde alguns atacantes simplesmente não param o ataque mesmo recebendo erro 403 e utilizando este htaccess qualquer regra modsecurity de força bruta não funciona, já que o IP não passa pelo wp-admin, vai direto para uma página de erro 403.

Hoje mesmo tive 3 IPs tentando acesso ao wp-admin de 3 usuários, isto ao mesmo tempo, o que totalizou mais de 1500 conexões, virando quase um ataque DoS, porque ignoraram completamente o erro 503 e não pararam o ataque, sendo necessário bloquear estes IPs no CSF para controlar o ataque, antes do bloqueio ficavam apenas recebendo o erro (deixando um log gigantesco):

 

---

[Thu Oct 30 15:06:23 2014] [error] [client 37.48.73.35] client denied by server configuration: /home/XXXXXXX/public_html/wp-login.php
[Thu Oct 30 15:06:23 2014] [error] [client 64.207.184.127] client denied by server configuration: /home/XXXXXXX/public_html/XXXXXXX/wp-login.php
[Thu Oct 30 15:06:23 2014] [error] [client 91.121.159.114] client denied by server configuration: /home/XXXXXXX/public_html/wp-login.php
[Thu Oct 30 15:06:23 2014] [error] [client 72.167.96.13] client denied by server configuration: /home/XXXXXXX/public_html/XXXXXXX/wp-login.php

---

Então seria necessário utilizar uma proteção htaccess + modsecurity para que o IP possa ser bloqueado, ou apenas o modsecurity que já faz este trabalho, porque se o IP não parar o ataque o modsecurity será responsável em bloquear o IP após X tentativas.

Analisei a proteção força bruta do plugin cPanel da Antimalware da PyxSoft (Plugin cPanel/WHM não Wordpress) porém o IP é apenas bloqueado para acessar o wp-admin, sendo que o plugin possui uma página de bloqueio própria e o bloqueio do IP é realizado no próprio plugin, continuando acessar o servidor normalmente, não ajudando caso o IP não pare após receber um erro 503.

Analisei também a proteção da COMODO e verifiquei que a regra até funciona em termos, mas não bloqueia o IP no CSF, ou seja, também fica mostrando uma página de erro e o IP pode ficar infinitamente tentando acesso ao servidor, já que não estará bloqueado no CSF.

Pergunto! Alguém possui ou sabe de uma regra ModSecurity que realmente funcione na questão do Wordpress? Que bloqueie o IP no CSF após X tentativas de acesso?

 

Aproveitando, com estas verificações notei que o CSF não está mais bloqueando determinado IP após (em meu caso) 150 conexões simultâneas, mesmo com a configuração CT_LIMIT setada para 150 conexões e SYNFLOOD_BURST também em 150 conexões. Se estivesse funcionando ao ultrapassar 150 conexões o IP deveria ser bloqueado, notei este problema após as últimas atualizações, mesmo reinstalando o CSF continua na mesma em todos os servidores e esta proteção é importante justamente contra ataque DoS (leia-se DoS não DDoS).

Valeu!

 

Observação: Não deu tempo de revisar a ortografia! Tempo corrido!

Link para o comentário
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Infelizmente, seu conteúdo contém termos que não são permitimos. Edite seu conteúdo para remover as palavras destacadas abaixo.
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?