WordPress é o CMS mais atacado do mundo — não porque é inseguro por natureza, mas porque a sua ubiquidade torna-o alvo rentável. Compreender os tipos de malware que afetam WordPress, como identificar uma infecção e como limpar corretamente é conhecimento essencial para qualquer agência que gere sites de clientes.
Como os sites WordPress são comprometidos
Os vetores de ataque mais comuns por ordem de frequência:
- Plugins e temas desatualizados: vulnerabilidades conhecidas em componentes desatualizados — a causa mais frequente
- Passwords fracas ou reutilizadas: brute force ou credenciais obtidas em data leaks
- Plugins ou temas pirateados: contêm frequentemente backdoors propositadas
- Permissões de ficheiros incorretas: ficheiros writeable que não deveriam ser
- Hosting comprometido: outro site no mesmo servidor comprometido que afecta os vizinhos
Tipos de malware WordPress mais comuns
Backdoors
Scripts PHP que permitem ao atacante acesso persistente mesmo após limpeza parcial. Frequentemente inseridos em ficheiros de tema, plugin ou wp-includes. Podem parecer código WordPress legítimo.
Exemplos típicos: funções com eval(base64_decode(...)), ficheiros com nomes semelhantes a ficheiros WordPress legítimos mas em locais errados.
Redirecionamentos maliciosos
O site redireciona visitantes (especialmente de pesquisas Google) para sites de spam, phishing ou com conteúdo ilegal. Frequentemente injetado via JavaScript no tema ou via PHP no servidor. Os redirecionamentos podem ser condicionais — apenas para visitantes móveis, apenas de certos países, ou apenas quando o utilizador veio de pesquisa orgânica.
SEO Spam (Japanese/Chinese keywords)
O atacante injeta páginas ou conteúdo com keywords irrelevantes (frequentemente em japonês, chinês ou árabe) para SEO black hat. O site torna-se um veículo para spam de pesquisa. Detectável procurando no Google por site:seusite.pt e verificando se aparecem páginas com conteúdo estranho.
Cryptominer
JavaScript injetado que usa o CPU dos visitantes para minar criptomoeda. Resulta em browser muito lento para os visitantes. Detetável via análise de Network no DevTools — pedidos a domínios de mining.
Phishing
Páginas de phishing hospedadas no site WordPress — formulários falsos de login a bancos, páginas de recolha de cartão de crédito. O site mantém-se funcional enquanto serve como plataforma de phishing. Google SafeBrowsing deteta e bloqueia o site quando identifica.
Spam mailer
Scripts PHP que enviam spam em massa usando o servidor do site. Resulta em IP do servidor em blacklists de email, emails legítimos do site a ir para spam, alertas do hosting sobre uso excessivo de email.
Identificar uma infecção
Sinais de alerta
- Google Chrome mostra aviso "Este site pode danificar o seu computador"
- Google Search Console mostra alertas de segurança
- O site aparece em
site:seusite.ptcom páginas em idiomas estranhos - Hosting a alertar sobre uso excessivo de CPU ou email
- Visitantes reportam redirecionamentos para sites estranhos (especialmente em mobile)
- Novo utilizador administrador que não foi criado pela equipa
- Ficheiros PHP recentemente modificados em locais incomuns
Ferramentas de diagnóstico
- Sucuri SiteCheck (sitecheck.sucuri.net): scan externo gratuito — verifica listas negras e malware visível no frontend
- Wordfence (scan completo): compara ficheiros WordPress com os originais e identifica alterações suspeitas
- Google Safe Browsing (transparencyreport.google.com): verificar se o site está em lista negra do Google
Processo de limpeza passo a passo
- Colocar o site em modo de manutenção: evitar que mais utilizadores sejam afetados durante a limpeza
- Backup completo antes de qualquer alteração: mesmo que o backup contenha malware, é necessário para referência
- Alterar todas as passwords: WordPress admin, FTP, base de dados, hosting, email
- Verificar e eliminar utilizadores admin desconhecidos
- Reinstalar WordPress core: descarregar versão limpa e substituir wp-admin/ e wp-includes/ (manter wp-content/ e wp-config.php)
- Reinstalar todos os plugins e temas de fontes oficiais: não restaurar de backup — o backup pode estar comprometido
- Scan completo de wp-content/: verificar uploads/ para ficheiros PHP, verificar themes/ e plugins/ para código suspeito
- Limpar a base de dados: verificar wp_options para injeções, wp_users para contas suspeitas, verificar todos os posts para JavaScript malicioso
- Verificar e corrigir permissões de ficheiros
- Pedir remoção de lista negra: após limpeza, submeter pedido de revisão no Google Search Console se o site estava na lista negra
Prevenir reinfecção
A limpeza sem mudança de processo resulta em reinfecção. As medidas preventivas:
- Manter WordPress, plugins e temas sempre atualizados — ver o processo de updates seguros
- Autenticação de dois fatores em todas as contas admin
- Passwords únicas e fortes — gestor de passwords
- Hosting de qualidade em ambiente isolado
- Monitorização de integridade de ficheiros (Wordfence ou similar)
- Nunca instalar plugins ou temas de fontes não oficiais
- Permissões de ficheiros corretas
Um site comprometido pode afetar a reputação da sua agência. Deixe-nos tratar da segurança.
O nosso serviço de manutenção WordPress inclui monitorização de segurança, scanning de malware e resposta a incidentes.
Proteger os sites dos seus clientes