Pacote NPM malicioso rouba cripto de carteiras Atomic e Exodus

Imagem do autor do SempreUpdate Jardeson Márcio
Escrito por
Jardeson Márcio
Jardeson Márcio é Jornalista e Mestre em Tecnologia Agroalimentar pela Universidade Federal da Paraíba. Com 8 anos de experiência escrevendo no SempreUpdate, Jardeson é um especialista...

Descubra como um pacote NPM falso rouba criptomoedas e aprenda a proteger seus projetos e ativos digitais.

Uma simples dependência em um projeto Node.js pode se transformar em uma porta de entrada para ataques cibernéticos capazes de causar enormes prejuízos. Esse é exatamente o caso do pacote npm malicioso chamado nodejs-smtp, que foi publicado no repositório oficial do NPM e tinha como alvo direto usuários das carteiras de criptomoedas Atomic Wallet e Exodus.

Esse episódio serve como um alerta para desenvolvedores e entusiastas de criptomoedas: o ecossistema NPM, embora poderoso e amplamente utilizado, também pode esconder ameaças sofisticadas. Neste artigo, vamos analisar o caso do nodejs-smtp, entender como o ataque funcionava, explorar o conceito de ataque à cadeia de suprimentos (supply chain attack) e, principalmente, apresentar medidas práticas para que desenvolvedores e usuários de carteiras digitais possam se proteger.

Ao final, você terá uma visão clara de como esse tipo de ameaça opera e quais passos adotar para fortalecer sua segurança digital.

Imagem de hacker
Imagem: Bleeping Computer

O que aconteceu: O caso do pacote nodejs-smtp

O pacote nodejs-smtp foi publicado no NPM se passando por uma biblioteca legítima, imitando o popular Nodemailer, uma ferramenta usada para envio de e-mails em aplicações Node.js.

Com descrições copiadas e aparência convincente, o malware buscava enganar desenvolvedores desatentos. Embora não tenha atingido grandes números de downloads antes de ser identificado e removido, seu impacto potencial era grave, pois o código malicioso era projetado para atacar diretamente usuários finais.

O principal alvo eram os aplicativos Atomic Wallet e Exodus, populares entre investidores de criptomoedas. Ou seja, mesmo quem nunca ouviu falar de Node.js poderia ser prejudicado indiretamente, caso utilizasse esses softwares.

Como o ataque funciona: Uma análise técnica simplificada

Disfarce e engenharia social

Os atacantes usaram uma técnica clássica: engenharia social. Eles copiaram a descrição e até o estilo de apresentação do Nodemailer, induzindo desenvolvedores a instalar o pacote acreditando tratar-se de uma ferramenta legítima.

Esse tipo de ataque é eficaz porque muitos programadores confiam no ecossistema NPM e instalam pacotes rapidamente, sem sempre verificar sua origem ou reputação.

Invasão silenciosa via Electron

O código malicioso tinha como objetivo localizar instalações das carteiras Atomic e Exodus, que são construídas com o framework Electron.

Aplicativos Electron utilizam o arquivo app.asar, que contém o código principal compactado. O malware extraía esse arquivo, modificava seu conteúdo e injetava rotinas maliciosas. Assim, o atacante conseguia manipular a execução do aplicativo sem levantar suspeitas imediatas.

O “clipper”: Desviando suas transações

O componente mais perigoso do nodejs-smtp era seu clipper, um tipo de malware projetado para alterar endereços de criptomoedas.

Na prática, quando o usuário tentava realizar uma transação em sua carteira, o endereço de destino era automaticamente substituído pelo endereço do atacante. O resultado: os fundos eram enviados para o criminoso, sem que a vítima percebesse até ser tarde demais.

O perigo silencioso: Entendendo os ataques de supply chain no npm

Um ataque de supply chain é quando criminosos comprometem a cadeia de fornecimento de software, inserindo código malicioso em pacotes ou dependências aparentemente confiáveis.

É como se um ingrediente contaminado fosse incluído em uma receita: mesmo que o prato final pareça normal, ele já está comprometido.

O NPM é um alvo atrativo porque:

  • Possui milhões de pacotes disponíveis.
  • Qualquer pessoa pode publicar bibliotecas com facilidade.
  • Há uma confiança implícita dos desenvolvedores em pacotes populares ou bem apresentados.

Esses fatores tornam ataques como o do nodejs-smtp cada vez mais comuns e perigosos.

Como se proteger: Dicas essenciais para desenvolvedores e usuários

Para desenvolvedores que usam Node.js

  • Verifique antes de instalar: Pacotes com poucos downloads, autores desconhecidos ou sem repositório confiável merecem desconfiança.
  • Use auditorias de segurança: Comandos como npm audit ajudam a identificar vulnerabilidades conhecidas.
  • Cuidado com o copy-paste: Evite copiar comandos de instalação de sites ou fóruns sem verificar a fonte.
  • Fixe suas dependências: Arquivos como package-lock.json e yarn.lock ajudam a garantir que versões confiáveis sejam usadas de forma consistente.

Para usuários de carteiras de criptomoedas

  • Baixe apenas de fontes oficiais: Sempre obtenha carteiras como Atomic e Exodus diretamente dos sites oficiais.
  • Verifique os endereços de transação: Confirme duas ou três vezes o endereço da carteira de destino antes de enviar qualquer valor.
  • Considere uma hardware wallet: Para quantias significativas, uma carteira física oferece proteção contra malwares no computador.

Conclusão: Um ecossistema de responsabilidade compartilhada

O caso do pacote npm malicioso nodejs-smtp mostra que tanto desenvolvedores quanto usuários finais estão expostos a riscos quando a cadeia de suprimentos de software é comprometida.

A segurança deve ser entendida como uma responsabilidade compartilhada: programadores precisam ser cuidadosos ao escolher dependências, e usuários de criptomoedas devem adotar práticas seguras ao realizar transações.

Revise as dependências dos seus projetos agora mesmo e compartilhe este alerta com outros desenvolvedores e entusiastas de cripto para fortalecer a segurança de toda a comunidade.

Compartilhe este artigo