今回はまず、最近危険度が増している攻撃手法についての話題を紹介する。米マカフィーは、進化するモバイルマルウエア「Android.FakeInstaller」の機能について、ブログで説明し、注意喚起した。

 Android.FakeInstallerは最も流行しているモバイルマルウエアの1つで、マカフィーが処理するAndroid向けマルウエアの60%以上を占めている。この脅威は、サーバーサイドポリモーフィズム、難読化、アンチリバースエンジニアリング、再コンパイルなど、ウイルス対策ソフトによる検出をすり抜ける機能を追加し、ますます危険性を増している。

 自身を「Skype」や「Flash Player」「Opera」などよく知られているアプリケーションのインストーラーに見せかけてユーザーを欺き、ユーザーの許可なしに高額SMSメッセージを送信する。多数の亜種が存在し、数百のWebサイトや海賊版マーケットで配信されている。

正規のインストーラーに見せかけたアイコン各種

 ユーザーを欺く行為は、そのユーザーが検索エンジンやSNSで有名なアプリケーションを検索したときに始まる。ユーザーが検索結果から誘導された偽の公式サイトあるいはマーケットには、スクリーンショットや説明、ユーザーレビュー、ビデオなどが掲載され、アプリケーションは正当なものに見える。ユーザーはこれに騙され、マルウエアをダウンロードしてインストールしてしまう。

 インストールの最中、ユーザーは「同意する」または「次へ進む」ボタンをクリックするよう促され、クリックすると高額SMSメッセージが送信される。ユーザーがボタンをクリックする前にメッセージ送信する亜種もある。

マルウエアが表示するサービス契約説明

サーバーサイドポリモーフィズム

 マカフィーは、メインのペイロードは共通だがコード実装が異なるいくつかの亜種を確認している。ほとんどのAndroid.FakeInstallersはサーバーサイドポリモーフィズムの手法をとっており、サーバーは同じURL要求に対して異なるAPKファイルを配信できる。

 被害ユーザーが偽マーケットからアプリケーションを要求するとサーバーはブラウザーを別のサーバーにリダイレクトし、そこでリクエストを処理してカスタムなAPKファイルを送信する。

サーバーがカスタムなAPKを送る仕組み

高額SMSメッセージ

 初期バージョンのSMS番号はDEXファイル内に格納されていたが、最近のバージョンはAPK内の暗号化されたXMLファイルに収められている。マカフィーは、最大7通の高額SMSメッセージを送信するサンプルを確認している。

検出を免れる手口:Java難読化と再コンパイル

 通常、1つの偽マーケットでは、すべてのアプリケーションは共通のDEXファイルを含んでいるが、しばらくするとDEXファイルは全部変わる。マルウエア作成者は、同じコードを再コンパイルした難読化コードを追加してDEXファイルを変更し、新しい機能を実装したり、アイコンなどのうわべを変えたりする。

複数アプリケーションが共通DEXファイルを持っているイメージ

 Android.FakeInstallersの最近の亜種はほとんど、同じソースコードを再コンパイルして難読化した異なるバージョンと、変更したソースファイル名、回線番号、フィールド名、メソッド名、引数名、変数名などを含んでいる。

ボットネット機能

 Android.FakeInstallerには、SMSメッセージを送信するだけでなく、バックドアを開いて遠隔サーバーから命令を受け取る機能を持つ亜種もある。

配信の手口

 そのほかに考慮すべきことは、新しい偽サイトや偽マーケットが毎日作り出されていることだと、マカフィーは指摘する。これら偽サイトは被害ユーザーを一連のIPアドレスとドメインにリダイレクトしてマルウエアをダウンロードさせる。

被害ユーザーをマルウエアダウンロードのIPアドレスとドメインに誘導するイメージ

 偽サイトの一部は「Yandex」などの検索エンジンにインデックスされ、まったく本物らしく見えるため、ユーザーは簡単に信じ込んでしまう。またマカフィーは、「Facebook」で偽装登録されたプロフィールや「Twitter」のボットアカウントで偽サイトのURLが共有されているのも確認している。

Twitterに掲載された偽サイトURLの例