Shikata Ga Nai

Private? There is no such things.

第27回:情報収集とリコン(Recon)のやり方

Hello there, ('ω')ノ

1. Recon の目的を再確認

目的 ゴール
**攻撃面(アタックサーフェス)**の特定 ドメイン / サブドメイン / API / IP / モバイル etc. を漏れなく把握
技術スタックの把握 「何で作られているか」を把握し、狙いやすい脆弱性を予測
潜在リスクの優先付け 新旧バージョン、管理ポータル、開発跡など“怪しい入口”をリストアップ

2. Recon 5 ステップ早見表

# ステップ 使う主なツール 目的
1 ドメイン列挙 Subfinder, Assetfinder 公開資産の土台作り
2 サブドメイン拡張 Amass, Sublist3r “忘れられた”サブ域を発掘
3 ポート & サービス調査 Nmap, Naabu 何が動いているか可視化
4 技術スタック判定 Wappalyzer, WhatWeb 使用フレームワークや CMS を特定
5 過去/隠しエンドポイント探索 Wayback Machine, gau, GitHub 旧バージョンや設定ファイルを発見

以下で順に解説します。


2.1 ドメイン列挙

subfinder -d example.com -o domains.txt
assetfinder --subs-only example.com >> domains.txt
sort -u domains.txt > all_domains.txt
  • ポイント:ツールを複数使い “OR” で結合し重複を除く。
  • アウトプットall_domains.txt が次工程の入力。

2.2 サブドメイン拡張 & バリデーション

amass enum -d example.com -df all_domains.txt -o amass.txt
httprobe < amass.txt | sort -u > live_hosts.txt
  • httprobe“生きている”ホストだけ抽出し効率アップ。
  • ワイルドカード DNS に注意(実在しないホストが返る事あり)。

2.3 ポート & サービス調査

naabu -iL live_hosts.txt -p- -o naabu_ports.txt
nmap -sV -T4 -iL naabu_ports.txt -oN services.txt
  • 早期フィルタ:HTTP(S)・SSH・FTP などよく使うポート群だけ先にスキャンし時間短縮も可。
  • バナー (nmap -sV) で 具体的バージョン を取得し CVE マッピングへ。

2.4 技術スタック判定

手法 コマンド例
CLI whatweb -iL live_hosts.txt -o tech.csv
ブラウザ拡張 Chrome + Wappalyzer → UI から即確認
  • WordPress / Drupal / React / jQuery などが分かれば、既知の弱点リスト(CVE・OWASP Cheat Sheet)を照合できる。

2.5 過去 & 隠しエンドポイント探索

gau example.com | tee gau.txt
cat gau.txt | grep -E '\.(php|aspx|bak|old)$' | tee juicy.txt
  • Wayback Machine を使う GUI 代替 → https://web.archive.org/web/*/https://example.com/*
  • GitHub 検索例:org:example api_keypassword=アクセストークン流出 を探す。

3. 作業テンプレ:Notion / Excel 例

資産 ポート サービス Tech Stack 備考(怪しさ)
app.example.com 80,443 Apache 2.4.48 PHP 7.4 / WordPress /wp-admin
dev-api.example.com 8080 nginx 1.16 Node.js Express X-Powered-By: Express
old.example.com 80 IIS 7.5 ASP.NET 4.0 Wayback で 2016 UI

次フェーズ:備考欄が “怪しさ” 高い順にテスト着手。


4. 自動化と手動のバランス

自動化が得意 手動が強い
収集量・重複排除 バナーの微妙な違いを読む
定期差分監視 JS コメントや業務ロジック理解
ポート変化検知 社内限定ポータルの隠し機能発掘

90% 自動 / 10% 手動レビュー が目安。 自動結果を“眺める”時間がインスピレーションにつながります。


5. よくある落とし穴と Tips

落とし穴 対策
DNS ワイルドカードに騙される IP 解決後に HTTP 200 確認
クラウド WAF でポート隠蔽 dig本番 IP → バックエンド直スキャン
スコープ外サブドメインに触る プログラムページを再確認!

まとめ:Recon は“釣り”でいう魚群探知機

  • 広く集め、重複を削ぎ、怪しい所に絞る のが基本
  • ツールは 複数組み合わせ+差分管理 がコツ
  • 手動レビューで “人ならでは” の気づきを拾い上げよう

「7割の時間を Recon に」 を意識すれば、 後工程のバグ発見率がグッと上がります!

Best regards, (^^ゞ