バイオメトリクスはより安全です – マルウェアがAndroidユーザーをどのようにして騙すのか

この投稿は、THS 2023での ヤン・セレディンスキの素晴らしいプレゼンテーションに触発されました。

サイバーセキュリティは二元的な問題ではなく、100%の安全を保証する解決策は存在しません。実際にはリスク評価と、攻撃に対してより抵抗力のある解決策を選択することが重要です。銀行業務の文脈での具体例としては、モバイルアプリによるトランザクションの確認が、流行のSMSコードよりも安全であることが挙げられますが、ここにも効果的な攻撃手法が存在します。例えば、銀行アプリを装った偽アプリや、エクスプロイト(例:ペガサス)を利用するアプリがあります。しかし、モバイル銀行業務への興味深い攻撃の一つは、被害者の電話に表向きは無害なアプリをインストールさせ、そのアプリがAndroidの権限を悪用するケースです。

感染のシナリオは、被害者が信頼できないソースからアプリをインストールすることから始まることが多いです。これには無料でプレミアム機能を解除できるとの情報によって促される場合があります。

youtube premium malware
duolingo premium malware

残念ながら、公式のGoogle Playストア内のアプリでも悪意のあるものが見つかることがあります。初期リリースでは悪意のある機能を含まず、後の更新で追加されることがあります。サイバー犯罪者は一見無害な目的のアプリを作成します。例えば、シンプルな懐中電灯アプリやカメラ操作ツールなどです。これらのアプリはデバイス上のさまざまな機能へのアクセス権を要求します。数ヶ月間、これらのアプリは問題なく動作し、ユーザーはポジティブなレビューを提供します。このレビューがアプリの評判を高め、さらなるダウンロードを促進します。しかし、しばらくするとサイバー犯罪者はアプリを変更し、悪意のあるコードを追加したり、権限を変更してデータを盗むようになります。この遅延した悪意のあるコードの追加により、Google Playストアの検証プロセスをうまく通過することができます。

latarka malware w google play

マルウェアに関するアクセシビリティサービスとオーバーレイの作動方法

アクセシビリティサービス(Accessibility Services)は、画面上の情報を音声で読み上げたり、フォームの入力フィールドを自動的に補完したりすることができます。

działanie ułtawień dostępu

悪意のあるアプリは、障碍者向けのアクセシビリティ機能を利用して画面上の全ての動作を記録し、入力されたコードにアクセスできます。これにより、モバイルアプリのパスワードを知られ、トランザクションを自動的に実行および確認することができます。疑わしい権限の付与は、画面オーバーレイ(Overlay)を使用した巧妙な手法によって行われます。ユーザーは気づかないうちに危険な権限を承認してしまうことがあります。

「オーバーレイサービス」の例として、メッセンジャーのメッセージ通知バブルがあります。

działanie dymków facebook

以下の例では、偽の画面オーバーレイが実際の画面の一部を隠し(ユーザーの目から隠す)、情報の入力を求めます(通常は機密情報、例えば銀行情報、PINコード、セキュリティ質問の回答など)。被害者は信頼できるアプリで機密情報を入力していると思っていますが、実際には攻撃者に直接送信しています。

jak malware wykradana przez nakładki dane dostępowe użytkownika

このオーバーレイを使用した攻撃の目的は、モバイルバンキング、フィンテック、電子商取引、ゲーム、または小売アプリケーションでよく見られます。攻撃者が認証用PINコードを知ると、ユーザーが実際の銀行アプリを開いたときに、それを利用して自動的にログインし、トランザクションを実行および確認することができます。


実際の攻撃事例

  • BrasDexは、Androidシステムをターゲットとし、特にブラジルの銀行アプリに重点を置いたマルウェアです。このマルウェアがデバイスに感染すると、BrasDexは特定のアプリのみを識別して攻撃します。Androidのアクセシビリティサービスを使って画面の監視、タッチ操作の管理、キーボードの操作、その他の悪意ある行動を行います。BrasDexの主な目的は、銀行アプリの利用中に認証情報を盗み、ユーザーの知らない間にトランザクションを実行することです。
brasdex
  • ERMAC 2.0は、ユーザーの認証情報を盗み、そのデータをサイバー犯罪者に送信するためのAndroidプラットフォーム用トロイの木馬です。これらのデータを使って、銀行口座や暗号通貨アカウントを乗っ取り、さまざまな詐欺を実行します。典型的な例として、合法的なフードデリバリーサイトに見せかけた偽アプリがありました。この偽アプリは、アクセシビリティサービスやオーバーレイへのアクセスを含む43もの権限を要求し、認証情報の盗難を可能にしました。
ermac
  • Xenomorphは2年以上前に初登場しましたが、今でも攻撃に利用されているマルウェアです。最初はGoogle Playストアでパフォーマンス向上アプリとして配布されていました。ユーザーはこれらのアプリをインストールし、パフォーマンス向上のために広範な権限が必要だと思い込み、無意識にデバイスを感染させていました。Xenomorphはテキストメッセージを傍受する能力があり、トランザクション確認に使用されるデータを収集できます。また、アクセシビリティの権限を利用して、画面に目立たないオーバーレイを作成します。
xenomorph

マルウェアによるアクセシビリティサービスの悪用から守るための開発者向けガイドライン:

  • すべてのアクセシビリティサービスを無効にする: この方法は、さまざまな障害のあるユーザーにとって最も不便ですが、権限の悪用から守るための最も簡単な方法の一つです。
  • ホワイトリストにあるサービスのみ許可する: アクセシビリティに優しいアプローチで、すべてのアクセシビリティサービスをリスト化し、パッケージ識別子を特定し、一定の信頼できるサービスだけがアプリで実行できるようにします。しかし、外部からインストールされたアプリは任意のパッケージ識別子を模倣できるため、この防御はGoogle Playストアからの脅威に対してのみ効果的です。
  • 権限が合理的なサービスだけを許可する: アクセシビリティのための重要なUI要素を識別するフラグ(android:importantForAccessibility)を利用し、アプリ内のすべての機密フィールドに対して「false」を設定し、不要なフィールドの読み取りを宣言するアクセシビリティサービスを制限します。これは、サービスのフラグプロパティをチェックし、FLAG_INCLUDE_NOT_IMPORTANT_VIEWSを検証することで行えます。
  • バイオメトリクスとシステムダイアログを利用する: 重要なトランザクションにはバイオメトリクス認証を必須とし、システムダイアログを使用してトランザクションを実行することで、サイバー犯罪者がアクセシビリティサービスを利用して不正なトランザクションを行うのを防ぐことができます。最新のAndroidバージョンでは、システムウィンドウではオーバーレイを許可しないため、オーバーレイを効果的にブロックできます。
  • Android API 34を利用する: この更新により、検証済みのアクセシビリティサービスのみがアプリで機密情報を閲覧およびアクセスできるようになります。

オーバーレイ検出の推奨事項

Googleは、オーバーレイを利用したマルウェア攻撃の検出および対策を支援するためにいくつかの有用なAPIを導入しました:

  • API 9: タッチフィルタリング(setFilterTouchesWhenObscured(boolean))オプションが有効になっている場合、ウィンドウがオーバーレイによって隠されているときにシステムがユーザーのタッチを無視します。この場合、他のウィンドウ(またはトースト/ダイアログ)がタッチ箇所に表示されていることを意味します。
  • API 29: この更新により、部分的に隠されたタッチの検出がより正確になります。フラグ(FLAG_WINDOW_IS_PARTIALLY_OBSCURED)を使用すると、異なるウィンドウが部分的または完全に隠されてタッチイベントを受信する場合にフラグが表示されます。重要なのは、移動がオーバーレイを直接通過しない場合、イベントがフラグで示されることです。
  • API 31: この更新により、開発者はsetHideOverlayWindows(true)オプションを使用して、システムに属さないオーバーレイを自動的に非表示および削除することができるようになります。これが現在最も効果的なアプローチです。

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!). Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Tagged , , , , , . Bookmark the permalink.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注