1

Fiz um gerenciador de pacotes que se RECUSA a instalar pacote com CVE conhecido

O npm audit te avisa da vulnerabilidade depois que ela já está no seu
node_modules — junto com qualquer postinstall que o pacote trouxe. Pra
ataque de supply-chain, "depois" não serve.

Então construí o Vault: gerenciador de pacotes compatível com npm, estilo
pnpm, escrito em Rust, que faz a checagem de segurança fazer parte do install.

Antes de escrever qualquer coisa no node_modules ele:

  • bloqueia CVE crítico/high (OSV + static scan) — dá pra --force, mas você
    assume;
  • não roda lifecycle script (postinstall) por padrão e instala num sandbox
    (Landlock);
  • avisa de pacote publicado agora há pouco ou queda no nº de maintainers
    (sinal de conta comprometida).

Caso real: com "vite": "^5.4.11", npm/pnpm instalam a 5.4.21 calados —
que está no range do GHSA-fx2h-pf6j-xcff (CVSS 8.2). O vault barrou:

✗ BLOCKED vite@5.4.21: critical/high CVE(s): GHSA-fx2h-pf6j-xcff

E o melhor: com cache quente fica a ~0,2s do pnpm mesmo auditando tudo. A
segurança sai praticamente de graça.

Tá no começo (v0.1.3) e quero feedback sincero, principalmente onde o
bloqueio-por-padrão atrapalha.

npm i -g vaultpm   (binários: vault / vt)

Repo: https://github.com/Matheusagostinho/vaultpm

Carregando publicação patrocinada...