Hackers norte-coreanos publicam 26 pacotes npm com comandos ocultos para RAT multiplataforma
2 de Março de 2026

Pesquisadores em cibersegurança identificaram uma nova variante da campanha Contagious Interview, executada por agentes norte-coreanos, que publicaram 26 pacotes maliciosos no registro npm.

Disfarçados como ferramentas para desenvolvedores, esses pacotes ocultam funcionalidades para extrair os servidores legítimos de comando e controle (C2).

Para isso, utilizam conteúdos aparentemente inofensivos hospedados no Pastebin como um mecanismo de dead drop resolver, culminando no download de um credential stealer e de um trojan de acesso remoto (RAT) direcionados a desenvolvedores.

A infraestrutura C2 está hospedada na plataforma Vercel, distribuída em 31 implantações distintas.

A campanha, monitorada pelas equipes da Socket e pelo especialista Kieran Miyamoto, do kmsec.uk, recebeu o codinome StegaBin.

Ela é atribuída a um grupo de ameaças norte-coreano conhecido como Famous Chollima.

Segundo os pesquisadores Philipp Burckhardt e Peter van der Zee, da Socket, o carregador do malware extrai as URLs do C2 por meio de esteganografia textual em três textos do Pastebin.

Esses textos são ensaios técnicos aparentemente comuns, nos quais caracteres espaçados foram substituídos para revelar os endereços da infraestrutura oculta.

Os pacotes maliciosos identificados são:

- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]

Todos esses pacotes incluem um script de instalação chamado "install.js", executado automaticamente durante o processo, que dispara o payload malicioso localizado em "vendor/scrypt-js/version.js".

Outro ponto em comum é a inclusão explícita do pacote legítimo homônimo como dependência, numa tentativa de aumentar a credibilidade via typosquatting.

O payload atua como um decodificador de esteganografia textual, acessando URLs do Pastebin para extrair conteúdos que, apesar da aparência técnica, ocultam listas de domínios C2 codificadas por posições específicas de caracteres.

O processo envolve a remoção de caracteres Unicode invisíveis, a identificação de um marcador de comprimento de cinco dígitos e a coleta de caracteres espaçados uniformemente para montar os endereços, separados por "|||" e finalizados em "===END===".

Após decodificar os domínios, o malware se conecta a eles para baixar payloads específicos para Windows, macOS e Linux — uma tática já conhecida da campanha Contagious Interview.

Em um exemplo, o domínio "ext-checkdin.vercel[.]app" serve um script shell que, por sua vez, busca um componente RAT no mesmo endereço.

O trojan se conecta ao IP 103.106.67[.]63, na porta 1244, para aguardar comandos que permitem mudar diretórios e executar comandos shell.

Ele conta com nove módulos para coleta de informações e garantia de persistência, focados principalmente no Microsoft Visual Studio Code (VS Code), além de keylogging, roubo da área de transferência, captura de credenciais de navegadores e exfiltração de chaves SSH e repositórios Git:

- **vs**: usa um arquivo malicioso tasks.json para contatar o domínio Vercel toda vez que um projeto é aberto no VS Code, explorando o gatilho runOn: "folderOpen".

O módulo escaneia o diretório de configuração do VS Code e injeta o arquivo para garantir persistência.

- **clip**: keylogger, rastreador de mouse e ladrão da área de transferência, com monitoramento da janela ativa e exfiltra dados a cada 10 minutos.

- **bro**: payload em Python focado no roubo de credenciais de navegadores.

- **j**: módulo em Node.js que rouba dados de navegadores e criptomoedas, atacando Google Chrome, Brave, Firefox, Opera, Microsoft Edge e extensões populares como MetaMask, Phantom e Coinbase Wallet.

No macOS, mira também no iCloud Keychain.

- **z**: escaneia e rouba arquivos do sistema que correspondem a padrões predefinidos.

- **n**: atua como RAT, permitindo controle remoto em tempo real via WebSocket para o IP 103.106.67[.]63 na porta 1247, além de exfiltração via FTP.

- **truffle**: baixa o scanner legítimo TruffleHog do GitHub para detectar e extrair segredos de desenvolvedores.

- **git**: coleta arquivos dos diretórios .ssh, extrai credenciais Git e escaneia repositórios.

- **sched**: corresponde ao arquivo "vendor/scrypt-js/version.js", responsável pela persistência do malware.

De acordo com a Socket, enquanto versões anteriores da campanha utilizavam scripts maliciosos simples e payloads hospedados no Bitbucket, esta nova fase revela um esforço sofisticado para evadir detecções automáticas e análises manuais.

O uso de esteganografia em nível de caracteres no Pastebin, aliado a múltiplas rotas via Vercel, aponta para uma evolução nas técnicas de evasão, visando aumentar a resiliência das operações.

Além disso, os agentes norte-coreanos foram observados publicando outros pacotes npm maliciosos, como o "express-core-validator", para carregar payloads JavaScript hospedados no Google Drive.

Segundo Kieran Miyamoto, essa técnica foi usada apenas uma vez até o momento, mas é provável que o grupo Famous Chollima continue explorando diversas infraestruturas e métodos para entregar estágios subsequentes do malware, sem indicar mudança completa no comportamento no npm.

Publicidade

Traçamos um caminho para você ir do zero ao avançado em hacking

Conheça a Solyd One, e tenha acesso a todos os cursos de segurança ofensiva da Solyd, todas as certificações práticas, incluindo a SYCP, 2 CTFs anuais com prêmios de até 30 mil reais, dezenas de laboratórios realísticos, suporte, comunidade e muito mais. Saiba mais...