top of page

Pacote malicioso no npm modifica biblioteca 'ethers' local para lançar ataques de shell reverso

  • Foto do escritor: Cyber Security Brazil
    Cyber Security Brazil
  • 26 de mar.
  • 2 min de leitura

Pesquisadores de segurança cibernética descobriram dois pacotes maliciosos no repositório npm que têm como objetivo infectar outro pacote instalado localmente, evidenciando a evolução contínua dos ataques à cadeia de suprimentos de software, especialmente no ecossistema de código aberto.


Os pacotes em questão são ethers-provider2 e ethers-providerz. O primeiro foi baixado 73 vezes desde sua publicação em 15 de março de 2025. Já o segundo, aparentemente removido pelo próprio autor do malware, não registrou nenhum download.


“Eles funcionavam como simples downloaders, com um payload malicioso habilmente oculto,” explicou Lucija Valentić, pesquisadora da ReversingLabs, em um relatório divulgado.


A parte mais crítica da ameaça estava na segunda fase do ataque: os pacotes modificavam o pacote legítimo ethers, instalado localmente, adicionando um novo arquivo com código malicioso. Esse arquivo alterado ativava um reverse shell (shell reverso).


Essa técnica representa uma nova escalada nas táticas dos hackers, pois mesmo que os pacotes maliciosos sejam desinstalados, o código malicioso permanece ativo por estar embutido na biblioteca legítima. Pior ainda: se um usuário desavisado remover o pacote ethers, mas mantiver o ethers-provider2, ele poderá ser reinfectado ao reinstalá-lo no futuro.

A análise do ethers-provider2 revelou que trata-se, na prática, de uma versão trojanizada do popular pacote ssh2, contendo um código malicioso no arquivo install.js. Esse script baixa um segundo payload de um servidor remoto (5.199.166[.]1:31337/install), grava temporariamente o arquivo e o executa. Logo após, o arquivo é apagado do sistema para não deixar rastros.


Esse segundo estágio inicia um loop contínuo para verificar se o pacote ethers está presente localmente. Quando detectado ou instalado, o código malicioso substitui o arquivo provider-jsonrpc.js por uma versão falsa, que carrega um terceiro estágio do mesmo servidor remoto. Esse novo payload estabelece uma conexão reverse shell com o servidor do hacker via SSH, permitindo controle remoto da máquina.


“Essa conexão vira um shell reverso assim que o servidor envia uma mensagem personalizada,” explicou Valentić. “Mesmo que o pacote malicioso seja removido, o cliente infectado ainda pode ser usado, oferecendo persistência para o invasor.”


É importante ressaltar que o pacote oficial ethers no repositório npm não foi comprometido. As alterações ocorrem apenas localmente, após a instalação. O segundo pacote, ethers-providerz, opera de forma similar, tentando modificar arquivos relacionados ao pacote @ethersproject/providers. Acredita-se, com base no código-fonte, que o alvo seria o arquivo loader.js.


Essas descobertas destacam as novas formas com que hackers estão infiltrando e mantendo malwares em sistemas de desenvolvedores, reforçando a importância de verificar cuidadosamente qualquer pacote de código aberto antes de instalá-lo.


“Apesar do número baixo de downloads, esses pacotes são perigosos e altamente maliciosos,” alertou Valentić. “Se forem bem-sucedidos, corrompem o pacote ethers local e mantêm presença ativa no sistema, mesmo após sua remoção.”


Via - THN

 
 
 

Comentarios


Parceiros

Cupom 20% de desconto - CYBERSECBRA20 

bottom of page