はじめに
注意事項
記事で紹介されている行為を他人や団体、インフラなどの許可を得ずに行った場合、犯罪となる可能性が有ります。
あくまでも、記事の内容は情報セキュリティの学習です。読者様の所有・管理の機器、システムでのみ実行してください。
また、読者さまのシステムにトラブルが起きたとしても、私は責任を負いかねます。
拡張子を偽装する
拡張子の偽装は、マルウェアをターゲットに実行させることに有効な手段である。
今回は、拡張子の偽装にRLO(Right-to-Left Override)を利用する。
「ハッキングラボのつくりかた」P.355には次のように解説されている。
RLO(Right-to-Left Override)とは、Unicodeの制御文字「U +202E」のことです。文字の流れを右から左の向きに帰るために用いられます。アラビア語やヘブライ語は、右から左に向けて記述します。こうした言語のために用意されている制御文字ですが、ファイルの拡張子の偽装に用いられることがあります。
例えば、本来は"tecfdp.exe"というプログラムが会ったとします。'c'と'f'の間にRLOを挿入することで、見かけ上"tecexe.pdf"と表示されます。
以下は、同書のP.355-359をもとにしている。
Windows10で偽装
Windows10の"evilPic.exe"(前回、Windows10に取り込んだペイロード)を"evilPicgpj.exe"に変更する。
"もとのファイル名.exe" → "もとのファイル名gpj.exe"
'c'と'g'の間にカーソルを移動して、右クリックして「Unicode制御文字の挿入」>「RLO」を選ぶ。もとのファイル名(半角英数字のファイル名)の最後の文字と'g'の間にRLOを挿入する。
アイコンがコンテキストメニューに隠れてしまっている・・・
ピクチャフォルダを開き直すと、ファイル名の表示が"evilPicexe.jpg"となる。
KaliLinuxで偽装
次のパッケージをインストール。
charmap
かgucharmap
コマンドを実行して、RLOをコピーする。
RLOは、「検索」から"RLO"またはRLOの文字コード"202E"と入力することで検索可能。
//インストール
sudo apt install gucharmap
//コマンドを実行
charmap
//あるいは
gucharmap
"evilPic.exe"を"evilPicgpj.exe"に変更する。
"もとのファイル名.exe" → "もとのファイル名gpj.exe"
'c'と'g'の間にカーソルを移動して、コピーしたRLOをペーストする。もとのファイル名(半角英数字のファイル名)の最後の文字と'g'の間にコピーしたRLOをペーストする。
本来の拡張子の確認の仕方
ファイルのプロパティを開く。
コマンドプロンプトのdir
、端末のls
コマンドで確認できる。