Checklist de Segurança APM: O Que Todo Dev Precisa Antes de Publicar

Checklist de Segurança APM: O Que Todo Dev Precisa Antes de Publicar

Mai 20, 2026 npm security package management supply chain security developer best practices ci/cd security code review malware prevention open source security

O Checklist de Segurança para Publicar Pacotes npm que Todo Desenvolvedor Deve Seguir

Publicar pacotes no npm é mais do que simplesmente compartilhar código. Em um ecossistema tão conectado, um único erro pode abrir portas para ataques sérios. Muitos incidentes recentes mostram que o problema não está apenas no código, mas na forma como os pacotes são preparados e distribuídos.

Por que revisar segurança antes de publicar

Um pacote npm pode chegar a milhares de projetos. Essa amplitude transforma o repositório em um alvo atrativo para quem busca credenciais ou acesso a ambientes de CI/CD. A boa notícia é que a maioria desses riscos pode ser evitada com atenção e ferramentas adequadas.

Os 12 principais vetores de ataque no npm

1. Roubo de conta e publicação maliciosa

Se as credenciais do npm forem comprometidas, um atacante pode publicar uma versão adulterada do seu pacote. O impacto é imediato: todos os usuários que instalam a nova versão recebem código malicioso.

Como se proteger:

  • Ative a autenticação em duas etapas na sua conta
  • Use tokens com permissões limitadas, em vez da senha principal
  • Configure aprovações para publicações sensíveis
  • Acompanhe de perto os registros de publicação

2. Scripts de instalação: quando a instalação vira execução de código

Hooks como preinstall e postinstall permitem que o pacote execute código durante a instalação. Um atacante com acesso ao pacote pode usar essas hooks para rodar scripts maliciosos antes mesmo de o código principal ser carregado.

Mitigações:

  • Revise todos os scripts de instalação presentes no package.json
  • Pergunte-se se realmente precisa de execução de código nesse estágio
  • Mantenha os hooks existentes o mais simples e transparentes possível
  • Prefira alternativas que rodem em tempo de build, em vez de instalação

3. Vermes auto-replicantes

Algas alguns pacotes modificam outros pacotes dentro do node_modules, spreads de código maligno através do di

4. Ataques na camada de identidade do CI/CD

Os tokens e credenciais presentes em pipelines de CI/CD são extremamente valiosos. Se um pacote infiltrado consegue entrar em um pipeline, ele pode acessar esses direitos erweiterten.

Defesa em profundidade:

  • Usar credenciais com escopo mínimo para cada etapa
  • Rotacionar tokens com frequência
  • Não codificar credenciais em scripts do package.json
  • Considerar OpenID Connect para autenticação
  • Monitorar quem tem acesso aos segredos de publicação

5. Dependências via Git como vetor de contrabando

Dependências instaladas diretamente de repositórios Git podem bypassar controles do npm. Um atacante pode hospedar uma versão maliciosa e levar usuários a instalar da fonte incor

6. Dependências dinâmicas remotas

Algas pacotes dinm

Read in other languages:

RU BG EL CS UZ TR SV FI RO PL NB NL HU IT FR ES DE DA ZH-HANS EN