Responsáveis pela plataforma Nx, usada para gerenciar bases de códigos, avisaram seus usuários que um ataque cibernético pode coletar informações sigilosas. Segundo o comunicado dos desenvolvedores, mais de 2.300 credenciais foram roubadas neste processo.
O ataque foi inicialmente descoberto por pesquisadores da empresa de cibersegurança Wiz Research. Essa ação permitiu que os criminosos enviassem malwares disfarçados de pacotes do Nx e alguns plugins, que uma vez dentro dos computadores, escaneavam o sistema, roubavam credenciais e enviavam para um repositório no GitHub.
Muito conhecido entre os desenvolvedores, o Nx é uma das maiores plataformas de construção de código-aberto do mundo. Além do formato open source, esse também é um sistema de tecnologia agnóstica, feito para otimizar os ciclos de desenvolvimento e tem milhares de downloads semanalmente, justificando a importância desse ataque.
Como roubaram credenciais pelo Nx?
Como apontam os pesquisadores da Wiz Research, o incidente na plataforma Nx é um ataque à cadeia de suprimentos. Em outras palavras, os criminosos inseriram códigos maliciosos em softwares legítimos e os distribuíram por meio de um sistema bem confiável, como se estivesse envenenando um produto e distribuindo para compra.

É apontado que em 21 de agosto uma vulnerabilidade foi explorada pelo atacante, que por sua vez fez uma injeção de códigos em um campo de texto com o título de pull request. Essa ação fez com que o atacante conseguisse privilégios no sistema e que os comandos fossem lidos pelo repositório GITHUB_TOKEN.
Esse pull request funciona como uma sugestão de código e normalmente o Nx não aceitaria esse comando. Porém, o hacker se aproveitou da brecha pull_request_target. Acidentalmente, essa falha dá uma permissão de administrador e acesso ao token GITHUB_TOKEN para quem executa o código pull request.
Nesse processo todo, aquela requisição conseguiu roubar o npm token do Nx. O npm token é uma espécie de código, uma senha, para acessar o npm registry, que funciona como uma espécie de loja de pacotes. Por meio dessas lojas, os usuários conseguem realizar downloads do próprio Nx e plugins.
Com tudo isso em mãos, o atacante usou o token para publicar as versões maliciosas do Nx e de outros plugins no npm registry, fazendo com que os pacotes parecessem oficiais e seguros. Entenda a cronologia dos fatos abaixo:
- O atacante primeiro criou um pull request para injetar um código malicioso no Nx;
- Dentre dessa requisição, havia um comando que acidentalmente explorava uma falha e dava privilégios ao usuário;
- Esse comando falso roubou o npm token do Nx, que dava acesso ao npm registry da plataforma;
- Com o npm registry, o atacante pôde publicar versões e plugins do Nx com um malware embutido;
- Quem fez download desses arquivos acabou baixando também esses agentes maliciosos.
O que acontece ao baixar o malware?
Como os arquivos maliciosos ficaram algum tempo disponíveis na base de dados, alguns desenvolvedores adquiriram os malwares em suas máquinas. Esses agentes maliciosos escaneiam o sistema em busca de dados relevantes, como chaves de acesso e senhas.

Após identificar e assegurar os alvos, o malware puxava todos esses arquivos e os enviava para um repositório no GitHub que foi criado na conta do próprio usuário. Sim, os próprios arquivos das vítimas estavam escondidos à vista, e isso dificulta rastrear o método de operação do crime.
Algo interessante mostrado pelos pesquisadores é que no meio desses downloads maliciosos do Nx, os criminosos adicionaram um arquivo modificado. Esse arquivo, .zshrc, tinha um comando para desligar o PC. Quando a vítima ligava a máquina novamente, ela deveria inserir sua senha de acesso, e assim o atacante conseguia roubar mais um dado confidencial.
Vale salientar que a Wiz Research indica que esses malwares podem ser executados somente em sistemas Linux e macOS. Donos de Windows, aparentemente, estão seguros — mas todo cuidado é pouco.
O que foi roubado pelo ataque e como se proteger?
Como dito pelos especialistas, o crime mirava o desvio primário de credenciais, chaves SSH e arquivos .gitconfig, que podem conter nomes de usuários e emails. Os criminosos teriam criado 1.346 repositórios no GitHub para receber os dados roubados das vítimas.
Segundo os pesquisadores, cerca de 90% dos tokens roubados ainda estavam ativos. Isso significa que os atacantes ainda têm as chaves para continuar roubando dados dos usuários, mesmo após o golpe ser revelado publicamente.

Diante disso, a principal recomendação é que todos que usam o Nx troquem suas senhas, chaves e tokens de acesso em qualquer serviço ou plataforma relacionada. Também é importante utilizar métodos de autenticação de dois fatores em todas as contas, especialmente nas plataformas de desenvolvimento.
Também é indicado que os usuários verifiquem se os arquivos de configuração do seu terminal (.zshrc e .bashrc) foram alterados. Se encontrar comandos suspeitos, remova-os e certifique-se de que o sistema não está sendo afetado por nenhum outro malware.
Confira abaixo alguns serviços afetados pelo golpe:
- Build de sistema do Nx (@nrwl/nx, nx) nas versões: 20.9.0, 20.10.0, 20.11.0, 20.12.0, 21.5.0, 21.6.0, 21.7.0, 21.8.0
- @nx/devkit nas versões 21.5.0, 20.9.0
- @nx/enterprise-cloud versão 3.2.0
- @nx/eslint versão 21.5.0
- @nx/js nas versões: 21.5.0, 20.9.0
- @nx/key versão 3.2.0
- @nx/node nas versões 21.5.0, 20.9.0
- @nx/workspace nas versões 21.5.0, 20.9.0
Para mais informações sobre golpes e vazamentos, fique de olho no site do TecMundo e se mantenha bem protegido.