ディレクトリトラバーサルとは?でぃれくとりとらばーさる
ディレクトリトラバーサルとは、セキュリティ分野の語で、利用者が送ってきた文字列がそのままファイルの置き場所を指す文字列として使われる作りを突く攻撃。ファイル名を指定する欄に上位階層へ戻る記法を混ぜられると、アプリケーションは公開用の置き場所から外へ出た先——設定ファイルや資格情報の入った領域——を、自分の権限で読み出して返してしまう。侵入も権限昇格も伴わないため、専門がPM・監査・ストラテジ側の受験者にはパスの書き方の話に見えるが、危険なのは、正規の機能が正規の権限のまま想定外のファイルを配ってしまう点にある。
最終更新:2026-10-07
高度試験の午前Iを最短で暗記する →背景
Webアプリケーションは、外部から受け取った文字列をそのままファイルパスの一部として組み立ててしまいがちだが、ファイルシステムから見れば上位階層を遡る記法も正当なパスの一部でしかない。アプリケーションが想定する公開範囲と、OSが実際に許す範囲がずれていることが原因であり、入力を疑わずに信頼したという点で、SQLインジェクションやOSコマンドインジェクションと同じ構造をもつ。この共通構造を押さえておくと、対策の考え方もまとめて理解できる。
具体例
2021年に公表されたApache HTTP Server 2.4.49の脆弱性(CVE-2021-41773)は、URLに符号化して埋め込まれた上位階層への記法を正規化しきれず、Web公開領域の外にあるファイルをそのまま応答してしまうものだった。修正版2.4.50でも回避経路が残って2.4.51で塞ぎ直された経緯は、危険な文字列を取り除く方式の対策が別表現で迂回されやすいことを、実際の製品で示している。
試験での引っ掛け
特定文字列を除去するだけの対策は、URLエンコードの多重適用や別表現によって回避されるため不十分である。またWebサーバの実行権限を絞ってもアプリケーションが読める範囲は読まれるので、権限設定だけでは根本対策にならない。SQLインジェクションやクロスサイトスクリプティングと並べて、どの脆弱性への対策かを選ばせる形で問われる。
関連用語
出典・参考
公式シラバスの3 技術要素 > 1. 情報セキュリティ > (7) 攻撃手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。