O grupo de hackers da Coreia do Norte, chamado Lazarus, explorou uma vulnerabilidade zero-day no Google Chrome, registrada como
CVE-2024-4947
, por meio de um falso jogo de finanças descentralizadas (DeFi) que mirava indivíduos do espaço de criptomoedas.
A Kaspersky descobriu os ataques em 13 de maio de 2024 e reportou a falha zero-day do Chrome para o Google.
O Google emitiu uma correção para o
CVE-2024-4947
em 25 de maio, com a versão do Chrome 125.0.6422.60/.61.
A Kaspersky descobriu a campanha, que começou em fevereiro de 2024, após detectar uma nova variante do malware "Manuscrypt" no computador pessoal de um de seus clientes na Rússia.
O Lazarus tem usado o Manuscrypt há anos, mas os pesquisadores ficaram intrigados com o escopo de ataque atípico do agente de ameaça, que aparentemente incluía indivíduos aleatórios.
Telemetrias adicionais mostraram que o Google Chrome foi explorado antes da detecção do novo payload do Manuscrypt, com a exploração originando-se do site "detankzone[.]com".
Este site promovia um jogo multiplayer online battle arena (MOBA) baseado em NFT sobre tanques, chamado DeTankZone.
O Lazarus promoveu o jogo intensamente através de campanhas de publicidade em plataformas de mídia social como X, e-mails de spear-phishing e contas premium do LinkedIn usadas em ataques diretos contra alvos de alto valor.
Ao baixar e fazer engenharia reversa do jogo, a Kaspersky descobriu que o jogo era baseado no código-fonte roubado de um jogo legítimo chamado DeFiTankLand, que o Lazarus simplesmente renomeou para seus propósitos.
O download do ZIP de 400MB é iniciado como esperado, mas não funciona após a tela de login/registro, pois a infraestrutura de backend para o jogo foi desligada.
Além disso, não realizou nenhuma ação maliciosa no sistema do alvo.
A exploração no Google Chrome acontece no próprio site detankzone[.]com, que continha um script oculto (index.tsx) projetado para acionar um exploit para o
CVE-2024-4947
, um tipo de confusão na V8, o motor de JavaScript do Chrome.
O script de exploração do Lazarus corrompeu a memória do Chrome ao alavancar o compilador JIT do app, Maglev, sobrescrevendo seções que eventualmente lhes deram acesso ao espaço de endereço completo do processo do Chrome.
Nesta fase, os atacantes podiam acessar cookies, tokens de autenticação, senhas salvas e histórico de navegação.
A sandbox da V8 no Chrome isola a execução do JavaScript do resto do sistema, então o Lazarus usou uma segunda falha na V8 para escapar dela e alcançar a execução remota de código, executando shellcode na memória do sistema.
"Essa questão (330404819) foi submetida e corrigida em março de 2024", explica a Kaspersky sobre a falha de escape da V8.
Não se sabe se foi uma colisão de bug e os atacantes a descobriram primeiro e inicialmente a exploraram como uma vulnerabilidade zero-day, ou se foi inicialmente explorada como uma vulnerabilidade de 1-day.
O shellcode usado pelo Lazarus serve como uma ferramenta de reconhecimento, ajudando os atacantes a determinar se a máquina comprometida vale a pena continuar o ataque.
Ele coletou informações da CPU, BIOS e SO, realizou verificações anti-VM e anti-debugging e enviou as informações para o servidor de comando e controle (C2) do Lazarus.
A Kaspersky não teve a chance de examinar os passos subsequentes do ataque, pois, no momento de sua análise, o Lazarus havia removido seu exploit do site isca.
No entanto, baseado nas pessoas que a campanha maliciosa visava e seu histórico passado, o objetivo final do ataque provavelmente era roubar criptomoedas.
Publicidade
Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...