Proteja seu WordPress de Força Bruta - Base de Conhecimento - HOSTCURITIBA - Hospedagem Security
WordPress é uma plataforma de blogging completa. É feito altamente personalizável e fácil de desenvolver o site. É uma plataforma de publicação popular que é bem conhecido devido às suas características robustas, inúmeros modelos e grande comunidade de suporte. No entanto, o WordPress também é constantemente sujeito a tentativas de vulnerabilidades que exploram. Um dos medida de segurança importante é que manter o seu WordPress e quaisquer plugins associados são instalados com o atual versão mais recente.
Um ponto comum de ataque no WordPress é Brute Force Attack para martelar o arquivo wp-login.php, tenta usernames e senhas mais e mais até que eles entrar e ter acesso ao site. Estes ataques resulta em falta de memória nos causam problemas de desempenho do servidor. A situação surge devido ao número de solicitações HTTP (que é o número de vezes que alguém visita seu site) é tão alta que leva o servidor fique sem memória.
Bloco Brute Force tentativas usando ModSecurity
ModSecurity fornece uma quantidade significativa de segurança, fornecendo um firewall de aplicação. Modsec pode ser personalizado para filtrar solicitações HTTP de entrada, o que ajuda contra a força bruta e consumindo recursos do servidor. Usando um pouco de configuração do mod_security podem facilmente bloquear as tentativas de força bruta usando o livre ConfigServer Firewall.
Certifique-se de que mod_security é habilitado no servidor, caso contrário, correr EasyApache novamente e permitir módulo mod_security apache. Você também vai precisar instalar ConfigServer Firewall no servidor.
Configurar a segurança Mod para evitar Brute Force
Inorder para bloquear tentativas excessivas wp-login.php, precisamos configurar personalizados regras de segurança Mod. Ou você pode editar manualmente o arquivo de usuário via linha de comando ou usar o construída em editor dentro WHM. Para fazê-lo através da interface de linha de comando, basta editar o arquivo /usr/local/apache/conf/modsec2.user.conf. Você também pode usar WHM vá até Home> Plugins> Mod Segurança, este irá mostrar-lhe o log para todos os blocos. No topo você verá um botão que diz Editar Config, clique nesse botão e você terá uma página onde você pode editar o mesmo arquivo como mencionado acima.
Você pode usar as regras personalizadas giveb abaixo.
SecUploadDir / tmp
SecTmpDir / tmp
SecAction fase: 1, nolog, passar, initcol: ip =% {} REMOTE_ADDR, initcol: usuário =% {} REMOTE_ADDR, ID: 5000134
# Configuração de detecção de força bruta.
# Reagir se bandeira bloco foi definido.
SecRule usuário: bf_block "gt 0" "negar, status: 401, registro, id: 5000135, msg: o endereço IP é bloqueada durante 5 minutos, para mais de 10 tentativas de login em três minutos."
# Rastreamento de configuração.
Em um login bem-sucedido, um redirecionamento 302 é executada, uma 200 indica o login falhou.
SecRule RESPONSE_STATUS "^ 302" "fase: 5, t: none, nolog, passar, setvar: ip.bf_counter = 0, id: 5000136"
SecRule RESPONSE_STATUS "^ 200" "phase:5,chain,t:none,nolog,pass,setvar:ip.bf_counter=+1,deprecatevar:ip.bf_counter=1/180,id:5000137″
SecRule ip: bf_counter "gt 10" "t: nenhum, setvar: user.bf_block = 1, expirevar: user.bf_block = 300, setvar: ip.bf_counter = 0"
Vamos conhecimento que tudo o que é;
Estamos definindo o SecUploadDir, SecTmpDir, e SecDataDir em / tmp. O "SecRequestBodyAccess em" significa contar segurança mod para verificar o corpo da transação HTTP uma vez que a maioria das tentativas de login são feitas através de solicitações POST. Esta deve ser sempre definido como Ligado.
Isto é para determinar se a pessoa que acede /wp-login.php. Isso irá corresponder a sub-diretórios e diretórios aninhados como qualquer maneira /wp-login.php será na URL.
SecRule usuário: bf_block "gt 0" "negar, status: 401, registro, id: 5000135, msg:". Endereço ip bloqueado para 5 minutos, por mais de 10 tentativas de login em três minutos '"
Isto irá verificar e negar com o status 401 e log para o log de segurança da modificação com a mensagem dada acima.
Esta seção irá verificar se o status da resposta é 302, que é a resposta de status para login bem-sucedido, então isso irá definir bf_counter a 0 para o usuário logado, para garantir que esta não é uma tentativa de força bruta.
SecRule RESPONSE_STATUS "^ 200" "fase: 5, corrente, t: none, nolog, passar, setvar: ip.bf_counter = 1/180, ID: 5000137"
Isto irá verificar se o status de resposta é de 200 que significa que houve uma tentativa de logon falhou. Quando isso é detectado, ele vai aumentar bf_counter para verificar quantas tentativas frustradas de login havia. O valor ip.bf_counter = 1/180 significa quantos segundos você precisa controlar as tentativas de login para.
Isto irá verificar a contagem de bf_counter para IP do usuário, se ele for maior que 10 (significa mais de 10 tentativas falhas de login), em seguida, bloquear o IP do usuário. O valor user.bf_block = 300 significa quantos segundos você quer bloquear o IP para. Se você precisa bloquear por 10 minutos em vez de 5 minutos, altere o valor para 600. O valor "gt 10" significa logins falhos antes de bloquear o IP.
Isso vai direcionar o Apache para encontrar erros 401. Se você não tê-lo em seu arquivo .htaccess, WordPress irá lidar com o erro 401.
Ativar Mod Segurança em ConfigServer Firewall
Você vai precisar para se certificar de que ConfigServer Firewall permitiu Segurança Mod. Para fazer isso vá para WHM >> ConfigServer Firewall >> Editar configuração >> encontrar LF_MODSEC.