FireEyeのモバイルセキュリティ研究者は、攻撃者が実際のアプリをマルウェアに置き換えることを可能にするiOSのセキュリティホールを発見したと述べています。
明確化:
この脆弱性は2014年7月に発見されました。FireEyeは、エンタープライズ/アドホックプロビジョニングを使用してアプリをインストールする際に、同じバンドルIDを持つ正規アプリが置き換えられる可能性があることを発見しました。アプリはインストール時に任意のタイトル(例えば「New Flappy Bird」)を表示できますが、インストール後はAppleのデフォルトのプリインストールアプリを除くあらゆるアプリを置き換えることができます。つまり、銀行アプリやメールアプリを置き換え、個人情報を盗む可能性があるということです。
FireEyeの研究者は、iOS 7.1.1、7.1.2、8.0、8.1、8.1.1ベータ版において、ジェイルブレイク済みデバイスと未ジェイルブレイクデバイスの両方でこの脆弱性を確認したと述べています。この攻撃は無線ネットワークまたはUSB経由で実行され、「Masque Attack(マスクアタック)」と名付けられています。
FireEyeは7月26日にAppleにこの脆弱性を通知したと発表しました。一方、最近発見されたマルウェア「WireLurker」は、Masque Attackの限定的な手法を用いてUSB経由でiOSデバイスに感染しました。
以下のビデオは、悪意のあるコードがユーザーの iPhone にインストールされる様子を示しています。
マスク攻撃によるセキュリティへの影響
攻撃者は、被害者を欺くような名前(「New Angry Bird」など)でアプリをインストールさせるように仕向けることができます。iOSシステムは、その名前を利用して、同じバンドルIDを持つ正規のアプリを置き換えます。Masque AttackはSafariなどのApple独自の組み込みアプリを置き換えることはできませんが、App Storeからインストールされたアプリを置き換えることは可能です。
Masque Attack はセキュリティに重大な影響を及ぼします。
- 攻撃者は、元のアプリのログイン インターフェースを模倣して、被害者のログイン資格情報を盗む可能性があります。
- ローカルデータキャッシュなど、元のアプリのディレクトリ下にあるデータは、元のアプリが置き換えられた後もマルウェアのローカルディレクトリに残ります。マルウェアはこれらの機密データを窃取する可能性があります。FireEyeは、メールアプリでこの攻撃が確認されており、マルウェアは重要なメールのローカルキャッシュを窃取し、リモートサーバーにアップロードする可能性があります。
- MDMインターフェースは、マルウェアと元のアプリが同じバンドルIDを使用していたため、区別できませんでした。現在、各アプリの証明書情報を取得するためのMDM APIは存在しません。そのため、MDMではこのような攻撃を検知することが困難です。
- エンタープライズプロビジョニングプロファイルを使用して配布されるアプリ(FireEyeは「EnPublicアプリ」と呼んでいます)は、Appleの審査プロセスの対象になりません。そのため、攻撃者はiOSのプライベートAPIを利用してバックグラウンド監視などの強力な攻撃を実行したり、iCloudのUIを模倣してユーザーのApple IDとパスワードを盗み出したりすることが可能になります。
- 攻撃者は、Masque Attacks を使用して通常のアプリ サンドボックスをバイパスし、Pangu チームが使用したような既知の iOS の脆弱性を攻撃してルート権限を取得することもできます。
iOS ユーザーは、次の 3 つの手順を実行することで、Masque Attacks から身を守ることができます。
- Appleの公式App Storeまたはユーザー自身の組織以外のサードパーティソースからアプリをインストールしないでください。
- サードパーティのウェブページからのポップアップでは、アプリについてどんな説明があっても「インストール」をクリックしないでください。ポップアップには、攻撃者が作成した魅力的なアプリのタイトルが表示される場合があります。
- アプリを開いたときにiOSに「信頼できないアプリ開発元」という警告が表示された場合は、「信頼しない」をクリックしてすぐにアプリをアンインストールしてください。
FireEyeによると、Masque Attacksによって既にアプリがインストールされているかどうかを確認するには、iOS 7ユーザーは「設定」→「一般」→「プロファイル」で「プロビジョニング プロファイル」を確認することで、iOSデバイスにインストールされているエンタープライズ プロビジョニング プロファイルを確認できる。このプロファイルには、Masque Attacksによって配信される可能性のあるマルウェアの署名IDが示される。
iOS 7ユーザーは、疑わしいプロビジョニングプロファイルをセキュリティ部門に報告できます。プロビジョニングプロファイルを削除すると、そのプロファイルに依存するエンタープライズ署名済みアプリの実行が停止されます。ただし、iOS 8デバイスでは、既にインストールされているプロビジョニングプロファイルは表示されません。FireEyeは、アプリのインストール時には特に注意するよう推奨しています。
Apple はまだ FireEye のレポートに反応していませんが、今後の展開については引き続きお知らせします。