Hello there, ('ω')ノ
そもそもDNSとは?
DNS(Domain Name System)は、 「Webサイトの名前(ドメイン)」と「サーバーの住所(IPアドレス)」を結びつける仕組みです。
たとえば: https://intra.example.co.jp → 203.0.113.1
この変換をしてくれるのがDNSです。
なぜDNSを見るのか?
- 公開されているサーバー情報から内部構成を推測できる
- 不要なサブドメインが見つかる場合がある
- 開発用・テスト用環境がそのまま公開されていることも
攻撃者もまずはDNS情報を集めるところから始めます。
チェックポイント① サブドメイン調査
社内用システムでも以下のようなサブドメインがあります。
- dev.intra.example.co.jp
- admin.intra.example.co.jp
- test.intra.example.co.jp
✅ 見つけ方:
- nslookupコマンド(Windows標準)
- digコマンド(MacやLinux)
- オンラインツール例: https://securitytrails.com/ https://crt.sh/
✅ チェック内容:
- 使われていない古いシステムが残っていないか?
- 外部公開不要なものが出ていないか?
- 同じIPアドレスに複数サブドメインがひもづいていないか?
チェックポイント② Webサーバーの情報収集
ブラウザ開発者ツールやcurlコマンドなどでヘッダー情報を確認。
✅ 見るべき例:
Server: Apache/2.4.41 (Ubuntu) X-Powered-By: PHP/7.4.3
→ 古いバージョン情報がそのまま出ていると、攻撃対象になりやすいです。
✅ 確認方法:
- curl -I https://intra.example.co.jp
- ブラウザでF12 → Networkタブ → Response Headers
チェックポイント③ 公開ディレクトリ・ファイル確認
- robots.txt → 管理者しか見ないはずのURLが書かれている場合
- sitemap.xml → 外部に見せなくてもいいページ一覧が出てくる
- .git/ やバックアップファイル → そのまま置きっぱなしリスク
実際の手順まとめ
① nslookupでIPアドレスを取得
② 複数サブドメインがないか確認
③ curlやブラウザでサーバーヘッダーを見る
④ robots.txtやsitemap.xmlを確認
⑤ 不要な情報が含まれていないかメモ
社内向けチェックリスト例
- [ ] 使っていないサブドメインが公開されていないか?
- [ ] Webサーバーのバージョン情報がそのまま出ていないか?
- [ ] robots.txtやsitemap.xmlに機密URLが含まれていないか?
- [ ] バックアップファイルが外部公開されていないか?
まとめ:公開情報にも注意!
- DNSやWebサーバーの公開情報から脆弱性の手がかりが見つかることが多い
- 社内システムでもまずはDNSとサーバーヘッダーをチェック
- 公開しなくてよいものが残っていないかを定期的に確認
Best regards, (^^ゞ