mcpField
R
Recon

Recon

github.com/danielmiesslerセキュリティ19.6k143 回インストール2 日前に更新
リポジトリ

Recon について

Reconは、ネットワーク基盤をマッピングし、ドメイン、IPアドレス、ネットブロック、ASNを調査するスキルです。公開情報の調査に加えて任意のアクティブスキャンを行えますが、明示的な許可と対象範囲の確認が必要です。

主な機能

  1. 01WHOISとDNSの検索
  2. 02証明書と過去のDNS情報の調査
  3. 03IP、ドメイン、ネットブロック、ASNの把握
  4. 04任意のポート・サービススキャン
  5. 05パッシブ調査を優先する手順

活用シーン

  1. 01ドメインのDNSとサブドメインの把握
  2. 02IPの所有者とネットワークサービスの調査
  3. 03ASNの範囲と所有者の調査
  4. 04許可された評価の対象資産の特定

MCP 対応

Reconは、HTTP探査、技術検出、ポートスキャンにhttpxとnaabuのMCPツールを利用できます。利用にはsecurity MCPプロファイルが必要で、アクティブスキャンには明示的な許可も必要です。

インストール

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

$npx skills add https://github.com/danielmiessler/lifeos --skill recon

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
Data/
LOTLBinaries.md
BountyPrograms.json
Tools/
DnsUtils.ts
CidrUtils.ts
BountyPrograms.ts
CorporateStructure.ts
IpinfoClient.ts
PortScan.ts
SubdomainEnum.ts
EndpointDiscovery.ts
PathDiscovery.ts
WhoisParser.ts
MassScan.ts
Workflows/
AnalyzeScanResultsGemini3.md
BountyPrograms.md
UpdateTools.md
PassiveRecon.md
IpRecon.md
DomainRecon.md
NetblockRecon.md

詳細

カスタマイズ

実行する前に、次の場所にユーザーのカスタマイズがあるか確認してください: ~/.claude/PAI/USER/SKILLCUSTOMIZATIONS/Recon/

このディレクトリが存在する場合は、そこにある PREFERENCES.md、設定、リソースを読み込んで適用してください。これらはデフォルトの動作より優先されます。ディレクトリが存在しない場合は、スキルのデフォルト設定で続行してください。

recon

インフラストラクチャとネットワークの偵察

🚨 必須:音声通知(何よりも先に実行すること)

このスキルが呼び出されたら、ほかのことをする前に必ずこの通知を送信してください。

  1. 音声通知を送信:

    curl -s -X POST http://localhost:8888/notify \
      -H "Content-Type: application/json" \
      -d '{"message": "Running the WORKFLOWNAME workflow in the Recon skill to ACTION"}' \
      > /dev/null 2>&1 &
    
  2. テキスト通知を出力:

    Running the **WorkflowName** workflow in the **Recon** skill to ACTION...
    

これは任意ではありません。このスキルの呼び出し直後に、この curl コマンドを実行してください。

目的

ドメイン、IP アドレス、ネットブロック、ASN を含むネットワークインフラストラクチャの技術的な偵察を行います。パッシブな情報収集と、許可を得たアクティブスキャンを組み合わせて攻撃対象領域をマッピングし、資産を特定します。

このスキルを使用するタイミング

主なトリガー — ユーザーが次のように言った場合に、このスキルを使用します:

直接的な偵察依頼
  • 「[target] を偵察して」または「偵察を実行して」
  • 「[target] の偵察を行って」または「偵察を実施して」
  • 「インフラストラクチャを偵察して」または「ネットワークを偵察して」
  • 「基本的な偵察」「手早い偵察」「簡単な偵察」
  • 「包括的な偵察」「詳細な偵察」「全面的な偵察」
  • 「[target] を偵察して」(「偵察」とターゲットのみ)
  • 「パッシブ偵察」「アクティブ偵察」
インフラストラクチャとネットワークのマッピング
  • 「[domain] のインフラストラクチャをマッピングして」または「ネットワークをマッピングして」
  • 「[domain] のインフラストラクチャを列挙して」または「資産を見つけて」
  • 「[domain] のサブドメインを見つけて」または「サブドメインを列挙して」
  • 「[target] をスキャンして」または「[IP/netblock] のポートをスキャンして」
  • 「[IP] で実行中のサービスは何?」
  • 「[IP address/domain/netblock] を調査して」
IP とドメインの調査
  • 「この IP を偵察して」または「この IP アドレスを調査して」
  • 「[IP] を調べて」または「[address] の IP を検索して」
  • 「[IP] とは何?」または「[IP] の所有者は誰?」
  • 「ドメイン偵察」または「ドメイン調査」
  • 「DNS 偵察」「DNS 列挙」
  • 「[domain/IP] の WHOIS」
ASN とネットブロックの調査
  • 「[ASN] を調査して」または「ASN を調べて」
  • 「[CIDR range/netblock] をスキャンして」
  • 「[netblock] 内の IP を見つけて」
  • 「ネットブロックを列挙して」または「ネットブロックをスキャンして」
パッシブ偵察とアクティブ偵察
  • 「[target] をパッシブ偵察して」(許可不要)
  • 「[target] をアクティブスキャンして」(明示的な許可が必要)
  • 「安全な偵察」(パッシブのみ)
  • 「許可を得たスキャン」(アクティブな手法)
ユースケースの指標
  • 所有者、所在地、サービスを調べるための IP アドレスの調査
  • ドメインインフラストラクチャと DNS 設定のマッピング
  • 稼働中のホストを見つけるためのネットブロックまたは CIDR 範囲のスキャン
  • ASN の所有権と IP 割り当ての調査
  • 攻撃対象領域の列挙とネットワークのマッピング
  • エンティティのインフラストラクチャをマッピングするために OSINT から呼び出される場合

その他のセキュリティスキルとの連携

OSINT → recon(一般的なパターン):

  • OSINT はエンティティ、企業、人々を特定します(ソーシャル情報や公開記録が中心)
  • Recon はそれらの技術インフラストラクチャをマッピングします(ネットワークやシステムが中心)
  • フローの例:OSINT が企業を見つける → Recon がその企業のドメイン、IP、インフラストラクチャをマッピングする

recon → webassessment:

  • Recon は Web アプリケーションとサービスを特定します
  • Web アセスメントは、それらのアプリケーションの脆弱性をテストします
  • 例:Recon がサブドメイン api.target.com を見つける → Web アセスメントがファジング/テストを行う

ワークフローの連携:

// OSINT skill discovers company infrastructure
const domains = await osintFindCompanyDomains("Acme Corp");

// Calls recon skill to map technical details
const infraMap = await reconDomain(domains[0]);

// Recon identifies web apps
const webApps = infraMap.subdomains.filter(s => s.hasHTTP);

// Calls web assessment for testing
await webAssessment(webApps);

主な機能

パッシブ偵察(許可不要)
  • WHOIS 検索(ドメインと IP)
  • DNS 列挙(A、AAAA、MX、NS、TXT、CNAME、SOA など)
  • 証明書の透明性に関する検索(サブドメイン、証明書の履歴)
  • IPInfo API(地理的位置、ASN、組織、不正利用に関する連絡先)
  • 逆引き DNS 検索
  • BGP/ASN 情報の収集
  • 過去の DNS データ
  • 公開データベースの検索
アクティブな偵察(明示的な許可が必要)
  • ポートスキャン(naabu MCP)
  • サービス検出とバナー取得(httpx MCP)
  • テクノロジーのフィンガープリンティング
  • 稼働中のホストの検出
  • HTTP/HTTPS プロービング
  • SSL/TLS 分析

重要な許可要件:

アクティブな偵察には、以下が必須です。

  1. 各アクティブスキャンについて、ユーザーから明示的な確認を得ること
  2. 許可を文書化すること(ペネトレーションテストの契約、バグバウンティプログラム、所有する資産)
  3. スコープを検証すること(対象がスコープ内であることを確認する)
  4. レート制限を設けること(節度あるスキャンを行い、DoS を起こさない)
  5. セッションを記録すること(監査証跡のため、アクティブな偵察をすべて記録する)

デフォルトの動作はパッシブのみです。 アクティブな手法を実行する前に、必ず確認してください。

利用可能なワークフロー

1. PassiveRecon.md - 安全な偵察

公開情報源を使用した、非侵襲的な情報収集:

  • WHOIS データ
  • DNS レコード
  • 証明書の透明性
  • IPInfo の検索
  • 逆引き DNS
  • アクティブスキャンなし

入力: ドメイン、IP、またはネットブロック
出力: パッシブ情報レポート
許可: 不要

2. IpRecon.md - IP アドレスの調査

IP アドレスの包括的な偵察:

  • IPInfo の検索(所在地、ASN、組織、abuse 連絡先)
  • 逆引き DNS
  • WHOIS ネットブロック情報
  • 証明書の検索(IP に証明書がある場合)
  • オプション:ポートスキャン(許可がある場合)
  • オプション:サービス検出(許可がある場合)

入力: 単一の IP アドレス
出力: IP 偵察レポート
許可: アクティブスキャンには必要

3. DomainRecon.md - ドメインの調査

ドメインの完全なマッピングと列挙:

  • WHOIS ドメイン登録情報
  • DNS レコード(すべての種類)
  • サブドメインの列挙(証明書の透明性)
  • メールサーバーの設定(MX、SPF、DMARC、DKIM)
  • ドメインの背後にある IP アドレス
  • 証明書の分析
  • テクノロジースタックの検出
  • 履歴データ

入力: ドメイン名
出力: ドメイン偵察レポート
許可: アクティブなサブドメインのプロービングには必要

4. NetblockRecon.md - CIDR 範囲のスキャン

ネットワーク範囲の偵察:

  • CIDR の解析と検証
  • 範囲サイズの計算
  • WHOIS ネットブロックの所有者情報
  • オプション:稼働中のホストの検出(許可がある場合)
  • オプション:範囲のポートスキャン(許可がある場合)
  • ASN/組織のマッピング
  • 注目すべきホストの特定

入力: CIDR 表記(例:192.168.1.0/24)
出力: ネットブロックのスキャンレポート
許可: アクティブスキャンには必要

5. ASN の調査

WHOIS、IPInfo、および公開 BGP データを使用してインラインで実行する ASN および BGP の偵察:

  • ASN から CIDR 範囲へのマッピング
  • 組織情報
  • ASN が所有するすべての IP 範囲
  • BGP ピア関係
  • 地理的な分布
  • ホスティング/ISP の特定

入力: ASN 番号(例:AS15169)
出力: ASN マッピングレポート
許可: 不要(パッシブデータ)

ツール連携

主なツール

IPInfo API(ipinfo.io)

  • API キー:process.env.IPINFO_API_KEY
  • 機能:ジオロケーション、ASN、組織、abuse 連絡先、プライバシー検出
  • レート制限:API プランを確認してください
  • クライアント:Tools/IpinfoClient.ts

システムツール(常時利用可能)

  • whois - ドメインおよび IP の WHOIS 検索
  • dig - DNS クエリ
  • nslookup - DNS 解決
  • curl - HTTP リクエスト、API 呼び出し

MCP ツール(セキュリティプロファイルが必要)

  • httpx - HTTP プロービングとテクノロジー検出
  • naabu - ポートスキャン
  • 注:セキュリティ MCP プロファイルが必要です(~/.claude/MCPs/swap-mcp security)
今後のツール連携

Shodan(API キー追加時)

  • 公開されているサービスの検索
  • 過去のスキャンデータ
  • 脆弱性情報

Censys(API キー追加時)

  • 証明書の検索
  • ホストの検出
  • インターネット全体のスキャンデータ

SecurityTrails(API キー追加時)

  • 過去の DNS レコード
  • WHOIS 履歴
  • サブドメインの検出

VirusTotal(API キー追加時)

  • ドメイン/IP のレピュテーション
  • パッシブ DNS
  • マルウェアとの関連付け

TypeScript ユーティリティ

Tools/ ディレクトリにあります。

IpinfoClient.ts

  • IPInfo API ラッパーとエラー処理
  • 一括検索のサポート
  • レート制限
  • レスポンスの解析

DnsUtils.ts

  • DNS 列挙ヘルパー
  • レコードタイプの問い合わせ
  • ゾーン転送の試行
  • サブドメインのブルートフォース

WhoisParser.ts

  • WHOIS データの解析
  • 生の WHOIS データから構造化出力を生成
  • 登録日の抽出
  • 連絡先情報の解析

CidrUtils.ts

  • CIDR 表記の解析
  • IP 範囲の計算
  • 範囲の検証
  • CIDR からの IP アドレス生成

出力形式

IP 偵察レポート
# IP Reconnaissance: 1.2.3.4

## Summary
- IP: 1.2.3.4
- Organization: Example Corp
- ASN: AS12345
- Location: San Francisco, CA, US
- ISP: Example Hosting

## DNS
- Reverse DNS: server.example.com
- Additional PTR: ...

## Network Information
- CIDR: 1.2.3.0/24
- Netblock Owner: Example Corp
- Abuse Contact: [email protected]

## Services (Passive)
- Certificates: 3 certificates found
- Historical DNS: ...

## Services (Active - Authorized)
- Open Ports: 22, 80, 443
- Services: SSH (OpenSSH 8.2), HTTP (nginx 1.20.1), HTTPS
- Technologies: nginx, OpenSSH

## Recommendations
- Further investigation areas
- Related assets
- Security observations
ドメイン偵察レポート
# Domain Reconnaissance: example.com

## Summary
- Domain: example.com
- Registrar: Example Registrar
- Registration: 2010-01-15
- Expiry: 2026-01-15

## DNS Records
### A Records
- 1.2.3.4
- 5.6.7.8

### MX Records
- 10 mail.example.com

## Subdomains
- www.example.com (1.2.3.4)
- api.example.com (1.2.3.5)
- admin.example.com (1.2.3.6)

## Email Security
- SPF: Configured
- DMARC: Configured
- DKIM: Configured

## Technologies
- Web Server: nginx
- Framework: React
- CDN: Cloudflare

## Recommendations
- Interesting subdomains: admin.example.com, api.example.com
- Attack surface: 15 web applications identified

レポートの保存先:

  • 作業ディレクトリ(~/.claude/MEMORY/WORK/{current_work}/) - 調査中の反復作業用成果物
  • MEMORY/RESEARCH/(~/.claude/MEMORY/RESEARCH/YYYY-MM/) - ペネトレーションテストの案件および正式な評価用

MCP プロファイルの要件

パッシブ偵察の場合: 特別な MCP プロファイルは不要です

アクティブ偵察の場合: セキュリティ MCP プロファイルが必要です

# Switch to security profile
~/.claude/MCPs/swap-mcp security

# Restart Claude Code to apply
# Then run active reconnaissance

セキュリティプロファイルには次のものが含まれます。

  • httpx(HTTP プロービング)
  • naabu(ポートスキャン)
  • その他のセキュリティツール

倫理および法的な考慮事項

重要なルール:

  1. 最初に許可を得る - 明示的な許可なしにアクティブスキャンを実行しないでください
  2. スコープを検証する - 対象がテストのスコープ内であることを確認してください
  3. レートを制限する - 相手に配慮してスキャンし、DoS や攻撃的な手法を使わないでください
  4. 記録する - すべての偵察活動を、タイムスタンプと許可の情報とともに記録してください
  5. 責任ある情報開示 - 脆弱性が見つかった場合は、責任ある情報開示に従ってください
  6. 破壊的なテストを行わない - 偵察のみとし、エクスプロイトは行わないでください

許可の種類:

  • ペネトレーションテスト案件(書面による SOW/契約)
  • バグバウンティプログラム(スコープ内の対象のみ)
  • 所有する資産(自社のインフラストラクチャ)
  • 研究ラボ/CTF 環境

次の対象は決してスキャンしないでください:

  • 許可を得ていないシステム
  • スコープ外の対象
  • 重要インフラ
  • 政府機関のシステム(特別な許可がない場合)

判断に迷った場合: 明示的な確認と、文書化された許可を求めてください。

使用例

例 1:パッシブなドメイン偵察
User: "Do passive recon on example.com"

Assistant: Activating recon skill with passive-recon workflow.
     Target: example.com
     Mode: Passive only (no active scanning)

     [Performs WHOIS, DNS, cert transparency, IPInfo]
     [Generates report in scratchpad]

     Report: ~/.claude/MEMORY/WORK/{current_work}/recon-example-com/
例 2:アクティブスキャンによる IP 調査
User: "Investigate IP 1.2.3.4 - I own this server"

Assistant: Activating recon skill with ip-recon workflow.
     Target: 1.2.3.4

     Authorization check: You confirmed this is an owned asset.
     Proceeding with passive + active reconnaissance.

     [Performs IPInfo, reverse DNS, WHOIS, port scan, service detection]
     [Generates comprehensive report]

     Report: Open ports found (22, 80, 443)
             Services: SSH, HTTP, HTTPS
             Technologies: nginx 1.20.1, OpenSSH 8.2
例 3:OSINT との統合
User: "Do OSINT on Acme Corp and map their infrastructure"

Assistant: Activating OSINT skill...
     Found domains: acme.com, acmecorp.com, acme.io

     Now calling recon for infrastructure mapping...

     [Recon skill maps each domain]
     [Discovers subdomains, IPs, netblocks]
     [Creates comprehensive infrastructure map]

     Report: Complete OSINT + Infrastructure report
             15 domains, 47 subdomains, 3 netblocks identified

ワークフローの選択ロジック

入力に基づくワークフローの自動選択:

  • 入力が IP パターン(x.x.x.x)に一致 → IpRecon.md
  • 入力がドメインパターンに一致 → DomainRecon.md
  • 入力が CIDR パターン(x.x.x.x/y)に一致 → NetblockRecon.md
  • 入力が ASN パターン(AS####)に一致 → ASN 調査(WHOIS/IPInfo/BGP データを使用してインラインで実行)
  • ユーザーが「パッシブのみ」を指定 → PassiveRecon.md

ユーザーによる上書きが可能です:

"Use passive-recon workflow on 1.2.3.4"
"Run domain-recon on example.com with active scanning"

成功基準

パッシブ偵察の成功:

  • WHOIS データを取得済み
  • DNS レコードを列挙済み
  • 証明書の透明性を検索済み
  • IPInfo データを収集済み
  • 構造化レポートを生成済み

アクティブ偵察の成功:

  • 許可を確認し、記録済み
  • 最初にパッシブ偵察を完了済み
  • ポートスキャン結果(オープン/クローズ/フィルタリング済み)
  • サービス検出を実施済み
  • バナー情報を収集済み
  • テクノロジーを特定済み
  • エラーや失敗なし
  • 相手に配慮したスキャン時間(DoS なし)

関連ドキュメント

セキュリティスキル:

  • ~/.claude/skills/Investigation/ - エンティティおよび人物の偵察(OSINT)
  • ~/.claude/skills/Security/WebAssessment/ - Web アプリケーションのテスト

ツールのドキュメント:

ベストプラクティス:


忘れないでください: まずはパッシブ偵察から始め、アクティブ偵察に移る前に許可を確認し、すべてを記録して、対象システムに配慮してください。

コメント