WindowsにおけるRLO埋め込みファイル名の問題点と経緯を整理

  • 問題点

この問題の本質は、RLOという制御文字をファイル名に埋め込むことによって、Windowsが人間に対して適切な拡張子を見せられないということ。
たとえば、shift(RLO)txt.batというファイル名を作成すると、windows表示上はshifttab.txtと表示される。
もしここで、見た目の拡張子を信じて、shifttab.txtをテキストファイルと思って開こうとした場合、実際はバッチが起動される。このバッチが悪意あるものであった場合、ダメージを受ける。

実は人間によって見分けるのは比較的簡単。種類を表示させる設定にして、種類を見ればいい。種類の表示が右から左へと反転している場合や、拡張子と種類が合っていない場合はRLO入りであることが疑われる。ただし、こんなことをいちいち人間にさせるべきではない。

  • OSに見分けさせる方法

XPProの場合:葉っぱ日記さんの該当エントリを見て対策
XPHomeの場合:この辺とかこの辺とかこの辺(セルフリンク)を見て対策

  • そもそもRLOって何?初出は?

こちらとこちらを参照

  • 偽装方法を思いついたのは?

たぶん葉っぱ日記さん

  • 参考

セキュリティホールメモ
それUnicodeで
スラッシュドットの該当部
http://feeds.nikkeibp.co.jp/itpro_interview?m=64