やじうまの杜
「もらったEXEなんて開かねえよw」なんて人も絶対に騙される偽装ファイル名に思わず戦慄
見た目はテキストファイルなのに……ダブルクリックするとヤられる
2022年2月17日 06:45
“やじうまの杜”では、ニュース・レビューにこだわらない幅広い話題をお伝えします。
先日、友達からもらった実行ファイルで「Discord」アカウントを乗っ取られてしまった――という事例を紹介しましたが、なかには「友達からもらったからって、怪しい実行ファイルをそのまま開くなんてことしないよ」という方もいらっしゃるかもしれません。
けれど、油断は禁物。Unicodeの制御文字を使った巧みな偽装方法があるのだそうです。
友人から渡されたexeファイルによるウイルス感染問題、「流石にexeファイルは開かない」なんて人も騙されるのが、Unicodeの制御文字(RLO)で文字方向を途中から入れ替える手法。
— オノッチ (@onotchi_)February 15, 2022
ファイル名の途中にこの制御文字を入れ、そこから文字方向を変えることで、本来の拡張子とダミー拡張子を逆転させる。pic.twitter.com/dw9aXyCmOj
本当かどうか、実際に試してみましょう。まず、「エクスプローラー」の設定を変更し、拡張子が表示されるようにします。
次に、適当な実行ファイルを用意して、「Sampletxt.exe」という名前を付けます。
続いて[F2]キーを押してファイル名を変更できるようにし、「Sample」と「txt」の間にカーソルを移動させます。その状態で右クリックメニューにアクセスし、[Unicode 制御文字の挿入]-[RLO]メニューを選択します。
「RLO」は目には見えない文字で、挿入された箇所以降の文字の向きを「右から左」へと変更します。そのため、本当は「Sample【RLO】txt.exe」という名前なのに、見た目上は「Sampleexe.txt」となってしまうというわけ。「実行ファイルなんて開かないもん!」という人も、これだとテキストファイルと間違って開いてしまうかもしれませんね。
ただ、アイコンが実行ファイルのものなので、そこはバレるかも。そこで、テキストファイルっぽいアイコンをセットしてみました。
しかし、さすがにこれは「RLO」を挿入してリネームした時点で「Windows セキュリティ」にマルウェア判定されて、回収されてしまいました……ちょっと頭がいいですね、このセキュリティ機能。
ともあれ、こんな感じでユーザーを騙す方法に限りはないのです。
ただ、今回検証した「RLO」を悪用したファイル名の偽装は比較的古典的な手法なので、「グループポリシー」の編集で対策が可能なのだそう。「Windows 10 Pro」「Windows 11 Pro」をお使いの方は「グループ ポリシー エディター」を起動して「ソフトウェアの制限のポリシー」を作成し、「RLO」を含むパスの起動をブロックする処理を追加しましょう。
そのほかにも、「Sample.txt(大量の空白).exe」のような名前を付けて実行ファイルを「Sample.txt」であるかのように見せるといった手法も知られていますね。見分けるコツもあるにはあるのですが……普通の人には難しそうです。セキュリティソフトなどの助けも借りながら、知識を深めて自衛するしかなさそうですね。
丁度「.zip .exe」なんて懐かしネタも出回ってたので便乗ツイートだったんだけど、今回自分がツイートした内容も割と古くからある手法です(そもそも昔の自分のツイートの焼き直し)。
— オノッチ (@onotchi_)February 16, 2022
願わくばこれだけにとどまらず、これきっかけに色んな情報をあつめて自衛していっていただきたいです。