Backdoor Stealer é encontrado em 3 versões do Node-IPC e mira segredos de desenvolvedores
15 de Maio de 2026

Pesquisadores de cibersegurança estão em alerta com o que foi descrito como “atividade maliciosa” em versões recém-publicadas do pacote node-ipc.

Segundo a Socket e a StepSecurity, três versões diferentes do pacote npm foram confirmadas como maliciosas:

[email protected]
[email protected]
[email protected]

“A análise inicial indica que [email protected], [email protected] e [email protected] contêm comportamento ofuscado de stealer/backdoor”, afirmou a Socket.

“O malware parece identificar o ambiente do host, enumerar e ler arquivos locais, compactar e dividir os dados coletados, envolver o payload em um envelope criptográfico e tentar a exfiltração por meio de um endpoint de rede selecionado com base em lógica de DNS/endereço.”

A StepSecurity informou que o payload, fortemente ofuscado, é acionado quando o pacote é carregado em tempo de execução e tenta exfiltrar um amplo conjunto de segredos de desenvolvedores e da cloud para um servidor externo de command and control (C2).

Entre os alvos estão 90 categorias de credenciais, incluindo Amazon Web Services, Google Cloud, Microsoft Azure, chaves SSH, tokens do Kubernetes, configurações do GitHub CLI, definições do Claude AI e do ambiente Kiro IDE, estado do Terraform, senhas de banco de dados, histórico de shell e muito mais.

Os dados coletados são então compactados em um arquivo GZIP e enviados para o domínio “sh.azurestaticprovider[.]net”.

As três versões foram publicadas por uma conta chamada “atiertant”, que não tem ligação com o autor original do pacote, “riaevangelist”.

Embora “atiertant” apareça na lista de mantenedores, a conta não tinha histórico anterior de publicações relacionadas ao node-ipc.

A atualização anterior do pacote havia sido feita em agosto de 2024.

O fato de um pacote inativo, mas com muitos downloads, ter sido comprometido após um intervalo de 21 meses indica que as credenciais de “atiertant” podem ter sido comprometidas recentemente ou que a conta foi adicionada de propósito como mantenedora para publicar as versões maliciosas.

Um ponto importante dessa atividade é que ela não depende de nenhum hook de ciclo de vida do npm, como scripts preinstall, install ou postinstall.

Em vez disso, o payload malicioso foi anexado como uma Immediately Invoked Function Expression (IIFE) ao final de “node-ipc.cjs”.

Isso faz com que o malware seja executado de forma automática sempre que houver um require('node-ipc').

A anomalia não para por aí.

O payload realiza uma verificação de impressão digital com SHA-256 e compara o resultado a um hash codificado em oito fragmentos ofuscados de tabela incorporados ao código antes de prosseguir com a enumeração do sistema e a coleta abrangente de credenciais.

“Isso significa que a versão 12.0.1 fica totalmente inerte em qualquer máquina cujo caminho principal do módulo não gere o hash-alvo”, disse o pesquisador da StepSecurity Sai Likhith.

“O atacante sabe exatamente qual projeto ou desenvolvedor está sendo visado e pré-calculou o hash do ponto de entrada antes da publicação.

As versões 9.x não têm essa proteção e executam o payload completo em qualquer sistema que as carregue.”

O malware também incorpora um segundo canal de exfiltração, além de fazer um POST via HTTPS para o falso domínio da Azure com os dados roubados compactados.

Nesse caso, ele codifica blocos do arquivo como um registro DNS TXT depois de substituir o resolvedor DNS do sistema pelo Google Public DNS, como forma de contornar controles locais baseados em DNS.

“Primeiro, ele resolve sh.azurestaticprovider.net usando 1.1.1.1 como opção principal ou 8.8.8.8 como fallback para obter o IP do C2”, disse a StepSecurity.

“Depois, redireciona o resolvedor diretamente para o IP do C2 para todas as consultas de exfiltração.”

“O envio direto ao C2 via DNS é uma técnica notável de evasão.

Como as consultas de exfiltração nunca passam por resolvedores DNS públicos, não há atividade observável do bt.node.js nos registros públicos de DNS.

Organizações que dependem apenas de logs de DNS por meio de resolvedores corporativos não veriam esse tráfego.”

Esta não é a primeira vez que o pacote npm incorpora funcionalidades maliciosas.

Em março de 2022, o mantenedor do pacote introduziu deliberadamente recursos destrutivos nas versões 10.1.1 e 10.1.2, sobrescrevendo arquivos em sistemas localizados na Rússia ou na Belarus como forma de protesto após a invasão militar da Ucrânia pela Rússia.

Duas versões posteriores, 11.0.0 e 11.1.0, incluíram a dependência “peacenotwar”, também publicada pelo mesmo mantenedor como um “protesto não violento contra a agressão da Rússia”.

“O incidente mais recente parece envolver uma republicação suspeita ou a reintrodução de código malicioso em versões de um pacote conhecido, e não uma tentativa de typosquatting”, afirmou a Socket.

A recomendação aos usuários é remover as versões comprometidas do node-ipc e reinstalar uma versão comprovadamente limpa, como 9.2.1 e 12.0.0.

Também é importante assumir comprometimento e rotacionar credenciais e segredos, auditar a atividade de publicação no npm para identificar pacotes acessíveis com os tokens rotacionados, revisar logs de execução dos workflows em busca de atividades suspeitas, verificar os logs da cloud para saber se houve ações não autorizadas por identidades IAM cujas credenciais estavam disponíveis durante a janela de comprometimento e bloquear o tráfego de saída para o domínio do C2.

Publicidade

Traçamos um caminho para você ir do zero ao avançado em hacking

Conheça a Solyd One, e tenha acesso a todos os cursos de segurança ofensiva da Solyd, todas as certificações práticas, incluindo a SYCP, 2 CTFs anuais com prêmios de até 30 mil reais, dezenas de laboratórios realísticos, suporte, comunidade e muito mais. Saiba mais...