pentest-exploit-validation について
pentest-exploit-validationは、許可を得たペネトレーションテスター向けの脆弱性検証スキルです。ホワイトボックスコードレビューのキューを構造的に検証し、証拠に基づいてEXPLOITED、POTENTIAL、FALSE_POSITIVEに分類します。
主な機能
- 01エクスプロイトキューの取り込みと優先順位付け
- 02脆弱性タイプ別の構造的なエクスプロイト
- 03ペイロードの変化形と回避手段の試行
- 04脆弱性タイプごとに必要な証拠の収集
- 054段階の証明システムによる検出結果の分類
活用シーン
- 01コードレビューで見つかったインジェクションの悪用可能性の検証
- 02XSS、認証、認可の問題に関する再現可能な証拠の収集
- 03SSRFによる内部アクセスの影響テスト
- 04悪用済み、潜在的、誤検知の検出結果の区別
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jd-opensource/ joysafeter --skill pentest-exploit-validationインストール後、Claude Code で/pentest-exploit-validationを入力して読み込まれたか確認します。
同梱ファイルreferences/tools.mdreferences/workflows.md
詳細
ペネトレーションテストによるエクスプロイト検証
目的
Shannon の 4 レベル証拠システムを用い、証拠に基づくエクスプロイトによって脆弱性の検出結果を検証します。ホワイトボックスコードレビューからエクスプロイトキューを取り込み、バイパスを網羅的に試しながら体系的なエクスプロイトを実行し、脆弱性の種類ごとに必須の証拠を収集して、各検出結果を EXPLOITED、POTENTIAL、FALSE_POSITIVE に分類します。
前提条件
認可要件
- アクティブなエクスプロイトテストの明確な範囲を記載した書面による認可
- pentest-whitebox-code-review の出力から得られるエクスプロイトキュー JSON
- 認可テスト用に、複数の権限レベルのテストアカウント
- データ持ち出しの承認 — 許容される概念実証の範囲を確認してください
- データを変更するエクスプロイトに備えたロールバック計画
環境設定
- 自動 SQL インジェクションエクスプロイト用の sqlmap
- Repeater、Intruder、Turbo Intruder を備えた Burp Suite Professional
- HTTP リクエストを手動で作成するための curl
- ブラウザーベースのエクスプロイト(XSS、CSRF)用の Playwright
- 自動検証用のカスタムテンプレートを備えた nuclei
- 隔離されたテスト環境、または本番環境のテストに対する明示的な承認
基本ワークフロー
- キューの取り込み:エクスプロイトキュー JSON を解析し、スキーマを検証して、信頼度スコアと影響度の重大さに基づいて優先順位を付けます。脆弱性の種類ごとに検出結果をグループ化し、並行してエクスプロイトします。
- インジェクションのエクスプロイト:インジェクション可能なパラメーターを確認 → バックエンド(DB の種類、OS)を特定 → データベース/テーブルを列挙 → 最小限の痕跡でデータ持ち出しを実証します。
- XSS のエクスプロイト:ソース → 処理 → サニタイズ → シンクの順にグラフをたどります。コンテキストに適したペイロードを作成し、セッションハイジャックまたは DOM 操作を実証します。
- 認証のエクスプロイト:認証の脆弱性を攻撃し、クレデンシャルスタッフィング、トークン偽造、またはセッションハイジャックによるアカウント乗っ取りを実証します。
- 認可のエクスプロイト:水平アクセス(他のユーザーのデータ) → 垂直権限昇格(管理者機能) → ワークフローのバイパス(状態の操作)。
- SSRF のエクスプロイト:内部サービスへのアクセス → クラウドメタデータの取得(169.254.169.254) → 内部ネットワークの偵察。
- バイパスの網羅的な試行:各検出結果について、最初のペイロードを 3 種類試します → ブロックされた場合は、バイパスのパターンを 8~10 種類に増やします → それでもブロックされる場合は、自動ツールのバリエーションを実行します。
- 影響の拡大:概念実証から、実際の影響を示す実証へと進めます — データ持ち出し、セッションハイジャック、またはリモートコード実行。
- 証拠の収集:脆弱性の種類ごとのチェックリストを使って、必須の証拠を収集します。
- 分類:4 レベルの証明システムに基づき、最終的な分類(EXPLOITED、POTENTIAL、または FALSE_POSITIVE)を割り当てます。
4 レベルの証明システム
| レベル | 説明 | 分類 |
|---|---|---|
| L1 | コード内で脆弱性が特定されているものの、悪用可能であることが確認されていない | POTENTIAL |
| L2 | 部分的なバイパスは達成したものの、完全なエクスプロイトは実証されていない | POTENTIAL |
| L3 | 再現可能な証拠によって脆弱性が確認されている | EXPLOITED |
| L4 | 重大な影響(データ持ち出し、RCE、アカウント乗っ取り)が実証されている | EXPLOITED CRITICAL |
分類基準
| 分類 | 基準 |
|---|---|
| EXPLOITED | 証拠を伴う再現可能な証明:HTTP リクエスト/レスポンス、抽出したデータ、または実証された影響 |
| POTENTIAL | コードレベルの脆弱性は確認されているものの、多層防御または環境上の制約によってエクスプロイトが阻止されている |
| FALSE_POSITIVE | 汚染解析で検出されたものの、手動レビューにより、有効なサニタイズまたは到達不能なコードパスが確認されている |
ツールのカテゴリ
| カテゴリ | ツール | 目的 |
|---|---|---|
| SQL インジェクション | sqlmap, manual payloads | SQLi の自動および手動による悪用 |
| リクエストの作成 | Burp Repeater, curl | HTTP リクエストの手動操作 |
| ファジング | Burp Intruder, Turbo Intruder | ペイロードのバリエーションと回避テスト |
| ブラウザーの悪用 | Playwright | XSS の実証、セッションの乗っ取り |
| 自動化 | nuclei, custom scripts | テンプレートベースの脆弱性検証 |
| 証拠の取得 | Burp Logger, screenshot tools | リクエスト/レスポンスの記録と証明 |
参考資料
references/tools.md- ツールの関数シグネチャとパラメーターreferences/workflows.md- 悪用ワークフロー、証拠チェックリスト、分類ツリー
コメント
Markdown 対応