【ドメインOSINT編】WHOIS・パッシブDNS・証明書から組織を読む|CTF思考フレームワーク #70
こんにちは、アンペンです!
今回はドメインOSINT編。組織のIT資産は、WHOIS・パッシブDNS・証明書ログ・Shodanを組み合わせると、『運用者が意識的に公開していない範囲まで』丸見えになります。攻撃者は実攻撃の前にここでターゲット組織の地図を作り、防御者は『自社が外からどう見えているか』を点検します。
すべて合法な公開情報の組み合わせで、ツールは無料のものが多数。組織が買収した古いブランドのドメイン・社内検証用に作ったまま放置したサブドメイン・誤ってCT logに出てしまった本番前ステージング環境──こうした『見えてはいけないもの』が、4本柱を組み合わせると次々に浮かび上がります。
ドメイン名って、ただのWebサイトの住所だと思いがちですよね。でも実は、その“裏側”には組織のIT資産がぶら下がっていて、しかもその多くが——本人も気づかないうちに——外から覗ける状態になっています。誰がいつ取ったか、どんなサブドメインがあるか、どのクラウドを使っているか。今回はその“見えてしまっている地図”を読み解く話です。攻撃者は実攻撃の前にこの地図を作り、守る側は『自社がどう見えているか』を点検する。同じ地図を、攻守どちらの目でも読めるようになりましょう。

ドメインの『裏側』って、何がわかるの?

所有者・取得日・全サブドメイン一覧・関連IP・使用クラウド・社内システムの命名規則・買収企業の痕跡…。組織のIT全体像がほぼ浮かぶ。CT logが現代の最大の情報源だよ。
ドメインOSINTの4本柱:(1)WHOIS(所有者・取得日・レジストラ・連絡先)、(2)パッシブDNS(SecurityTrails/DNSDB等の過去解決履歴)、(3)CT log/crt.sh(発行された全TLS証明書、内部用ホスト名も丸見え)、(4)Shodan/Censys(公開ホストのバナー・ポート・指紋)。これらを組み合わせると全サブドメイン+使用技術スタック+クラウド資産+買収企業の痕跡が見えます。守る側は『ワイルドカード証明書で内部名を隠す+WHOIS Privacy+不要サブドメイン即削除+四半期OSINT監査』。
この記事で分かること
- WHOIS情報の読み方と限界(Privacy代理人)
- パッシブDNSとCT logの違い・併用方法
- Shodan/Censysでホスト指紋の取得
- Subfinder/Amassでサブドメイン総合列挙
- 守り側の『見え方監査』ルーチン
📖 はじめてのWebセキュリティ #70|ドメインOSINT編
WHOIS・パッシブDNS・証明書から組織を読む。 シリーズ一覧を見る →
⚠️ 大事なお約束
WHOIS等は公開情報ですが、収集したドメインへの実攻撃・ポートスキャン等は権限なしには違法。CTFや自分のドメインで限定的に確認してください。
WHOIS:登録情報の基本
- 取得日・更新日:新規ドメインは詐欺サイト候補(銀行騙る詐欺フィッシングは『最近取得+本物っぽい名前』が典型)
- レジストラ:GoDaddy/お名前.com/Cloudflare等、組織の選好が見える。コスト管理が雑な組織はバラバラのレジストラに分散
- 連絡先:近年はWHOIS Privacy(代理人)で隠れることが多いが、古いドメインは個人情報が残っていることも
- ネームサーバ:Cloudflare/AWS Route53/Akamai等のDNS基盤→組織のクラウド選好
- 有効期限:期限切れ近いドメインは取り損ねて買収されるリスクあり、ブランド毀損や攻撃者による悪用
WHOISは、いわば建物の“表札”です。いつ建てられて(取得日)、どこの不動産屋が仲介して(レジストラ)、管理人は誰か(連絡先)。最近はプライバシー保護で連絡先が伏せられることが増えましたが、それでも取得日やネームサーバから、組織の素性や“クラウドの好み”は十分に読み取れます。とくに『最近取得されたばかりで、有名企業そっくりの名前』は、フィッシング詐欺の典型サイン。WHOISは“怪しさの第一印象”を測る道具でもあるんです。
図解:ドメイン偵察の4本柱
4本柱を組み合わせることで、組織の『見えるべき範囲』『見えてはいけない範囲』が浮かび上がります。1本だけでは断片的でも、4本重ねるとIT資産マップが完成します。
ここで覚えておきたいのは、『1本の柱だけでは断片しか見えない』ということ。WHOISは表札、CT logは書類控え、Shodanは外観——どれか1つでは“ある一面”しか映しません。でも4本を重ねると、断片が補い合って、組織のIT全体像という1枚の地図に組み上がる。OSINT全般に共通する『複数ソースの交差』が、ドメイン調査でもそのまま効いてくるわけです。

『表札(WHOIS)』『過去の郵便履歴(パッシブDNS)』『送られたすべての書類控え(CT log)』『建物の外観(Shodan)』を組み合わせると、その会社がどんな組織で、何をしているかが分かります。OSINTドメイン調査も同じ作法で、表からは見えにくい組織のIT構造が浮かび上がります。『外から見える情報だけで、ここまで分かる』と知ると、守る側として『何を隠すべきか』が明確になります。
ここで覚える用語:CT log / crt.sh
Certificate Transparency Log。Let’s Encrypt以降のWebは『発行された全TLS証明書が公開ログに記録される』仕組みです。crt.shで%example.comのように検索すると、internal.example.com / staging.example.com / dev-api.example.com等、内部用に発行した証明書もすべて見えます。サブドメイン列挙の最強手段で、攻撃者が最初に当てるツール。守る側はこの性質を踏まえ、内部用には『*.internal.example.com』のワイルドカード証明書を使うことで個別ホスト名を隠せます。
パッシブDNS・CT log・Shodan の組み合わせ
- パッシブDNS:
SecurityTrails/RiskIQ(現Microsoft Defender Threat Intelligence) /DNSDB。過去の名前解決履歴を蓄積したサービスで、今は消えたサブドメインも見える - CT log:
crt.sh(無料・全件) /Censys Certificate Search(プロ向け)。発行された全証明書 - Shodan:世界中の公開ホストのバナー(
banner)・ポート・指紋を収集。hostname:example.comで特定組織に絞れる - Censys:Shodan類似、より精密でTLS証明書情報まで詳細に取得可能
- Subfinder/Amass:OSSのサブドメイン総合列挙。複数のソース(CT log/Shodan/各種API)を自動統合するのでこれ1つで広範囲カバー
- BuiltWith:使用技術スタック(CMS・分析ツール・広告ネット)が見える
数ある手掛かりの中でも、現代の最強は断トツでCT log(証明書の公開ログ)です。これは本来、『不正な証明書を世界中で監視して、Webを安全に保つ』ための善意の仕組み。ところが副作用として、企業が内部用に発行した証明書のホスト名——「dev-api」や「staging」や「secret-admin」まで——が、すべて公開ログに刻まれてしまうんです。守ろうとした仕組みが、皮肉にも“内部の見取り図”を世界に配ってしまう。攻撃者がまず crt.sh を叩くのは、このためなんですね。

CTFでやってみよう:自社ドメインを偵察
自分のドメイン or 練習用ドメインで4本柱を回す
目的は『自社/自分のドメインがOSINTでどこまで見えるか』を体感し、過剰露出を点検することです。HackerOne等の公開バウンティ対象ドメインも練習に使えます。
whois example.comで登録情報確認(WHOIS Privacy使用済みか)https://crt.sh/?q=%25.example.comをブラウザで開く→サブドメイン全件列挙(これが一番衝撃を受ける)subfinder -d example.com -all -recursiveでOSSによる総合列挙- 結果を統合し、『誰も知らない/古い』サブドメインがあれば棚卸し対象
subjack -w found_subs.txtやsubzyでSubdomain Takeover可能性チェック- Shodanで
hostname:example.com公開ホストを確認 - BuiltWithで使用技術スタックを把握、古いバージョンや既知CVEがないか
- 発見した『見えてはいけないもの』を棚卸しレポート化、運用チームと共有
では守る側へ。うれしいことに、ここまでの“攻めの地図”は、そのまま“守りのチェックリスト”になります。攻撃者と同じ4本柱で自社を調べれば、『見せるつもりがなかったのに見えているもの』が一覧で出てくる。あとはそれを一つずつ塞ぐだけです。次の5原則は、その塞ぎ方をまとめたものです。
守る側:『内部名をTLSに出さない+定期監査+棚卸し』

- 内部システムにはワイルドカード証明書(
*.internal.example.com)を使う(個別ホスト名をCT logに出さない) - WHOIS はプライバシー代理人を介して個人情報を隠す(レジストラの『WHOIS Privacy』機能を有効化)
- 新規サブドメイン作成時に正当性をレビューするワークフロー(誰が・何のために・いつまで使うか文書化)
- 使われていないサブドメインは都度削除(放置=Subdomain Takeoverの温床)
- 四半期に1回
crt.sh/subfinder/Shodanで自社の見え方監査、差分を運用チームと確認 - ドメイン管理を集約(複数レジストラ分散をやめる)、移管漏れリスクを減らす
- ドメインの有効期限の自動更新+期限管理ダッシュボード(失効による乗っ取り防止)
- Subdomain Takeover検出ツール(
subjack/subzy/nuclei templates)をCIに組込
対策の根っこにあるのは、『知らないものは守れない』というシンプルな事実です。放置された古いサブドメイン、買収した会社から引き継いだドメイン、検証用に立てたまま忘れた環境——“存在を忘れた資産”こそ、攻撃者の格好の入口になります。だから定期的な棚卸し(自分の資産を全部見える化する作業)が、何より効く。派手な防御ツールより、まず『うちには何があるのか』を把握することが先決なんです。

CT logにあるからって内部サブドメイン丸見えとは…

次回はOSINT章の総まとめ。倫理・記録・ピボットを極めて完走するよ。
まとめ:『WHOIS+パッシブDNS+CT log+Shodan』の4本柱
- ドメインOSINTは4本柱(WHOIS/パッシブDNS/CT log/Shodan)で完結
- CT log(crt.sh)で内部サブドメインまで丸見えになる構造的問題
- Subfinder/Amass で複数ソース統合の自動化
- 守りはワイルドカード証明書+WHOIS Privacy+定期監査+不要サブドメイン即削除
今日の持ち帰りは『隠したつもりが、たいてい見えている』。ドメインまわりは、善意の仕組み(CT log)すら情報源になるほど“筒抜け”です。だからこそ守りの第一歩は、攻撃者と同じ目で自社を一度スキャンしてみること。そこで初めて、『あ、こんなものまで外から見えていたのか』と気づけます。見えていることを知るのが、隠す前の大前提です。
次回はOSINT総まとめ編。倫理・記録・ピボットを極めて全86本完走に向けて進みます。
