ディレクトリトラバーサル
ディレクトリトラバーサル とは何ですか?
ディレクトリトラバーサル../ などのパス操作シーケンスでアプリの想定ディレクトリを抜け出し、サーバー上の任意ファイルを読み書きする攻撃。
ディレクトリトラバーサル(パストラバーサル)は、ユーザー入力からファイルパスを組み立てる際に適切な正規化を行っていないアプリケーションを狙います。攻撃者は ../、..\、URL エンコードされた変種(%2e%2e%2f)、絶対パスなどを差し込むことで、想定外のディレクトリに置かれた構成シークレット、ソースコード、/etc/passwd などのシステムファイルへアクセスさせます。書き込みが可能な経路では、同じ欠陥がファイル上書きやリモートコード実行につながります。対策は、ファイル名を厳密な許可リストで検証する、パスを解決して想定するルート配下に収まることを確認する、フレームワークが提供する安全な API を使う、機微なシステムファイルを読めない権限でサービスを実行するなどです。
● 例
- 01
file=../../etc/passwd を受け付けるダウンロードエンドポイントがシステムのパスワードファイルを返す。
- 02
画像ビューアが ..%2f..%2fwindows%2fwin.ini を辿り、Windows の構成ファイルを露出させる。
● よくある質問
ディレクトリトラバーサル とは何ですか?
../ などのパス操作シーケンスでアプリの想定ディレクトリを抜け出し、サーバー上の任意ファイルを読み書きする攻撃。 サイバーセキュリティの 攻撃と脅威 カテゴリに属します。
ディレクトリトラバーサル とはどういう意味ですか?
../ などのパス操作シーケンスでアプリの想定ディレクトリを抜け出し、サーバー上の任意ファイルを読み書きする攻撃。
ディレクトリトラバーサル からどのように防御しますか?
ディレクトリトラバーサル に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
ディレクトリトラバーサル の別名は何ですか?
一般的な別名: パストラバーサル, ドットドットスラッシュ攻撃。