Web - ディレクトリリスティング

提供:MochiuWiki : SUSE, EC, PCB
2024年11月26日 (火) 21:36時点におけるWiki (トーク | 投稿記録)による版 (ページの作成:「== 概要 == ディレクトリリスティングとは、Webサーバがディレクトリ内のファイル一覧を自動的にWebブラウザに表示する機能である。<br> <br> ディレクトリリスティングが有効な場合、ディレクトリ内のファイル一覧が表示される。<br> * 例 1: URLでディレクトリにアクセスした場合 * 例 2: 該当ディレクトリにindex.htmlやindex.php等のデフォルトページが存…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

概要

ディレクトリリスティングとは、Webサーバがディレクトリ内のファイル一覧を自動的にWebブラウザに表示する機能である。

ディレクトリリスティングが有効な場合、ディレクトリ内のファイル一覧が表示される。

  • 例 1: URLでディレクトリにアクセスした場合
  • 例 2: 該当ディレクトリにindex.htmlやindex.php等のデフォルトページが存在しない場合


Index of /images/
[親ディレクトリへ]
photo1.jpg    2024-01-01 12:00    500KB
photo2.jpg    2024-01-02 15:30    750KB
photo3.jpg    2024-01-03 09:15    600KB



ディレクトリリスティングの無効化

ディレクトリリスティングが有効な場合、セキュリティ上の問題となる。

  • サイトの構造が外部に漏洩する。
  • 非公開のはずのファイルが見えてしまう可能性がある。
  • 攻撃者にとって有用な情報を提供してしまう。


そのため、多くの場合はディレクトリリスティングを無効にする。

  • Apache2の場合
 # .htaccessファイル
 Options -Indexes


  • NginXの場合
 # .confファイル
 autoindex off;


ディレクトリリスティングが必要な特殊なケース (例: ファイルダウンロードページ等) では、適切なアクセス制御を施した上で限定的に有効にすることもある。


代替方法

ディレクトリリスティングを無効化する以外では、以下に示すような対策を取ることが推奨される。

  • 各ディレクトリに適切なindex.htmlを配置する。
  • アクセスされた場合の404や403ページを用意する。
  • 必要なファイルへは直接リンクを張る。