Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

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

VulnReach

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

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

人気

すべて見る →

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

すべてのツールを探索

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

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

VulnReach

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

OWASP Project License Python

VulnReachは現在、公式のOWASPプロジェクトです。 🎉

デモ

VulnReach デモ

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

Trivy SCA出力 — 74件の脆弱性を検出

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

修正計画 — 7パッケージ、50件の到達可能CVEをアップグレード対象付きで確認


検出結果 — CVEごとのエビデンスチェーン

完全なエビデンスチェーンを備えた動的到達可能な検出結果

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

VulnReach ダッシュボード

言語サポート: Pythonは本番利用可能です(テイント、AST、ルート、ランタイム)。JavaとJavaScriptは機能するコールグラフ解析を備えており、実験的です。Go、C#、PHPはロードマップに載っています。詳細はROADMAP.mdを参照してください。

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


プロジェクトステータス

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

  • 依存関係を考慮した並列ランナーパイプラインでスキャンを高速化
  • Python到達可能性 — 本番利用可能(テイント、AST、ルート、ランタイムの各レイヤーがすべて機能)
  • 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プロジェクトとして承認 — owasp.community/projects/vulnreach
  • AI次のステップエンドポイント — POST /findings/{id}/next-steps は、決定的な検出結果に対してアナリスト向けの修復ガイダンス(即時対応、検証プローブ、アップグレードパス、モニタリング)を生成します。遅延/オンデマンド方式: スキャンがLLMを呼び出すことはなく、LLM障害はグレースフルに劣化します。決定的な判定は読み取り専用です。docs/api.md を参照してください。

実験的

  • scan.runtime.ebpf トレースモード(Linux中心、明示的オプトイン)
  • AI支援によるOpenAPI生成とインテリジェントDASTフロー

参照:

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

仕組み

各CVEは5層のエビデンスチェーンを通じて分類されます:

root@kitploit:~
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つの階層を持つ優先順位付きの検出結果リストです:

Tier意味
DYNAMICALLY_REACHABLEランタイムカバレッジが実行を確認 — 直ちに修正
STATICALLY_REACHABLEAST/テイント経由でコードパスを証明 — 高優先度

クイックスタート

Docker Composeを使用(推奨)

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

root@kitploit:~
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> として使用
root@kitploit:~
# 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 — 各CVEをCVSSスコアだけでなくエビデンスの強さで分類
  • ランタイム確認 — coverage.py によるDockerベースのカバレッジ収集
  • テイントトラッキング — ユーザー入力を追跡して脆弱なシンク(SQL、subprocess、YAML、pickle)へ
  • LLM主導のDAST — Claude/OpenAI/Ollamaがエクスプロイトペイロードを生成・検証(任意)
  • CI/CDゲート — policy.block_if が確認された重大な検出結果でビルドを失敗させる
  • 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アプリケーション。

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

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


ドキュメント

使用方法

  • USAGE_PACKAGE.md — パッケージ/CLIのインストール、依存関係、起動、使用方法
  • USAGE_UI.md — UI/サーバーのインストール、依存関係、起動、使用方法

運用者 / デプロイ担当者

  • 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の概念とフロー

コントリビューター

  • ROADMAP.md — 予定機能、既知の制限、言語サポート状況
  • docs/development.md — 内部構造、エージェント、ストレージ、拡張ポイント
  • OWASP.md — OWASPプロジェクトノート
  • SECURITY.md — 脆弱性開示とキーローテーション
  • CONTRIBUTING.md — コントリビューションのプロセス
  • CHANGELOG.md — リリース履歴

要件

  • Python 3.11+
  • PostgreSQL 13+
  • Docker + Docker Compose v2(動的解析用)
  • trivy をPATHに追加(インストール)
  • jq(クイックスタートの例で使用 — インストール)

任意(存在しない場合はすべて正常にスキップされます):

  • semgrep — pip install semgrep
  • tainter — pip install tainter(テイントフロー解析。開発ガイドを参照)

ライセンス

Apache 2.0 — LICENSE を参照してください。

ツールをダウンロード
UNCERTAIN
弱いシグナルのみ — 調査
NOT_REACHABLEエビデンスなし — アラートキューから抑制
レイヤー結果
生のCVE(Trivy)72
分類済み検出結果(VulnReach)90
DYNAMICALLY_REACHABLE — 今すぐ修正49
STATICALLY_REACHABLE — 今スプリントで修正23
UNCERTAIN — 調査18
NOT_REACHABLE — 抑制0
CIパイプラインゲートBLOCKED