Você consegue imaginar um mundo em que sempre que quisesse ir a algum lugar, você tivesse que reinventar a roda e construir uma bicicleta do zero? Também não conseguimos. Por que reinventar algo que já existe e funciona perfeitamente? Podemos aplicar a mesma lógica à programação: desenvolvedores lidam diariamente com tarefas rotineiras e, em vez de inventar suas próprias rodas e bicicletas (que podem não ser tão boas), pegam códigos de bicicletas já prontos dos repositórios de código aberto do GitHub.
Esta solução está disponível para todos, incluindo criminosos que usam os melhores códigos-fonte abertos do mundo como iscas para seus ataques. Há muitas evidências que comprovam isso. A mais recente delas é que nossos especialistas descobriram uma campanha maliciosa ativa, a GitVenom, que tem como alvo os usuários do GitHub.
O que é a GitVenom?
GitVenom é o nome que damos a esta campanha maliciosa, na qual agentes desconhecidos criaram mais de 200 repositórios contendo projetos falsos com código malicioso: bots do Telegram, ferramentas para hackear o jogo Valorant, utilitários de automação do Instagram e gerenciadores de carteiras de Bitcoin. À primeira vista, todos os repositórios pareciam legítimos. Particularmente notável é o bem projetado arquivo README.MD (um guia sobre como trabalhar com o código) com instruções detalhadas em vários idiomas. Além disso, os invasores adicionaram diversas tags aos próprios repositórios.
A grande quantidade de commits que esses repositórios possuem é outro indicador que reforça a aparente legitimidade. Os repositórios dos invasores possuem vários, talvez milhares, de commits. E, certamente, os invasores não estavam atualizando manualmente cada um dos 200 repositórios para que permanecem autênticos. Eles usavam arquivos de registro de data e hora que eram atualizados frequentemente. A combinação de uma documentação detalhada com vários commits gerou a ilusão de que o código era genuíno e seguro.
GitVenom: Dois anos de atividade
A campanha começou há cerca de dois anos, que é a data do repositório falso mais antigo que encontramos. Durante este tempo, a GitVenom afetou desenvolvedores na Rússia, Brasil, Turquia e outros países. Os atacantes exploraram uma grande variedade de linguagens de programação, por exemplo, encontramos códigos maliciosos em Python, JavaScript, C, C# e C++.
Em relação à funcionalidade desses projetos, os recursos descritos no arquivo README não correspondiam ao código real, na verdade, ele não fazia metade do que afirmava. Mas foi “graças” a isso que as vítimas acabaram baixando os componentes maliciosos. Estes incluem:
- Um stealer em Node.js que coleta nomes de usuários e senhas, dados de carteiras de criptomoedas e histórico do navegador. Além disso, é capaz de empacotar os dados roubados em um arquivo .7z e enviá-lo aos invasores usando o Telegram.
- O AsyncRAT é um Trojan de administração remota de código aberto que também é capaz de atuar como keylogger.
- O Quasar é um backdoor de código aberto.
- Um clipper que procura endereços de carteiras de criptomoedas na área de transferência e os substitui por endereços controlados pelos atacantes. Curiosamente, em novembro de 2024, a carteira do hacker que foi usada neste ataque recebeu um depósito de aproximadamente 5 BTC (o equivalente a US$ 392 mil).
Leia mais sobre essa campanha maliciosa na nossa pesquisa completa, que foi publicada no SecureList.
Como se proteger de códigos maliciosos no GitHub
Resumidamente, a melhor defesa é estar atento. Considerando que mais de 100 milhões de desenvolvedores usam o GitHub, é bastante provável que os invasores continuem inserindo códigos maliciosos por meio dessa plataforma popular. A única questão é como eles farão isso. Há uma década, era inimaginável que campanhas como a GitVenom pudessem durar tanto tempo e ser tão persistentes. Portanto, todos os desenvolvedores devem se preocupar com suas boas práticas de segurança cibernética ao usar o GitHub.
- Analise o código antes de integrá-lo a um projeto existente.
- Use proteção contra malwares em computadores e em smartphones.
- Verifique cuidadosamente indicadores menos óbvios, como contas dos colaboradores, número de estrelas (curtidas) e data de criação do projeto. Se a conta foi criada há três dias, o repositório há dois dias e ele tem apenas uma estrela, há uma boa chance de o projeto ser falso e o código ser malicioso.
- Não baixe arquivos de links diretos para o GitHub compartilhados em chats, canais suspeitos ou em sites não verificados.
- Se você encontrar um repositório suspeito, denuncie-o ao GitHub. Isso pode salvar dispositivos de outras pessoas que não possuem uma solução de segurança confiável.