Seu produto depende de cerca de 1.200 pacotes npm que ninguém auditou, e cada um é porta de entrada. Segurança de supply chain chegou à pauta de conselhos porque ataques recentes comprometeram pipelines de build inteiros através de um único pacote bem mantido. São cinco frentes técnicas e nenhuma exige reescrever o produto; o custo de prevenção é fração do custo de um build comprometido em produção.
A superfície de ataque em números
Uma aplicação moderna arrasta centenas a milhares de dependências transitivas: você audita 80 pacotes diretos e herda mais de mil sem ler uma linha. O padrão dos ataques se repete, comprometer o mantenedor de um pacote popular e aguardar o próximo release. Ferramentas como npm ls e Syft mapeiam a árvore em minutos; inventário vem antes de política. Um único pacote transitivo comprometido basta; o atacante nunca toca no seu código-fonte. Cada PR que adiciona biblioteca amplia a superfície.
Lockfile, pinning e automação com gate humano
- Commite o lockfile e bloqueie merge sem ele.
- Fixe versões exatas nos caminhos críticos de execução.
- Revise o diff completo em PRs de dependência, além do changelog.
- Rode Renovate ou Dependabot para propor atualizações, com aprovação humana obrigatória.
O gate humano importa: automação propõe, pessoa aprova, e o histórico de revisão fica registrado para auditoria.
SBOM e procedência: prova em vez de promessa
Gere uma SBOM por artefato de release; reguladores e clientes enterprise já pedem o documento em processos de compra. Ferramentas de CI produzem SBOM a custo quase zero. Assinatura com Sigstore e atestados de provenance do npm comprovam que o artefato saiu da fonte declarada; replique a verificação nos registries internos.
Fornecedores e plano de incidente
Componentes de terceiros merecem questionário cobrindo status de manutenção e histórico de resposta a CVEs. Pergunte quantos mantenedores ativos o componente tem: pacote com mantenedor único carrega risco de concentração, uma pessoa desaparece e cem aplicações ficam expostas. Decida antes do incidente quem autoriza upgrade emergencial, como congelar deploys e como avisar clientes quando um CVE atinge produção. Improvisar essas chamadas durante a crise multiplica o dano.
O sinal que cabe à liderança
Trabalho de segurança compete com features pela capacidade do time. Aloque 10% a 15% do tempo de engenharia de forma permanente para esse backlog: sem cota fixa, o roadmap ganha todas as sprints e o risco cresce calado. Um incidente de dependência em produção consome semanas de remediação; a cota preventiva custa fração disso. Verba comunica prioridade melhor que discurso de abertura de trimestre.