Um pacote malicioso enviado ao registro npm foi encontrado implantando um sofisticado trojan de acesso remoto em máquinas Windows comprometidas.
O pacote, nomeado "oscompatible", foi publicado em 9 de janeiro de 2024, atraindo um total de 380 downloads antes de ser retirado.
O oscompatible incluía alguns "binários estranhos", segundo a empresa de segurança da cadeia de fornecimento de software Phylum, incluindo um único arquivo executável, uma biblioteca de links dinâmicos (DLL) e um arquivo DAT criptografado, junto com um arquivo JavaScript.
Este arquivo JavaScript ("index.js") executa um script em lote "autorun.bat" mas apenas após executar uma verificação de compatibilidade para determinar se a máquina alvo é executada no Microsoft Windows.
Se a plataforma não for Windows, ele exibe uma mensagem de erro para o usuário, dizendo que o script está sendo executado em Linux ou em um sistema operacional não reconhecido, instando-os a executá-lo no "Windows Server OS".
O script em lote, por sua vez, verifica se ele tem privilégios de administrador, e se não, executa um componente legítimo do Microsoft Edge chamado "cookie_exporter.exe" por meio de um comando PowerShell.
Tentar executar o binário acionará um prompt de Controle de Conta de Usuário (UAC) pedindo ao alvo para executá-lo com credenciais de administrador.
Ao fazer isso, o ator da ameaça realiza a próxima fase do ataque ao executar a DLL ("msedge.dll") aproveitando uma técnica chamada sequestro de ordem de busca de DLL.
A versão trojanizada da biblioteca é projetada para descriptografar o arquivo DAT ("msedge.dat") e lançar outra DLL chamada "msedgedat.dll", que, por sua vez, estabelece conexões com um domínio controlado pelo ator denominado "kdark1[.]com" para recuperar um arquivo ZIP.
O arquivo ZIP vem equipado com o software de desktop remoto AnyDesk, além de um trojan de acesso remoto ("verify.dll") capaz de buscar instruções de um servidor de comando e controle (C2) via WebSockets e coletar informações sensíveis do host.
Ele também "instala extensões do Chrome para Preferências Seguras, configura o AnyDesk, esconde a tela e desabilita o desligamento do Windows, [e] capta eventos de teclado e mouse", disse a Phylum.
Embora "oscompatible" pareça ser o único módulo npm empregado como parte da campanha, a evolução é mais uma vez um sinal de que atores de ameaças estão cada vez mais visando ecossistemas de software de código aberto (OSS) para ataques à cadeia de fornecimento.
"Vindo do lado binário, o processo de descriptografar dados, usar um certificado revogado para assinar, puxar outros arquivos de fontes remotas e tentar se disfarçar como um processo padrão de atualização do Windows ao longo do caminho é relativamente sofisticado em comparação com o que normalmente vemos em ecossistemas OSS", disse a empresa.
A divulgação ocorre quando a empresa de segurança na nuvem Aqua revelou que 21,2% dos 50.000 pacotes npm mais baixados estão desatualizados, expondo os usuários a riscos de segurança.
Em outras palavras, os pacotes desatualizados são baixados aproximadamente 2.1 bilhões de vezes semanalmente.
Isso inclui repositórios GitHub arquivados e excluídos associados aos pacotes, bem como aqueles que são mantidos sem um repositório visível, histórico de commit e rastreamento de problemas.
"Esta situação se torna crítica quando os mantenedores, em vez de resolver as falhas de segurança com patches ou atribuições CVE, optam por descontinuar os pacotes afetados", disseram os pesquisadores de segurança Ilay Goldman e Yakir Kadkoda.
"O que torna isso particularmente preocupante é que, às vezes, esses mantenedores não marcam oficialmente o pacote como descontinuado no npm, deixando uma lacuna de segurança para os usuários que podem permanecer inconscientes de potenciais ameaças."
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...