mcpField
A
active-pentest

active-pentest

github.com/mn-youssefセキュリティ4940 回インストール20 週間前に更新
リポジトリ

active-pentest について

active-pentestは、セキュリティテストの専門スキル向けの実行手順で、許可を得たラボ、ステージング、ローカルアプリのテストを対象とします。ツール利用と再現可能な証拠の記録を整え、破壊的テストや本番環境へのテストを明確に制限します。

主な機能

  1. 01認可と対象範囲の確認
  2. 02非破壊テストの指針
  3. 03偵察から検証までの手順
  4. 04テスト目的に応じたツール選択
  5. 05PoC証拠の一貫した記録

活用シーン

  1. 01許可されたステージングアプリのテスト
  2. 02最小リクエストによる脆弱性の検証
  3. 03再現可能なリクエストと応答の記録
  4. 04確認済みの問題をsecurity-hardeningへ引き継ぐ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mn-youssef/security-skills --skill active-pentest

インストール後、Claude Code で/active-pentestを入力して読み込まれたか確認します。

同梱ファイルreferences/tool-playbook.md

詳細

アクティブペンテスト(EXPLOIT ハーネス)

概要

これは、FIND/EXPLOIT の専門スキルで共有する実行ハーネスです。何をテストするかは、access-control-testing、authentication-testing、business-logic-testing、api-security-testing(および Tier-2 クラスのインジェクション/クライアントサイド/ファイルアップロードなど)が決めます。このスキルは、稼働中のアプリに対してテストを安全に実行する方法です。ラボ/プロキシ/スキャナーを設定し、ツールを操作して、一貫した形式で証拠を記録します。

基本原則: 再現できるまでは、発見事項は確かなものではありません。PoC があれば議論に決着がつきます。攻撃手順は専門スキルが担当し、安全な実行と証拠の記録はこのスキルが担当します。

⚠️ 認可ゲート — すべてに該当しない場合は中止してください

すべてに該当しない限り、先へ進まないでください。

  • 対象を所有している、またはテストするための書面による許可を得ている。
  • 対象はラボ/ステージング/ローカルのインスタンスであり、第三者の本番環境ではない。
  • 破壊的な手法や DoS 手法を実行せず、実際のユーザーデータにも触れない。

チェックが外れている項目が1つでもある場合は中止し、自分が管理するコードに対する security-code-audit にとどめてください。

スコープを厳守する(デフォルトでは非破壊)

  • 許可される行為: 読み取り専用の調査、フィンガープリントの取得、単一リクエストの PoC、自分のテストデータの読み取り、自分で作成した2つのテストアカウントを使った IDOR の実証。
  • 避ける行為: 負荷テスト/ストレステスト/DoS、大規模なスキャン、実データの書き込みや削除を行う自動エクスプロイト、監視の回避だけを目的とする手法。スキャナーの実行速度を抑え、テストアカウントを使用してください。

ワークフロー(調査 → マッピング → 検証 → 実証)

  1. 調査/フィンガープリントの取得 — 何が公開されているか、どのような技術スタックか、どのバージョンかを確認します。
  2. マッピング — エンドポイント、パラメーター、認証フローを列挙します(脅威モデルに沿って確認します)。
  3. 検証 — 該当する専門スキルから攻撃手順を選び、バグを実証できる最小限のリクエストで実行します。(このスキル=ツール、専門スキル=ペイロードです。)
  4. 実証 — PoC として正確なリクエスト/レスポンスを記録し、影響を記載します。

各ツールの操作方法については references/tool-playbook.md を参照してください。何を送信するかについては、専門スキル(例:IDOR の手順 → access-control-testing、ATO のフロー → authentication-testing)を参照してください。

クイックリファレンス — 目的別のツール

目的ツール
ポート/サービス/バージョンnmap -sV
TLS 設定testssl.sh、sslscan
Web サーバーの簡易的な問題検出nikto
コンテンツ/エンドポイントの検出ffuf、gobuster、feroxbuster
手動でのリクエスト作成curl、httpie、Burp Repeater
インターセプト/クロール/スキャンOWASP ZAP、Burp Suite
SQLi の確認sqlmap(自分のアプリで、--batch を指定し、スコープを限定して実行)
モバイル通信Burp/ZAP プロキシ+デバイス、Frida(ピンニング)、objection
コード/バイナリ内のシークレットtrufflehog、gitleaks、apktool+jadx

出力:検証済みの発見事項

確認した項目ごとに、次を記載します。

  • Finding ID(監査台帳へのリンク)
  • 再現手順: 正確なコマンド/リクエスト
  • 証拠: 影響を示すレスポンスの抜粋(実データはマスキング)
  • 確認済みの重大度と影響
  • → 修正と再テストのために security-hardening に引き継ぎます。

よくある間違い

  • 「ちょっと確認するだけ」と本番環境や第三者の資産をテストする — それは越えてはならない一線です。
  • sqlmap/スキャナーを全速力で実行し、自分のステージング環境を停止させる。
  • 理論だけでエクスプロイト可能と判断する — 再現してください。
  • ノイズの多い PoC を残す — リクエストは最小限に、影響範囲も最小限にしてください。

コメント