Como um grande ataque ao NPM terminou com apenas 159 dólares roubados

Como um dos ataques mais perigosos ao NPM terminou com apenas 159 dólares roubados
9 de setembro de 2025
~5 min de leitura

No início de setembro de 2025, o mundo do JavaScript enfrentou um dos ataques mais perigosos dos últimos anos. Os invasores obtiveram acesso à conta de um desenvolvedor popular e enviaram ao NPM novas versões de pacotes fundamentais que continham código malicioso. Esses pacotes são usados bilhões de vezes a cada semana, e o ataque poderia ter levado a um roubo em grande escala de usuários de serviços de criptomoedas.

Felizmente, devido a erros dos hackers e à rápida reação da comunidade, o dano foi mínimo. A redação da Quickex reconstruiu a linha do tempo dos eventos e explicou por que tudo terminou de forma relativamente indolor.

Acompanhe como o preço do Bitcoin reage a choques de mercado com a Quickex.

Como o ataque se desenvolveu

O primeiro a informar sobre o que estava acontecendo, na noite de 8 de setembro, foi Charles Guillaume, CTO da Ledger. Ele alertou que a conta de um desenvolvedor conhecido havia sido comprometida e que versões infectadas de ferramentas como chalk, debug, ansi-styles e strip-ansi haviam sido enviadas ao NPM. Esses pacotes estão na base da maioria dos aplicativos web, por isso a infecção ameaçava todo o ecossistema.

Mais tarde, descobriu-se que os hackers acessaram a conta por meio de um e-mail de phishing. Ele imitava uma mensagem do suporte do NPM e levava a uma página de login falsa.

O NPM (Node Package Manager) é o maior catálogo de pacotes para JavaScript, onde os desenvolvedores publicam e baixam módulos de código prontos. Por exemplo, o chalk é usado para formatação colorida de texto, o debug para registro de logs, e ansi-styles e strip-ansi para trabalhar com caracteres de console. Quando os invasores lançaram as novas versões, elas começaram a ser instaladas automaticamente nos projetos se os desenvolvedores não tivessem fixado versões antigas.

Com a divulgação das notícias sobre o ataque, projetos de criptomoedas correram para publicar em suas redes sociais que o incidente não os havia afetado.

Como o código malicioso funcionava

O programa embutido agia como um crypto-clipper — um tipo de ataque que substitui o endereço da carteira em uma transação. O usuário pensa que está enviando fundos para sua própria conta ou para um conhecido, mas, na verdade, o dinheiro vai para o endereço do invasor.

StarPlatinum explicou em detalhes a mecânica. Segundo ele, o código tinha dois modos.

  1. No modo “passivo”, ele substituía endereços diretamente nas interfaces dos aplicativos.
  2. No modo “ativo”, interceptava as transações antes da assinatura e alterava os dados de destino.

Para se disfarçar, usava o algoritmo de Levenshtein, que selecionava as cadeias de caracteres mais semelhantes: os primeiros e últimos caracteres do endereço coincidiam, o que tornava a substituição quase imperceptível.

Ele também citou contas específicas para as quais os fundos roubados deveriam ser enviados: a principal, 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976, e vários endereços de reserva.

No momento da publicação do blogueiro, as transferências para essas carteiras haviam sido registradas, mas os fundos permaneciam imóveis.

Os desenvolvedores descobriram o problema pela primeira vez quando as compilações automáticas começaram a falhar. Nos registros apareciam erros incomuns, como “fetch is not defined”. A verificação revelou código ofuscado e funções suspeitas relacionadas ao Ethereum e Solana.

Por que o dano foi mínimo

Embora a ideia do ataque parecesse perigosa, na prática ele não funcionou. O código era instável demais e quebrava os processos de compilação. Isso permitiu que a comunidade percebesse rapidamente as anomalias e bloqueasse as versões infectadas.

Charles Guillaume esclareceu posteriormente que o ataque havia fracassado de fato: havia pouquíssimas vítimas. Segundo ele, o código malicioso tinha como alvo operações de criptomoedas e substituía endereços diretamente nas respostas de rede, mas, devido a erros dos hackers-desenvolvedores, ele era acionado de forma imprevisível.

A Arkham estimou que os invasores conseguiram roubar apenas 159 dólares. Esse dinheiro foi para as carteiras que haviam aparecido nos relatórios da Ledger. O valor é insignificante em comparação com a escala do risco potencial, mas o episódio mostrou o quão perto o ecossistema esteve de uma crise séria.

Saldo da carteira cripto dos atacantes, segundo a Arkham

O papel das carteiras de hardware

O maior risco foi para os usuários de carteiras de software que assinam transações diretamente no navegador. Nesses casos, a substituição de endereço passava quase despercebida. A situação era bem diferente para quem usava dispositivos de hardware para armazenar chaves.

Uma carteira de hardware mostra ao usuário todos os detalhes da operação em sua própria tela, e a confirmação acontece com um botão físico. Mesmo que um aplicativo substitua o endereço, o dispositivo exibirá o destinatário real. Um usuário atento perceberá imediatamente a discrepância e cancelará a assinatura.

Segundo Guillaume, funções como Clear Signing e verificações de transação integradas tornam as soluções de hardware uma barreira essencial contra esse tipo de ataque.

Uma lição para a comunidade cripto

Essa história é um lembrete de que a vulnerabilidade da cadeia de suprimentos continua sendo o principal risco para a indústria. O comprometimento da conta de apenas um desenvolvedor pode colocar em risco milhões de usuários em todo o mundo.

De toda a situação, podem ser destacados três principais ensinamentos:

Os desenvolvedores devem fixar versões de dependências, usar compilações reproduzíveis e revisar cuidadosamente as atualizações das ferramentas fundamentais.

Os detentores de criptomoedas devem manter ativos em carteiras de hardware e verificar cuidadosamente os endereços na tela do dispositivo antes de cada assinatura.

As contas de desenvolvedores no ecossistema NPM precisam ser protegidas com chaves de segurança e autenticação multifatorial, para que o phishing não leve a um comprometimento.

Conclusão

O ataque ao NPM mostrou o quão frágil pode ser toda a infraestrutura: bilhões de instalações dependiam de uma única conta. Desta vez, o dano se limitou a 159 dólares, mas da próxima vez pode ser diferente.

A sorte e os erros dos invasores não substituem a segurança sistêmica. É por isso que tanto desenvolvedores quanto usuários devem tomar medidas para que novos ataques não os peguem de surpresa.

Encontre a melhor taxa de câmbio de criptomoedas na Quickex.

0.0
(0 classificações)
Clique em uma estrela para avaliá-la

Você envia:

Você envia:

Rede

Flutuante

Você recebe:

Você recebe:

Rede