2009年07月15日

U+202E

Unicodeは便利だが便利過ぎて怖い面もある。
切れすぎる包丁というかナイフというか。

U+202E (RIGHT-TO-LEFT OVERRIDE)という制御コードを用いれば
拡張子偽装が簡単にできてしまう。
アイコンや、説明文も合わせて改ざんされていると
はっきり言って区別できない。
(中身を見るとかはあるだろうけど)

RLO1.jpg

※これは説明やアイコンは偽装していません

例の様なファイル名だと突然exeが名前に出てくるのでぁゃιぃと
感づくかもしれないが、英語名などに混ぜ込まれるとわかりにくくなる。

対策としては、windowsの標準機能にてブロックしてしまうことが
考案されている。

U+202E (Right-to-Left Override;RLO)使用の拡張子偽装法を防ぐには:拡張子を表示させる設定でも危険!
http://d.hatena.ne.jp/famnet/20090408/1239193335

[SECURITY] Unicodeで拡張子を偽装された実行ファイルの防御方法
http://d.hatena.ne.jp/hasegawayosuke/20061222/p1

1. メモ帳を開いて、"**"と入力する(前後の引用符は不要)。

2. "*"と"*"の間にキャレット(カーソル)を移動させる

3. 右クリックで「Unicode 制御文字の挿入」から「RLO Start to right-to-left override」「RLO Start of right-to-left override」を選択

4. Ctrl-A で全て選択、Ctrl-C でクリップボードにコピー。

5. ローカルセキュリティポリシーを開く

6. 画面左側の「追加の規則」を右クリック

7. 「新しいパスの規則」を選択

8. 「パス」欄で Ctrl-V をして、メモ帳の内容を貼り付ける。

9. セキュリティレベルが「許可しない」になっていることを確認して「適用」

以上で、this-(U+202E)txt.exe(表示は this-exe.txt) のような、拡張子が偽装されたファイルの実行を禁止できる。


※5 コントロールパネル-管理ツール-ローカルセキュリティポリシー
※6 ソフトウェア制限のポリシー-右クリック-新しいポリシーの作成
   追加の規則…(以下同じ)

windowsのシステムも例によって逆に読まれてしまうので、
1ファイルぐらいならDELを押してみると・・・

RLO2.jpg

このようにファイル名中にRLOが入っているため、

「'秘密[RLO]gpj.exe'をごみ箱に移しますか?」

「'秘密?かすまし移に箱みごを'exe.jpg」

と謎の日本語になる。
怖いですなぁ・・。
posted by koteitan at 18:19| Comment(0) | TrackBack(0) | セキュリティ | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック