ASEC(AhnLab SEcurity intelligence Center)は最近、SVG(Scalable Vector Graphics)フォーマットのフィッシングマルウェアが配布されている状況を確認した。SVG フォーマットは XML ベースのベクター画像ファイル形式であり、主にアイコン、ロゴ、チャート、グラフなどに使用され、コード内の CSS および JS などのスクリプトを使用することができる。2024年11月、ASEC Blog を通じて SVG フォーマットのマルウェアを紹介したことがあり、最近は過去より精巧になった形で配布されている。
-
- 代表的な配布ファイル名
Play Voicemail Transcription. (387.KB).svg
MT103_0296626389_.svg
DOC217_3052.svg
ATT78683.svg
Access Document Remittance_RECEIPT6534114638.svg

[図1] Base64 でエンコードされた不正なスクリプト
最近拡散されている SVG マルウェアは、ファイル内に不正なスクリプトが存在し、<script>タグの src 属性を利用して Base64 エンコードの状態で挿入されている。Base64 エンコードされたデータを src 属性に使用する方式は、主に Web ページに画像を挿入する際にサーバーリクエストを最小にしたり、独立したページを作成する時に使用されるが、この方式で不正なスクリプトを挿入したのはファイル検知を回避するためと思われる。

[図2] デコードされたコード
デコードされたコードは[図2]の通りであり、リダイレクト URL が難読化された状態で存在する。
– リダイレクト URL
hxxp://oK2Nv4ZWX6.moydow[.]de/aRghs76TyPdTWwfkOLkGoZRvtAKfi7SZIhk9vgovyVtf0Fl6Q86sq9CsNroQKjXHfbTWmJC49a5xoN1LdzgLlvse0zrGoqwJoaxHrElkA3a9Jn5xQbixSnS5KtaP3Hsj8j6usck0gto5qZoL44dKVbO6uQUwpokCD9qIQncUphBywUx8wta38JwOJcHKTKF6mbsxwNXG/MZz8BcXH4eB0RMRSQ5VqnN2doConZCsLAfBulS7bWQG7kNXIU2etgBMMODIaetz92FvV84lE36zALE52Z2qJBiGHbrUhnXd98X0PxQpDjc6nXZSW7GkWk6mHfLYx88VemLE678FkIXkK4ILAxSVW5yiMkWuMVe1sFdBc2lD4HlBqWWOfHT2D0REEiZFeYEMQOaQLaY33/[電子メールアカウント]
– 最終的な URL
hxxps://[アカウントドメイン].islaxw[.]es/jfWNu1IAW/#[電子メールアカウント]

[図3] CAPTCHA に偽装したページ
リダイレクトされたページは CAPTCHA に偽装した不正なページであり、ユーザーからボタンのクリックを誘導するものである。このとき、当該ページには分析を妨害するためのスクリプトコードが挿入されてあり、機能は以下の通りである。
1. 自動化ツールの遮断

[図4] 自動化ツールを遮断するコード
UserAgent および変数などをチェックして、Web ドライバ、自動化ツール(PhantomJS)、プロキシツール(Burp Suite)を検知する。これらの自動化ツールが検知された場合、空白のページにリダイレクトして接続を遮断する。
2. 特定キー入力の遮断

[図5] 特定キー入力を遮断するコード
開発者ツールを開く、ソースコード表示などのショートカットキーを入力した場合、当該イベントの動作を遮断する。遮断されるキーの組み合わせは以下の通りである。
| key |
function |
| F12 (keycode:123) |
開発者ツールを開く |
| Ctrl + U (keycode:85) |
ソースコード表示 |
| Ctrl + Shift + I (keycode:73) |
開発者ツールを開く |
| Ctrl + Shift + C (keycode:67) |
開発者ツールを開く + 要素の選択 |
| Ctrl + Shift + J (keycode:74) |
開発者ツールを開く + コンソールの選択 |
| Ctrl + Shift + K (keycode:75) |
開発者ツールを開く + コンソールの選択(Firefox) |
| Ctrl + H (keycode:72) |
閲覧履歴を開く |
| Command + Alt + I (keycode:73) |
開発者ツールを開く(Mac) |
| Command + Alt + C (keycode:67) |
開発者ツールを開く + コンソールの選択(Mac) |
| Command + U (keycode:85) |
ソースコード表示(Mac) |
[表1] 遮断されるキーの組み合わせ
3. マウス右クリックの遮断

[図6] マウスの右クリックを遮断するコード
ユーザーがページ上でマウス右をクリックすると、当該イベントの動作を遮断する。
4. デバッグの検知

[図7] デバッグを検知するコード
performance.now() 関数を通じてコード実行時間を測定し、一定時間が経過するとデバッガーが有効になっているとみなし、正常なサイトにリダイレクトする。
これらの機能をすべてパスしたあと、ユーザーが CAPTCHA 認証ボタンをクリックすると、以下の URL に GET リクエストを送信してレスポンス値を受け取る。レスポンス値に応じてさらなる不正な振る舞いが行われるが、現在はレスポンス値が存在せず、これ以降の詳細な振る舞いについては不明である。しかし、類似するマルウェアの履歴を確認した結果、Microsoft を詐称するログインページなどのフィッシングサイトにアクセスするものと思われる。
-
- URL
hxxps://w2cc.pnkptj[.]ru/kella@aok5y
最近、SVG フォーマットを利用したマルウェアの配布が増加しており、過去よりも精巧に製作されているためユーザーの注意が必要である。ユーザーは、出どころが不明なメールに添付されたファイルを閲覧する行為を控えるべきであり、SVG フォーマットのファイルが添付されている場合、特に注意が必要である。
IOC 関連情報
MD5
42565c1c9ecedd937439713e20838b3a
caad49bc4c408e6af8aea813cec6cb0b