Android のトースト メッセージを悪用して、アクセシビリティやデバイス管理者権限を付与する可能性がある

研究者らは、ソーシャル エンジニアリングによりユーザーに Android 上で危険なアクセス許可を与えることができるトースト メッセージを使用した攻撃を実証しました。

Android は、素晴らしい開発者コミュニティを持つ非常にオープンなプラットフォームです。 これらの開発者の多くは、アプリやカスタム ROM などを作成します。 Palo Alto Networks Unit 42 など、セキュリティ テストに取り組んでいる組織もあります。 このグループは、Android トースト メッセージ システム内の脆弱性を発見しました。 攻撃者は疑似オーバーレイを作成し、ユーザーをだまして危険な権限を無断で付与させます。 知識。 これは すでに修正されています 9月のセキュリティアップデート そしてAndroid Oreoでは, そのため、お使いの携帯電話が毎月のセキュリティ パッチをまだ受け取っている場合、または Android Oreo 上のデバイスをお持ちの場合は、この攻撃に対して脆弱ではないのでご安心ください。

他のすべての Android デバイスが影響を受けます この攻撃に。 これがどのように機能するかというと、Android 内のトースト通知を利用して、「上部に描画」の要件を回避します。 オーバーレイ許可。これが「マントとダガー「エクスプロイトが機能しました。 研究者らはこのエクスプロイトを利用して、ユーザーを攻撃するアプリケーションにアクセシビリティ サービスを許可するソーシャル エンジニアリングを行い、ユーザーがすべての画面コンテンツやキー入力などを読み取ることができるようにしました。 デバイス上で。 次に、同じ方法を使用して、アプリケーション ユーザーに管理者アクセスを許可するよう誘導しましたが、その際、自分が許可したアクセスをまったく認識していませんでした。 これにより、攻撃者はアプリのインストール、デバイスの監視が可能になり、ランサムウェアの可能性も高まります。

Android のトースト メッセージ オーバーレイ攻撃の説明

しかし、実際にはどのように機能するのでしょうか? の 概念実証を支える開発者 脆弱性の背後にあるより技術的な説明を含む攻撃の実際のソース コードを共有しました。 ただし、このエクスプロイトがどのように、そしてなぜ機能するのかについて簡単に説明します。

まず、トースト メッセージとは何かを考える必要があります。 これらは Android 上で何年も前から存在しており、おそらく毎日デバイス上でたくさんのそれらを目にしたことがあるでしょう。 トーストは画面の下部にある小さなメッセージで、通常は灰色のバブル内に情報が表示されます。

このエクスプロイトは、トースト メッセージを使用して、実際にメッセージを要求したり必要とすることなく、画面上にオーバーレイを作成します。 SYSTEM_ALERT_WINDOW これは、アプリケーションが画面上に描画するための要件であると考えられています。 代わりに、トースト通知を通じてオーバーレイをプッシュし、正当に無害なアクセスを許可するためのもののように見えるボタンを作成します。 許可または意味のないプロンプトを受け入れますが、実際にはデバイス管理者またはアクセシビリティへのアクセスを許可するためのものです。 応用。 トースト オーバーレイ内に 2 つのビューを作成します。

これらはすべて、権限チェックが失敗したために実行される可能性があります。 Android システム (Oreo より前および 9 月より前のセキュリティ アップデート) は、Android トースト オーバーレイ システムを介して供給される内容を実際にはチェックせず、代わりにチェックせずにアクセス許可を付与します。 これはおそらく、Google がトースト オーバーレイを介してビューをフィードする可能性を予見していなかったことが原因と考えられます。

Android 7.1 による Android トースト オーバーレイ攻撃の修正の試み

Android 7.1 では、Google がこのエクスプロイトをブロックしようとしたようです。 トースト メッセージにタイムアウトが導入され、UID (アプリのプロセス ID) ごとにトースト メッセージが 1 つだけという制限が設けられました。 これは、ループを繰り返して代わりにトースト オーバーレイをさらに表示することで簡単に回避できるため、ユーザーには一貫した UI であるかのような錯覚を与えます。 ループが作成されなかった場合、3.5 秒後にオーバーレイが消え、アプリが実際にユーザーに要求している内容 (デバイス管理者権限またはアクセシビリティ権限の付与) がユーザーに表示されます。

攻撃が成功した場合の結果

デバイス管理者またはアクセシビリティ権限をアプリケーションに付与すると、さまざまな種類の悪意のある攻撃に簡単に悪用される可能性があります。 ランサムウェア、キーロガー、デバイス ワイパーはすべて、このエクスプロイトを使用して作成される可能性があります。

アプリケーションはトースト メッセージを表示するために権限を必要としませんが、明らかに悪意のあるアプリケーションは依然として存在します。 このトースト オーバーレイを効果的に使用するには、BIND_ACCESSIBILITY_SERVICE と BIND_DEVICE_ADMIN が必要です 攻撃。 したがって、デバイスにパッチがまだ適用されていない場合、この種の攻撃に対する最善の防御策は、アプリケーションのインストール時に AndroidManifest で定義されている権限を調べることです。 アプリをインストールするときに、そのアプリにユーザー補助サービスまたはデバイス管理者権限が必要な理由がわからない場合は、すぐにそのアプリをアンインストールし、開発者に問い合わせてください。

Android のこのような単純な部分、つまり低俗なトースト メッセージが悪用されて、ユーザーに危険なアクセス許可を与えるようにソーシャル エンジニアリングされる可能性があることは懸念されます。 このような悪用に陥りやすい何百万人もの人々を守るために、メーカーができるだけ早く 9 月のセキュリティ パッチをデバイスに展開することを願っています。