Pesquisadores de segurança cibernética da ReversingLabs descobriram duas linhas de código malicioso embutidas em uma atualização do ETHCode, um kit de desenvolvimento Ethereum de código aberto usado por aproximadamente 6.000 desenvolvedores. O código malicioso foi inserido através de uma pull request no GitHub que conseguiu passar pelas revisões de segurança de inteligência artificial e pela supervisão humana antes de ser distribuído para sistemas de desenvolvedores.
O que Saber:
- Um hacker sem histórico prévio no GitHub inseriu malware no ETHCode através de uma pull request com 43 commits contendo 4.000 linhas atualizadas
- O código malicioso foi projetado para baixar e executar scripts que poderiam potencialmente roubar ativos de criptomoeda ou comprometer contratos inteligentes
- Tanto o revisor de IA do GitHub quanto a equipe de desenvolvimento falharam em detectar o ataque sofisticado, levantando preocupações sobre práticas de segurança de código aberto
Detalhes do Ataque Surgem Através de Investigação
A pull request maliciosa foi submetida em 17 de junho por um usuário identificado como Airez299, que não tinha histórico prévio de contribuições na plataforma. Pesquisadores da ReversingLabs descobriram que o atacante ocultou com sucesso o código malicioso ao dar a ele um nome semelhante aos arquivos existentes ao mesmo tempo que ofuscava a estrutura real do código.
A primeira linha do código malicioso foi projetada para se integrar perfeitamente com os arquivos legítimos. A segunda linha atuou como um mecanismo de ativação que eventualmente criaria uma função do PowerShell projetada para baixar e executar scripts batch de serviços públicos de hospedagem de arquivos.
Tanto o revisor de IA automatizado do GitHub quanto os membros do 7finney, o grupo responsável pela manutenção do ETHCode, analisaram a enorme atualização de código. Apenas alterações menores foram solicitadas durante o processo de revisão, com nenhum dos revisores humanos ou sistemas automatizados sinalizando o malware incorporado como suspeito.
Impacto Potencial Alcance Milhares de Sistemas
O ETHCode serve como um conjunto abrangente de ferramentas que permite que desenvolvedores de Ethereum construam e implementem contratos inteligentes compatíveis com a Máquina Virtual Ethereum. A atualização comprometida teria sido automaticamente distribuída para sistemas de usuários através de mecanismos de atualização padrão.
O pesquisador da ReversingLabs, Petar Kirhmajer, disse ao Decrypt que a empresa não encontrou evidências de que o código malicioso realmente tenha sido executado para roubar tokens ou dados. No entanto, o escopo potencial do ataque permanece significativo, dado a base de usuários da ferramenta.
"A pull request pode ter se espalhado para milhares de sistemas de desenvolvedores," Kirhmajer observou no blog de pesquisa. A ReversingLabs continua investigando a funcionalidade exata dos scripts baixados, operando sob a suposição de que eles foram "destinados a roubar criptoativos armazenados na máquina da vítima ou, alternativamente, comprometer os contratos Ethereum em desenvolvimento pelos usuários da extensão."
O ataque representa um comprometimento sofisticado da cadeia de suprimentos que explorou a confiança inerente aos processos de desenvolvimento de código aberto.
Especialistas da Indústria Alertam Sobre Vulnerabilidade Generalizada
O desenvolvedor de Ethereum e cofundador do NUMBER GROUP, Zak Cole, enfatizou que esse tipo de ataque reflete desafios de segurança mais amplos enfrentados pelo ecossistema de desenvolvimento de criptomoeda. Muitos desenvolvedores instalam pacotes de código aberto sem realizar revisões de segurança completas.
"É muito fácil para alguém inserir algo malicioso," Cole disse ao Decrypt. "Pode ser um pacote npm, uma extensão de navegador, o que for."
A forte dependência da indústria de criptomoedas no desenvolvimento de código aberto cria uma superfície de ataque crescente para atores maliciosos. Cole apontou para incidentes recentes de alto perfil, incluindo o exploit do Ledger Connect Kit de dezembro de 2023 e o malware descoberto na biblioteca web3.js da Solana.
"Tem muito código e poucos olhos sobre ele," Cole acrescentou. "A maioria das pessoas simplesmente assume que é seguro porque é popular ou está aí há algum tempo, mas isso não significa nada."
Cole observou que a superfície de ataque que pode ser direcionada continua a se expandir à medida que mais desenvolvedores adotam ferramentas de código aberto. Ele também destacou o envolvimento de atores patrocinados por estados nesses ataques.
"Além disso, lembrem-se de que há armazéns inteiros cheios de operativos da DPRK cujo trabalho em tempo integral é executar esses exploits," Cole disse.
Recomendações de Segurança para Desenvolvedores
Apesar da natureza sofisticada do ataque, os especialistas em segurança acreditam que compromissos bem-sucedidos permanecem relativamente raros. Kirhmajer estimou que "as tentativas bem-sucedidas são muito raras" com base em sua experiência de pesquisa.
A ReversingLabs recomenda que os desenvolvedores verifiquem a identidade e o histórico de contribuições dos colaboradores de código antes de baixar ou implementar atualizações. A empresa também sugere revisar arquivos package.json e declarações de dependência semelhantes para avaliar novos relacionamentos de código.
Cole defendeu medidas de segurança adicionais, incluindo bloqueio de dependências para impedir a inclusão automática de atualizações de código não testadas. Ele recomendou o uso de ferramentas de varredura automatizadas que podem identificar padrões de comportamento suspeitos ou perfis de mantenedores questionáveis.
Os desenvolvedores também devem monitorar pacotes que subitamente mudam de propriedade ou lançam atualizações inesperadas. Cole enfatizou a importância de manter ambientes separados para diferentes atividades de desenvolvimento.
"Também não execute ferramentas de assinatura ou carteiras na mesma máquina que você usa para construir coisas," Cole concluiu. "Apenas assuma que nada é seguro a menos que você tenha verificado ou isolado."
Reflexões Finais
Este incidente destaca os desafios de segurança contínuos enfrentados pelo desenvolvimento de criptomoedas de código aberto, onde atacantes sofisticados podem explorar mecanismos de confiança para distribuir malware a milhares de sistemas de desenvolvedores. Embora não haja evidências de que o código malicioso tenha sido executado com sucesso, o ataque demonstra a necessidade de práticas de segurança aprimoradas e processos de verificação dentro do ecossistema de desenvolvimento de criptomoedas.