detecting-malicious-npm-packages
Permite ao agente verificar pacotes npm em busca de malware e roubo de credenciais. Ajuda a garantir a segurança de dependências de software e a investigar pacotes suspeitos.
O que ela faz
Esta ferramenta ajuda a verificar se pacotes de software (chamados de 'pacotes npm') para desenvolvimento de programas contêm código malicioso. Ela procura por programas que tentam roubar informações, se espalhar ou executar ações indesejadas.
Quando usar
- ✓Ao adicionar um novo pacote de software ao seu projeto.
- ✓Ao revisar o código de outra pessoa para garantir que não há riscos.
- ✓Quando alertado sobre uma versão perigosa de um pacote já em uso.
Exemplo do que pedir para a IA
“Verifique o pacote 'expresss' por código malicioso.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta usa um scanner chamado GuardDog para analisar o código do pacote sem executá-lo. Ela também pode simular a instalação do pacote em um ambiente seguro para observar seu comportamento.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-malicious-npm-packagesOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/detecting-malicious-npm-packages/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Detecção de Pacotes Maliciosos no npm
Aviso Legal: Analise pacotes em um ambiente isolado e descartável. Alguns pacotes maliciosos executam na instalação (
npm installexecuta scripts de ciclo de vida automaticamente) ou na importação. Nunca analise um pacote suspeito em uma estação de trabalho com credenciais, chaves SSH, tokens de nuvem ou acesso de rede à produção. Esta habilidade é apenas para análise defensiva e resposta a incidentes autorizada.
Visão Geral
O registro npm é o maior ecossistema de pacotes de software do mundo e o mais visado por atacantes da cadeia de suprimentos. Pacotes maliciosos chegam às vítimas por meio de typosquatting (expresss, crossenv), confusão de dependências, tomada de conta/mantenedor (o worm Shai-Hulud de 2025 e a violação event-stream são exemplos canônicos) e starjacking. O perigo definidor do npm é que npm install executa automaticamente preinstall, install e postinstall scripts de ciclo de vida com os privilégios totais do desenvolvedor antes que qualquer código de aplicação seja invocado — então, simplesmente instalar um pacote é o suficiente para ser comprometido. Aproximadamente 2% dos pacotes npm usam scripts de instalação, o que os torna comuns e um poderoso veículo de entrega de malware.
Comportamentos maliciosos típicos são: exfiltração de variáveis de ambiente, tokens ~/.npmrc, chaves SSH e credenciais de nuvem para um URL controlado pelo atacante; abertura de shells reversos; instalação de mineradores de criptomoedas; leitura e postagem de process.env; ofuscação de payloads com base64/eval; e auto-propagação (worming) roubando o token npm do mantenedor e republicando versões trojanizadas de outros pacotes que eles possuem.
Esta habilidade fornece um fluxo de trabalho de triagem repetível centrado no GuardDog (scanner heurístico de código aberto da Datadog construído sobre Semgrep + regras de metadados), complementado por inspeção manual de tarballs, verificações de comprometimento baseadas em lockfile contra listas de versões conhecidas como maliciosas e detonação dinâmica com monitoramento de rede e sistema de arquivos. O objetivo é decidir, de forma rápida e segura, se um determinado pacote ou a árvore de dependências de um projeto contém código malicioso.
Quando Usar
- Triagem de um pacote npm específico antes de adicioná-lo como dependência.
- Verificação de um
package.json/package-lock.jsoncompleto durante a revisão de código ou integração de uma biblioteca de terceiros. - Resposta a um aviso de cadeia de suprimentos (por exemplo, uma campanha de worm) e necessidade de verificar se seus lockfiles puxaram uma versão conhecida como maliciosa.
- Investigação de um endpoint ou runner de CI suspeito de ter instalado um pacote trojanizado.
- Construção de um portão de pré-instalação em CI/CD que bloqueia pacotes que exibem indicadores maliciosos.
Pré-requisitos
- Uma VM isolada ou contêiner descartável sem credenciais de produção e capacidade de snapshot/rollback.
- GuardDog:
pip install guarddog # or run via Docker without local install: docker pull ghcr.io/datadog/guarddog alias guarddog='docker run --rm ghcr.io/datadog/guarddog' - Node.js + npm (use
--ignore-scriptsao baixar para análise). jq,tare, opcionalmente, OSV-Scanner para verificações cruzadas de vulnerabilidade conhecida/malicioso conhecido:go install github.com/google/osv-scanner/cmd/osv-scanner@v1- Para análise dinâmica: um sandbox com log de saída (por exemplo,
tcpdump, um DNS sink ou um namespace de rede).
Objetivos
- Escanear estaticamente um pacote npm (ou uma árvore de dependências inteira) em busca de heurísticas maliciosas sem executá-lo.
- Identificar abuso de script de instalação, exfiltração de ambiente/credenciais, ofuscação e execução silenciosa de processos.
- Cruzar versões fixadas em lockfile com listas de versões conhecidas como maliciosas / OSV.
- Detonar com segurança um pacote suspeito e observar o comportamento de rede e sistema de arquivos.
- Extrair indicadores de comprometimento (URLs, IPs, hashes) para bloqueio e inteligência de ameaças.
- Produzir um veredito defensável (benigno / suspeito / malicioso) com evidências.
Mapeamento MITRE ATT&CK
| ID da Técnica | Nome da Técnica | Relevância |
|---|---|---|
| T1195.002 | Supply Chain Compromise: Compromise Software Supply Chain | Técnica principal — pacote npm trojanizado entregue através do registro. |
| T1059.007 | Command and Scripting Interpreter: JavaScript | Scripts de instalação maliciosos / código do módulo executam JavaScript do atacante. |
| T1552.001 | Unsecured Credentials: Credentials In Files | Pacotes roubam ~/.npmrc, .env, chaves SSH e arquivos de credenciais de nuvem. |
| T1041 | Exfiltration Over C2 Channel | Segredos roubados postados em endpoints HTTP(S) do atacante. |
…
Perguntas frequentes
Por que instalar um pacote pode ser perigoso?
Alguns pacotes executam códigos automaticamente durante a instalação, que podem roubar suas senhas ou chaves de acesso antes mesmo do seu programa principal começar a rodar.
O que são 'scripts de instalação'?
São pequenos programas que rodam quando um pacote é instalado. Pacotes maliciosos podem usar esses scripts para fazer coisas ruins.
O que é 'GuardDog'?
É um programa de segurança que analisa código em busca de padrões suspeitos ou maliciosos, ajudando a identificar pacotes perigosos.
Detalhes
Descrição original do autor
Triage npm packages and lockfiles for install-script malware, credential exfiltration, and worming behavior using GuardDog, manual tarball inspection, and dynamic detonation with network/filesystem monitoring. Use when vetting a new dependency, reviewing a package.json/package-lock.json during code review, checking lockfiles against a supply-chain advisory's known-bad versions, or investigating a
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5682
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC