recon-security について
recon-securityは、認可済みの外部ペネトレーションテストを、範囲設定から偵察、検証、報告まで案内するスキルです。許可の確認と再現可能な証拠を重視し、ルールで明示的に認められた場合に限りエクスプロイトを扱います。
主な機能
- 01範囲と認可の確認
- 02パッシブ・アクティブ偵察の案内
- 03Web・インフラの検査
- 04検出事項の分類と検証
- 05範囲内のエクスプロイトと報告の案内
活用シーン
- 01認可済み外部ペンテストの計画
- 02対象資産と証拠の整理
- 03報告前のスキャナー検出結果の検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ superagent-ai/ skills --skill recon-securityインストール後、Claude Code で/recon-securityを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/checklist.mdenvironment-setup.mdexploitation-roe.mdreport-template.mdtools.mdvalidation.md詳細
Recon Security
このスキルでは、承認済みの外部ペネトレーションテストのワークフロー(偵察、正規化、アクティブな探索、Web とインフラストラクチャのチェック、検証、スコープ内でのエクスプロイト(RoE で許可されている場合)、レポート作成)をエージェントに案内します。このスキルの範囲外でユーザーが商用サービスの利用を明示的に選択しない限り、無料のオープンソースツールのみを使用してください。
許可があると決めつけてはいけません。アクティブ、侵襲的、または状態を変更するすべての手順は、Pass 0 の承認を条件としてください。このスキルはモデルのガイドのみを提供します。コマンドとワークフローを提案し、スコープとモードが許す場合にユーザーまたはエージェントが実行します。このスキルにはスクリプトは同梱されていません。
エンゲージメントのライフサイクル
Pass 0 Scope/RoE → Pass 1 Passive → Pass 2 Normalize → Pass 3 Active
→ Pass 4 Web + infra → Pass 5 Triage → Pass 6 Validation
→ Pass 7 Scoped exploitation (if approved) → Pass 8 Report
基本的な考え方
- 偵察では、外部に公開されているものを把握します。
- 検証では、最小限の再現可能な証拠で重要な点を立証します。
- エクスプロイトでは、無制限の攻撃ではなく、書面による RoE の範囲内でのみ影響を実証します。
慎重で再現可能なチェックを優先してください。スキャナーの出力が何十件もあるより、確認済みの所見が1件あるほうが重要です。
Pass 0:スコープと承認
アクティブな作業を始める前に、以下を確認します。
- スコープ内のドメイン、サブドメイン、IP、ASN、アプリ、環境(本番環境とステージング環境)。
- スコープ外のアセットと禁止されている手法(ブルートフォース、DoS、データダンプ、ラテラルムーブメント)。
- 書面による承認または明示的な所有権。
- スキャン強度:パッシブのみ、軽度のアクティブ、標準、または深度スキャン。
- エクスプロイトと認証情報のテストが許可されているかどうか。
- 証拠の保存先ディレクトリ(
PROJECT_DIR、既定値は~/Projects/pentest-engagement)。references/environment-setup.mdを参照してください。 - 成果物:コマンド計画のみ、テストの実行、または完全なレポート。
承認が不明確な場合は、パッシブな計画のみにとどめ、確認を求めてください。
Pass 1:パッシブ偵察
公開情報のみからインベントリを作成します。
- DNS、WHOIS/RDAP、RIPEstat/BGPView、証明書の透明性データ(
crt.sh、subfinder、amass -passive、assetfinder)。 - 過去の URL(
gau、waybackurls、Common Crawl、公開されているurlscan.io)。 - 検索演算子と公開コード内の参照(シークレットをコピーしないでください)。
実行可能な手順をユーザーが求めた場合は、references/environment-setup.md と references/tools.md のコマンド例を使用してください。
Pass 2:ターゲットの正規化
targets/ 以下に作業用リストを作成します。
domains.txt、in_scope_domains.txt、resolved_hosts.txt、web_targets.txt、ips.txt- 不確かなアセットは
needs-scope-confirmation.txtに記録します
重複を削除し、関連のない CT 名とスコープ外の SaaS は、承認されていない限り除外してください。
Pass 3:アクティブ偵察
Pass 0 の承認が必要です。すべてのプローブにレート制限を適用してください。
dnsx、httpx、nmap(まず主要なポートを対象にする)、必要に応じてnaabu/ レート制限付きのmasscanwafw00f、testssl.shまたはsslyze、nuclei(公開テンプレートを使用し、手掛かりとしてトリアージする)
レート制限を適用したアクティブコマンドを提案し、未加工の出力を evidence/active/ に保存してください。
Pass 4:Web アプリとインフラストラクチャのチェック
Web アプリケーション
- ヘッダー、Cookie、セキュリティヘッダー、テクノロジーをフィンガープリントします。
- 設定ミス:
.git、.env、バックアップ、phpinfo、ディレクトリ一覧、robots.txt。 - コンテンツとパラメーターの探索:
ffuf、feroxbuster、arjun、katana、hakrawler。 - 軽度の自動プローブ。既定では
sqlmapを検出専用にし、反射型 XSS の手掛かりにはdalfoxを使用します。 - 手動プロキシレビュー:OWASP ZAP または Burp Suite Community。
優先度の高い URL ごとに、フィンガープリント、設定ミスのチェック、軽度のプローブを順に実施します。
インフラストラクチャ(スコープ内の場合)
通信、ストレージ、ファイルサービスは、外部ペネトレーションテストでよく見つかります。
- SIP/VoIP:UDP/TCP 5060/5061、
nmap --script=sip-methods、OPTIONS プローブ。承認がない限り、通話の確立は行いません。 - NAS/ファイルの公開:ポート 445、139、548、873、2049、5000/5001、8080。
smbclient -N -L、showmount -e。共有のアクセス許可を記録し、顧客のファイル内容は記録しません。
SIP/NAS の結果は evidence/infra/ に保存してください。
パス 5:トリアージと証拠
各項目を分類します。
| 分類 | 意味 |
|---|---|
| 確認済みの発見事項 | 明確な証拠と影響を伴って再現済み |
| 可能性の高い発見事項 | 強い兆候があり、パス 6 での確認が必要 |
| 手がかり | 興味深いものの、まだテストしていない |
| 誤検知/対象範囲外 | レポートから除外 |
検証用に優先順位を付けたキューを作成します。evidence/triage/ に保存してください。レポートにシークレットや大量の個人を特定できる情報を貼り付けないでください。
パス 6:検証
手がかりを確認済みの発見事項にします。references/validation.md を読んでください。
web_targets.txtを Burp または ZAP にインポートし、認証とロールをマッピングします。- nuclei/ffuf/sqlmap の兆候を手動で確認します。
- IDOR/BOLA を 2 つのアカウントでテストします。コードを利用できる場合は
authz-securityと組み合わせてください。 - インフラストラクチャ:対象を絞ってポート/サービスを再確認します。データを窃取せずに SIP/NAS の証拠を確認します。
PoC の基準:番号付きの手順、リクエスト/レスポンスまたはスクリーンショット、影響、修正方法。
パス 7:範囲内のエクスプロイト
パス 0 でエクスプロイトが明示的に許可されている場合に限ります。references/exploitation-roe.md を読んでください。
- 影響を示すために必要最小限の証拠(1 行のデータ、無害なアップロード 1 件、テストアカウントを使った認証バイパス 1 件)。
- 契約で許可されていない限り、
--dump、永続化、水平移動、破壊的な操作は禁止です。 - クリーンアップが必要な場合は、テスト用の成果物を削除します。
- 範囲、本番環境へのリスク、または法的な境界が不明確な場合は停止してエスカレーションします。
パス 8:レポート作成
references/report-template.md を使用します。以下を含めてください。
- エグゼクティブサマリーと対象範囲
- フェーズごとの方法論(パッシブ、アクティブ、検証、実施した場合はエクスプロイト)
- 再現手順と修正方法を含む、重大度別の発見事項
- 手がかりと制約事項
- 修正ロードマップ(短期/中期/長期)
重大度の尺度
- P0:機密データの露出、認証不要の管理者/制御機能、重大なエクスプロイト経路を確認済み。
- P1:前提条件が限られた影響の大きい問題。大量の情報抽出を伴わないインジェクションまたは認可の破綻を確認済み。
- P2:エクスプロイトチェーンが確認されていない、中程度の露出またはセキュリティ強化の不足。
- P3:参考情報、衛生面の問題、またはスキャン上の制約。
出力形式
[P1] exposed-admin-panel on https://admin.example.com
Evidence: httpx + manual browser review; headers in evidence/webapp/.
Impact: Public admin surface increases credential and exploit risk.
Fix: Restrict by VPN/IdP, enforce MFA, monitor access.
参考ファイル
references/tools.md— 承認済みツールと商用ツールの除外項目references/checklist.md— エンゲージメントの完全なチェックリストreferences/environment-setup.md— macOS のセットアップとディレクトリ構成references/validation.md— 手動検証と PoC の基準references/exploitation-roe.md— 許可/禁止されるエクスプロイトの境界references/report-template.md— 最終成果物の構成
このスキルで行わないこと
- Shodan、Censys、DeHashed、IntelX、または Burp Pro の使用を必須とすること。
- パス 6 を経ずに、スキャナーの出力を確認済みのものとして扱うこと。
- RoE による明示的な承認なしに、エクスプロイト、情報のダンプ、永続化、または水平移動を実行すること。
- 認可を回避したり、対象範囲外のアセットをテストしたりすること。