O popular pacote NPM 'is' foi comprometido em um ataque à cadeia de fornecimento que injetou backdoor malware, concedendo aos atacantes acesso total aos dispositivos comprometidos.
Isso ocorreu após contas de mantenedores serem sequestradas via phishing, seguido por mudanças não autorizadas de proprietário que passaram despercebidas por várias horas, potencialmente comprometendo muitos desenvolvedores que baixaram as novas versões.
O pacote 'is' é uma biblioteca de utilitários JavaScript leve que fornece uma ampla variedade de funções de verificação de tipo e validação de valor.
O software tem mais de 2.8 milhões de downloads semanais no índice de pacotes NPM.
É amplamente utilizado como uma dependência de utilidade de baixo nível em ferramentas de desenvolvimento, bibliotecas de teste, sistemas de construção e projetos de backend e CLI.
Em 19 de julho de 2025, o principal mantenedor do pacote, John Harband, anunciou que as versões 3.3.1 até 5.0.0 continham malware e foram removidas aproximadamente 6 horas após os atores de ameaça as submeterem ao npm.
Isso foi o resultado do mesmo ataque à cadeia de suprimentos do NPM que utilizou o domínio falso 'npnjs[.]com' para capturar credenciais de mantenedores e, então, publicar versões contaminadas de pacotes populares.
Além de 'is', os seguintes pacotes foram confirmados por estar veiculando malware, comprometidos no mesmo ataque:
- eslint-config-prettier (8.10.1, 9.1.1, 10.1.6, 10.1.7)
- eslint-plugin-prettier (4.2.2, 4.2.3)
- synckit (0.11.9)
- @pkgr/core (0.2.8)
- napi-postinstall (0.3.1)
- got-fetch (5.1.11, 5.1.12)
Relatórios do Socket indicam que 'is' contém um carregador de malware JavaScript multiplataforma que abre um backdoor baseado em WebSocket, habilitando execução remota de código.
"Uma vez ativo, ele consulta o módulo os do Node para coletar o hostname, sistema operacional e detalhes da CPU, e captura todas as variáveis de ambiente de process.env," explica Socket.
"Em seguida, importa dinamicamente a biblioteca ws para exfiltrar esses dados por uma conexão WebSocket."
"Cada mensagem recebida pelo socket é tratada como JavaScript executável, dando ao ator de ameaça um shell remoto interativo instantâneo."
Os pesquisadores também analisaram o payload em 'eslint' e no restante dos pacotes, encontrando um infostealer para Windows chamado 'Scavanger', que visa informações sensíveis armazenadas em navegadores web.
O malware possui mecanismos de evasão como syscalls indiretos, comunicações encriptadas de comando e controle (C2), mas pode disparar alertas de segurança no Chrome devido à manipulação de flags.
Com base no padrão de ataque, os atores de ameaça podem ter comprometido credenciais adicionais de mantenedores e estão se preparando para experimentar com payloads mais furtivos em novos pacotes de software.
Para prevenir isso, mantenedores devem redefinir suas senhas e rotacionar todos os tokens imediatamente, e os desenvolvedores devem utilizar apenas as versões conhecidas por serem seguras, anteriores a 18 de julho de 2025.
A atualização automática deve ser desativada, enquanto arquivos de bloqueio podem ser usados para congelar lançamentos em versões específicas de dependência.
Publicidade
Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...