Voltar às atualizações
New releaseSep 1, 2026

vet v1.19.0

Proteja-se contra pacotes de código aberto maliciosos 🤖

Compartilhar

SafeDep vet

Encontre pacotes maliciosos, vulnerabilidades e fluxos de trabalho de CI de risco antes que cheguem à produção.

[!NOTE] Este branch é o vet v2, em alpha. O vet v1 está em main e continua sendo a versão mais recente. As notas de versão do v2.0.0 mapeiam cada comando e flag do v1 para o v2.

Por que usar o vet

Suas dependências, seus fluxos de trabalho do GitHub Actions e suas configurações de agentes de IA executam código que você não escreveu. O vet encontra o risco neles.

  • Pacotes maliciosos. O vet verifica cada pacote com o SafeDep Threat Intel. O Threat Intel analisa novas versões de pacotes quando os registries as publicam.
  • Vulnerabilidades conhecidas, com a versão corrigida para a qual atualizar.
  • Fluxos de trabalho de risco. Gatilhos perigosos, injeção de template, segredos expostos e actions sem commit SHA fixado.
  • Adulteração de lockfile e versões recentes. Entradas de um registry não confiável e versões dentro da janela de cooldown.
  • Política como código. Regras em CEL decidem quando uma varredura falha. Você pode testar uma regra em uma varredura salva.
  • Inventário de IA e criptografia. O vet lista as bibliotecas de IA e os algoritmos criptográficos que seu código chama, e gera um CycloneDX xBOM e CBOM.

O vet não precisa de conta e não envia código-fonte.

Início rápido

brew install --cask safedep/tap/vet@edge
vet scan

vet scan encontra um pacote malicioso, vulnerabilidades e injeção de workflow

vet scan --fail-on high                         # exit 1 on a high or critical finding
vet scan --base-ref origin/main --fail-on high  # report only what a pull request changes
vet report show --report sarif=vet.sarif        # write SARIF from the saved scan, with no new scan

Instalação

CanalComando
Homebrewbrew install --cask safedep/tap/vet@edge
misemise use -g 'github:safedep/vet[prerelease=true]@2'
Gogo install github.com/safedep/vet/v2/cmd/vet@latest
Containerdocker run --rm -v "$PWD:/src" -w /src ghcr.io/safedep/vet:v2-latest scan

O mise instala uma versão um dia após a sua publicação. O install.md contém o comando para a compilação mais recente, os binários de versão e as atestações de compilação.

O que o vet analisa

AlvoExemplo
Um diretório (o padrão)vet scan, vet scan ./service
Um repositório gitvet scan https://github.com/safedep/vet
Uma imagem de containervet scan oci://alpine:3.20, vet scan image.tar
Um SBOM (CycloneDX ou SPDX)vet scan sbom.cdx.json
Um pacotevet scan pkg:npm/[email protected]
As ferramentas nesta máquinavet endpoint audit

O vet lê os lockfiles e manifests de npm, PyPI, Go, Maven, Gradle, Cargo, RubyGems, NuGet, Packagist, Pub e outros. Também lê os workflows do GitHub Actions e as configurações de agentes de IA do alvo. Não instala nem executa nenhum deles. Os controles transformam esses dados em descobertas. Consulte controls.md.

Política

Uma política decide quando uma análise falha. Salve este arquivo como vet-policy.yml:

version: 2
rules:
  - id: no-malware
    description: A malicious or suspicious package fails the build.
    when: finding.family == "malware"
    action: fail
  - id: no-workflow-injection
    when: finding.control_id in ["dangerous-trigger", "template-injection"]
    action: fail
  - id: no-critical-vulnerability
    when: finding.control_id == "vulnerability" && finding.severity == "critical"
    action: fail
  - id: new-dependency-age
    description: A pull request cannot add a version that is less than 14 days old.
    when: package.change == "ADDED" && has(package.days_since_publish) && package.days_since_publish < 14
    action: fail
suppressions:
  - purl: pkg:npm/[email protected]
    reason: The upgrade to 4.18.1 is in pull request 42.
    expires: 2026-12-31

Teste-o na última varredura, sem uma nova varredura. Em seguida, aplique-o a um pull request:

vet report show last --policy vet-policy.yml
vet scan --base-ref origin/main --policy vet-policy.yml

Após a data de expiração, a supressão deixa de ocultar o achado. Leia policy.md para os campos de regra, mais regras e a Agent Skill que escreve uma política para você.

Casos de uso

  • Verificação de pull request. A vet GitHub Action comenta em um pull request que adiciona um pacote, um workflow ou um achado, e falha a verificação em caso de ataque. vet ci init adiciona-a a um repositório.
  • Gate de CI. Códigos de saída, SARIF para o GitHub code scanning, relatórios do GitLab e do Bitbucket. Veja ci.md.
  • Revisão de pull request. --base-ref relata apenas os pacotes e workflows que uma alteração adiciona.
  • xBOM e CBOM. Um inventário CycloneDX 1.7 das bibliotecas de IA e da criptografia que seu código utiliza. Veja inventory.md.
  • Agentes de IA. vet encontra o Claude Code e outros agentes, e então escreve JSON e nunca solicita entrada.
  • Auditoria de endpoint. vet endpoint audit lista as ferramentas de IA, servidores MCP, extensões de editor e pacotes npm globais em uma máquina de desenvolvedor, e os verifica em busca de malware.

Documentação

Categorias