再び話題になってるRLOの悪用について
『登録されている拡張子を表示しない』にしていなくても危険なファイル
日本年金機構の個人情報流出事故で感染原因がPDFに偽装したEXEだったという話もあって、
再びRLOが注目されています。
RLOを忘れてる人に簡単に説明すると
Unicodeの特殊文字をファイルの途中に挿入することによってファイル名を以降右から左に表示することができる
uni-txt.exe
ってファイルの - の部分に制御コードを入れると uniexe.txt
って表示させてテキストファイルのように見せることができるというわけだ
偽装したウィルスが動かないケースもある。
これはウィルスが、古いANSI 系関数を使ったライブラリを使ってる場合で
こうなることがある。(XPで動いていてもWin7だとちゃんとOSが気を利かせて処理しないのでエラーになる)
Windows 2000の場合RLO の機能自体を
HKEY_LOCAL_MACHINEにある
SOFTWARE\Microsoft\Windows NT\CurrentVersion\LanguagePack
のSURROGATEキーを削除することによって無効化できます
これによって、Unicodeのサロゲートペアの特殊な文字が表示できなくなるのですが。
設定されているとバグで文字化けが発生することもあるのでむこうにしておくのが推奨です
KOKUYO の SOFTMEMORIBO の文字化け調査2
Win7 HomeでRLO偽装対策のセキュリティーポリシー設定をするには? - マイクロソフト コミュニティ
Windows Registry Editor Version 5.00 _ [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer] "DisAllowRun"=dword:00000001 [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\DisallowRun] |
通常は、このレジストリ設定でOKのはずなんですが、ワイルドカード(*)だとうまくいかないケースがあるみたいで、以下のケースを試すようにかいてるサイトがあるんですが
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\0\Paths\{7da202f3-f4f2-4657-9d13-edec43179b00}] |
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\0\Paths\{ acf18f96-d855-425c-8a14-701bca41bd3d}]"LastModified"=hex(b):d4,4b,a6,b3,b9,85,c7,01 "Description"="RLO対策" "SaferFlags"=dword:00000000 "ItemData"="**" |
Paths の後のハッシュ値って、ファイルの中身で変わるんじゃなかったっけ?
ってのが気になった・ω・
Comments