Este guia foi criado especificamente para um tipo de invasão que adiciona páginas sem sentido com palavras-chave ao site, as quais chamaremos de invasão de palavras-chave e links. Ele foi projetado para usuários dos sistemas de gerenciamento de conteúdo (CMSs, na sigla em inglês) conhecidos, mas será útil mesmo se você não usar um CMS.
Queremos ter certeza de que este guia será realmente útil para você. Deixe seu feedback para nos ajudar a melhorar.
Identifique esse tipo de invasão
A invasão de links e palavras-chave com cloaking cria automaticamente várias páginas com textos, links e imagens sem sentido. Às vezes, essas páginas contêm elementos de modelo básicos do site original. Assim, à primeira vista, elas podem parecer partes normais do site até que você leia o conteúdo.
As páginas invadidas são criadas para manipular os fatores de classificação do Google. Os hackers frequentemente tentam monetizar isso vendendo os links nas páginas invadidas para diferentes terceiros. Muitas vezes, as páginas invadidas também redirecionam os visitantes para uma página não relacionada, em que os hackers podem ganhar dinheiro.
Comece verificando a ferramenta Problemas de segurança no Search Console para ver se o Google descobriu alguma dessas páginas invadidas no seu site. Às vezes, você também pode descobrir páginas como essa abrindo uma janela da Pesquisa Google e digitando site:_your site url_
, com o URL do nível raiz do seu site. Isso vai mostrar as páginas do seu site que o Google indexou, incluindo as páginas invadidas. Confira algumas páginas dos resultados da pesquisa para ver se você consegue identificar URLs incomuns. Caso não encontre conteúdo invadido na Pesquisa Google, use os mesmos termos de pesquisa com um mecanismo de pesquisa diferente. Veja um
exemplo de como isso ficaria:
![Resultados da pesquisa gerados por essa invasão.](https://web.dev/static/articles/fix-the-cloaked-keywords-hack/image/search-results-generated.png?authuser=9&hl=pt-br)
Normalmente, ao clicar em um link para uma página invadida, você é redirecionado para outro site ou vê uma página cheia de conteúdo sem sentido. No entanto, talvez você também veja uma mensagem sugerindo que a página não existe (por exemplo, um erro 404). Não se deixe enganar! Eles fazem isso com técnicas de cloaking de conteúdo. Verifique se há técnicas de cloaking inserindo os URLs do site na Ferramenta de inspeção de URL. A ferramenta Buscar como o Google permite que você veja o conteúdo oculto subjacente.
Se você encontrar esses problemas, seu site provavelmente foi afetado por esse tipo de invasão.
![Exemplo de página criada por esta invasão.](https://web.dev/static/articles/fix-the-cloaked-keywords-hack/image/an-example-page-created-cc79e3659cd4c.png?authuser=9&hl=pt-br)
Corrija a invasão
Antes de começar, faça uma cópia off-line dos arquivos antes de removê-los, caso precise restaurá-los mais tarde. Ou melhor, faça backup de todo o site antes de iniciar o processo de limpeza. Para isso, salve todos os arquivos que estão no servidor em um local fora dele ou pesquise as melhores opções de backup para seu sistema de gerenciamento de conteúdo (CMS, na sigla em inglês). Se estiver usando um CMS, faça backup do banco de dados também.
Verificar o arquivo .htaccess
(3 etapas)
A invasão de links e palavras-chave com cloaking usam o arquivo .htaccess
para criar automaticamente as páginas do site. Familiarizar-se com os conceitos básicos do .htaccess
no site oficial do Apache pode ajudar você a entender melhor como a invasão está afetando seu site, mas isso não é obrigatório.
Etapa 1
Localize o arquivo .htaccess
no seu site. Se você não tiver certeza de onde encontrá-lo
e estiver usando um CMS, como WordPress, Joomla ou Drupal, pesquise
"Local file file" em um mecanismo de pesquisa junto com o nome do CMS.
Dependendo do site, você talvez encontre vários arquivos .htaccess
.
Faça uma lista de todos os locais de arquivo .htaccess
.
Etapa 2
Abra o arquivo .htaccess
para ver o conteúdo dele. Procure uma linha de código parecida com esta:
RewriteRule (.*cj2fa.*|^tobeornottobe$) /injected_file.php?q=$1 [L]
As variáveis nessa linha podem ser diferentes. Tanto cj2fa
quanto tobeornottobe
podem
ser qualquer combinação de letras ou palavras. O importante é identificar o .php
referenciado nessa linha.
Anote o arquivo .php
mencionado no arquivo .htaccess
. No exemplo,
o arquivo .php
é chamado de injected_file.php
, mas, na realidade, o nome do arquivo não
será tão óbvio. Geralmente, é um conjunto aleatório de palavras inofensivas, como horsekeys.php
ou potatolake.php
. É provável que seja um arquivo .php
malicioso
que precisaremos rastrear e remover mais tarde.
Etapa 3
Substitua todos os arquivos .htaccess
por uma versão limpa ou padrão do arquivo
.htaccess
. Geralmente, é possível encontrar a versão padrão de um arquivo .htaccess
pesquisando
por "arquivo .htaccess
padrão" e o nome do seu CMS. Para sites com vários
arquivos .htaccess
, encontre uma versão limpa de cada um e faça a substituição.
Se não houver um .htaccess
padrão e você nunca tiver configurado um arquivo .htaccess
no site, é provável que o arquivo .htaccess
encontrado nele seja malicioso.
Salve uma cópia dos arquivos .htaccess
off-line, por precaução, e eles
no seu site.
Encontrar e remover outros arquivos maliciosos (5 etapas)
Identificar arquivos maliciosos pode ser complicado e demorado. Leve o tempo que precisar para verificar os arquivos. Este é um bom momento para fazer backup dos arquivos no seu site, caso ainda não tenha feito isso. Pesquise no Google "backup de site" e o nome do CMS para encontrar instruções sobre como fazer isso.
Etapa 1
Se você usar um CMS, reinstale todos os arquivos principais (padrão) que vêm na distribuição padrão do CMS, bem como qualquer item adicionado (como temas, módulos e plug-ins). Isso ajuda a garantir que esses arquivos não tenham conteúdo invadido. Pesquise no Google por "reinstalação" e o nome do seu CMS para encontrar instruções de reinstalação. Se você tiver plug-ins, módulos, extensões ou temas, reinstale-os também.
Etapa 2
Comece procurando o arquivo .php
identificado no arquivo .htaccess
anteriormente. Dependendo de como você acessa os arquivos no servidor, deve haver algum tipo de funcionalidade de pesquisa. Pesquise o nome de arquivo
mal-intencionado. Se você encontrá-lo, primeiro faça uma cópia de backup e armazene-o em outro
local, caso seja necessário restaurá-lo, e depois exclua-o do seu site.
Etapa 3
Procure os arquivos maliciosos ou comprometidos restantes. Talvez você já tenha removido todos os arquivos maliciosos nas duas etapas anteriores, mas é melhor seguir estas próximas etapas caso haja mais arquivos comprometidos no seu site.
Não se preocupe achando que precisa abrir e examinar todos os arquivos PHP. Comece criando uma lista de arquivos PHP suspeitos que você quer investigar. Aqui estão algumas maneiras de determinar quais arquivos PHP são suspeitos:
- Se você já atualizou os arquivos do CMS, verifique somente os arquivos que não fazem parte dos arquivos ou pastas padrão do CMS. Isso eliminará muitos arquivos PHP e deixará você com menos arquivos a serem examinados.
- Classifique os arquivos do site por data da última modificação. Procure arquivos que foram modificados nos meses anteriores ao momento em que você descobriu pela primeira vez que seu site foi invadido.
- Classifique os arquivos do site por tamanho. Procure os arquivos muito grandes.
Etapa 4
Depois de ter uma lista de arquivos PHP suspeitos, verifique se eles não são maliciosos. Se você não estiver familiarizado com PHP, esse processo pode ser mais demorado. Por isso, consulte a documentação sobre PHP. Se não tiver muito conhecimento sobre codificação, recomendamos que você procure ajuda. Enquanto isso, existem alguns padrões básicos que você pode procurar para identificar arquivos maliciosos.
Se você usa um CMS e não tem o hábito de editar esses arquivos diretamente, compare os arquivos no seu servidor com uma lista dos arquivos padrão empacotados com o CMS e plug-ins e temas. Procure arquivos que não pertencem a eles e arquivos maiores que a versão padrão deles.
Primeiro, verifique os arquivos suspeitos que você já identificou para procurar grandes blocos de texto com uma combinação de letras e números aparentemente sem sentido. O bloco de texto grande geralmente é precedido por uma combinação de funções PHP, como base64_decode
, rot13
, eval
, strrev
ou gzinflate
.
Aqui está um exemplo de como pode ser esse bloco de código. Às vezes, todo esse
código é empilhado em uma longa linha de texto, fazendo com que pareça menor do que
realmente é.
// Hackers try to confuse webmasters by encoding malicious code into
// blocks of text. Be wary of unfamiliar code blocks like this.
base64_decode(strrev("hMXZpRXaslmYhJXZuxWd2BSZ0l2cgknbhByZul2czVmckRWYgknYgM3ajFGd0FGIlJXd0Vn
ZgknbhBSbvJnZgUGdpNHIyV3b5BSZyV3YlNHIvRHI0V2Zy9mZgQ3Ju9GRg4SZ0l2cgIXdvlHI4lmZg4WYjBSdvlHIsU2c
hVmcnBydvJGblBiZvBCdpJGIhBCZuFGIl1Wa0BCa0l2dgQXdCBiLkJXYoBSZiBibhNGIlR2bjBycphGdgcmbpRXYjNXdmJ2b
lRGI5xWZ0Fmb1RncvZmbVBiLn5WauVGcwFGagM3J0FGa3BCZuFGdzJXZk5Wdg8GdgU3b5BicvZGI0xWdjlmZmlGZgQXagU2ah
1GIvRHIzlGa0BSZrlGbgUGZvNGIlRWaoByb0BSZrlGbgMnclt2YhhEIuUGZvNGIlxmYhRWYlJnb1BychByZulGZhJXZ1F3ch
1GIlR2bjBCZlRXYjNXdmJ2bgMXdvl2YpxWYtBiZvBSZjVWawBSYgMXagMXaoRFIskGS"));
Às vezes, o código não está desorganizado e apenas se parece com um script normal. Caso você não tenha certeza se o código está incorreto, acesse os Fóruns de Ajuda para webmasters, onde um grupo de webmasters experientes poderá ajudar você a examinar os arquivos.
Etapa 5
Agora que você sabe quais arquivos são suspeitos, crie um backup ou uma cópia local salvando-os no seu computador, caso os arquivos não sejam maliciosos, e exclua os arquivos suspeitos do seu site.
Verificar se o site está limpo
Ao terminar de se livrar dos arquivos hackeados, verifique se seu trabalho trabalhou duro. Lembra-se das páginas sem sentido identificadas anteriormente? Use a ferramenta Fetch as Google novamente para ver se elas ainda existem. Se a resposta do Buscar como o Google for "Não encontrado", é provável que você esteja em boas condições e prossiga para a correção das vulnerabilidades do seu site.
Como evitar ser invadido novamente?
A correção de vulnerabilidades é uma etapa final essencial para a correção do site. Um estudo recente descobriu que 20% dos sites invadidos são invadidos novamente dentro de um dia. É importante saber exatamente como o site foi invadido. Leia o guia Formas mais comuns de invasão de sites por criadores de spam para começar sua investigação. No entanto, se você não conseguir descobrir como seu site foi invadido, veja a seguir uma lista de verificação do que fazer para reduzir as vulnerabilidades no site:
- Faça uma varredura regularmente no seu computador: use um programa antivírus conhecido para verificar a presença de vírus ou vulnerabilidades.
- Troque suas senhas regularmente:trocar regularmente as senhas de todas as contas do seu site, como o provedor de hospedagem, o FTP e o CMS, pode impedir o acesso não autorizado ao site. É importante criar uma senha forte e exclusiva para cada conta.
- Use a autenticação de dois fatores (2FA):considere ativar a 2FA em qualquer serviço que exija login. A 2FA dificulta o login de hackers, mesmo que eles roubem sua senha.
- Atualize o CMS, os plug-ins, as extensões e os módulos regularmente: Espero que você já tenha concluído esta etapa. Muitos sites são invadidos por executar software desatualizado. Alguns CMSs são compatíveis com a atualização automática.
- Considere se inscrever em um serviço de segurança para monitorar seu site: Há muitos serviços excelentes que podem ajudar você no monitoramento do site por uma pequena taxa. Recomendamos que você faça registro em um deles para manter o site seguro.
Outros recursos
Se você ainda estiver com problemas para corrigir o site, há mais alguns recursos que podem ajudar.
Estas ferramentas fazem a varredura do site e podem encontrar conteúdos problemáticos. O Google não desenvolve nem oferece suporte para elas, a não ser a VirusTotal.
- Total de vírus
- Aw-snap.info (em inglês)
- Verificação do site do Suucuri
- Quttera (link em inglês)
Essas são apenas algumas ferramentas que podem verificar seu site em busca de conteúdo problemático. Lembre-se de que esses scanners não podem garantir a identificação de todos os tipos de conteúdo problemático.
Veja outros recursos do Google que podem ajudar você: