やじうまの杜

「もらったEXEなんて開かねえよw」なんて人も絶対に騙される偽装ファイル名に思わず戦慄

見た目はテキストファイルなのに……ダブルクリックするとヤられる

 “やじうまの杜”では、ニュース・レビューにこだわらない幅広い話題をお伝えします。

テキストファイル(*.txt)に偽装した実行ファイル

 先日、友達からもらった実行ファイルで「Discord」アカウントを乗っ取られてしまった――という事例を紹介しましたが、なかには「友達からもらったからって、怪しい実行ファイルをそのまま開くなんてことしないよ」という方もいらっしゃるかもしれません。

 けれど、油断は禁物。Unicodeの制御文字を使った巧みな偽装方法があるのだそうです。

 本当かどうか、実際に試してみましょう。まず、「エクスプローラー」の設定を変更し、拡張子が表示されるようにします。

「エクスプローラー」の設定を変更し、拡張子が表示されるように

 次に、適当な実行ファイルを用意して、「Sampletxt.exe」という名前を付けます。

適当な実行ファイルを用意して、「Sampletxt.exe」という名前を付ける

 続いて[F2]キーを押してファイル名を変更できるようにし、「Sample」と「txt」の間にカーソルを移動させます。その状態で右クリックメニューにアクセスし、[Unicode 制御文字の挿入]-[RLO]メニューを選択します。

「Sample」と「txt」の間にカーソルを移動させ、右クリックメニューから[RLO]を挿入

 「RLO」は目には見えない文字で、挿入された箇所以降の文字の向きを「右から左」へと変更します。そのため、本当は「Sample【RLO】txt.exe」という名前なのに、見た目上は「Sampleexe.txt」となってしまうというわけ。「実行ファイルなんて開かないもん!」という人も、これだとテキストファイルと間違って開いてしまうかもしれませんね。

実行ファイルなのに拡張子が「.txt」に見えるファイルが完成

 ただ、アイコンが実行ファイルのものなので、そこはバレるかも。そこで、テキストファイルっぽいアイコンをセットしてみました。

アイコンもテキストファイルっぽく偽装してみました

 しかし、さすがにこれは「RLO」を挿入してリネームした時点で「Windows セキュリティ」にマルウェア判定されて、回収されてしまいました……ちょっと頭がいいですね、このセキュリティ機能。

残念ながら「Windows セキュリティ」にマルウェア判定されて、回収されてしまいました……

 ともあれ、こんな感じでユーザーを騙す方法に限りはないのです。

 ただ、今回検証した「RLO」を悪用したファイル名の偽装は比較的古典的な手法なので、「グループポリシー」の編集で対策が可能なのだそう。「Windows 10 Pro」「Windows 11 Pro」をお使いの方は「グループ ポリシー エディター」を起動して「ソフトウェアの制限のポリシー」を作成し、「RLO」を含むパスの起動をブロックする処理を追加しましょう。

「グループ ポリシー エディター」を起動して、「ソフトウェアの制限のポリシー」を作成(ツリービューの右クリックメニューから可能)
[ソフトウェアの制限のポリシー]-[追加の規則]に新しいパスの規則を作成
「RLO」を含むパスの起動をブロックする処理を追加
パスを「*【RLO】*」、セキュリティレベルを「許可しない」に設定してOK。「ソフトウェアの制限のポリシー」を新規に作成した場合は、反映のためにOSの再起動が必要
意図したとおりに起動がブロックされるのを確認

 そのほかにも、「Sample.txt(大量の空白).exe」のような名前を付けて実行ファイルを「Sample.txt」であるかのように見せるといった手法も知られていますね。見分けるコツもあるにはあるのですが……普通の人には難しそうです。セキュリティソフトなどの助けも借りながら、知識を深めて自衛するしかなさそうですね。

「Sample.txt(大量の空白).exe」のような名前を付けて実行ファイルを「Sample.txt」であるかのように見せる手法と見分けるポイント