Cibersegurança

Hack de pacotes Rust instala malware de roubo de informações nos dispositivos dos desenvolvedores

Contas de manutenção de pacotes Rust foram comprometidas, levando à publicação de versões maliciosas de arrayref e outros dois pacotes e à execução de malware durante o processo de compilação. O malware tinha como alvo dados do sistema e credenciais de navegadores, e recomenda-se que os desenvolvedores que usaram as versões afetadas durante a janela de exposição reconstruam seus ambientes e façam a rotação dos segredos.

2026-08-20
4 min de leitura
12 visualizações
فريق تحرير certi.news
Hack de pacotes Rust instala malware de roubo de informações nos dispositivos dos desenvolvedores

Atacantes exploraram uma conta de manutenção associada ao popular pacote Rust arrayref para publicar uma versão maliciosa que executa malware nos dispositivos dos desenvolvedores durante a compilação dos projetos. Durante uma janela de tempo de no máximo 23 minutos, a operação também atingiu os pacotes append-only-vec e internment, em um ataque à cadeia de fornecimento de software.

A StepSecurity informou que as versões afetadas são arrayref 0.3.10, append-only-vec 0.1.9 e internment 0.8.7, e os três pacotes eram gerenciados pela mesma conta. O arrayref é amplamente utilizado: registrou mais de 53 milhões de downloads nos últimos 90 dias e mais de 245 milhões de downloads no total. Ele é usado em projetos e ferramentas relacionados a criptografia, gráficos e interfaces gráficas Rust, além de componentes utilizados nos ecossistemas Ethereum e Solana.

Como o ataque foi executado?

Os atacantes adicionaram uma dependência de um pacote chamado proc-macro1, que usurpa o nome do conhecido pacote proc-macro2. A maior parte do código-fonte original dos pacotes permaneceu inalterada, o que torna a manipulação mais difícil de detectar por quem revisa apenas as diferenças de código.

O proc-macro1 continha um arquivo build.rs que é executado automaticamente durante a compilação. O arquivo recompõe os componentes da estrutura maliciosa a partir de partes codificadas em Base64 e, em seguida, escolhe uma carga útil adequada ao sistema operacional, incluindo Linux, Windows e macOS nas arquiteturas x86-64 e ARM64. No Unix, a carga útil é gravada em /tmp/rust-setup e executada como um processo separado, enquanto no Windows o ataque cria um arquivo chamado rust-setup.ps1 dentro da pasta TEMP e usa wscript.exe e um script no formato VBS para manter o processo em execução.

O que o malware pode roubar?

Segundo uma análise da Wiz, a segunda etapa coleta informações do host e credenciais. O malware extrai dados de login dos bancos de dados SQLite dos navegadores Google Chrome, Brave e Edge. Ele também cria mecanismos de persistência por meio de Registry Run no Windows, LaunchAgent no macOS e systemd no Linux. A carga útil recebe um endereço como argumento, que se acredita ser o endereço de um servidor de comando e controle.

Linha do tempo e o que isso significa para os desenvolvedores

A campanha começou às 01:17 UTC de 20 de agosto de 2026, com a criação de uma conta no GitHub que usurpava a identidade do proeminente desenvolvedor de Rust David Tolnay, seguida por uma conta semelhante no crates.io. Uma versão legítima do proc-macro1 foi publicada às 01:55, seguida pela versão maliciosa 1.0.107 às 07:11. Quatro minutos depois, o arrayref 0.3.10 foi publicado por meio da conta legítima droundy, associada a David Roundy, com a remoção das versões 0.3.5 a 0.3.9, o que poderia levar as ferramentas de instalação a escolher a versão maliciosa.

O incidente foi comunicado às 07:54, e o crates.io excluiu o pacote proc-macro1 às 08:03 e removeu o arrayref 0.3.10 do índice às 08:41. Também foram removidas versões maliciosas de outros pacotes: aovine, arone, aronenao e tinymember.

Medidas de resposta

Quem instalou as versões afetadas durante a janela de exposição, que durou aproximadamente uma hora e meia, deve tratar o ambiente como comprometido. A revisão inclui procurar versões suspeitas nos arquivos Cargo.lock, verificar os arquivos que foram criados e examinar as conexões com o endereço 23.254.165[.]112 pelas portas 9089 e 443. Quando o comprometimento for confirmado, as análises recomendam fazer a rotação de todas as credenciais, tokens de CI, chaves de assinatura e outros segredos, e então reconstruir o ambiente a partir de backups confiáveis. Já os projetos não afetados devem fixar uma versão conhecida como segura até que a situação das contas de manutenção seja esclarecida.

Fonte da notícia
BleepingComputer
Abrir fonte original ↗
ف
Autor

فريق تحرير certi.news

Na mesma categoria

Você também pode gostar

Ver todas as notícias