Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
deptrust — CLI 및 MCP 서버로, npm, PyPI, crates.io, Go 모듈, GitHub Actions를 포함한 14개 이상의 에코시스템에서 패키지 버전의 알려진 취약점을 확인합니다. 후크(hooks)와 스킬(skills)을 통해 AI 에이전트와 통합됩니다. | Kitploit
도구/GitHubGitHub/clidey/deptrust
Vulnerability ScannersScripting & AutomationCloud SecurityDevSecOpsSecret DetectionSupply Chain SecurityAPI Security
GitHubclidey/deptrust

deptrust

CLI 및 MCP 서버로, npm, PyPI, crates.io, Go 모듈, GitHub Actions를 포함한 14개 이상의 에코시스템에서 패키지 버전의 알려진 취약점을 확인합니다. 후크(hooks)와 스킬(skills)을 통해 AI 에이전트와 통합됩니다.

저장소 보기
6031일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

deptrust

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

deptrust는 npm, PyPI, crates.io, Go 모듈, RubyGems, NuGet, Maven, Packagist, pub.dev, CocoaPods, Hex.pm, Hackage, GitHub Actions 등 다양한 생태계의 패키지 버전에 알려진 취약점이 있는지 확인하는 CLI입니다.

CLI와 MCP 서버로 로컬에서 실행됩니다. 공개 패키지 레지스트리 및 OSV API를 직접 호출하므로, 신뢰하거나 구성해야 할 호스팅형 deptrust 서비스가 없습니다.

이 도구는 AI 에이전트가 끊임없이 이전 버전을 사용하는 데서 오는 불만에서 탄생했습니다.

목차

  • 범위
  • CLI 사용법
  • 설치
  • 에이전트 설정
  • 수동 MCP 설정
  • MCP 도구
  • 스킬만 사용
  • 문제 해결

범위

지원되는 생태계:

  • npm(@clidey/ux 같은 스코프 패키지 포함)
  • PyPI
  • Cargo / crates.io
  • Go 모듈
  • RubyGems
  • NuGet
  • Maven(groupId:artifactId 패키지 이름 사용)
  • Packagist / Composer(vendor/package 패키지 이름 사용)
  • pub.dev
  • CocoaPods
  • Hex.pm
  • Hackage
  • GitHub Actions(owner/repo 패키지 이름과 태그, 브랜치 참조 또는 커밋 SHA를 버전으로 사용)

deptrust는 현재 알려진 취약점을 보고하고 간단한 권장 사항을 제공합니다:

알려진 최고 심각도권장 사항
criticalblock
highblock
medium / unknownreview
lowallow
none found

allow는 공개 데이터 소스에서 차단할 만한 알려진 취약점이 발견되지 않았음을 의미합니다. 패키지가 안전하다는 것을 증명하지는 않습니다.

deptrust는 CVE가 아닌 위험 신호도 생성합니다. 예를 들어, 지난 72시간 이내에 게시된 버전은 검토 대상으로 표시되어 에이전트가 막 출시된 새 릴리스를 무작정 설치하지 않도록 합니다.

자문 제공자는 병렬로 조회됩니다:

  • OSV
  • GitHub Advisory Database(검토된 자문 및 악성코드 자문 포함)

제공자 적용 범위는 생태계에 따라 다릅니다. 레지스트리 메타데이터는 확인할 수 있지만 구성된 취약점 제공자가 해당 생태계를 지원하지 않는 경우, deptrust는 패키지를 안전한 것으로 취급하는 대신 unknown을 반환합니다.

제공자 적용 범위:

JSON 출력에는 자문 적용 범위 필드가 포함됩니다:

  • checked_providers: deptrust가 실제로 조회한 취약점 제공자
  • skipped_providers: 생태계가 지원되지 않아 건너뛴 구성된 제공자
  • advisory_coverage: full, partial, none 또는 error
  • advisory_coverage_reason: 적용 범위 값에 대한 간단한 설명
  • registry_verification: 레지스트리 메타데이터가 버전을 확인한 경우 verified, 일시적인 레지스트리 오류 후에도 정확한 버전 확인이 계속된 경우 unverified
  • registry_verification_reason: 검증을 사용할 수 없었을 때의 레지스트리 오류

레지스트리 검증을 일시적으로 사용할 수 없는 경우에도 정확한 버전 확인은 자문 제공자를 조회합니다. 해당 결과는 항상 설치 불가로 처리되며 allow 권장 사항을 받지 않습니다. latest, 알 수 없는 패키지 및 확실히 존재하지 않는 버전에 대한 확인은 여전히 레지스트리 조회가 성공해야 합니다.

HTTP 요청은 429, 502, 503, 504 응답에 대해 총 3회까지 재시도합니다. 재시도는 짧은 지수 백오프 지연을 사용하며 최대 2초까지의 Retry-After 값을 존중합니다. 서버가 요청한 대기 시간이 그보다 길면 빠르게 실패 처리되어 CLI가 멈추지 않습니다. 자문 재시도를 모두 소진하면 결과가 불완전해지며 allow 권장 사항이 차단됩니다.

GitHub API 인증

GitHub Advisory Database 및 GitHub Actions API 요청은 단기 유효 수명의 최소 권한 GitHub App 토큰을 사용할 수 있습니다. CI에서는 DEPTRUST_GITHUB_TOKEN으로 전달하세요:

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

자격 증명 우선순위는 DEPTRUST_GITHUB_TOKEN, GITHUB_TOKEN, 그다음 GH_TOKEN 순입니다. 로컬 사용 시 선택적 GitHub CLI 폴백은 DEPTRUST_GITHUB_AUTH=gh deptrust check ...로 명시적으로 활성화됩니다. 이는 프롬프트 없이 gh auth token을 실행합니다. 사용 가능한 자격 증명이 없으면 DepTrust는 인증 없이 계속 진행합니다. GitHub API 속도 제한 또는 권한 오류가 발생하면 진단 정보와 함께 unknown이 생성되며, OSV 전용 성공으로 취급되지 않습니다.

DepTrust는 GitHub 토큰을 저장, 번들, 캐시, 로깅, 원격 측정 또는 출력하지 않습니다. 인증 헤더는 https://api.github.com에만 전송됩니다.

CLI 사용법

정확한 버전 확인:

root@kitploit:~
deptrust check npm lodash 4.17.20

일반 응답 예시:

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

최신 버전 확인:

root@kitploit:~
deptrust check pypi requests latest

JSON 반환:

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

Go 모듈 확인:

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

RubyGems, NuGet 또는 Maven 확인:

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

Packagist, pub.dev, CocoaPods, Hex.pm, Hackage 또는 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

GitHub Actions의 경우 전체 커밋 SHA는 고정된 것으로 취급됩니다. v4.2.2 같은 전체 semver 태그는 추가 고정 신호 없이 허용됩니다. v4 같은 메이저 전용 태그와 main 같은 브랜치 참조는 유효한 참조이지만, 변경될 수 있으므로 deptrust는 검토 신호를 추가합니다.

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": []
}

알려진 취약점이 발견되지 않은 경우에만 최신 버전을 추천합니다:

root@kitploit:~
deptrust suggest npm lodash

최신 버전이 허용되지 않으면 suggest는 이전의 알려진 버전들을 확인하고 allow 권장 사항이 있는 가장 최신 버전을 반환합니다.

자문에 수정 버전이 포함된 경우, suggest는 레지스트리 버전 목록을 역순으로 검토하기 전에 먼저 제공자가 보고한 수정 버전들을 확인합니다.

두 버전 비교:

root@kitploit:~
deptrust compare npm lodash 4.17.20 4.17.21

비교 응답 예시:

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

설치된 버전 표시:

root@kitploit:~
deptrust version

설치

가장 쉬운 설치 방법은 npx 또는 pnpx입니다:

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

기본 설치 프로그램은 안내 방식입니다. 바이너리를 설치하고, 구성할 에이전트 통합을 물어보며, 변경하기 전에 사용자 수준 대상 경로를 출력하고 확인을 요청합니다. 안내 설치 프로그램은 기본적으로 Codex 및 Claude Code에 대해 MCP, 스킬 폴백, 의존성 안전 훅을 활성화합니다. 비대화형 바이너리 전용 설치에는 --yes를 추가하거나 명시적인 통합 플래그를 전달하세요.

설치 프로그램을 다시 실행해도 안전합니다. 변경되지 않은 MCP, 스킬 및 훅 구성은 건드리지 않고 그대로 둡니다. 통합이 이전 deptrust 바이너리를 가리키거나 관리되는 구성이 변경된 경우 설치 프로그램이 자동으로 업데이트합니다. 사용자가 MCP 서버를 수동으로 제거하고 다시 추가할 필요는 없습니다. 맞춤화된 스킬은 교체 전에 백업됩니다.

사용자 수준 바이너리, 스킬 및 MCP 항목을 제거하려면:

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

Homebrew 사용자는 Clidey 탭에서 설치할 수 있습니다:

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

또는 먼저 탭을 추가한 후 평소처럼 설치하고 업그레이드하세요:

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

Homebrew는 설치 후 안내 메시지를 출력합니다. Homebrew 바이너리 자체를 사용하여 안내 방식의 Codex 및 Claude Code 설정(MCP 등록 및 의존성 안전 훅)을 실행하려면:

root@kitploit:~
deptrust setup

안내 설정은 MCP와 의존성 안전 훅을 활성화하기 전에 확인을 요청합니다. 이미 현재 바이너리를 사용하는 등록은 그대로 두고, 이전 npm, Homebrew 또는 소스 설치 경로를 가리키는 기존 DepTrust 등록을 정리합니다.

Go 사용자는 직접 설치할 수 있습니다:

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

Nix

이 프로젝트는 이미 Nix를 사용하는 사용자를 위해 선택적 Nix flake 출력을 제공합니다. flake는 사전 빌드된 릴리스 바이너리를 래핑합니다.

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

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

일반 릴리스 워크플로는 게시하는 동일한 아카이브에서 Nix 해시를 생성하고, 게시 전에 flake를 평가한 다음, 기본 브랜치를 업데이트하기 전에 게시된 자산에 대해 빌드 및 실행합니다. 해당 워크플로가 실행되는 동안 github:clidey/deptrust가 잠시 지연될 수 있습니다. 릴리스 태그는 생성된 flake 업데이트 이전의 소스 커밋을 가리키므로 이전 바이너리를 참조할 수 있습니다. 재현성이 중요할 때는 필요한 버전이 포함된 flake.nix를 가진 커밋을 고정하세요.

Devbox

재현 가능한 개발 환경을 위해 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

devbox.json은 툴체인 버전을 제한하고 커밋된 devbox.lock은 정확한 패키지 버전과 nixpkgs 리비전을 고정합니다. 해당 고정값을 의도적으로 갱신하려면 devbox update를 실행하세요.

또는 Homebrew로 Devbox를 설치하세요:

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

에이전트 설정

안내 프롬프트 없이 deptrust를 설치하고 설치 프로그램이 구성할 수 있는 모든 것을 등록하려면:

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

--all은 바이너리를 설치하고, codex CLI를 사용할 수 있으면 Codex MCP를 등록하며, Codex 스킬 폴백을 설치하고, claude CLI를 사용할 수 있으면 Claude Code MCP를 등록하며, Codex 및 Claude Code 의존성 안전 훅을 설치합니다.

훅은 PreToolUse 훅입니다. 패키지 설치 명령이 실행되기 전에 확인하고, 에이전트 파일 편집 도구를 통해 워크플로 파일에 추가된 GitHub Actions도 확인합니다. deptrust가 review, block 또는 unknown을 반환하면 훅이 도구 호출을 차단합니다. 설치 프로그램은 사용자 수준 훅 구성만 작성합니다: Codex의 경우 ~/.codex/hooks.json, Claude Code의 경우 ~/.claude/settings.json입니다.

gh CLI를 사용할 수 있으면 안내 설정은 훅 확인에 기존 로컬 로그인을 사용하도록 제안합니다. 이는 GitHub 토큰이 아닌 DEPTRUST_GITHUB_AUTH=gh만 작성하므로 훅 하위 프로세스가 인증되지 않은 GitHub API 속도 제한을 피할 수 있습니다.

더 좁은 범위의 설치를 선호하는 경우:

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

MCP 설정 후 에이전트는 업데이트 또는 변경을 추천하기 전에 패키지를 자동으로 확인합니다. MCP 서버는 권장 사항을 제공하기 전에 모든 의존성 버전을 검증하도록 지시를 보냅니다. 여기에는 "무엇을 업데이트할 수 있나요" 또는 "어떤 의존성을 안전하게 업그레이드할 수 있나요" 같은 질문에 답하는 것도 포함됩니다.

비-MCP 환경에서 deptrust를 사용하는 경우 에이전트에 다음과 같이 상기시키세요:

root@kitploit:~
특정 패키지 버전을 나열, 비교 또는 추천하기 전에 deptrust로 확인하세요. "무엇을 업데이트할 수 있나요"에 답하는 경우도 포함됩니다 — 알려진 취약점을 확인할 때까지 버전 추천을 제공하지 마세요.

CI에서는 DepTrust를 실행하는 프로세스에 단기 유효 수명의 최소 권한 GitHub App 토큰을 DEPTRUST_GITHUB_TOKEN으로 구성하세요. 로컬 GitHub CLI 인증에는 DEPTRUST_GITHUB_AUTH=gh deptrust check ...를 사용하세요. DepTrust는 토큰을 저장하지 않습니다.

수동 MCP 설정

클라이언트가 stdio MCP 서버를 지원하는 경우 다음을 실행하도록 구성하세요:

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

많은 클라이언트가 다음 JSON 형식을 사용합니다:

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

Codex의 경우 다음 명령으로 추가할 수도 있습니다:

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

Claude Code의 경우:

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

initialize 시 서버는 MCP instructions를 반환하여 에이전트가 언제 이러한 도구를 사용해야 하는지 알려줍니다(의존성을 추가하거나, 버전을 올리거나, 추천하기 전, 또는 버전을 안전하게 업데이트할 수 있는지 질문을 받았을 때). 서버 지침을 표시하는 클라이언트는 이를 자동으로 적용하므로 위의 수동 알림은 필수가 아니라 선택 사항입니다.

MCP 도구

check_package

패키지 버전을 확인하고 알려진 취약점과 권장 사항을 반환합니다.

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

version은 생략하거나 latest로 설정할 수 있습니다. 정확한 버전이 존재하지 않으면 deptrust는 오류를 반환하고 최신 명시적 버전을 제안합니다.

MCP 출력은 에이전트가 전체 자문 본문을 컨텍스트에 가져오지 않고도 의존성 설치 여부를 결정할 수 있도록 의도적으로 간결합니다. 사용자가 전체 세부 정보를 요청하면 에이전트는 full_response_command를 실행할 수 있습니다.

간결한 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"
}

간결한 MCP 응답은 취약점 배열, 자문 details 및 반복되는 references를 생략합니다. 에이전트는 기본적으로 개수, 최고 심각도, 제공자 적용 범위, 권장 사항 및 다음 조치를 사용해야 합니다. 사용자가 전체 자문 세부 정보를 요청하면 full_response_command를 실행하세요.

GitHub 자문 액세스가 속도 제한되거나 사용할 수 없으면 MCP는 unknown을 반환합니다. 에이전트는 토큰 구성 및 재시도를 사전에 제안하거나, 버전을 건너뛰거나 연기하거나, 사용자가 해당 정확한 버전에 대한 미해결 GitHub 적용 범위 위험을 명시적으로 수락한 후에만 진행해야 합니다. 해당 예외는 사용자가 수락한 불확실성으로 명확히 표시되어야 하며, allow 또는 버전이 안전하다는 증거로 보고되어서는 안 됩니다.

suggest_safe_version

먼저 최신 버전을 확인합니다. 최신 버전이 허용되지 않으면 제공자가 보고한 수정 버전을 먼저 확인한 후 이전의 알려진 버전들을 확인하고, allow 권장 사항이 있는 가장 최신 버전을 추천합니다.

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

compare_versions

현재 버전과 대상 버전을 비교하며, 해결된 취약점과 추가된 취약점을 포함합니다.

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

스킬만 사용

MCP를 원하지 않으면 번들된 Codex 스킬을 설치하세요:

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

이 스킬은 Codex가 npm, PyPI, Cargo, Go 모듈, RubyGems, NuGet, Maven, Packagist, pub.dev, CocoaPods, Hex.pm, Hackage 및 GitHub Actions 패키지를 설치, 업데이트 또는 추천하기 전에 deptrust CLI를 호출하도록 지시합니다.

문제 해결

deptrust를 찾을 수 없는 경우:

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

MCP 클라이언트가 서버를 시작할 수 없는 경우 전체 경로를 찾으세요:

root@kitploit:~
which deptrust

그런 다음 해당 절대 경로를 MCP 구성에 넣으세요.

패키지 확인이 unknown을 반환하면 패키지를 안전한 것으로 취급하지 마세요. 이는 deptrust가 자문 제공자로부터 완전한 답변을 얻지 못했거나 레지스트리로 정확한 버전을 확인하지 못했음을 의미합니다.

도구 다운로드
allow
생태계레지스트리 메타데이터OSVGitHub Advisory DB
npmyesyesyes
PyPIyesyesyes
Cargo / crates.ioyesyesyes
Go 모듈yesyesyes
RubyGemsyesyesyes
NuGetyesyesyes
Mavenyesyesyes
Packagist / Composeryesyesyes
pub.devyesyesyes
CocoaPodsyesnoyes
Hex.pmyesyesyes
Hackageyesyesno
GitHub Actionsyesyesyes