Código malicioso no site: como saber se você foi infectado
‘O site está infectado’ significa que apareceu código estranho nele: nos arquivos, no banco de dados ou no template. Ele trabalha em silêncio e, em geral, não para você, mas para os visitantes e os robôs de busca, mostrando a eles o que você não publicou.
Analogia para o dono do site
É como se um estranho tivesse se instalado no depósito da sua loja. Ele não quebra a vitrine: não é do interesse dele que você perceba. Ele usa seu endereço em silêncio e faz uma cópia da chave para voltar depois que você trocar a fechadura. Por isso, limpar sem procurar o ponto de entrada geralmente termina em nova infecção.
Sinais visíveis do lado de fora
| O que você nota | O que costuma estar por trás |
|---|---|
| Um resultado de busca redireciona para um site estranho, mas o acesso direto não | Redirecionamento condicional com base na origem do acesso |
| Nos resultados de busca, suas páginas aparecem com títulos estranhos: farmácias, cassinos | Cloaking: o robô recebe uma página diferente da que a pessoa vê |
| Queda brusca de tráfego sem mudanças nas posições | Aviso do navegador 'o site pode ser prejudicial' ao entrar |
| E-mails do domínio estão indo em massa para o spam | O domínio entrou em uma lista negra por envio de spam |
| Novos arquivos e administradores que você não criou | Backdoor e conta para reentrada |
Os mecanismos de busca marcam esses sites, reduzem a confiança no domínio e removem páginas infectadas do índice; em caso de injeção de spam, também pode haver sanções manuais. Recuperar as posições leva semanas: primeiro, os mecanismos de busca e os serviços de reputação precisam confirmar que o site está limpo.
Como aparece no relatório do Security Shield
Se pelo menos um sinal de infecção for encontrado, o relatório começa não com uma nota, mas com o veredito 'Infectado': o nível vermelho do semáforo. Do lado de fora, o scanner enxerga JavaScript ofuscado, scripts de mineração, frames invisíveis, interceptação de campos de formulário, links de spam ocultos, sinais de cloaking e redirecionamentos, além de domínios em listas negras.
Parte da infecção fundamentalmente não é visível do lado de fora: web shell em um arquivo, arquivos principais do CMS modificados, arquivo PHP no diretório uploads, regras no .htaccess, código no banco de dados, administrador estranho. Isso é encontrado por um agente de servidor opcional: um script que você coloca na sua hospedagem. Mais detalhes no artigo sobre o Security Shield.
Remover os arquivos encontrados não basta: se o ponto de entrada continuar aberto, o código volta em poucas horas. Procure não só o arquivo em si, mas também como ele entrou: plugin desatualizado, senha de FTP roubada, site estranho na mesma conta de hospedagem.
O que fazer, passo a passo
- Faça uma cópia 'como está'. Os arquivos e o banco de dados no estado atual servem tanto de prova quanto de garantia caso a limpeza não dê certo.
- Encontre o que foi modificado. Ordene os arquivos pela data de modificação e compare o núcleo do CMS e os plugins com as versões oficiais.
- Restaure as versões limpas. Reinstale o núcleo e as extensões por cima, e limpe o template e o uploads de forma seletiva.
- Atualize o CMS, o tema e os plugins, remova os que não são usados e os que saíram do catálogo oficial.
- Troque todas as senhas e chaves: administradores, banco de dados, FTP e SSH, painel de hospedagem, e-mail. Verifique os administradores e as tarefas agendadas.
- Execute uma nova verificação: o veredito deve mudar e os achados com sinais de infecção devem desaparecer.
- Envie um pedido de reavaliação aos serviços de reputação e no painel do webmaster: a marcação não é removida sozinha.
Como evitar uma nova infecção
Atualizações e um número mínimo de plugins protegem mais do que um 'antivírus para o site' pago. Mantenha permissões de arquivo rígidas, proíba a execução de PHP no diretório uploads e ative a autenticação de dois fatores no painel de administração. Depois da limpeza, verifique as páginas com o SEO Audit e, para as publicações, a indexação.