Hackers norte-coreanos apoderam-se da biblioteca Axios num ataque sofisticado à cadeia de abastecimento com alvo nas criptomoedas

14 min de leitura
Hackers norte-coreanos apoderam-se da biblioteca Axios num ataque sofisticado à cadeia de abastecimento com alvo nas criptomoedas

Suspeitos de serem hackers norte-coreanos levaram a cabo um dos ataques à cadeia de abastecimento mais sofisticados do ponto de vista operacional de que há memória recente, comprometendo o Axios, uma biblioteca JavaScript descarregada cerca de 100 milhões de vezes por semana. O ataque, que durou cerca de três horas na madrugada de 31 de março, injetou código malicioso em software utilizado por milhares de empresas dos setores da saúde, das finanças, das bolsas de criptomoedas e da tecnologia. Investigadores de segurança estimam que as versões envenenadas tenham sido descarregadas por cerca de três por cento da base de utilizadores da biblioteca, expondo potencialmente centenas de milhares de sistemas a trojans de acesso remoto concebidos para roubar criptomoedas e credenciais empresariais.

Índice
  1. Milhões de programadores expostos enquanto atacantes envenenam repositório de código popular
  2. A mecânica de um comprometimento da cadeia de abastecimento
  3. Malware multiplataforma entrega uma backdoor persistente
  4. A máquina de receita digital de Pyongyang
  5. Uma cascata de vulnerabilidades na cadeia de abastecimento
  6. Técnicas de evasão e contramedidas forenses
  7. Proteger a cadeia de abastecimento de software
  8. Pontos-chave

O Axios funciona como um cliente HTTP baseado em promises que permite pedidos assíncronos a APIs tanto a partir do Node.js como dos navegadores, o que o torna um componente fundamental das aplicações web modernas. Empresas que vão desde prestadores de cuidados de saúde a instituições financeiras dependem da biblioteca para simplificar a construção de sites e o intercâmbio de dados. Algumas empresas de criptomoedas e tecnológicas ativas no setor dos ativos digitais também utilizam o software, o que as torna alvos particularmente valiosos para as operações cibernéticas geradoras de receita de Pyongyang. A adoção generalizada do Axios em ambientes empresariais significa que o comprometimento cria riscos em cascata para dependências a jusante e serviços integrados.

O Threat Intelligence Group da Google atribuiu formalmente o incidente ao UNC1069, um ator de ameaça norte-coreano com motivações financeiras ativo pelo menos desde 2018. O grupo ganhou reputação por visar bolsas de criptomoedas, plataformas de finanças descentralizadas e empresas de capital de risco, a fim de financiar os programas nuclear e de mísseis de Pyongyang. Segundo a Mandiant, a empresa de inteligência detida pela Google, esta representa a mais recente escalada na campanha da Coreia do Norte para transformar em arma a cadeia de abastecimento global de software contra alvos económicos de elevado valor.

Publicidade

Charles Carmakal, diretor de tecnologia da Mandiant, explicou a natureza de longo prazo da ameaça.

Prevemos que tentem utilizar as credenciais e o acesso aos sistemas que obtiveram recentemente neste ataque à cadeia de abastecimento de software para visar empresas e roubar-lhes criptomoedas. É provável que sejam necessários meses para avaliar o impacto a jusante desta campanha.

John Hammond, investigador de segurança na Huntress, afirmou que a sua empresa já identificou cerca de 135 dispositivos comprometidos pertencentes a cerca de 12 empresas, embora espere que esta represente apenas a primeira vaga de descobertas, à medida que as organizações concluem as auditorias forenses.

A mecânica de um comprometimento da cadeia de abastecimento

O ataque começou quando os hackers assumiram o controlo da conta npm de @jasonsaayman, o principal responsável pela manutenção da biblioteca Axios. Em vez de explorarem vulnerabilidades zero-day sofisticadas, os atores de ameaça utilizaram um token de acesso de longa duração para contornar controlos de segurança modernos, incluindo fluxos de autenticação baseados em OpenID Connect. Isto permitiu-lhes publicar duas versões do software com trojan, a 1.14.1 e a 0.30.4, diretamente no registo do Node Package Manager, sem desencadear alertas de segurança padrão nem exigir autenticação multifator.

Hammond assinalou uma falha de configuração crítica que possibilitou o ataque. Mesmo no ramo v1.x, onde a publicação fiável por OIDC (OIDC Trusted Publishing) estava configurada, o fluxo de trabalho de publicação continuava a passar o NPM_TOKEN como variável de ambiente a par das credenciais OIDC. Quando ambos estão presentes, o npm utiliza o token. Isto significava que o token de longa duração era, na prática, o método de autenticação de todos os publicadores, independentemente da configuração OIDC. Esta falha arquitetural permitiu aos atacantes contornar as proteções, mesmo tendo o responsável ativado a autenticação multifator nas suas contas, demonstrando como mecanismos de autenticação legados podem minar os quadros de segurança modernos.

Os atacantes demonstraram preparação cuidadosa e paciência. Dezoito horas antes do assalto principal, publicaram uma versão limpa de uma dependência fantasma chamada plain-crypto-js, para criar um histórico de publicação e evitar suspeitas por serem uma conta sem histórico. Vinte minutos antes do primeiro lançamento malicioso do Axios, lançaram a versão armadilhada desta dependência, que continha um script de pós-instalação concebido para ser executado automaticamente quando os programadores instalassem ou atualizassem a biblioteca comprometida. O segundo lançamento com backdoor surgiu apenas 39 minutos depois, indicando que o grupo tinha automatizado o seu pipeline de implementação para maximizar a distribuição dentro da estreita janela de oportunidade.

Durante o ataque, os responsáveis pela manutenção enfrentaram dificuldades significativas para recuperar o controlo. Numa issue pública do GitHub, um colaborador afirmou que não conseguia revogar o acesso da conta responsável pela publicação maliciosa, observando que as permissões do atacante eram superiores às suas. Isto criou uma corrida contra o tempo, com os hackers a manterem os direitos de publicação enquanto a comunidade de desenvolvimento se esforçava por conter os danos. O NPM acabou por retirar as versões maliciosas três horas após o seu lançamento inicial e colocou o pacote plain-crypto-js em suspensão de segurança, substituindo-o por um stub de segurança uma hora depois.

Publicidade

Malware multiplataforma entrega uma backdoor persistente

Uma vez instalada, a dependência maliciosa lançava um dropper JavaScript ofuscado chamado SILKBELL, que obtinha payloads específicos de cada plataforma a partir de um servidor remoto de comando e controlo em sfrclak.com. Nos sistemas Windows, o malware entregava ferramentas baseadas em PowerShell capazes de executar comandos arbitrários. Os utilizadores de macOS recebiam um binário C++ Mach-O, enquanto as instalações Linux eram visadas com uma backdoor em Python. Os investigadores de segurança identificaram este malware de segunda fase como WAVESHAPER.V2, uma evolução de uma backdoor anteriormente atribuída ao UNC1069 em ataques ao setor das criptomoedas que remontam a 2023.

A arquitetura técnica do ataque revela furtividade deliberada e conhecimento das plataformas. Em vez de modificarem diretamente o código-fonte do Axios, o que seria visível em repositórios públicos e desencadearia alertas de revisão de código, os hackers inseriram a sua funcionalidade maliciosa através de uma cadeia de dependências. «Não há uma única linha de código malicioso dentro do próprio axios, e é exatamente isso que torna este ataque tão perigoso», notaram os investigadores da StepSecurity. O pacote plain-crypto-js era executado através de um hook postinstall no seu ficheiro package.json, permitindo ao malware correr silenciosamente durante o processo de instalação antes de eliminar os seus próprios artefactos e substituir os metadados do pacote por uma versão limpa.

O WAVESHAPER.V2 funciona enviando sinais (beaconing) para a sua infraestrutura de comando e controlo a cada 60 segundos, aceitando URLs de C2 dinâmicos através de argumentos de linha de comandos. Este design permite aos atacantes rodar a infraestrutura sem reimplantar o malware. A backdoor suporta quatro funções principais: terminar processos em execução, enumerar diretórios com metadados detalhados dos ficheiros, incluindo datas e tamanhos, executar comandos de sistema através de linguagens de scripting nativas, como o AppleScript no macOS ou comandos shell no Linux, e injetar binários arbitrários em processos em execução. Uma análise dos Elastic Security Labs revelou que o binário para macOS faz referência a caminhos de compilação de programador que remetem diretamente para o módulo webT do BlueNoroff, de campanhas anteriores de malware RustBucket e Hidden Risk, reforçando a atribuição à Coreia do Norte.

Publicidade

A máquina de receita digital de Pyongyang

As operações de hacking da Coreia do Norte transformaram-se num mecanismo de financiamento primordial do seu programa de armas nucleares sob sanções. Segundo relatórios das Nações Unidas e estimativas da Casa Branca divulgadas em 2023, cerca de metade do financiamento do desenvolvimento de mísseis de Pyongyang provém de ciberfurtos, com os hackers a roubarem milhares de milhões de dólares a bancos e empresas de criptomoedas nos últimos anos. Só no ano passado, agentes norte-coreanos roubaram 1,5 mil milhões de dólares em criptomoedas num único assalto recorde, demonstrando a sua capacidade de comprometer alvos de elevado valor em grande escala.

Ben Read, diretor de informação estratégica sobre ameaças na Wiz, explicou que a Coreia do Norte atua de forma diferente de outros atores estatais.

A Coreia do Norte não se preocupa com a sua reputação nem com o facto de vir a ser identificada, por isso, embora este tipo de operações seja muito ruidoso e muito visível, é um preço que estão dispostos a pagar.

Esta tolerância ao risco permite a Pyongyang levar a cabo ataques descarados à cadeia de abastecimento que outras nações poderiam evitar devido a potenciais consequências diplomáticas ou a preocupações de atribuição. O comprometimento do Axios segue um padrão estabelecido há três anos, quando agentes norte-coreanos alegadamente infiltraram a 3CX, um fornecedor de software utilizado por empresas de saúde e cadeias hoteleiras para chamadas de voz e vídeo.

John Hultquist, analista-chefe do Google Threat Intelligence Group, sublinhou o foco específico do grupo nos ativos digitais.

Os hackers norte-coreanos têm grande experiência em ataques à cadeia de abastecimento, que historicamente utilizaram para roubar criptomoedas. A dimensão total deste incidente ainda não é clara, mas, dada a popularidade do pacote comprometido, esperamos que tenha impactos de grande alcance.

O UNC1069 já visou anteriormente empresas de tecnologia financeira, utilizando falsas reuniões de Zoom, táticas de engenharia social e várias famílias de malware distintas, demonstrando um foco persistente e em evolução no ecossistema das criptomoedas.

Uma cascata de vulnerabilidades na cadeia de abastecimento

O incidente do Axios surge no meio de um aumento preocupante de ataques à cadeia de abastecimento que visam o ecossistema de software de código aberto. No último mês, as equipas de segurança responderam a um efeito dominó de comprometimentos, incluindo ataques ao Trivy, uma ferramenta popular de análise de segurança, ao LiteLLM, uma biblioteca Python amplamente utilizada para integração de modelos de IA, e à Telnyx, uma plataforma de comunicações. Embora a Google tenha confirmado que o ataque ao Axios não está relacionado com os recentes problemas na cadeia de abastecimento do TeamPCP, cada violação bem-sucedida entrega aos atacantes novas credenciais e acesso inicial a repositórios adicionais, criando um ciclo de comprometimento que se autoalimenta.

Carmakal alertou que a recente vaga de ataques gerou um enorme inventário de segredos roubados. «Os segredos roubados nas últimas duas semanas vão permitir mais ataques à cadeia de abastecimento de software, comprometimentos de ambientes de software como serviço que levam a comprometimentos de clientes a jusante, eventos de ransomware e extorsão, e assaltos a criptomoedas nos próximos dias, semanas e meses», explicou. «Temos conhecimento de centenas de milhares de credenciais roubadas. Há vários atores com motivações diversas por trás destes ataques. O raio de impacto do ataque à cadeia de abastecimento do axios npm de ontem é amplo e estende-se a outros pacotes populares que têm dependências dele.»

Tom Hegel, investigador sénior na SentinelOne, sublinhou a natureza invisível da ameaça.

Sempre que carrega um site, consulta o saldo da sua conta bancária ou abre uma aplicação no telemóvel, há uma boa probabilidade de o Axios estar a correr em algum ponto em segundo plano para que isso funcione. Não precisa de clicar em nada nem de cometer um erro. O software em que já confia fez isso por si.

Esta observação sublinha como os ataques à cadeia de abastecimento exploram a confiança implícita que os utilizadores depositam em componentes de software estabelecidos, contornando a formação tradicional em consciencialização de segurança e as proteções de endpoints.

Publicidade

Técnicas de evasão e contramedidas forenses

Os atacantes implementaram medidas antiforenses sofisticadas que complicam a resposta a incidentes e a deteção. Após a execução, o malware não só eliminou os seus próprios ficheiros de instalação como também manipulou o reporte de versões para enganar os defensores. O pacote malicioso plain-crypto-js reportava-se como versão 4.2.0 em vez de 4.2.1, criando confusão nas equipas de segurança que verificavam a integridade do pacote. Esta técnica de falsificação de versão visava convencer os administradores de que os seus sistemas estavam a correr software legítimo, quando na verdade tinham instalado a iteração comprometida.

Tomislav Pericin, arquiteto-chefe de software na ReversingLabs, descreveu o ataque como um modelo para operações futuras e não como um incidente isolado.

O nível de sofisticação operacional aqui documentado — incluindo credenciais de responsáveis pela manutenção comprometidas, payloads pré-preparados para três sistemas operativos, ambos os ramos de lançamento atingidos em menos de 40 minutos e autodestruição forense incorporada — reflete um ator de ameaça que planeou isto como uma operação escalável. Se esta campanha está agora a aparecer no PyPI e no NuGet, isso é coerente com o que a mecânica do ataque já sugere: o objetivo era o máximo alcance junto dos programadores.

As organizações têm agora de auditar não apenas as dependências npm, mas todos os gestores de pacotes que alimentam os seus pipelines de compilação. Hammond descreveu o momento como particularmente preocupante, dadas as atuais tendências de desenvolvimento rumo à automação. Observou que o hack foi perfeitamente cronometrado, tendo em conta a rápida adoção de agentes de IA que geram software nas organizações sem qualquer revisão ou salvaguardas. O risco estende-se para além dos utilizadores diretos do Axios a qualquer organização cujas ferramentas de desenvolvimento resolvem dependências automaticamente. Isaac Evans, fundador da Semgrep, salientou que os programadores que fixaram as suas versões, mantiveram lockfiles e seguiram a higiene padrão ainda podem ter sido atingidos, porque o seu ambiente de desenvolvimento integrado puxou a dependência nos bastidores.

Proteger a cadeia de abastecimento de software

As equipas de segurança de vários setores estão agora a esforçar-se por avaliar a exposição e remediar os sistemas comprometidos. As organizações que utilizam o Axios devem auditar imediatamente as suas árvores de dependências em busca das versões 1.14.1 e 0.30.4, fazer downgrade para versões verificadas como seguras, como a 1.14.0 ou a 0.30.3, e rodar todas as credenciais acessíveis durante a janela de instalação. Os indicadores técnicos de comprometimento incluem a presença de plain-crypto-js nos diretórios node_modules, ligações de rede a sfrclak.com (endereço IP 142.11.206.73) e processos suspeitos em diretórios temporários como /Library/Caches/com.apple.act.mond em sistemas macOS.

As medidas de mitigação imediatas incluem fixar o Axios em versões seguras conhecidas nos ficheiros package-lock.json para evitar atualizações acidentais, verificar a presença da dependência maliciosa, terminar quaisquer processos maliciosos identificados, bloquear o domínio de comando e controlo identificado nos perímetros de rede, isolar os sistemas afetados das redes de produção e rodar todos os segredos e credenciais que possam ter sido expostos durante a janela de comprometimento. As organizações devem também rever os registos de acesso em busca de utilizações não autorizadas de chaves de API ou contas de serviço que possam ter sido recolhidas pelo malware.

Ilkka Turunen, CTO de campo na Sonatype, sublinhou as questões fundamentais de confiança expostas por este incidente. «Este ataque mostra que os hackers estão agora a explorar a confiança que as pessoas depositam no código, e não no próprio código», explicou. «A capacidade maliciosa foi introduzida através de uma dependência preparada e concebida para apagar os seus próprios rastos, o que tornou o ataque mais difícil de detetar e mais lento de compreender. Isto não é apenas malware, mostra um manual de atuação mais deliberado e maduro.» Mike Puglia, responsável de segurança na Kaseya, observou que os incidentes constituem mais uma prova da fragilidade do ecossistema mundial de software, onde comprometer uma única conta pode expor dezenas de milhares de organizações em poucas horas.

Publicidade

Pontos-chave

  • O grupo de ameaça norte-coreano UNC1069 comprometeu a biblioteca JavaScript Axios, que recebe 100 milhões de descarregamentos semanais e está presente em cerca de 80% dos ambientes de cloud
  • As versões maliciosas 1.14.1 e 0.30.4 estiveram disponíveis durante cerca de três horas a 31 de março, tendo sido descarregadas por cerca de 3% da base de utilizadores, o que representa potencialmente 600 000 descarregamentos
  • O ataque utilizou uma dependência fantasma chamada plain-crypto-js para implementar o WAVESHAPER.V2, uma backdoor multiplataforma capaz de infetar sistemas Windows, macOS e Linux
  • A Google Mandiant espera que o grupo utilize as credenciais roubadas em operações de roubo de criptomoedas de longo prazo para financiar os programas nuclear e de mísseis da Coreia do Norte
  • O malware apresentava capacidades antiforenses avançadas, incluindo autoleliminação e falsificação de versão para se reportar como 4.2.0 em vez de 4.2.1, a fim de evitar a deteção
  • As organizações devem auditar as árvores de dependências, rodar todas as credenciais, bloquear o domínio de C2 sfrclak.com e o IP 142.11.206.73 e fazer downgrade imediato para versões seguras do Axios
  • O comprometimento ocorreu através de um token de acesso de longa duração que contornou os controlos de autenticação OIDC, destacando a necessidade de limpeza de credenciais legadas
Partilhar este artigo

Também pode gostar