Meu site WordPress foi hackeado: o que fazer agora
Site WordPress invadido? O que fazer nas primeiras horas: preservar evidência, cortar o acesso do invasor, não apagar às cegas e quando pedir um diagnóstico.
- Guias
- Malware
- Resposta a incidente
Você acabou de perceber que o site foi invadido. Redirect estranho, aviso do Google, admin que você não criou, e-mail da hospedagem falando em malware. A urgência é real. Só que a primeira reação errada costuma piorar o caso.
Trabalho com segurança de WordPress e este é o roteiro que eu sigo nas primeiras horas de um incidente: o que fazer agora, o que adiar e o que evitar. Não substitui uma limpeza completa. Só aponta a ordem segura até você (ou alguém de confiança) conseguir limpar de verdade.
Se ainda não tem certeza se houve invasão, comece pelos sinais em como saber se o WordPress foi hackeado.
O que não fazer nos primeiros minutos
- Não apague o site inteiro nem “formate” a hospedagem sem cópia. Você destrói a evidência de por onde o invasor entrou.
- Não restaure um backup antigo agora como solução mágica. Se a brecha continuar aberta (plugin vulnerável, senha fraca, plugin pirata), o site cai de novo. E às vezes o backup também já estava contaminado.
- Não instale três plugins de segurança de uma vez “para limpar”. Eles podem conflitar, mascarar sintomas e não removem backdoors bem escondidos.
- Se suspeitar que o computador da empresa também está comprometido, não use ele para trocar senhas. Prefira um dispositivo limpo.
Passo 1: anote o que você está vendo
Antes de mexer, registre:
- o que os visitantes ou o Google mostram (aviso, redirect, spam);
- horário aproximado em que notou (e o fuso);
- o que mudou recentemente (plugin novo, tema, freela com acesso, atualização);
- prints do painel, do Search Console e do e-mail da hospedagem.
Isso vira o relatório mínimo do incidente. Se for pedir ajuda depois, economiza horas de diagnóstico.
Passo 2: preserve o estado atual (backup infectado)
Faça uma cópia completa de arquivos + banco de dados e guarde fora da pasta pública do site (outro disco, outro provedor, máquina local segura). Esse backup não é para colocar o site no ar de novo. É evidência e rede de segurança se a limpeza quebrar algo.
Se você tem SSH e WP-CLI:
wp db export backup-infectado.sql
tar -czf backup-infectado-arquivos.tar.gz .
Sem SSH: exporte o banco pelo phpMyAdmin (ou ferramenta da host) e baixe a pasta do site pelo gerenciador de arquivos ou SFTP.
Passo 3: reduza o dano enquanto trabalha
Se o site ainda redireciona visitantes para golpe, phishing ou download malicioso:
- coloque o site em modo de manutenção (plugin simples ou flag da hospedagem); ou
- peça à hospedagem para restringir o acesso temporariamente.
O objetivo é parar de prejudicar visitantes enquanto você organiza a resposta. Não é “esconder o problema” sem limpar.
Passo 4: tire o acesso do invasor (credenciais)
A partir de um computador em que você confia, troque:
- senha do painel da hospedagem (cPanel, DirectAdmin, etc.);
- senhas de FTP/SFTP/SSH e apague contas de FTP que você não reconhece;
- senha do banco de dados (atualize o
wp-config.phpem seguida); - senhas de todos os usuários WordPress com papel de administrador (e revise editores);
- senha do e-mail que recebe recuperação de senha do domínio.
No WordPress, regenere as chaves de segurança (salts). Isso encerra sessões ativas:
wp config shuffle-salts
Sem WP-CLI: gere novas chaves no gerador oficial do WordPress.org e substitua o bloco correspondente no wp-config.php.
Liste os administradores:
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
Qualquer conta que você não reconhece: desative ou remova depois de anotar login, e-mail e data de criação.
Passo 5: peça informações à hospedagem
Mande um chamado objetivo pedindo:
- se a conta está suspensa ou só com alerta;
- lista de arquivos sinalizados pelo scanner deles (caminhos completos);
- se há abuso de e-mail, pico de CPU ou outros sites na mesma conta afetados;
- acesso SFTP/logs do período suspeito.
A hospedagem quase nunca faz a limpeza completa por você. Mas o relatório deles é uma pista valiosa.
Passo 6: entenda o tamanho do problema (triagem rápida)
Em cerca de 15 a 30 minutos você já consegue uma noção:
- Google:
site:seudominio.com.br. Tem páginas que você não criou? - Search Console, em Problemas de segurança (se ainda não cadastrou o site, cadastre).
- No painel, olhe Usuários e Plugins. Tem algo estranho?
- Teste como visitante no celular, aba anônima, chegando por busca. Muitos malwares só redirecionam nesse cenário.
- Se tiver SSH:
wp core verify-checksums
find wp-content/uploads -type f -name "*.php"
ls -la wp-content/mu-plugins
Arquivo .php dentro de uploads é altamente suspeito. mu-plugins carrega sozinho e costuma esconder backdoor.
Scanners online (Sucuri SiteCheck, VirusTotal) ajudam, mas um resultado “limpo” não prova que o site está limpo. Eles só veem o que o visitante vê.
Passo 7: só então limpe (ou chame quem limpa)
A limpeza de verdade envolve: reinstalar o núcleo a partir da fonte oficial, reinstalar plugins/temas legítimos, revisar .htaccess e wp-config.php, limpar banco e cron, fechar a porta de entrada e validar. O roteiro técnico está em como remover malware do WordPress.
Se o sintoma for redirect, veja também WordPress redirecionando para outro site. Se houver tela vermelha do Chrome/Google, aviso de site perigoso.
Quando não vale insistir sozinho
- loja virtual (WooCommerce) com dados de clientes;
- vários sites na mesma conta de hospedagem;
- malware que volta depois que você apaga arquivos;
- sem acesso a SSH, logs ou backup;
- prazo comercial curto (campanha, lançamento, anúncios rodando).
Nesses casos, o custo de errar costuma ser maior que o de uma limpeza feita com método. Eu explico quanto custa limpar um WordPress hackeado e o que perguntar antes de contratar.
Depois da limpeza (não pule)
- Confirme a causa (plugin desatualizado, senha vazada, plugin pirata, etc.) e corrija.
- Ative 2FA nos administradores.
- Backup automático fora do servidor, com teste de restauração.
- Se o Google sinalizou o site, peça revisão no Search Console só depois de limpo.
- Monitore usuários, arquivos novos e cron por algumas semanas.
Resumo em uma frase
Preserve, corte o acesso, colete pistas, limpe com método, feche a brecha e monitore. Qualquer atalho que pule a brecha ou a evidência tende a virar reinfecção.
Seu site está assim agora? Eu faço um diagnóstico grátis do seu WordPress, sem compromisso. Me manda o domínio e o sintoma no WhatsApp e eu te digo o que estou vendo e se faz sentido eu entrar. Se preferir, veja como funciona a limpeza de malware.