Hello there, ('ω')ノ
🧭 代表的な情報漏洩の発生箇所と具体例
1. Webクローラー向けファイル
/robots.txt
や/sitemap.xml
にアクセスしてみましょう。これらは「検索エンジンに見せたくない場所」を列挙しています。
- 例:
Disallow: /admin/
やDisallow: /backup/
- 例:
- 攻撃者にとっては「隠された重要なパスのリスト」になります。
2. ディレクトリリスティング
https://example.com/uploads/
のように、インデックスファイルがないとファイル一覧が表示される。- 特に
.log
,.zip
,.bak
,.sql
などのファイルが見えると高リスク。 - アクセス制御がなければ、実質的に全公開状態です。
3. HTMLコメント(開発者コメント)
<!-- TODO: remove admin panel link -->
のような記述が残っていることがある。- ブラウザの開発者ツールや Burp Suite で確認可能。
- コメントの中に、ディレクトリ名、パスワードヒント、内部ロジックなどが記載されていることも。
4. 詳細なエラーメッセージ
SQL syntax error near "SELECT * FROM users"
のような応答は要注意。エラーメッセージからわかる情報:
- 使用中のデータベースの種類とバージョン
- テンプレートエンジン名
- ファイルパス、行番号、変数名
- インジェクション攻撃やロジック解析の手がかりになります。
5. デバッグ出力・ログ情報
- JSONレスポンス内の
debug
,error
,stack
フィールド。 - フロントエンドのconsoleログ (
console.log
) に内部情報が出ていることも。 .log
ファイルが公開されていれば、過去の攻撃履歴・セッション情報が見つかる可能性も。
6. ユーザーアカウントページ
- ログイン後の
/account?id=...
のようなページ。 - 他人のIDを指定すると情報が見えてしまう場合(IDOR)。
- 表示される情報が他の攻撃(リセット、認証バイパスなど)に繋がることも。
7. バックアップファイル
.bak
,.old
,.zip
,.tar.gz
などがそのままアップロードされていることがある。- 例:
index.php.bak
,config.old
,users.sql.gz
- 例:
- 設定情報やソースコード、認証情報が丸見えになることも。
8. 不適切なサーバー構成
.git/
フォルダが公開されている.env
ファイルがダウンロード可能- デフォルトの設定画面が有効になっている(例:phpinfo)
9. バージョン管理履歴
- Git, Subversionなどのバージョン管理データが残っていると、ソース履歴がまるごと見られる。
.git/config
,.git/logs/HEAD
→ ブランチ名、作者名、履歴などが漏洩。
✅ まとめ
発生源 | 危険性 |
---|---|
robots.txt / sitemap.xml | 隠されたURLが一覧で漏洩 |
ディレクトリリスティング | 内部ファイルが丸見え |
HTMLコメント | 非公開機能やロジックのヒント |
エラーメッセージ | データベース構造、ファイルパスなど |
バックアップ・設定ファイル | 完全なシステム情報の流出 |
🔍 ペンテストでは、「表示されていない情報」ではなく「見落とされている情報」を探す意識が重要です。開発者が「隠したつもり」でも、攻撃者にとっては格好の情報源になります。
Best regards, (^^ゞ