5月27日,Flash Playerに対するゼロデイ攻撃が報告された。3月から続いているSQLインジェクションによる攻撃では,改ざんされたWebサイトにFlash Playerを攻撃するコードを参照させるスクリプトが仕掛けられた。このゼロデイ攻撃に関しては,米SANSインスティチュートや米シマンテック,日本では情報処理推進機構(IPA)やJPCERTコーディネーションセンター(JPCERT/CC)などが報告している。

 注目したいのは,FlashのActionScriptを含んだSWF(small Web format:Flashムービーのファイル形式)ファイルを利用して攻撃を仕掛ける点である。Flashムービーはニコニコ動画を始め,多くの動画サイトで利用されている。こうしたサービスを介して,今回のぜい弱性を悪用されると,影響範囲はかなり広い。

オンライン・ゲームのアカウント狙う

 まず,今回確認されている攻撃コードの内容を説明しよう。

表1●悪性コードのファイル名
表1●悪性コードのファイル名

 攻撃コードは「ie1.swf」,「ie2.swf」,「WIN%209,0,115,0ie.swf」といった名前のファイル。複数のサイトで確認されており,種類もいくつかある(表1)。これらは,WIN%209,0,115,0ie.swf,WIN%209,0,115,0ff.swfといったファイル名からもうかがえるように,Internet Explorer(IE)用とFirefox用のコードが用意されている。

 これらのファイルはダウンローダ型ウイルスであり,ぜい弱性があるFlash Playerがインストールされたパソコンに侵入し,オンライン・ゲーム「リネージュ」のユーザー・アカウント情報を盗むための不正プログラムを勝手にインストールする。

 分かりやすいのは,表1にあるversionff.swf(Trojan-Downloader.SWF.Small.y)である。このSWFファイルの中に記述されているActionScriptを抽出したソースコードが図1である。このコードでは,SWFファイル実行後に別の悪性コード “ff.swf”を読み込もうとしているのが分かる。

図1●SWFファイルから抽出したActionScriptのコード<br>SWFファイル実行後に悪質なコード「ff.swf」を実行しようとしていることが分かる。
図1●SWFファイルから抽出したActionScriptのコード
SWFファイル実行後に悪質なコード「ff.swf」を実行しようとしていることが分かる。
[画像のクリックで拡大表示]

2年前に指摘されていた危険性

 このActionScript,実はその危険性については,既に2006年に指摘されていた。理由の一つは,前号で紹介したPDFファイルと同様に,ActionScriptからJavaScriptを呼び出せることだ。

 例えば,図2は「Hello World!! from backdoor」というメッセージをポップアップ表示させるスクリプト。このようなActionScriptをFlashデータに付加しておけば,ファイルを開くと同時にJavaScriptを自動実行させられる(写真1)。しかも,こうしたスクリプトを埋め込んだSWFファイルは,わざわざ Macromedia Flashを使わなくても,「Motion-Twin ActionScript 2 Compiler」(MTASC)といった無償のFlashコンパイラを使って簡単に作成できてしまう。

図2●Flashデータに付加するActionScriptの例<br>ActionScriptの中からJavaScriptを実行させられる。
図2●Flashデータに付加するActionScriptの例
ActionScriptの中からJavaScriptを実行させられる。
[画像のクリックで拡大表示]
写真1●図2のコード(ActionScript)をFlashデータに付加し,実行させた様子
写真1●図2のコード(ActionScript)をFlashデータに付加し,実行させた様子