トレンドマイクロは、2013年9月初旬、新しいバックドア型不正プログラム「BLYPT」を確認、この検証結果を今回ご報告します。このファミリは、暗号化とともに、データベースシステムで使用されるデータ型の 1つである「バイナリ・ラージ・オブジェクト(BLOB)」を利用していることからこの名が付けられました。なお、このBLOB情報はレジストリ内に保存されています。現時点での検証では、このバックドア型不正プログラムは、Java の脆弱性を突くエクスプロイトコードを介してインストールされ、このエクスプロイトコードを拡散するために利用される「ドライブバイダウンロード」攻撃あるいは改ざんされた Webサイトのどちらかを経由して感染PC上に侵入することが判明しています。また、今回のバックドア型不正プログラムの検証の結果、攻撃に関連するサーバは、ルーマニアおよびトルコを中心に拠点を置いていることが明らかになりました。
2013年9月20日時点において、主に米国のユーザが今回の脅威の影響を受けており、また、産業別では、一般ユーザがもっとも影響を受けていることが判明しています。
■侵入方法
トレンドマイクロでは、Java の脆弱性を突くエクスプロイトコードが今回の攻撃を拡散するために利用されていることを確認しています。この不正なコードは、トレンドマイクロの製品では「JAVA_EXPLOYT.HI」として検出され、任意のコードを実行するために利用されていました。そして、脆弱性「CVE-2013-1493」を利用します。なお、この脆弱性は、今年 2月に確認され、3月にはこの脆弱性の更新プログラムが公開されています。
上述のエクスプロイトコードにより、”~tmp<ランダム値>.tmp” として保存されるインストーラがダウンロードされます。このインストーラは、バックドア型不正プログラム「BLYPT」のメインとなるコンポーネントを感染PC上にダウンロード後インストールします。ダウンロードされた BLYPT のメインコンポーネントは、Windows のバージョンが 32bit または 64bit に応じてファイル名がそれぞれ “logo32.png” または “logo64.png” となります。インストーラは、3秒ごとに自身の 3つのサーバに接続し、このバックドア型不正プログラムがダウンロードされるまで実行されます。もしダウンロードできなかった場合、32回のサーバ接続を試した後停止します。
トレンドマイクロでは、メインとなる BLYPTコンポーネントが保存されるファイル名を元に BLYPTファミリの 2つの亜種を特定しています。そしてこれら 2つの亜種は、”<Application Data>\Microsoft\Crypto\RSA” 以下に保存され、以下のファイル名を利用します。
- NTCRYPT<ランダム値>.TPL
- CERTV<ランダム値>.TPL
また、これら 2つの亜種も 32bit および 64bit のバージョンがあり、トレンドマイクロの製品では、それぞれ「BKDR_BLYPT.A」「BKDR_BLYPT.B」「BKDR64_BLYPT.B」として検出対応しています。
|
これら 2つの亜種は、不正活動自体はほぼ同じですが、コマンド&コントロール(C&C)サーバ情報に関して保存先等以下のような違いが確認されています。
”NTCRYPT<ランダム値>.TPL” | ”CERTV<ランダム値>.TPL” | |
保存先 | 自身のファイルに C&Cサーバ情報を保持せず。この亜種をダウンロードするインストーラのレジストリ内に保持 | 自身のファイル内にC&Cサーバ情報が埋め込まれている |
レジストリ | HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates\CA\ Certificates\5A82739996ED9EBA18F1BBCDCCA62D2C1D670C\Blob |
|
保存の形式 | 通常のテキスト形式 | 以下のバイナリ形式: <ip1>#:<port1>#:#:<server page1>#;<ip2>#:<port2>#:#:<server page2 >#;<ipN>#:<portN>#:#:<server pageN>#; |
これら2つの亜種は、RC4 を用いて暗号化が施されており、復号化する際のキーとして「http://microsoft.com」を利用します。
なお、”CERTV<ランダム値>.TPL” の亜種の C&Cサーバ情報が復号化されると、以下の形式となります
struct { DWORD ip; WORD port; } cncServer; cncServer cncList[]; |
実際のデータフォーマットの例:
<(DWORD)ip1><(WORD)port1><(DWORD)ip2><(WORD)port2><(DWORD)ipN><(WORD)portN> |
さらに問題の BLYPTコンポーネントをダウンロードするインストーラが自身のサーバ上にある一定のフォーマットの URL を渡すことで、インストール状況をフィードバックする機能を備えていることも判明しています。そのフォーマットは、「http://<不正なサーバ>/index.aspx?info=<status keyword>」となり、「status keyword」には、以下のいずれかの文字列が利用されます。
- startupkey_%d where %d = RegCreateKeyW return
- reuse
- configkey_%d where %d = RegCreateKeyA return
- configkeyvalue_%d where %d = RegSetValueExA return
- tserror_4_%d where %d = GetLastError from call to connect
- createproc_%d where %d = GetLastError from call to CreateProcessW
- reusereboot_%d_%d_%d
■C&Cサーバの属性について
トレンドマイクロでは、今回の BLYPTファミリに利用される環境設定ファイルを復号化することによって、C&Cサーバの位置情報を特定することができました(図2参照)。
|
■その他の不正活動について
BLYPTファミリは、上述のとおり C&Cサーバ情報をレジストリ内に保持しますが、他の情報も埋め込まれた BLOB形式で保存していることも判明しています。
|
BLYPTファミリは、言うまでもなくバックドア型不正プログラムとして、感染PC上に攻撃者からのコマンドを実行させます。実行されるコマンドについては、以下のとおりとなります。
- 更新された DLLバイナリファイル の受信
- 更新された環境設定ファイルの受信
- HTTPリクエストのコマンド受信
例:感染PC のパブリックIPアドレスを取得するために GETリクエストを「http://103.31.186.19:1000/FetchIP.aspx」に送信
■Javaの脆弱性の修正について
今回の攻撃で利用された脆弱性「CVE-2013-1493」については 3月に Java7 および Java6用の更新プログラムが公開されています。しかし、Java6 に関しては Oracle が既にサポートを終了しているためその後に確認された脆弱性に対してアップデートが提供されておらず、未修正の脆弱性に対する攻撃が継続されている状況です。Java6 を使用しているユーザは非常に危険にさらされていることになりますので、速やかに Java7 へのアップデートを行うことを強く推奨します。
■トレンドマイクロの対策とは
トレンドマイクロ製品をご利用のユーザは、弊社のクラウド型セキュリティ基盤「Trend Micro Smart Protection Network」によって守られています。特に「Webレピュテーション」技術により、この脅威に関連する不正な Web サイトへのアクセスをブロックします。さらに「ファイルレピュテーション」技術により、上述の不正プログラムを検出し、削除します。
また、弊社のネットワーク監視ソリューション製品「Trend Micro Deep Discovery」は、「HEUR_NAMETRICK.A」として検出対応しています。さらに、サーバ向け総合セキュリティ製品「Trend Micro Deep Security(トレンドマイクロ ディープセキュリティ)」および「Trend Micro 脆弱性対策オプション(ウイルスバスター コーポレートエディション プラグイン製品)」をご利用のお客様は、以下のフィルタを適用することにより、問題の脆弱性を利用した攻撃から保護されます。
- 1005410 – Oracle Java Runtime Environment Remote Code Execution Vulnerability (CVE-2013-1493)
※協力執筆者:Darin Dutcher および Jayronn Christian Bucu
参考記事:
by Maharlito Aquino (Threat Research)
翻訳:船越 麻衣子(Core Technology Marketing, TrendLabs)