🔒 Vault
alpha · escrito em Rust · MIT

Auditar primeiro.
Instalar depois.

Um gerenciador de pacotes Node.js seguro, no estilo pnpm, que bloqueia ativamente ataques de cadeia de suprimentos antes de extrair qualquer arquivo.

$ npm install -g vaultpm

Instala os comandos vault e vt. A própria instalação do Vault roda zero scripts de postinstall.

Segurança embutida no instalador

Não é um scanner que você roda depois. O próprio gerenciador de pacotes é o guarda.

🛡️

Bloqueio de CVE pré-instalação

Cada pacote é verificado no OSV.dev antes do download. CVEs críticos são bloqueados, não apenas reportados.

🔬

Análise de scripts

Varredura resistente a ofuscação de preinstall/postinstall contra roubo de credenciais, exfiltração e payloads via eval.

🧬

Sequestro de mantenedor

Sinaliza versões publicadas recentemente e mudanças no conjunto de mantenedores entre instalações — o padrão clássico de takeover.

🎯

Detecção de typosquat

Pega nomes parecidos (expresss, crossenv) antes de você instalar o pacote errado.

📦

Sandbox Landlock

Scripts de ciclo de vida rodam sob um sandbox do kernel, sem acesso a ~/.ssh, ~/.aws ou à rede.

💽

Store endereçado por conteúdo

Store global + hard links, igual ao pnpm. Dez projetos usando lodash = uma cópia no disco.

Como ele se compara

Análise no estilo Socket, embutida num gerenciador de pacotes nativo — open source.

 VaultSocket / Aikidosnpm / rnpmpnpm 10 / bun
É um gerenciador de pacotes✗ envolve o npm
Scan de CVE pré-instalaçãoparcial
Análise estática de scripts
Sandbox de kernel✓ Landlock
Open source e autocontido✗ SaaS

O Vault é o primeiro gerenciador de pacotes nativo open-source onde a análise de segurança está embutida no próprio instalador. Veja os benchmarks honestos.

Rápido e seguro

Segurança costuma significar "mais lento". O Vault recusa esse trade-off — no cache quente é ~2× mais rápido que o pnpm (e empata no frio), auditando cada dependência.

GerenciadorCache frioCache quenteAudita deps?
vault3,7s1,3s 🥇
pnpm2,8s2,1s
npm8,0s3,5s

Uma execução back-to-back · árvore de ~150 pacotes · scripts desativados em todos. Tempos variam com a rede; a ordem no frio vs pnpm muda entre execuções. Reproduza: BENCHMARKS.md.

O pipeline

Um pacote malicioso é rejeitado só pelos metadados — antes de qualquer arquivo tocar o disco.

package.json │ ▼ resolver o grafo ──▶ AUDITORIA (metadados, antes do download) ├── busca de CVE no OSV.dev ├── scan estático dos scripts de instalação ├── sequestro de mantenedor + typosquat └── política ── BLOQUEIA ──▶ aborta (nada extraído) │ ▼ (limpo) verifica SHA-512 ──▶ store por conteúdo ──▶ node_modules ──▶ vault.lock