O ecossistema open source está sob ataque. Uma campanha coordenada, apelidada de ‘IndonesianFoods’, tem inundado o registro npm com dezenas de milhares de pacotes maliciosos diariamente, com o objetivo de roubar tokens de desenvolvedores desavisados que utilizam o Tea Protocol, um sistema de recompensa por trabalho de codificação.
Pesquisadores da Amazon revelaram que mais de 150 mil pacotes foram criados como parte desta campanha. A Sonatype, empresa especializada em gerenciamento da cadeia de suprimentos de software, que já havia alertado sobre o problema em abril de 2024, agora estima que esse número ultrapassou os 153 mil. O CTO da Sonatype, Brian Fox, lamenta que a situação ainda esteja fora de controle e alerta para o risco de outros atores maliciosos explorarem essa vulnerabilidade para disseminar malware.
A invasão em larga escala do npm demonstra a fragilidade da segurança em repositórios open source e o potencial de exploração de falhas para fins financeiros ou para a distribuição de software malicioso. Dmitry Raidman, CTO da Cybeats, descreve a situação como uma crise que está corroendo a confiança no ecossistema open source.
O que é o Tea Protocol?
O Tea Protocol é uma plataforma baseada em blockchain que recompensa desenvolvedores e mantenedores de pacotes open source com tokens chamados Tea. Esses tokens visam garantir a segurança da cadeia de suprimentos de software e promover a governança descentralizada. Desenvolvedores inserem código Tea que se conecta ao blockchain em seus aplicativos. Quanto mais um aplicativo é baixado, mais tokens Tea o desenvolvedor recebe, que podem ser convertidos em dinheiro.
O esquema do verme ‘IndonesianFoods’ busca manipular o sistema, fazendo com que o blockchain acredite que os aplicativos criados pelos invasores são extremamente populares, gerando assim uma grande quantidade de tokens. Embora os tokens ainda não tenham valor monetário, suspeita-se que os criminosos estejam se posicionando para lucrar quando o Tea Protocol lançar sua Mainnet, onde os tokens Tea terão valor real e poderão ser negociados.
Implicações e Recomendações
O ataque coordenado no npm expõe diversas falhas na segurança da cadeia de suprimentos de software e levanta sérias preocupações sobre a integridade do ecossistema open source. A facilidade com que os invasores conseguiram inundar o repositório com pacotes maliciosos demonstra a necessidade urgente de aprimorar os mecanismos de detecção e prevenção.
É crucial que os líderes de TI adotem medidas proativas para proteger suas empresas contra ameaças semelhantes. Algumas recomendações incluem:
- Implementar controles de acesso mais rigorosos em repositórios open source, limitando o número de usuários com permissão para enviar código e exigindo autenticação multifator.
- Adicionar assinaturas digitais ao código enviado para autenticar o autor e garantir a integridade do pacote.
- Exigir que todo o código utilizado pelas empresas tenha uma lista de materiais de software (SBOM), que permita às equipes de segurança rastrear os componentes e identificar possíveis vulnerabilidades.
- Garantir que os desenvolvedores conheçam as versões do código open source que estão utilizando e que apenas versões aprovadas e seguras sejam incluídas em seus aplicativos.
- Utilizar ferramentas que interceptem e bloqueiem downloads maliciosos de repositórios.
- Implementar sistemas de detecção avançados para identificar padrões suspeitos, como arquivos de configuração maliciosos, código mínimo ou clonado, esquemas de nomenclatura de código previsíveis e cadeias de dependência circulares.
- Monitorar a velocidade de publicação de pacotes, pois ferramentas automatizadas criam pacotes em velocidades incompatíveis com o trabalho manual.
- Implementar medidas de validação e responsabilização de autores, como verificação de identidade para novas contas e monitoramento de atividades coordenadas de publicação em várias contas de desenvolvedor.
- Adotar a lógica de “culpa por associação”, onde pacotes de contas ligadas a atividades maliciosas recebem escrutínio mais rigoroso.
Conclusão
O ataque em massa no npm serve como um alerta para a comunidade de desenvolvimento de software. A segurança da cadeia de suprimentos de software é uma responsabilidade compartilhada que exige a colaboração de desenvolvedores, mantenedores de repositórios, empresas e especialistas em segurança. Ao adotar práticas de segurança robustas e implementar medidas de prevenção eficazes, podemos proteger o ecossistema open source e garantir a integridade do software que utilizamos diariamente. A resposta a este ataque não deve ser pânico, mas sim um compromisso renovado com a segurança e a colaboração, fortalecendo a base da inovação tecnológica.
