Um repositório no GitHub que se passava por um bot de negociação legítimo da Solana foi exposto por supostamente esconder um malware voltado para roubo de criptomoedas.
Segundo um relatório publicado na sexta-feira pela empresa de segurança blockchain SlowMist, o repositório agora deletado chamado solana-pumpfun-bot, hospedado pela conta “zldp2002”, imitava uma ferramenta real de código aberto para coletar credenciais de usuários. A SlowMist teria iniciado a investigação após um usuário relatar o roubo de seus fundos na quinta-feira.
O repositório malicioso do GitHub em questão apresentava “um número relativamente alto de estrelas e forks”, segundo a SlowMist. Todos os commits de código em seus diretórios foram feitos há cerca de três semanas, com irregularidades aparentes e falta de consistência que, de acordo com a empresa, indicam que não se tratava de um projeto legítimo.
O projeto era baseado em Node.js e utilizava como dependência o pacote de terceiros crypto-layout-utils. “Após uma inspeção mais aprofundada, descobrimos que esse pacote já havia sido removido do registro oficial do NPM”, informou a SlowMist.
Um pacote NPM suspeito
Como o pacote já não podia mais ser baixado do repositório oficial do Node Package Manager (NPM), os investigadores se perguntaram como a vítima teria conseguido baixá-lo. Ao investigar mais a fundo, a SlowMist descobriu que o invasor estava obtendo a biblioteca a partir de outro repositório no GitHub.
Após analisar o pacote, os pesquisadores da SlowMist constataram que ele estava fortemente ofuscado com o jsjiami.com.v7, dificultando a análise. Depois da desofuscação, os investigadores confirmaram que se tratava de um pacote malicioso que escaneava arquivos locais e, ao detectar conteúdo relacionado a carteiras ou chaves privadas, fazia o upload dessas informações para um servidor remoto.
Mais de um repositório envolvido
A investigação da SlowMist revelou ainda que o invasor provavelmente controlava um grupo de contas no GitHub. Essas contas eram usadas para criar forks de projetos e transformá-los em versões maliciosas, distribuindo malware enquanto inflavam artificialmente os números de estrelas e forks.
Vários desses repositórios forjados apresentavam características semelhantes, e algumas versões incluíam outro pacote malicioso, chamado bs58-encrypt-utils-1.0.3. Esse pacote foi criado em 12 de junho, data que, segundo os pesquisadores da SlowMist, marca o início da distribuição de módulos NPM maliciosos e projetos em Node.js pelo invasor.
O incidente é o mais recente de uma série de ataques à cadeia de suprimentos de software voltados para usuários de criptomoedas. Nas últimas semanas, esquemas semelhantes têm visado usuários do Firefox com extensões falsas de carteira e usado repositórios no GitHub para hospedar códigos voltados ao roubo de credenciais.