Um visitante clica no seu site nos resultados do Google e vai parar a uma farmácia online, a um site de apostas ou a uma página de "prémio". Quando o dono do site testa, está tudo normal. Este é o comportamento clássico do malware de redirecionamento — uma das infeções mais comuns em WordPress e, felizmente, uma das mais bem compreendidas. Este guia explica porque é que só afeta alguns visitantes, onde se esconde o código e como o remover de vez.
Porque é que o redirecionamento não acontece a si?
O malware de redirecionamento é seletivo de propósito, para atrasar a deteção. As variantes mais comuns só disparam quando o visitante:
Vem de um motor de busca — o código verifica o referrer; quem escreve o endereço diretamente (como o dono do site) nunca vê nada. Usa telemóvel — muitos kits só redirecionam user-agents móveis. Visita pela primeira vez — um cookie marca quem já foi redirecionado, para a mesma pessoa não ver o redirecionamento duas vezes e desconfiar. Não está autenticado — utilizadores com sessão iniciada no WordPress são poupados.
Consequência prática: não conseguir reproduzir o problema não significa que ele não existe. Teste em modo anónimo, num telemóvel, entrando através de uma pesquisa no Google — ou use um scanner externo.
Onde se esconde o código de redirecionamento
Por ordem de frequência no que encontramos em limpezas:
1. Base de dados — tabela wp_options e wp_posts. Scripts injetados em siteurl/home, em widgets ou dentro do conteúdo dos artigos. É o esconderijo favorito porque sobrevive à substituição de todos os ficheiros.
2. Ficheiros de plugins e temas. Código ofuscado (tipicamente eval(base64_decode(...))) acrescentado ao início de ficheiros PHP legítimos, ou plugins falsos com nomes plausíveis instalados na pasta wp-content/plugins/.
3. Ficheiros JavaScript do tema. Uma ou duas linhas minificadas adicionadas ao fim de um .js legítimo — invisíveis a olho nu no meio do código minificado.
4. O ficheiro .htaccess. Regras de rewrite que redirecionam visitantes conforme o referrer ou user-agent, muitas vezes num .htaccess escondido em subpastas.
5. Cabeçalho ou rodapé do tema — header.php/footer.php com um <script src="..."> a carregar o redirecionador de um domínio externo.
Como remover o redirecionamento passo a passo
Antes de tudo: backup do estado atual. Mesmo infetado. Se algo correr mal na limpeza, precisa de conseguir voltar atrás; e o backup preserva a evidência da porta de entrada.
1. Mude todas as credenciais — WordPress (todos os administradores), FTP/SFTP, painel de alojamento e base de dados. Se o atacante tem uma password válida, qualquer limpeza é inútil.
2. Procure e verifique utilizadores administradores. Apague contas que não reconheça (depois de confirmar com a equipa).
3. Substitua o core do WordPress e os plugins por cópias limpas. Descarregue as mesmas versões do repositório oficial e substitua as pastas wp-admin, wp-includes e cada plugin por inteiro. Nunca "limpe" ficheiros core à mão — substitua-os.
4. Inspecione o que não pode ser substituído: wp-config.php, o tema (se foi personalizado), a pasta uploads (não deve conter PHP) e todos os .htaccess.
5. Limpe a base de dados. Procure por script, eval, base64 e domínios desconhecidos nas tabelas wp_options e wp_posts. É o passo onde a maioria das limpezas amadoras falha.
6. Feche a porta de entrada. Na maioria dos casos é um plugin ou tema desatualizado com vulnerabilidade conhecida — veja os riscos reais de plugins desatualizados. Atualize tudo e remova o que não usa.
7. Verifique se o Google marcou o site. Se os resultados de pesquisa mostram avisos, siga o processo de remoção do aviso de site perigoso.
O redirecionamento voltou passados dias? É um backdoor
Se limpou o site e o problema regressou em dias ou horas, a limpeza removeu os sintomas mas deixou um backdoor — um ficheiro de acesso remoto, uma tarefa cron maliciosa ou um utilizador escondido que reinstala a infeção. Este ciclo de limpar-reinfetar pode repetir-se indefinidamente e cada ronda custa posições no Google.
É o cenário típico em que compensa parar e entregar a um profissional: uma limpeza completa custa menos do que três limpezas incompletas. Veja quanto custa uma limpeza profissional e o que deve exigir que esteja incluído.
O seu site está a redirecionar visitantes?
Cada dia a redirecionar custa clientes e posições no Google. A Vuvo localiza e remove o código malicioso, fecha a porta de entrada e trata da revisão junto do Google — com orçamento fechado após diagnóstico.
Resolver o redirecionamento