Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
VulnReach — ランタイム対応のSCA — インストールされているだけでなく、実際に到達可能なCVEを証明します。 | Kitploit
ツール/GitHubGitHub/owasp/vulnreach
静的分析脆弱性スキャナー動的分析 (サンドボックス)脆弱性分析コード分析ウェブセキュリティDevSecOpsサプライチェーンセキュリティ
GitHubowasp/vulnreach

VulnReach

ランタイム対応のSCA — インストールされているだけでなく、実際に到達可能なCVEを証明します。

リポジトリを見る
818317日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
ウェブサイト
共有

VulnReach

ランタイム対応 SCA — インストールされているだけでなく、実際に到達可能な CVE を証明します。

OWASP Project License Python

VulnReach は正式な OWASP Project になりました。 🎉

デモ

VulnReach Demo

ステップ 1 — SCA が依存関係全体で 74 件の CVE を検出

Trivy SCA output — 74 vulnerabilities detected

ステップ 2 — VulnReach が実際に到達可能なものを証明

Fix Plan — 7 packages, 50 confirmed reachable CVEs with upgrade targets


検出結果 — CVE ごとの証拠チェーン

Dynamically reachable findings with full evidence chain

ダッシュボード — 9 リポジトリ全体で 42 件の到達可能を確認

VulnReach Dashboard

言語サポート: Python は完全に本番運用可能です(taint、AST、route、runtime)。Java と JavaScript は機能的なコールグラフ解析を備えており、実験的です。Go、C#、PHP はロードマップ上にあります。詳細は ROADMAP.md を参照してください。

VulnReach は標準的な SCA 出力に到達可能性のコンテキストを追加することで構築されています — 静的解析、テイント追跡、ライブランタイムカバレッジを通じて、検出された CVE のうちどれが実際にアプリケーションで到達可能かを証明します。


プロジェクトステータス

最新の開発(リリース済み)

  • 依存関係を考慮した並列ランナーパイプラインによるスキャンの高速化
  • Python 到達可能性 — 本番運用可能(taint、AST、route、runtime レイヤーすべてが機能)
  • Java 到達可能性 — Maven/Gradle 依存関係解析を備えた機能的なコールグラフ(実験的)
  • JavaScript 到達可能性 — ルートエントリポイント検出を備えた機能的なコールグラフ(実験的)
  • スキャンキャンセル — POST /scan/{id}/cancel で進行中のスキャンを停止
  • 安定したスキャン応答契約: GET /scan/{id} で summary + 分類されたバケット
  • API とパッケージローカルモード間での共有スキャン応答正規化(パリティ)
  • デフォルトで安全なランタイム境界:
    • ベース compose は Docker ソケットマウントなしで実行
    • 動的スキャンは VULNREACH_ALLOW_DOCKER_DAEMON=true による明示的なオプトインが必要
    • ランタイムプロファイルは制限された docker-socket-proxy を使用
  • CI における Java/JavaScript/Go の決定論的フィクスチャ品質ゲート
  • 正式な OWASP Project として承認 — owasp.community/projects/vulnreach
  • AI ネクストステップエンドポイント — POST /findings/{id}/next-steps は決定論的検出結果に対するアナリスト向けの修復ガイダンス(即時アクション、検証プローブ、アップグレードパス、モニタリング)を生成します。遅延 / オンデマンド: スキャンが LLM を呼び出すことはなく、LLM の失敗はグレースフルに劣化します。決定論的判定は読み取り専用です。詳細は docs/api.md を参照してください。

実験的

  • scan.runtime.ebpf トレーシングモード(Linux 向け、明示的なオプトイン)
  • AI 支援による OpenAPI 生成と Intelligent DAST フロー

参照:

  • docs/incubator-readiness.md
  • docs/threat-model.md

仕組み

各 CVE は 5 層の証拠チェーンを通じて分類されます:

1. SCA (Trivy)              → is the package installed and vulnerable?
2. Taint analysis (tainter) → does user input flow to the vulnerable sink?
3. AST analysis             → is the vulnerable function in your call graph?
4. Route exposure           → is the call path reachable from an HTTP endpoint?
5. Runtime coverage         → was the vulnerable code actually executed?

結果は 4 つの階層を持つ優先順位付けされた検出結果リストです:

階層意味
DYNAMICALLY_REACHABLEランタイムカバレッジが実行を確認 — 直ちに修正
STATICALLY_REACHABLEAST/taint によりコードパスを証明 — 優先度が高い
UNCERTAIN弱いシグナルのみ — 調査が必要
NOT_REACHABLE証拠なし — アラートキューから抑制

クイックスタート

Docker Compose を使用する場合(推奨)

セキュリティ通知 — 開始する前に、.env.example を .env.local にコピーし、 すべての CHANGE_ME 値を強力なランダムシークレットに置き換えてください。
実際の認証情報を設定し、CORS_ORIGINS を構成せずに VulnReach をパブリックネットワークに公開しないでください。

git clone https://github.com/ihrishikesh0896/vulnreach.git
cd vulnreach

# 1. Create your local config
cp .env.example .env.local

# 2. Fill in every CHANGE_ME — generate secrets with: openssl rand -hex 32
$EDITOR .env.local

# 3. Start the stack
docker compose up --build

# Optional: enable dynamic runtime scans (Docker daemon access via restricted socket proxy)
# docker compose -f docker-compose.yml -f docker-compose.runtime.yml up --build

スキャンを実行する

認証オプション:

  • 短命 JWT: POST /login
  • 長命 API トークン(API キー): UI の Settings -> API Keys で作成し、Authorization: Bearer <API_KEY> として使用
# Get a token (replace with the credentials you set in .env.local)
TOKEN=$(curl -s -X POST http://localhost:8000/login \
  -H "Content-Type: application/json" \
  -d '{"username":"<your-admin-user>","password":"<your-admin-password>"}' | jq -r .access_token)

# Start scan from a GitHub repo
curl -X POST http://localhost:8000/scan \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"repo_url":"https://github.com/yourorg/yourapp"}'

# Poll for results
curl http://localhost:8000/scan/<scan_id> \
  -H "Authorization: Bearer $TOKEN" | jq .summary

機能

  • 到達可能性でフィルタリングされた SCA — CVSS スコアだけでなく、証拠の強さで各 CVE を分類
  • ランタイム確認 — coverage.py による Docker ベースのカバレッジ収集
  • テイント追跡 — ユーザー入力 → 脆弱なシンク(SQL、subprocess、YAML、pickle)を追跡
  • LLM ステアード DAST — Claude/OpenAI/Ollama がエクスプロイトペイロードを生成・検証(オプション)
  • CI/CD ゲート — policy.block_if は確認された重大な検出結果でビルドを失敗させます。curl 経由でトリガーとゲートを実行 — docs/ci-cd-gating.md を参照
  • JWT 認証 — マルチユーザー、ロールベースアクセス(admin / analyst)
  • API トークン(API キー) — curl/CI 用の長命マシン認証(Authorization: Bearer <API_KEY>)
  • PDF エクスポート — GET /scan/{id}/export/pdf
  • ベンダーロックインなし — LLM 機能はデフォルトで provider: none。オフライン使用のために Ollama をサポート

実践例

スキャン対象: multi-tier-dvpa — 11 パッケージにわたる 72 件の生 CVE を持つ、意図的に脆弱な Python/Django アプリケーション。

レイヤー結果
生 CVE (Trivy)72
分類された検出結果 (VulnReach)90
DYNAMICALLY_REACHABLE — 今すぐ修正49
STATICALLY_REACHABLE — このスプリントで修正23
UNCERTAIN — 調査18
NOT_REACHABLE — 抑制0
CI パイプラインゲートBLOCKED

検出結果の 46% が、未分化の「すべてを修正」キューから優先順位付けされたアクションリストに移動されました。典型的な本番サービス(多くの推移的依存関係が呼び出されない)では、この数値は 70〜90% に上昇します。

完全な方法論、証拠チェーンの詳細、パッケージレベルの内訳: docs/benchmark.md


ドキュメント

使用方法

  • USAGE_PACKAGE.md — pip install / Docker サーバーインストールとライフサイクル(start/stop/reload)。スキャンは UI または curl 経由で行い、CLI ではありません
  • USAGE_UI.md — UI/サーバーインストール、依存関係、起動、使用方法
  • docs/ci-cd-gating.md — CI パイプラインから curl 経由でスキャンをトリガーおよびゲート

運用者 / デプロイヤー

  • docs/deployment.md — Docker Compose セットアップ、環境変数、本番ノート
  • docs/configuration.md — 完全な scan.yml 設定リファレンス
  • docs/api.md — REST エンドポイントとスキーマ

アーキテクチャ / セキュリティ

  • docs/architecture.md — パイプライン設計と実行モデル
  • docs/threat-model.md — 信頼境界、STRIDE、不正使用ケース
  • docs/incubator-readiness.md — OSS/OWASP 準備状況
  • docs/DAST.md — DAST の概念とフロー

コントリビューター

ツールをダウンロード