Hackers norte-coreanos publicam 108 pacotes maliciosos em npm, Go e Chrome na campanha PolinRider

Atores ligados à Coreia do Norte publicaram 108 pacotes maliciosos únicos e extensões de navegador entre npm, Packagist, Go e a Chrome Web Store como parte da campanha PolinRider, uma nova frente do já conhecido Contagious Interview. A operação, mapeada por pesquisadores da Socket, segue ativa e continua alavancando contas comprometidas de mantenedores para envenenar bibliotecas legítimas usadas por desenvolvedores no mundo todo.

O que aconteceu

A Socket, que acompanha ataques a repositórios de código aberto, atribuiu o conjunto ao mesmo cluster norte-coreano responsável pela campanha Contagious Interview, na qual falsos recrutadores abordam desenvolvedores com “testes técnicos” que instalam malware. Segundo a análise do pesquisador Karlo Zanki, o PolinRider abrange pacotes distribuídos em npm (JavaScript), Packagist (PHP), módulos Go e extensões do Chrome, ampliando substancialmente o alcance da operação.

Outro grupo de pesquisa, o OpenSourceMalware, identificou 1.951 repositórios públicos no GitHub associados a 1.047 mantenedores únicos, com sobreposição para uma linha de ataque paralela chamada TaskJacker — que injeta arquivos de tarefas maliciosos do VS Code em repositórios legítimos. Esses arquivos usam o parâmetro runOn: "folderOpen", que executa código automaticamente assim que o desenvolvedor abre a pasta como workspace no VS Code ou no Cursor.

O modus operandi contradiz a hipótese inicial de credenciais roubadas: os invasores estariam tomando posse de contas de mantenedores por caminhos indiretos — sequestro de domínios expirados vinculados aos e-mails de recuperação, resets de conta explorando canais laterais e engenharia social direta contra desenvolvedores individuais.

Como o ataque funciona

Uma vez executado, o payload da PolinRider vasculha o computador infectado em busca de arquivos de configuração comuns em projetos JavaScript modernos: postcss.config.mjs, tailwind.config.js, eslint.config.mjs, next.config.mjs, babel.config.js e app.js. Ao encontrá-los, o malware anexa código JavaScript malicioso, garantindo persistência dentro de projetos legítimos que serão publicados adiante — em uma segunda onda de contaminação supply-chain.

O objetivo final permanece o mesmo do resto do arsenal norte-coreano: exfiltração de carteiras de criptomoedas, tokens de autenticação em nuvem, chaves SSH e credenciais de sistemas corporativos. A moeda digital roubada financia o programa de armas do regime, e o próprio Departamento do Tesouro dos EUA já vinculou operações similares ao Lazarus Group.

“A campanha permanece ativa e novos pacotes maliciosos devem continuar aparecendo à medida que os atores comprometem contas de mantenedores, modificam repositórios legítimos e publicam versões infectadas onde retêm ou obtêm acesso ao registro”, escreveu Karlo Zanki, da Socket.

Quem é afetado

  • Desenvolvedores JavaScript/TypeScript que consomem pacotes de npm sem revisão de dependências transitivas.
  • Times de blockchain e Web3, alvo histórico de ataques ligados à Coreia do Norte por conta das carteiras cripto locais.
  • Empresas com ambientes CI/CD abertos, onde a instalação automática de pacotes pode escalar de máquina do desenvolvedor para pipelines de produção.
  • Usuários de VS Code e Cursor que abrem repositórios recebidos por recrutadores ou clonados de fontes não auditadas, ativando o gatilho folderOpen.
  • Ecossistemas Go e PHP, historicamente vistos como menos vulneráveis a supply chain, agora explicitamente incluídos no perímetro do ataque.

Análise

O PolinRider marca um ponto de inflexão silencioso na estratégia norte-coreana. Até 2024, o Contagious Interview era essencialmente uma operação de spearphishing dirigido a candidatos individuais em processos seletivos falsos. A escala de 108 pacotes públicos e mais de mil mantenedores atingidos indica que os operadores passaram a atacar a cadeia de suprimento diretamente, sem depender de convencer um alvo a rodar código voluntariamente.

Isso coloca o Contagious Interview ao lado dos incidentes que sacudiram o npm nos últimos dois anos — do ataque ao event-stream em 2018 aos ataques em cascata contra a linha PostCSS já noticiados aqui no Plugged Ninja em edições anteriores. A diferença, agora, é a integração explícita de VS Code tasks como vetor: o mesmo dev que instalou o pacote também pode clonar um repositório e ver o computador comprometido antes mesmo de rodar npm install.

Do ponto de vista defensivo, PolinRider expõe uma fragilidade que vinha sendo ignorada: contas de mantenedores dormentes, com domínios de e-mail expirados, ainda controlam pacotes com centenas de milhares de downloads mensais. Enquanto o npm e a Chrome Web Store não obrigarem prova periódica de posse do domínio, sequestros por takeover continuam viáveis — e são caros de detectar em auditorias reativas.

Recomendações práticas

  • Pin de versões e lockfiles auditáveis: comprometa-se com package-lock.json/pnpm-lock.yaml versionados e evite atualizações automáticas em ambientes sensíveis.
  • Bloqueie a execução automática do VS Code: defina security.workspace.trust.enabled como true e nunca marque como confiável um repositório clonado a partir de fontes não verificadas.
  • Monitore dependências dormentes: ferramentas como Socket, Snyk e OSSF Scorecard sinalizam pacotes cujo mantenedor sumiu ou cujo domínio de e-mail expirou.
  • Separe ambientes de desenvolvimento de wallets pessoais: use máquinas ou VMs dedicadas quando lidar com códigos recebidos em processos seletivos ou testes técnicos externos.
  • Adote alertas de outbound: comportamento típico do PolinRider inclui conexões a domínios recém-registrados; um EDR com regras de reputação de DNS captura o desvio antes que dados saiam.
  • Verifique extensões do Chrome: revise a lista instalada em chrome://extensions, especialmente aquelas com permissões de leitura de todos os sites.

Fonte: The Hacker News

TheNinja

Recent Posts

Medtronic confirma vazamento de dados de 3,8 milhões de pacientes em ataque atribuído ao ShinyHunters

Gigante de dispositivos médicos notifica pacientes após grupo de extorsão ShinyHunters acessar sistemas corporativos e…

6 horas ago

Decisão da Suprema Corte dos EUA sobre agências independentes ameaça acordo de transferência de dados UE-EUA

Max Schrems planeja contestar o Data Privacy Framework após corte permitir que presidentes demitam membros…

6 horas ago

Ataque de ransomware agentico usa Langflow e explora CVE-2025-3248 com LLM narrando cada passo

Grupo JadePuffer explorou vulnerabilidade crítica de autenticação ausente no framework Langflow (CVSS 9.8, na CISA…

1 dia ago

EUA suspendem controles de exportação sobre o Fable 5 da Anthropic e reabrem debate sobre IA de fronteira em cibersegurança

Após três semanas de bloqueio ao acesso global do modelo, governo americano recua. Katie Moussouris…

1 dia ago

Órgão público dos EUA pagou US$ 1 milhão ao grupo Kairos em caso de extorsão sem ransomware

Estudo de caso divulgado por Rakesh Krishnan para o Ransom-ISAC reconstrói pagamento rastreado no blockchain…

1 dia ago

Reino Unido adia Plano Nacional de Cibersegurança em meio a crise política do Labour

Renúncia de Keir Starmer e disputa pela liderança do Partido Trabalhista adiam o National Cyber…

2 dias ago