jpskill.com
🛠️ 開発・MCP コミュニティ

reconnaissance-knowledge

Comprehensive knowledge about network reconnaissance and service enumeration. Provides methodologies for port scanning, service fingerprinting, web directory discovery, and vulnerability identification. Includes best practices for structured data collection.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o reconnaissance-knowledge.zip https://jpskill.com/download/17818.zip && unzip -o reconnaissance-knowledge.zip && rm reconnaissance-knowledge.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/17818.zip -OutFile "$d\reconnaissance-knowledge.zip"; Expand-Archive "$d\reconnaissance-knowledge.zip" -DestinationPath $d -Force; ri "$d\reconnaissance-knowledge.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して reconnaissance-knowledge.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → reconnaissance-knowledge フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

偵察知識ベース

目的

この知識ベースは、包括的な偵察方法論とテクニックを提供します。エクスプロイトを実行せずにターゲットに関する情報を収集すること(サービス、バージョン、テクノロジー、潜在的な攻撃ベクトルを発見することなど)を網羅します。

利用可能なツール

ネットワークスキャン

  • nmap - ポートとサービスの発見
  • masscan - 高速ポートスキャン(速度が必要な場合)
  • nc (netcat) - バナーグラビング

Web 列挙

  • gobuster - ディレクトリ/ファイルのブルートフォース
  • dirb - 代替ディレクトリ スキャナ
  • nikto - Web 脆弱性スキャナ
  • whatweb - テクノロジー識別
  • curl/wget - 手動 HTTP インタラクション

サービス列挙

  • enum4linux - SMB/Samba 列挙
  • smbclient - SMB インタラクション
  • showmount - NFS 列挙
  • snmpwalk - SNMP 列挙

DNS/サブドメイン

  • dig - DNS クエリ
  • host - DNS ルックアップ
  • nslookup - DNS 情報

階層化された偵察戦略

コア原則: すべての偵察タスクには3つのレイヤーがあります - 前のレイヤーで十分な結果が得られない場合はエスカレートします。

各タスクのレイヤーフレームワーク:

Layer 1 (Quick & Broad):
  - デフォルトパラメータを使用した高速ツール
  - 目標: 初期足がかり情報を取得する
  - 時間: 1-5 分
  - 例: nmap 上位 1000 ポート、gobuster 小型ワードリスト

Layer 2 (Deep & Intensive):
  - アグレッシブなパラメータを使用した同じツール
  - 目標: 既知のサービスから最大限の情報を抽出する
  - 時間: 5-30 分
  - 例: nmap すべてのポート + バージョン検出、gobuster 大型ワードリスト

Layer 3 (Alternative & Creative):
  - 異なるツールまたは手動テクニック
  - 目標: 標準ツールが見逃す情報を見つける
  - 時間: 可変
  - 例: 手動バナーグラビング、代替スキャナ、カスタムスクリプト

エスカレーションのトリガー:

  • Layer 1 が何も返さない → Layer 2 にエスカレート
  • Layer 2 が最小限の情報しか返さない → Layer 3 にエスカレート
  • Layer 3 でも不十分 → アプローチ全体を再評価

偵察フェーズ

フェーズ 1: ポート検出

目標: すべてのオープンポートを見つける

# クイックスキャン (上位 1000 ポート)
nmap -p- --min-rate=1000 -T4 TARGET

# 包括的なスキャン (すべてのポート)
nmap -p- -T4 TARGET -oN ports.txt

出力形式:

{
  "ports": [
    {"port": 22, "state": "open", "protocol": "tcp"},
    {"port": 80, "state": "open", "protocol": "tcp"}
  ]
}

フェーズ 2: サービス検出

目標: サービスとバージョンを識別する

# サービスバージョン検出
nmap -p22,80,443 -sV -sC -A TARGET -oN services.txt

# スクリプトを使用したアグレッシブなスキャン
nmap -p22,80 -sC -sV --script=default,vuln TARGET

出力形式:

{
  "services": [
    {
      "port": 22,
      "service": "ssh",
      "version": "OpenSSH 7.6p1",
      "os": "Ubuntu Linux"
    },
    {
      "port": 80,
      "service": "http",
      "version": "Apache httpd 2.4.29",
      "technologies": ["PHP/7.2"]
    }
  ]
}

フェーズ 3: Web 列挙 (HTTP/HTTPS が見つかった場合)

目標: 隠されたファイル、ディレクトリ、および Web テクノロジーを発見する

階層化された Web スキャン:

# Layer 1: クイックディレクトリ スキャン
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirb/common.txt -x php,html,txt -t 50

# Layer 1 でほとんど/何も見つからない場合は、Layer 2 にエスカレートします。
# Layer 2: より大きなワードリストを使用したディープディレクトリ スキャン
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,txt,zip,bak -t 100

# それでも不十分な場合は、Layer 3 を試してください。
# Layer 3: 代替ツールまたはテクニック
# オプション A: 異なるツール
feroxbuster -u http://TARGET -w /usr/share/wordlists/dirb/common.txt

# オプション B: 脆弱性スキャナ
nikto -h http://TARGET

# オプション C: テクノロジー検出
whatweb http://TARGET

# より大きなワードリストを使用した代替
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50

# テクノロジー検出
whatweb http://TARGET

# 脆弱性スキャン
nikto -h http://TARGET

出力形式:

{
  "web": {
    "url": "http://10.10.10.1",
    "technologies": ["Apache/2.4.29", "PHP/7.2", "WordPress 5.0"],
    "directories": [
      "/admin (Status: 403)",
      "/uploads (Status: 301)",
      "/backup (Status: 200)"
    ],
    "files": [
      "/config.php (Status: 200)",
      "/README.txt (Status: 200)"
    ],
    "vulnerabilities": [
      "Outdated WordPress version",
      "Directory listing enabled on /uploads"
    ]
  }
}

フェーズ 4: 特定のサービス列挙

SMB (ポート 139/445)

# 基本的な列挙
enum4linux -a TARGET

# 共有をリストする
smbclient -L //TARGET -N

# 匿名アクセスを確認する
smbmap -H TARGET

FTP (ポート 21)

# 匿名ログインを確認する
ftp TARGET
# 試す: anonymous / anonymous

# バナーグラブ
nc TARGET 21

SSH (ポート 22)

# SSH バージョンとアルゴリズムを取得する
ssh -v TARGET

# ユーザー列挙を確認する
ssh user@TARGET 2>&1 | grep -i "invalid\|denied"

MySQL/MSSQL (ポート 3306/1433)

# バナーグラブ
nc TARGET 3306

# デフォルトの認証情報をテストする
mysql -h TARGET -u root -p
# 一般的なパスワードを試す: root, admin, password, ''

ベストプラクティス

1. 構造化された出力

解析を容易にするために、常に JSON で発見をフォーマットします。

# 例: nmap 出力を JSON に解析する
nmap -p- TARGET -oG - | grep "Ports:" | awk '{print $2, $4}' | sed 's/\/open//' | jq -R -s 'split("\n") | map(select(length > 0) | split(" ") | {port: .[1], service: .[0]})'

2. ステルス vs 速度

  • プレイグラウンド環境の場合: アグレッシブなスキャンを使用します (-T4, --min-rate=1000)
  • 実際の環境の場合: より遅く、ステルスなスキャンを使用します (-T2)

3. すべての出力を保存する

# 常に生の出力を保存する
nmap ... -oN nmap-full.txt -oX nmap-full.xml

# 発見を状態ファイルに保存する
cat discovered.json >> .pentest-state.json

4. 包括的なカバレッジ

見逃さないでください:

  • UDP ポート (遅いが重要): nmap -sU --top-ports 100 TARGET
  • すべての TCP ポート: nmap -p- TARGET
  • 複数のワードリストを使用した Web ディレクトリ
  • すべてのサービスのデフォルトの認証情報

(原文はここで切り詰められています)

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Reconnaissance Knowledge Base

Purpose

This knowledge base provides comprehensive reconnaissance methodologies and techniques. It covers information gathering about targets without performing exploitation, including discovering services, versions, technologies, and potential attack vectors.

Tools Available

Network Scanning

  • nmap - Port and service discovery
  • masscan - Fast port scanning (if speed needed)
  • nc (netcat) - Banner grabbing

Web Enumeration

  • gobuster - Directory/file brute forcing
  • dirb - Alternative directory scanner
  • nikto - Web vulnerability scanner
  • whatweb - Technology identification
  • curl/wget - Manual HTTP interaction

Service Enumeration

  • enum4linux - SMB/Samba enumeration
  • smbclient - SMB interaction
  • showmount - NFS enumeration
  • snmpwalk - SNMP enumeration

DNS/Subdomain

  • dig - DNS queries
  • host - DNS lookups
  • nslookup - DNS information

Layered Reconnaissance Strategy

Core Principle: Every reconnaissance task has 3 layers - escalate when previous layer yields insufficient results.

Layer Framework for Each Task:

Layer 1 (Quick & Broad):
  - Fast tools with default parameters
  - Goal: Get initial foothold information
  - Time: 1-5 minutes
  - Example: nmap top 1000 ports, gobuster with small wordlist

Layer 2 (Deep & Intensive):
  - Same tools with aggressive parameters
  - Goal: Extract maximum information from known services
  - Time: 5-30 minutes
  - Example: nmap all ports + version detection, gobuster with large wordlist

Layer 3 (Alternative & Creative):
  - Different tools or manual techniques
  - Goal: Find information that standard tools miss
  - Time: Variable
  - Example: Manual banner grabbing, alternative scanners, custom scripts

Escalation Triggers:

  • Layer 1 returns nothing → Escalate to Layer 2
  • Layer 2 returns minimal info → Escalate to Layer 3
  • Layer 3 still insufficient → Re-evaluate entire approach

Reconnaissance Phases

Phase 1: Port Discovery

Goal: Find all open ports

# Quick scan (top 1000 ports)
nmap -p- --min-rate=1000 -T4 TARGET

# Comprehensive scan (all ports)
nmap -p- -T4 TARGET -oN ports.txt

Output Format:

{
  "ports": [
    {"port": 22, "state": "open", "protocol": "tcp"},
    {"port": 80, "state": "open", "protocol": "tcp"}
  ]
}

Phase 2: Service Detection

Goal: Identify services and versions

# Service version detection
nmap -p22,80,443 -sV -sC -A TARGET -oN services.txt

# Aggressive scan with scripts
nmap -p22,80 -sC -sV --script=default,vuln TARGET

Output Format:

{
  "services": [
    {
      "port": 22,
      "service": "ssh",
      "version": "OpenSSH 7.6p1",
      "os": "Ubuntu Linux"
    },
    {
      "port": 80,
      "service": "http",
      "version": "Apache httpd 2.4.29",
      "technologies": ["PHP/7.2"]
    }
  ]
}

Phase 3: Web Enumeration (if HTTP/HTTPS found)

Goal: Discover hidden files, directories, and web technologies

Layered Web Scanning:

# Layer 1: Quick directory scan
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirb/common.txt -x php,html,txt -t 50

# If Layer 1 finds little/nothing, escalate to Layer 2:
# Layer 2: Deep directory scan with larger wordlist
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,txt,zip,bak -t 100

# If still insufficient, try Layer 3:
# Layer 3: Alternative tools or techniques
# Option A: Different tool
feroxbuster -u http://TARGET -w /usr/share/wordlists/dirb/common.txt

# Option B: Vulnerability scanner
nikto -h http://TARGET

# Option C: Technology detection
whatweb http://TARGET

# Alternative with larger wordlist
gobuster dir -u http://TARGET -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50

# Technology detection
whatweb http://TARGET

# Vulnerability scan
nikto -h http://TARGET

Output Format:

{
  "web": {
    "url": "http://10.10.10.1",
    "technologies": ["Apache/2.4.29", "PHP/7.2", "WordPress 5.0"],
    "directories": [
      "/admin (Status: 403)",
      "/uploads (Status: 301)",
      "/backup (Status: 200)"
    ],
    "files": [
      "/config.php (Status: 200)",
      "/README.txt (Status: 200)"
    ],
    "vulnerabilities": [
      "Outdated WordPress version",
      "Directory listing enabled on /uploads"
    ]
  }
}

Phase 4: Specific Service Enumeration

SMB (Port 139/445)

# Basic enumeration
enum4linux -a TARGET

# List shares
smbclient -L //TARGET -N

# Check for anonymous access
smbmap -H TARGET

FTP (Port 21)

# Check for anonymous login
ftp TARGET
# Try: anonymous / anonymous

# Banner grab
nc TARGET 21

SSH (Port 22)

# Get SSH version and algorithms
ssh -v TARGET

# Check for user enumeration
ssh user@TARGET 2>&1 | grep -i "invalid\|denied"

MySQL/MSSQL (Port 3306/1433)

# Banner grab
nc TARGET 3306

# Test default credentials
mysql -h TARGET -u root -p
# Try common passwords: root, admin, password, ''

Best Practices

1. Structured Output

Always format discoveries in JSON for easy parsing:

# Example: Parse nmap output to JSON
nmap -p- TARGET -oG - | grep "Ports:" | awk '{print $2, $4}' | sed 's/\/open//' | jq -R -s 'split("\n") | map(select(length > 0) | split(" ") | {port: .[1], service: .[0]})'

2. Stealth vs Speed

  • For playground environments: Use aggressive scans (-T4, --min-rate=1000)
  • For real environments: Use slower, stealthy scans (-T2)

3. Save All Output

# Always save raw output
nmap ... -oN nmap-full.txt -oX nmap-full.xml

# Save discoveries to state file
cat discovered.json >> .pentest-state.json

4. Comprehensive Coverage

Don't miss:

  • UDP ports (slower but important): nmap -sU --top-ports 100 TARGET
  • All TCP ports: nmap -p- TARGET
  • Web directories with multiple wordlists
  • Default credentials for all services found

5. Time Management

  • Quick initial scan: 5 minutes max
  • Comprehensive scan: 15-20 minutes max
  • This is a playground, not real-world - speed matters

Common Wordlists

# Small (fast)
/usr/share/wordlists/dirb/common.txt

# Medium (balanced)
/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

# Large (comprehensive)
/usr/share/wordlists/dirbuster/directory-list-2.3-big.txt

# Specific to web apps
/usr/share/wordlists/wfuzz/general/common.txt

Output Template

After completing reconnaissance, provide summary in this format:

{
  "target": "10.10.10.1",
  "scan_date": "2025-01-15",
  "discovered": {
    "ports": [
      {"port": 22, "service": "ssh", "version": "OpenSSH 7.6p1"},
      {"port": 80, "service": "http", "version": "Apache 2.4.29"}
    ],
    "web": {
      "technologies": ["Apache", "PHP", "WordPress"],
      "interesting_paths": ["/admin", "/uploads", "/wp-admin"],
      "vulnerabilities": ["Outdated WordPress", "Directory listing"]
    },
    "potential_vectors": [
      "File upload via /uploads",
      "WordPress plugin vulnerabilities",
      "SSH password authentication enabled"
    ]
  },
  "recommended_actions": [
    "Test file upload functionality on /uploads",
    "Search for WordPress exploits for version detected",
    "Enumerate WordPress users with wpscan"
  ]
}

Key Principles

  1. Thoroughness: Don't miss services or directories
  2. Structure: Always output JSON for coordinator to parse
  3. Speed: Balance between comprehensive and efficient
  4. Context: Provide next-step recommendations
  5. No Exploitation: Stay in recon phase, don't test exploits

Handoff to Next Phase

When reconnaissance is complete, provide:

  1. Complete service inventory
  2. Identified vulnerabilities
  3. Recommended exploitation approaches
  4. Any discovered credentials/default logins
  5. Updated .pentest-state.json

After reconnaissance is sufficient, proceed to the exploitation phase using exploitation knowledge.