Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
deptrust — Servidor CLI e MCP que verifica versões de pacotes em busca de vulnerabilidades conhecidas em mais de 14 ecossistemas, incluindo npm, PyPI, crates.io, módulos Go e GitHub Actions. Integra-se com agentes de IA por meio de hooks e skills. | Kitploit
Ferramentas/GitHubGitHub/clidey/deptrust
Scanners de VulnerabilidadesScripting e AutomaçãoSegurança na NuvemDevSecOpsDetecção de SegredosSegurança da Cadeia de SuprimentosSegurança de API
GitHubclidey/deptrust

deptrust

Servidor CLI e MCP que verifica versões de pacotes em busca de vulnerabilidades conhecidas em mais de 14 ecossistemas, incluindo npm, PyPI, crates.io, módulos Go e GitHub Actions. Integra-se com agentes de IA por meio de hooks e skills.

Ver Repositório
603há 1 diaRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

deptrust

root@kitploit:~
     __           __                  __
 ___/ /___  ___  / /________  _______/ /_
/ _  / __ \/ _ \/ __/ ___/ / / / ___/ __/
/  __/ /_/ /  __/ /_/ /  / /_/ (__  ) /_
\__,_/\____/ .___/\__/_/   \__,_/____/\__/
           /_/

O deptrust é um CLI que verifica versões de pacotes quanto a vulnerabilidades conhecidas em npm, PyPI, crates.io, módulos Go, RubyGems, NuGet, Maven, Packagist, pub.dev, CocoaPods, Hex.pm, Hackage, GitHub Actions e outros.

Ele é executado localmente como CLI e como servidor MCP. Ele chama diretamente as APIs públicas de registros de pacotes e da OSV; não existe um serviço deptrust hospedado em que confiar ou que configurar.

Esta ferramenta nasceu da frustração que são agentes de IA usando constantemente versões antigas.

Conteúdo

  • Escopo
  • Uso do CLI
  • Instalação
  • Configuração do Agente
  • Configuração Manual do MCP
  • Ferramentas MCP
  • Uso Somente com Skill
  • Solução de Problemas

Escopo

Ecossistemas suportados:

  • npm, incluindo pacotes com escopo como @clidey/ux
  • PyPI
  • Cargo / crates.io
  • módulos Go
  • RubyGems
  • NuGet
  • Maven, usando nomes de pacote groupId:artifactId
  • Packagist / Composer, usando nomes de pacote vendor/package
  • pub.dev
  • CocoaPods
  • Hex.pm
  • Hackage
  • GitHub Actions, usando nomes de pacote owner/repo e tags, referências de branch ou SHAs de commit como versões

O deptrust atualmente reporta vulnerabilidades conhecidas e dá uma recomendação simples:

Maior gravidade conhecidaRecomendação
criticalblock
highblock
medium / unknownreview
lowallow

allow significa que nenhuma vulnerabilidade conhecida bloqueante foi encontrada nas fontes de dados públicas. Isso não prova que um pacote é seguro.

O deptrust também emite sinais de risco que não são CVEs. Por exemplo, uma versão publicada nas últimas 72 horas é marcada para revisão para que um agente não instale cegamente uma versão recém-lançada.

Os provedores de avisos são consultados em paralelo:

  • OSV
  • GitHub Advisory Database, incluindo avisos revisados e avisos de malware

A cobertura dos provedores varia por ecossistema. Se o deptrust conseguir resolver os metadados do registro, mas nenhum provedor de vulnerabilidades configurado for compatível com aquele ecossistema, ele retorna unknown em vez de tratar o pacote como seguro.

Cobertura dos provedores:

A saída JSON inclui campos de cobertura de avisos:

  • checked_providers: provedores de vulnerabilidade que o deptrust realmente consultou
  • skipped_providers: provedores configurados ignorados porque o ecossistema não é suportado
  • advisory_coverage: full, partial, none ou error
  • advisory_coverage_reason: breve explicação para o valor de cobertura
  • registry_verification: verified quando os metadados do registro confirmaram a versão, ou unverified quando uma verificação de versão exata continuou após uma falha transitória do registro
  • registry_verification_reason: o erro do registro quando a verificação não estava disponível

Uma verificação de versão exata ainda consulta os provedores de avisos quando a verificação do registro está temporariamente indisponível. Esse resultado é sempre não instalável e nunca recebe uma recomendação allow. Verificações de latest, de pacotes desconhecidos e de versões definitivamente inexistentes ainda exigem resolução bem-sucedida do registro.

Requisições HTTP repetem respostas 429, 502, 503 e 504 em até três tentativas no total. As novas tentativas usam atrasos exponenciais curtos e respeitam valores Retry-After de até dois segundos; esperas mais longas solicitadas pelo servidor falham rapidamente para que o CLI não trave. Tentativas de avisos esgotadas tornam o resultado incompleto e impedem uma recomendação allow.

Autenticação da API do GitHub

Requisições ao GitHub Advisory Database e à API do GitHub Actions podem usar um token de GitHub App de curta duração e privilégio mínimo. Em CI, passe-o via DEPTRUST_GITHUB_TOKEN:

root@kitploit:~
DEPTRUST_GITHUB_TOKEN="$GITHUB_APP_TOKEN" deptrust check npm lodash 4.17.20

A precedência de credenciais é DEPTRUST_GITHUB_TOKEN, GITHUB_TOKEN e depois GH_TOKEN. Para uso local, o fallback opcional da CLI do GitHub é ativado explicitamente com DEPTRUST_GITHUB_AUTH=gh deptrust check ...; ele executa gh auth token sem solicitar entrada. Se nenhuma credencial estiver disponível, o DepTrust continua sem autenticação. Uma falha de limite de taxa ou de permissão da API do GitHub produz unknown com diagnósticos e nunca é tratada como sucesso somente via OSV.

O DepTrust nunca armazena, agrupa, cacheia, registra em log, telemetra ou emite tokens do GitHub. Os cabeçalhos de autenticação são enviados somente para https://api.github.com.

Uso do CLI

Verifique uma versão exata:

root@kitploit:~
deptrust check npm lodash 4.17.20

Exemplo de resposta normal:

root@kitploit:~
npm [email protected]: 2 known vulnerabilities found
recommendation: block
risk_score: 80

Verifique a versão mais recente:

root@kitploit:~
deptrust check pypi requests latest

Retorne JSON:

root@kitploit:~
deptrust check --json cargo serde latest

Verifique um módulo Go:

root@kitploit:~
deptrust check go golang.org/x/crypto latest

Verifique RubyGems, NuGet ou Maven:

root@kitploit:~
deptrust check rubygems rails latest
deptrust check nuget Newtonsoft.Json latest
deptrust check maven org.apache.logging.log4j:log4j-core latest

Verifique Packagist, pub.dev, CocoaPods, Hex.pm, Hackage ou GitHub Actions:

root@kitploit:~
deptrust check packagist monolog/monolog latest
deptrust check pub http latest
deptrust check cocoapods AFNetworking latest
deptrust check hex plug latest
deptrust check hackage aeson latest
deptrust check github-actions actions/checkout v7.0.0
deptrust check github-actions actions/checkout main

Para GitHub Actions, SHAs completos de commit são tratados como fixados (pinned). Tags semver completas como v4.2.2 são aceitas sem um sinal extra de fixação. Tags apenas com a major como v4 e referências de branch como main são refs válidas, mas o deptrust adiciona um sinal de revisão porque elas podem mudar.

Exemplo de resposta JSON:

root@kitploit:~
{
  "ecosystem": "npm",
  "package": "lodash",
  "version": "4.17.20",
  "latest_version": "4.17.21",
  "known_vulnerabilities_found": true,
  "safe_to_use": false,
  "should_install": false,
  "risk_score": 80,
  "recommendation": "block",
  "classification": "vulnerable",
  "reason": "Found 2 known vulnerability records.",
  "next_action": "do_not_install; use suggest_safe_version or compare_versions to choose a safer version",
  "summary": "lodash 4.17.20 has 2 known vulnerabilities, including high severity. Block this exact version and prefer a fixed release.",
  "signals": [],
  "checked_providers": [
    "OSV",
    "GitHub Advisory DB"
  ],
  "skipped_providers": [],
  "advisory_coverage": "full",
  "advisory_coverage_reason": "all configured vulnerability providers were checked",
  "registry_verification": "verified",
  "vulnerabilities": [
    {
      "id": "GHSA-35jh-r3h4-6jhm",
      "aliases": [
        "CVE-2021-23337"
      ],
      "cve_ids": [
        "CVE-2021-23337"
      ],
      "ghsa_ids": [
        "GHSA-35jh-r3h4-6jhm"
      ],
      "summary": "Command Injection in lodash",
      "severity": "high",
      "source": "OSV",
      "advisory_url": "https://github.com/advisories/GHSA-35jh-r3h4-6jhm",
      "affected_ranges": [
        "SEMVER: introduced 0, fixed 4.17.21"
      ],
      "fixed_versions": [
        "4.17.21"
      ],
      "references": [
        {
          "type": "ADVISORY",
          "url": "https://github.com/advisories/GHSA-35jh-r3h4-6jhm"
        }
      ]
    }
  ],
  "provider_errors": []
}

Sugira a versão mais recente somente quando nenhuma vulnerabilidade conhecida for encontrada:

root@kitploit:~
deptrust suggest npm lodash

Se a versão mais recente não for permitida, o suggest verifica versões conhecidas mais antigas e retorna a versão mais nova com uma recomendação allow.

Quando os avisos incluem versões corrigidas, o suggest verifica primeiro essas versões corrigidas informadas pelos provedores antes de percorrer de volta a lista de versões do registro.

Compare duas versões:

root@kitploit:~
deptrust compare npm lodash 4.17.20 4.17.21

Exemplo de resposta de comparação:

root@kitploit:~
lodash 4.17.20 -> 4.17.21 improves risk: score 80 to 0.
recommendation: allow
next_action: upgrade_to_target

Mostre a versão instalada:

root@kitploit:~
deptrust version

Instalação

O caminho mais fácil de instalação é npx ou pnpx:

root@kitploit:~
npx @clidey/deptrust install
pnpx @clidey/deptrust@latest install

O instalador padrão é guiado. Ele instala o binário, pergunta quais integrações de agente configurar, imprime os destinos em nível de usuário antes de alterar qualquer coisa e pede confirmação. O instalador guiado habilita por padrão o MCP, o fallback de skill e os hooks de segurança de dependências para Codex e Claude Code. Adicione --yes para instalações não interativas somente do binário, ou passe sinalizadores de integração explícitos.

Executar o instalador novamente é seguro. Ele deixa silenciosamente intacta a configuração existente e inalterada de MCP, skills e hooks. Se uma integração apontar para um binário antigo do deptrust ou se a configuração gerenciada dela tiver mudado, o instalador a atualiza automaticamente; os usuários não precisam remover e readicionar manualmente os servidores MCP. Skills personalizadas recebem backup antes da substituição.

Para remover o binário em nível de usuário, a skill e as entradas MCP:

root@kitploit:~
npx @clidey/deptrust uninstall
pnpx @clidey/deptrust@latest uninstall

Usuários de Homebrew podem instalar a partir do tap do Clidey:

root@kitploit:~
brew install clidey/tap/deptrust

Ou adicione o tap primeiro e depois instale e atualize como de costume:

root@kitploit:~
brew tap clidey/tap
brew install deptrust
brew upgrade deptrust

O Homebrew imprime um lembrete após a instalação. Para executar a configuração guiada do Codex e do Claude Code usando o próprio binário do Homebrew (registros MCP e hooks de segurança de dependências):

root@kitploit:~
deptrust setup

A configuração guiada pergunta antes de habilitar o MCP e os hooks de segurança de dependências. Ela deixa intactos os registros que já usam o binário atual e reconcilia registros DepTrust existentes que apontam para um caminho antigo de instalação via npm, Homebrew ou fonte.

Usuários de Go podem instalar diretamente:

root@kitploit:~
go install github.com/clidey/deptrust/cmd/deptrust@latest

Nix

O projeto fornece saídas opcionais de Nix flake para usuários que já usam Nix. O flake encapsula o binário de release pré-compilado.

root@kitploit:~
# Run without installing
nix run github:clidey/deptrust

# Install into your profile
nix profile install github:clidey/deptrust

O fluxo de release normal gera os hashes Nix a partir dos mesmos arquivos que publica, avalia o flake antes de publicar e, em seguida, compila e executa o flake contra os artefatos publicados antes de atualizar o branch padrão. github:clidey/deptrust pode ficar brevemente defasado enquanto esse fluxo estiver em execução. Tags de release apontam para o commit de origem anterior à atualização gerada do flake e podem ainda referenciar o binário anterior; fixe um commit cujo flake.nix contenha a versão de que você precisa quando a reprodutibilidade for importante.

Devbox

Para ambientes de desenvolvimento reprodutíveis, use o Devbox:

root@kitploit:~
# Install Devbox first (if not already installed)
curl -fsSL https://get.jetify.dev/devbox | bash

# Initialize the environment
devbox shell

# Build the project
devbox run build

O devbox.json restringe a versão do toolchain, e o devbox.lock versionado fixa as versões exatas dos pacotes e as revisões do nixpkgs. Execute devbox update quando quiser intencionalmente atualizar essas fixações.

Ou instale o Devbox via Homebrew:

root@kitploit:~
brew install jetify-com/devbox/devbox

Configuração do Agente

Para instalar o deptrust e registrar tudo o que o instalador pode configurar sem os prompts guiados:

root@kitploit:~
npx @clidey/deptrust install --all
pnpx @clidey/deptrust@latest install --all

O --all instala o binário, registra o MCP do Codex quando a CLI codex está disponível, instala o fallback de skill do Codex, registra o MCP do Claude Code quando a CLI claude está disponível e instala os hooks de segurança de dependências do Codex e do Claude Code.

Os hooks são hooks PreToolUse. Eles verificam comandos de instalação de pacotes antes de serem executados e também verificam GitHub Actions adicionados a arquivos de workflow por meio das ferramentas de edição de arquivos do agente. Um hook bloqueia a chamada da ferramenta quando o deptrust retorna review, block ou unknown. O instalador grava apenas a configuração de hooks em nível de usuário: ~/.codex/hooks.json para Codex e ~/.claude/settings.json para Claude Code.

Quando a CLI gh está disponível, a configuração guiada também oferece usar o login local existente dela para as verificações dos hooks. Isso grava apenas DEPTRUST_GITHUB_AUTH=gh, nunca um token do GitHub, para que os subprocessos dos hooks possam evitar os limites de taxa da API do GitHub sem autenticação.

Use instalações mais enxutas quando preferir:

root@kitploit:~
npx @clidey/deptrust install --codex-mcp
npx @clidey/deptrust install --claude-code-mcp
npx @clidey/deptrust skills install
pnpx @clidey/deptrust@latest install --codex-mcp
pnpx @clidey/deptrust@latest install --claude-code-mcp
pnpx @clidey/deptrust@latest skills install

Após a configuração do MCP, os agentes verificarão automaticamente os pacotes antes de recomendar atualizações ou alterações. O servidor MCP envia instruções para avaliar todas as versões de dependências — inclusive responder perguntas como "o que posso atualizar" ou "quais dependências são seguras para atualizar" — antes de fornecer recomendações.

Se estiver usando o deptrust em um contexto sem MCP, lembre seu agente:

root@kitploit:~
Before listing, comparing, or recommending specific package versions, check them with deptrust. This includes answering "what can I update" — do not provide version recommendations until after checking for known vulnerabilities.

Para CI, configure um token de GitHub App de curta duração e privilégio mínimo como DEPTRUST_GITHUB_TOKEN para o processo que executa o DepTrust. Para autenticação local com a CLI do GitHub, use DEPTRUST_GITHUB_AUTH=gh deptrust check .... O DepTrust nunca armazena tokens.

Configuração Manual do MCP

Se o seu cliente for compatível com servidores MCP via stdio, configure-o para executar:

root@kitploit:~
/absolute/path/to/deptrust mcp

Muitos clientes usam este formato JSON:

root@kitploit:~
{
  "mcpServers": {
    "deptrust": {
      "command": "/absolute/path/to/deptrust",
      "args": ["mcp"]
    }
  }
}

Para o Codex, você também pode adicioná-lo com:

root@kitploit:~
codex mcp add deptrust -- /absolute/path/to/deptrust mcp

Para o Claude Code:

root@kitploit:~
claude mcp add --transport stdio deptrust -- /absolute/path/to/deptrust mcp

Em initialize, o servidor retorna instructions do MCP informando ao agente quando usar essas ferramentas (antes de adicionar, atualizar ou recomendar uma dependência, ou quando perguntado se uma versão é segura para atualizar). Clientes que exibem as instruções do servidor aplicam isso automaticamente, portanto o lembrete manual acima é opcional, e não obrigatório.

Ferramentas MCP

check_package

Verifica uma versão de pacote e retorna vulnerabilidades conhecidas além de uma recomendação.

root@kitploit:~
{
  "ecosystem": "npm",
  "package": "lodash",
  "version": "4.17.20"
}

version pode ser omitido ou definido como latest. Se uma versão exata não existir, o deptrust retorna um erro e sugere a versão explícita mais recente.

A saída do MCP é intencionalmente compacta para que os agentes possam decidir se instalam uma dependência sem trazer os avisos completos para o contexto. Se o usuário pedir para ver os detalhes completos, o agente pode executar o full_response_command.

Exemplo de saída estruturada compacta do MCP:

root@kitploit:~
{
  "ecosystem": "npm",
  "package": "vite",
  "version": "7.0.0",
  "latest_version": "8.0.16",
  "known_vulnerabilities_found": true,
  "safe_to_use": false,
  "should_install": false,
  "risk_score": 80,
  "classification": "vulnerable",
  "recommendation": "block",
  "reason": "Found 7 known vulnerability records.",
  "next_action": "do_not_install; use suggest_safe_version or compare_versions to choose a safer version",
  "summary": "vite 7.0.0 has 7 known vulnerabilities, including high severity. Block this exact version and prefer a fixed release.",
  "vulnerability_count": 7,
  "vulnerability_counts": {
    "critical": 0,
    "high": 2,
    "medium": 3,
    "low": 2,
    "unknown": 0
  },
  "highest_severity": "high",
  "checked_providers": [
    "OSV",
    "GitHub Advisory DB"
  ],
  "skipped_providers": [],
  "advisory_coverage": "full",
  "advisory_coverage_reason": "all configured vulnerability providers were checked",
  "registry_verification": "verified",
  "full_response_command": "deptrust check --json npm vite 7.0.0"
}

A resposta compacta do MCP omite o array de vulnerabilidades, os details dos avisos e as references repetidas. Os agentes devem usar por padrão as contagens, a maior gravidade, a cobertura dos provedores, a recomendação e a próxima ação. Se o usuário pedir os detalhes completos dos avisos, execute o full_response_command.

Quando o acesso aos avisos do GitHub estiver limitado por taxa ou indisponível, o MCP retorna unknown. O agente deve proativamente oferecer configurar um token e tentar novamente, pular ou adiar a versão, ou prosseguir somente depois que o usuário aceitar explicitamente o risco de cobertura não resolvido do GitHub para aquela versão exata. Essa exceção deve permanecer claramente rotulada como incerteza aceita pelo usuário; ela não deve ser reportada como allow nem como prova de que a versão é segura.

suggest_safe_version

Verifica primeiro a versão mais recente. Se a mais recente não for permitida, verifica primeiro as versões corrigidas informadas pelos provedores, depois as versões conhecidas mais antigas, e sugere a versão mais nova com uma recomendação allow.

root@kitploit:~
{
  "ecosystem": "npm",
  "package": "lodash"
}

compare_versions

Compara uma versão atual e uma versão alvo, incluindo vulnerabilidades resolvidas e adicionadas.

root@kitploit:~
{
  "ecosystem": "npm",
  "package": "lodash",
  "from_version": "4.17.20",
  "to_version": "4.17.21"
}

Uso Somente com Skill

Se você não quiser o MCP, instale a skill do Codex incluída:

root@kitploit:~
npx @clidey/deptrust skills install

A skill instrui o Codex a chamar a CLI deptrust antes de instalar, atualizar ou recomendar pacotes npm, PyPI, Cargo, módulos Go, RubyGems, NuGet, Maven, Packagist, pub.dev, CocoaPods, Hex.pm, Hackage e GitHub Actions.

Solução de Problemas

Se deptrust não for encontrado:

root@kitploit:~
export PATH="$HOME/.local/bin:$PATH"

Se um cliente MCP não conseguir iniciar o servidor, encontre o caminho completo:

root@kitploit:~
which deptrust

Em seguida, coloque esse caminho absoluto na configuração do MCP.

Se uma verificação de pacote retornar unknown, não trate o pacote como seguro. Isso significa que o deptrust não conseguiu obter uma resposta completa de um provedor de avisos ou não conseguiu verificar a versão exata junto ao seu registro.

Baixar ferramenta
none found
allow
EcossistemaMetadados do registroOSVGitHub Advisory DB
npmsimsimsim
PyPIsimsimsim
Cargo / crates.iosimsimsim
módulos Gosimsimsim
RubyGemssimsimsim
NuGetsimsimsim
Mavensimsimsim
Packagist / Composersimsimsim
pub.devsimsimsim
CocoaPodssimnãosim
Hex.pmsimsimsim
Hackagesimsimnão
GitHub Actionssimsimsim