
最近まで iOS デバイスのユーザーは、特に Android デバイスのユーザーに比べれば、モバイルコンピューティング環境について、わりと安心していられました。ときどき思い出したように出現する脅威を別とすれば、iOS についてはマルウェアの重大な問題が話題になることもそれほどありません。が、そんな現状も変わり始めました。
今年に入って、シマンテックは iOS プラットフォームを攻撃する脅威の増加を確認しています。YiSpecter(IOS.Specter)は、iOS デバイスを狙った攻撃が増加する一因となっている最新のマルウェアです。中国語を母語とするユーザーを標的にしており、東アジア、とりわけ中国と台湾で被害が出ています。YiSpecter は、正規ではないアプリストアや、乗っ取られたインターネットサービスプロバイダ(ISP)で YiSpecter をダウンロードしようとするユーザーをリダイレクトするトラフィック、フォーラムへの投稿、ソーシャルメディアなどを通じて拡散されることが判明しています。
YiSpecter は、ジェイルブレイクの有無にかかわらず iOS デバイスを標的とするトロイの木馬で、さまざまな機能を実行しますが、侵入先のデバイスにバックドアを開いてアドウェアをインストールするのが基本的な機能です。YiSpecter の侵入を許してしまうと、攻撃者は既存のアプリを削除する、新しい不正アプリをダウンロードしてインストールする、デバイス上の他のアプリで広告を表示するといったいろいろな機能を実行できるようになります。
企業の証明書を悪用して、ジェイルブレイクしていないデバイスを狙う
YiSpecter は、iOS で企業アプリケーションのプロビジョニングフレームワークを悪用する脅威です。企業が法人用の証明書を取得すれば、公式の App Store で公開せずに、各社独自のアプリを従業員が使えるようにできる、それがこのフレームワークの本来の使い方です。作成したアプリに、この証明書を使って署名すると、Apple 社の審査を受けずに App Store 以外でアプリを配布できるようになります。この仕組みを利用すると、証明書さえ持っていれば、通常なら Apple に却下されるような機能を持ったアプリでも幅広く開発できることになるわけです。
YiSpecter の作成者は、iOS で企業の証明書を利用して YiSpecter をパッケージ化し、署名しています。証明書を手に入れる方法はいくつか考えられます。
- Apple に法人登録して必要な料金を払い、審査の手続きを受ける
- すでに登録している開発者から証明書を盗み出す
- 登録している開発者とパートナー関係を結ぶ
ひとたび企業の証明書を手に入れれば、YiSpecter の作成者は Apple の監視を受けることなくアプリを開発し、どんな iOS デバイスにも配布できることになります。ただし、企業の証明書が不正使用されていることを Apple が確認すれば、ただちに証明書を失効させ、その証明書で署名されたアプリを無効にすることができます。
企業が署名したアプリで一般的なのは、アプリまたは開発者を信頼するというリクエストをユーザーが承認して初めてインストールできるようになるという機能です。アプリや開発者を信頼するかどうかとユーザーに確認を求めても、セキュリティ対策としてはあまり効果がないことをシマンテックはこれまでの経験から理解しています。とは言え、この確認が、マルウェアをインストールしようとするときに越えなければならない一線であることも確かです。
プライベート API の呼び出し
YiSpecter は高度な機能を数多く実行できます。Apple 独自のプライベート API を使って、標準の iOS アプリではできない処理まで実行するからです。このプライベート API は、Apple 社のアプリでシステムレベルの幅広い処理を実行できるように設計されたものです。iOS の開発者が、このような API をアプリで使うことは想定されていません。
サードパーティアプリがプライベート API を使っている場合は、却下されて Apple App Store では公開されません。YiSpecter は公式の App Store を無視し、かわりに非公式な配布チャネルを利用してマルウェアを拡散しています。そのため、プライベート API を独自の目的に利用できるということです。
模倣犯の可能性
iOS でプライベート API を呼び出すというアイデア自体は、目新しいものではありませんが、これまでの iOS マルウェアでは前例がありませんでした。同じように、企業におけるプロビジョニングを悪用する手口も、かなり以前からよく知られた問題でした。
YiSpecter で明らかになったのは、その 2 つの手法を組み合わせると、悪用のチャンスが大きくなるということです。そのチャンスが現実のものと証明されてしまった以上、今後も模倣犯が出現する可能性は否定できません。
対処方法
iOS デバイスをお持ちの場合、信頼されないソースからアプリをダウンロードしてインストールすることは避けるようにしましょう。かわりに、アプリは公式の App Store から、あるいは社内で独自に承認されたアプリライブラリからだけダウンロードするようにしてください。
また、iOS ユーザーは絶対にデバイスをジェイルブレイクしないようにしてください。ジェイルブレイクは、iOS の利用規約に反しており、デバイスに対する攻撃のリスクが上昇する結果となります。
デバイスのオペレーティングシステムとソフトウェアには、常に最新のパッチを適用しておくことも必要です。
シマンテックは、iOS デバイスを攻撃から保護するヒントも公開していますので、ぜひご覧ください。
* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/ja にアクセスしてください。
【参考訳】