最近は、またまた面白い手法の拡張子偽装がでてきているらしい。
http://itpro.nikkeibp.co.jp/article/Interview/20070413/268234/?ST=security&P=1
もともと、MacやWindowsXPはファイル名にUnicodeという文字コード規格をつかっているのだが、Unicodeにはアラビア語のように右から左に書く言語のために文字の送り方向を逆にする仕組みが備わっている。
で、今回の記事のようにこれを悪用され、また、拡張子がファイル名の右端についているものだという先入観を持っていると見事に引っかかってしまうこととなる。
Okumura's Blogのやりかたに従ってMacでこれを再現してみよう。
すると、確かに「Sexe.txt」というファイルができた。このファイルは「stxt.exe」というファイル名なのだが、Sとeの間に送り方向を反転するコードが入っているために、S以降が右から表示されていることになる。
で、「txtファイルだから安心♪」とダブルクリックで開いてみようとすると、ウイルスに引っかかることになる。
ところで、.exeというのはWindowsのアプリケーションの拡張子だ。これは、このトリックを使った偽装が主にWindowsの世界で行われていることから例もこれになったのだろう。
一方Macのアプリケーションの拡張子は「.app」だ。そこで、この「stxt.exe」を「stxt.app」に変えてみたらどうなるだろう?ということでやってみた。

確かにアプリケーションを示す表示に変わった。が、どうやらClassicアプリケーションとして認識されているようで、ウチのMacBook Proでは動かすことができないことになっている(進入禁止マークはその趣旨だ。ただし、何の中身もないファイルなのでPowerPCマシンでも進入禁止マークは出ないが当然起動できないだろう)。
試しにこれをダブルクリックしてみよう。

開めたい?ってなんだ〜