Nos últimos dias, os proprietários de sites, especificamente aqueles que hospedam no GoDaddy, experimentaram redirecionamentos estranhos para vários sites. Esses redirecionamentos não acontecem o tempo todo, mas parecem acontecer quando um usuário visita uma página pela primeira vez ou a atualiza o suficiente para acioná-la. Eu me deparei com esse problema pela primeira vez ao visitar o site de um restaurante favorito meu. Em vez de ver uma página com fotos de comida, menus, etc., fui presenteado com uma página AV falsa .
Como com outros problemas de segurança que descubro, acabo entrando na toca do coelho para investigar o que é isso, como funciona e se há uma maneira de evitá-lo. Infelizmente, para este incidente, a melhor perspectiva que posso dar é como alguém de fora. Um site da GoDaddy comprometido tornaria essa investigação mais fácil, mas não é impossível sem ela.
Em um nível alto, a sequência de eventos é a seguinte com base em testes e outras observações:
Como eu, os usuários podem visitar o site de uma empresa local com o qual estão familiarizados.
Por meio de alguma lógica de caixa preta (geralmente para visitantes de primeira viagem ou por acaso), os servidores GoDaddy enviam um 302
ao usuário para redirecioná-lo ao site do invasor. Todos os sites comprometidos que encontrei redirecionam para 46.4.68.136
.
Atualmente, há especulações de que os balanceadores de carga do GoDaddy estão comprometidos. Solicitações específicas irão redirecioná-lo para a página do invasor, mas isso ocorre com menos frequência do que o esperado. As versões em cache desses sites comprometidos mostram um redirecionamento no cabeçalho da resposta HTTP. Este cabeçalho fará com que o navegador redirecione para o site especificado na variável de path
.
Abaixo estão alguns exemplos.
HTTP/1.1 302 Found Date: Fri, 16 Dec 2022 22:23:24 GMT Server: Apache P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM" Cache-Control: no-cache Pragma: no-cache Set-Cookie: b64618f79bd8f79428b7f1f80c1abceb=qtjmovs3948hi5t1m2shhambr4; path=/ Location: http://46.4.68.136/[REDACTED]?DOM=www.vocationalvisions.com&URI=%2findex.php Connection: close Vary: Accept-Encoding Content-Type: text/HTML; charset=utf-8
HTTP/1.1 302 Found Date: Sat, 17 Dec 2022 17:21:14 GMT Server: Apache X-Pingback: http://www.bookkeepingservicesclt.com/xmlrpc.php Location: http://46.4.68.136/[REDACTED]?DOM=www.bookkeepingservicesclt.com&URI=%2findex.php Connection: close Vary: Accept-Encoding Content-Type: text/html; charset=UTF-8
HTTP/1.1 302 Found Date: Fri, 16 Dec 2022 14:43:04 GMT Server: Apache Location: http://46.4.68.136/[REDACTED]?DOM=www.daria-snadowsky.com&URI=%2findex.php Connection: close Vary: Accept-Encoding Content-Length: 0 Content-Type: text/html; charset=UTF-8
HTTP/1.1 302 Found Date: Tue, 13 Dec 2022 14:00:31 GMT Server: Apache X-Powered-By: PHP/5.6.40 Link: <http://saslist.com/wp-json/>; rel="https://api.w.org/" Location: http://46.4.68.136/[REDACTED]?DOM=saslist.com&URI=%2findex.php Connection: close Vary: Accept-Encoding Content-Type: text/html; charset=UTF-8
HTTP/1.1 302 Found Date: Wed, 14 Dec 2022 00:20:15 GMT Server: Apache X-Powered-By: PHP/5.6.40 X-Pingback: http://paypointeinc.com/xmlrpc.php Location: http://46.4.68.136/[REDACTED]?DOM=paypointeinc.com&URI=%2findex.php Connection: close Vary: Accept-Encoding Content-Type: text/html; charset=UTF-8
Esses sites recebem uma resposta de um servidor Apache e redirecionam o usuário para o mesmo endereço IP malicioso - se eles usam o WordPress ou não, isso não importa.
Todo usuário que acaba sendo redirecionado para o host do invasor é marcado com um cookie definido no cabeçalho de resposta. Cada solicitação subsequente nesse host também incluirá esse cookie para identificar a vítima.
Set-Cookie: a8163=<JWT looking token>
O redirecionamento leva o usuário a uma página específica no site do invasor. Esta página executa o JavaScript para redirecioná-los para conteúdo de phishing ou pornográfico. A estrutura básica da página que vemos é a seguinte:
<html> <head> <script type="application/javascript"> function process() { if (window.location !== window.parent.location ) { top.location = "http://bad.website"; } else { window.location = "http://bad.website"; } } window.onerror = process; process();</script> </head> <body> The Document has moved <a href="http://bad.website">here</a> </body> </html>
Notavelmente, você pode encontrar snippets muito semelhantes no Github. O redirecionamento acima não é uma nova tática usada para redirecionar usuários. Após esse redirecionamento, o usuário está no destino final do invasor.
Eu brinquei com o site de ataque. Curiosidade: a página de redirecionamento muda dependendo do seu IP/localização. A página me redirecionaria para o scanner AV falso se eu estivesse na América do Norte. Se eu estivesse na Europa, Ásia, América do Sul, etc., cada um me redirecionaria para páginas diferentes com conteúdo abaixo do desejável. Isso é feito intencionalmente para especializar as cargas de ataque com base em algum nível de eficácia de acordo com a localização ou é feito apenas aleatoriamente?
Em geral, o ataque é generalizado, onde podemos encontrar muitos sites comprometidos com uma simples pesquisa no Google do endereço IP do site atacante. Muitos proprietários de sites são afetados por isso, conforme evidenciado por esta pergunta de suporte da Cloudflare . Notavelmente, até mesmo esse problema chegou a um dos links nos documentos do SvelteKit.
Não é aparente que o ataque afete os plugins do WordPress, como @ColinQuarello demonstrou. Contas recém-provisionadas também são afetadas mesmo sem conteúdo carregado no site.
A partir disso, podemos supor que isso pode ser um problema de todo o sistema para o provedor de hospedagem.
@GoDaddyHelp @GoDaddy 302 redirecionamentos estão acontecendo de seus balanceadores de carga para sites de spam/pornografia na infraestrutura de hospedagem compartilhada. Eu provisionei uma nova conta e recebi imediatamente um redirecionamento 302 quando não havia conteúdo no site . Os cabeçalhos também pareciam forjados. Isso é sério.
— Colin Quarello (@ColinQuarello) 19 de dezembro de 2022
Uma vez que um usuário está nas mãos do invasor por estar no site do invasor, ele pode sucumbir à engenharia social, phishing etc. Somente os golpes de phishing custam às empresas e ao público em geral bilhões por ano.
Do lado humano, esse incidente pode levar a uma perda de confiança do usuário não apenas para GoDaddy, mas também para pequenas e médias empresas que dependem da plataforma para hospedar o site de sua empresa, loja de comércio eletrônico etc. a confiança é mais importante do que nunca para promover o crescimento do usuário e a expansão dos negócios. Segundo estudo feito pela DigiCert , "84% dos consumidores mudariam para um concorrente se perdessem a confiança na empresa". Um único incidente, muito menos ocorrências repetidas, degradará a confiança do usuário mais rapidamente do que uma empresa pode recuperá-la rapidamente.
A partir de 2022-12-20, GoDaddy está trabalhando neste incidente (INC-5492776). Não tenho certeza se este é um número de rastreamento de incidente interno ou algo que os clientes da GoDaddy podem acessar.
Estamos cientes do problema e trabalhando para corrigi-lo agora. Posso garantir que nossas equipes estão trabalhando diligentemente para restaurar o serviço o mais rápido possível. ^CG
— Ajuda GoDaddy (@GoDaddyHelp) 20 de dezembro de 2022
Anteriormente, suspeitava-se que fosse um problema relacionado ao firewall, mas isso foi refutado. Os engenheiros e usuários da GoDaddy descobriram que esse problema ocorre independentemente das configurações do firewall.
💎 Obrigado por reservar um tempo para conferir esta postagem. Para mais conteúdo como este, acesse meu blog atual. Sinta-se à vontade para entrar em contato comigo no LinkedIn e me seguir no Github .