Unicodeで拡張子を偽装された実行ファイルの防御方法

それ Unicode で」などで紹介されている、Unicode の U+202E (RIGHT-TO-LEFT OVERRIDE; RLO)を使って拡張子を偽装された exe ファイルの実行を抑止する方法を思いついた。

  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) のような、拡張子が偽装されたファイルの実行を禁止できる。
参考: セキュリティ対策の要点解説 第 3 回 そもそもアレの動作を禁止したい 〜 Software Restriction Policy 〜
追記: ヤマガタさんに、「exe以外も」と指摘されたので、"*(U+202E)*.exe" だった禁止パス名を "*(U+202E)*" に変更。また、IE から http: 経由で「実行」させた場合には、一時ファイル名が使用されるため、名前による規制がうまく働かないようです([openmya:037003][openmya:037005])。その場合、IEからの直接実行を全て禁止するようにしましょう([openmya:037006])。