Androidアプリをインストールする方法はいくつかある。公式Androidマーケットのほか、AppBrainのようなサードパーティーが運用するサイト、開発者の独自サイト、XDA-developers forumのようなファンサイトなど、様々なサイトからアプリを入手できる。この配布元あるいは配布方法についても、攻撃者は様々な手を使う。今回は、アプリ配布に関する攻撃者の手口を解説する。
公式マーケットのアプリに紛れ込ませる
グーグルはAndroid OSを発表した後、短期間で公式マーケットを構築した。OSのデフォルト設定では公式Androidマーケットはインストール元として信頼されたものとしているが、それで問題がないとは言えない。
Androidの開発者アカウントを取得すると公式マーケットへアプリのアップロードが可能になり、サポート対象諸国のユーザーはそれを購入できるようになる。アプリはアップロード手続き時にチェックされることはないが、ユーザーからの訴えがあればアプリないしは開発者アカウントを削除する制度はある。このようにしてグーグルは、セキュリティに関する責任を直接エンドユーザーに転嫁している。なお、グーグルは2012年2月、マーケット上のアプリに対してセキュリティスキャンを行うシステム「Bouncer」を運用していることを明らかにした。最近は、その効果によりマルウエアは減っているようだが、なくなったわけではない。
公式マーケットの仕組みを悪用して、公式マーケット経由でマルウエアを配布した例は二つある。一つは、第2回、第3回で述べたDroidDream、もう一つは、それよりも後に発見されたDroidDreamLightである。双方とも合法的な手法でアップロードされ、ユーザーがダウンロード可能な状態であった。
これら2種類のマルウエアは複数の異なる開発者アカウントによって、複数の異なる無料アプリを装って配布された。多くの場合、悪意あるソフトウエアのアプリ名は有名なアプリと酷似しており、エンドユーザーに対するソーシャルエンジニアリングを試みていることがうかがえる。
なおグーグルは、DroidDream蔓延に対してマルウエアをインストールしてしまったユーザーに自動駆除ツールを提供するという対応を行った。興味深いことに、駆除ツールのインストールは任意のものではなく、インストールを拒否するための画面が用意されていなかった。いわゆるGoogle Securityというアプリがリリースされた後すぐに、中国のマーケットにこのアプリをかたる偽アプリが現れた。セキュリティツールを模倣してはいるものの、実際にはIMEIや電話番号を窃取し、SMS機能へのアクセス権を持っているものであった。公式のGoogleセキュリティツールとは異なり、当該マルウエアは公式Androidマーケットに公開されることはなかった。
リモートインストールというもう一つの弱点
もう一つ、公式マーケットに関連した問題点では、リモートインストールに関するものがある。公式AndroidマーケットではPCのブラウザから直接Android端末にリモートでアプリをインストールする機能がある。
もともと公式Androidマーケットは、サポート対象の端末からしか閲覧できないものだった。加えて、端末上でアプリをインストールする際には、アプリが端末から取得するデータに関してパーミッション(承諾)を得る必要がある。
ところが、後から公式Androidマーケットの仕組みに変更があり、適切に同期が取られ、サポートされている端末であればWeb経由でマーケットにサインインできるようになった。その結果、Androidマーケットからリモート操作で、標的とするAndroid端末にアプリをインストールできるようになった。リモートインストールの操作は比較的簡単だ。
- Android端末に紐付いているGmailアカウントでAndroidマーケットにログインする
- インストールしたいアプリを選択する
- 「インストール」をクリックする
- アプリが要求するパーミッションを読む
- 「インストール」を再度クリックする
問題は、実際に端末にアプリをインストールするときにパーミッションの確認を省略できてしまうことである。PC経由のリモートインストールの場合、パーミッションはWebサイト上に表示されるだけ(図1)。ここで同意すればアプリはAndroid端末に警告なしでインストールされる。例えば、第三者にGmailアカウントを奪取されると、その第三者は公式Androidマーケット上で利用できるすべてのアプリを購入できることになる。

基本的に危険度が高い公式マーケット外でのアプリ入手
公式Androidマーケット以外にも、数々のサードパーティーのマーケットがあり、そこからもAndroidアプリは入手できる。これらの中には、Amazon.comのAmazon Appストアなど、アプリ開発者がアプリをマーケットで公開する前に、コードレベルのチェックを受けなければならないマーケットがある。ただ、多くは公式マーケットと同様に、悪性アプリ削除のためにコードレベルのチェックは実施していない。
マーケットではなく個人が運営するWebサイトでアプリを配布するケースもある。こういった場合も、アプリ公開前にセキュリティチェックを受ける方法はないし、インストール後はなおさらチェックすることはできない。加えて、そういったサイトの運営者に対して悪性アプリを申告することもできない。
実は、このような個人運営のWebサイトでは、QRコードを使用してマルウエアを配布している例が発見されている。QRコードは2次元バーコードの一種で、バナー広告・雑誌・運輸・IDカードなど、特定の情報に簡単にアクセスするための手法として多様に利用されている。この仕組みを、スマートフォンユーザーのサイト誘導に使うのである。
アプリを配布するサイトのURLをQRコードに記録し、Webサイトで公開する。ユーザーはブラウザー画面に表示されたQRコードをスマートフォンでスキャンするだけで、簡単にアプリ配布サイトにたどりつける。最近はサイバー犯罪者が、悪意あるQRコードを利用する例が増えている。
図2はその一例。伏字にしているURLは実在して機能しているもの。このURLには「jimm.apk」というファイルは存在しないのだが、QRコードをスキャンして読み込むと、「jimm.apk」の実体が置かれているURLにリダイレクトされる。このファイルは、カスペルスキーラボでは「Trojan-SMS.AndroidOS.Jifake.f」として検知する。
マルウエア自体はトロイの木馬を仕込まれたJimmアプリ(モバイル向けのICQクライアント)で、2476というプレミアレート番号に複数のSMSを送信する(1通当たり6米ドルの課金)。この「JimmRussia」という名前のアプリをインストールすると、図3のように端末にアイコンが現れる。
ロシア カスペルスキーラボ
Global Research and Analysis Team
EEMEA 地域シニアマルウエアアナリスト