A Ameaça Esconde de Pacotes npm que Imitan Polyfills para Rollup

Autor: Publicada 4 min de lectura 227 leituras

As imagens deste artigo foram geradas com inteligência artificial. Como publicamos

Pesquisadores de segurança identificaram uma nova onda de pacotes maliciosos no ecossistema npm que imitam ferramentas legítimas de polyfilling para Rollup com a intenção explícita de obter acesso remoto e roubar credenciais e dados sensíveis desde estações de trabalho de desenvolvimento e máquinas de construção. De acordo com as análises públicas, os artefatos maliciosos eram apresentados com nomes e metadados quase idênticos a projetos conhecidos, continham um primeiro escalão que ocultava comandos codificados em Base64 e descarregavam um segundo escalão vestido como utilitários SVG que, por sua vez, recuperavam e executavam código JavaScript a partir de um repositório JSON externo; essa estrutura por etapas e as verificações de ambiente para evitar sandboxes lembram campanhas prévias atribuídas a atores norte-coreanos.

A lição técnica central é que os atacantes já não se limitam a versões troceadas de malware: constroem cadeias de fornecimento com componentes aparentemente inocuos no registro que escondem ganchos de instalação, controles de evasão e payloads que permitem tanto exfiltração de segredos (tokens npm, chaves SSH, credenciais em .env, dados de navegador e wallets) como controlo remoto do host (execução interativa, captura de tela, automação do rato e teclado). Estas capacidades são especialmente perigosas quando o pacote é incorporado em configurações locais de Rollup, ambientes de CI ou imagens de construção que já têm acesso a segredos e artefatos críticos do desenvolvimento.

A Ameaça Esconde de Pacotes npm que Imitan Polyfills para Rollup
Imagem gerada com IA.

Do ponto de vista operacional, isto amplifica um risco recorrente: o código que instalamos em tempo de desenvolvimento tem a mesma possibilidade de se tornar vetor de ataque que qualquer software de produção. É por isso preocupante que os ataques combinem nomes e meta- dados plausível, carga útil em várias etapas e execução oculta durante a instalação para burlar inspecções superficiais e controles automatizados dos registros.

Se a sua equipe tiver usado recentemente pacotes com nomes que incluem "rollup", "polyfill", "runtime" ou pacotes novos publicados por contas não verificadas, trate a situação como uma possível intrusão. As medidas iniciais devem incluir a eliminação imediata das dependências identificadas, a busca por qualquer execução de pós-install ou artefatos baixados nas máquinas de desenvolvimento e build, a rotação de credenciais expostas (tokens npm, chaves SSH, credenciais cloud) e a revogação de acessos até que a integridade do ambiente seja valizada.

Em termos preventivos e de hardening, convém adotar várias defesas complementares: configurar instalações de dependências com --ignore-scripts quando viável para bloquear hooks de instalação, usar ambientes de build isolados e efêmeros (containers ou runners com mínimo privilégio), ativar digitalização de dependências em CI/CD através de ferramentas como Dependabot ou SCA comerciais, e validar que os artefatos provem de autores e escores confiáveis. Também é recomendável auditar e fixar dependências (lockfiles), rever mudanças em transitive dependemcies antes de aceitar merges e limitar o uso de tokens de longa duração em CI.

A Ameaça Esconde de Pacotes npm que Imitan Polyfills para Rollup
Imagem gerada com IA.

Para pesquisas e detecção, procure indicadores como chamadas a JSONKeeper ou outros serviços de armazenamento de snippets, conexões de saída para IPs ou domínios suspeitos desde ambientes de desenvolvimento, processos que invoquem @nut-tree-fork/nut-js em hosts Windows e atividade incomum lendo arquivos de configuração de editores ou ferramentas de IA. Se detectar compromisso, capture logs e amostras antes de reiniciar, e considere reconstruir imagens dos sistemas afetados de fontes limpas se houver evidência de persistência.

As ferramentas e recursos públicos ajudam a automatizar parte do trabalho: os equipamentos devem integrar scanners de dependências e listas de bloqueio no pipeline, e usar projetos de auditoria como o OWASP para dependência e composição de software. Mais informações sobre riscos e boas práticas estão disponíveis nas publicações e guias da indústria, por exemplo no blog de pesquisa do JFrog e em recursos sobre gestão de dependências e segurança de repositórios. Pode começar a rever orientação prática https://jfrog.com/blog/ e estudar ferramentas de análise de composição em https://owasp.org/www-project-dependency-check/.

Finalmente, não perca de vista que este tipo de campanhas faz parte de uma tendência mais ampla de envenenamento da cadeia de fornecimento: a prevenção efetiva requer políticas organizativas (princípio de menor privilégio, rotação periódica de segredos, 2FA e tokenização) além de controles técnicos. Active a digitalização de dependências na CI, trate como críticos os pacotes novos de domínios não verificados e mantenha procedimentos de resposta que considerem a possibilidade real de exfiltração e controle remoto de ambientes de desenvolvimento e build.

Cobertura

Relacionadas

Mas notícias do mesmo assunto.