通信用語の基礎知識 全国のICカードこれひとつ 戻る

Unicode Directory Traversal
辞書:通信用語の基礎知識 通信技術安全編 (CTSEC)
読み:ユニコード-ディレクトリ-トラバーサル
外語:Unicode Directory Traversal
品詞:名詞

UTF-8で冗長な符号化を行なうことでサニタイジングをすり抜け、それによりディレクトリトラバーサルを行なう方法。

目次
概要

MicrosoftWebサーバーIISセキュリティホールとして有名。

かつて猛威を振るったNimdaワームは、この脆弱性を利用して全世界に広まった。なお、IISではMS00-078で、このセキュリティホールは修正されている。

特徴
仕様の問題

UTF-8はその仕様上、同じ文字を異なる符号列で表現できてしまう。

例えばASCIIの0x2F('/' スラッシュ)は、「0xC0 0xAF」「0xE0 0x80 0xAF」「0xF0 0x80 0x80 0xAF」でも表現できる。これらはUTF-8において違反であり、これらの符号列は無視されなければならないが、Nimdaワームが登場した当時は、明確な対応が明示されていなかった。

このため、この問題を適切に処理しないまま0x2Fだけをサニタイジングすると、ディレクトリトラバーサルで使われる "../.." のような文字列を通してしまう盲点を生むことになる。

セキュリティホール

外部から読み込まれたUTF-8を、そのまま加工せずに使う、完全なUTF-8処理系の場合、あまり問題になることはないと思われてはいる。

しかし、このUTF-8文字列を別の形式に変換するような場合、問題が生じる可能性がある。

IISについては実装の甘さが露呈したことは疑いようが無いが、現実にはIISに限ったことではない。

UTF-8には、このような仕様上の欠陥があるため、文字列の扱いには注意を払わないと、現在でも、今後も、この手のバグを作りんでしまう可能性が高い。RFC 2279にもこの問題に対して注意を勧告する記述がある。

リンク
関連するリンク
RFC 2279 ‐ 日本語訳
MS00-078 「Webサーバーフォルダへの侵入」の脆弱性に対する対策
関連する用語
セキュリティホール
サニタイジング
ディレクトリトラバーサル
UTF-8
UTF-16
UTF-32

[再検索] [戻る]


通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club
KisoDic