AndroidのUAF脆弱性を利用する不正アプリを初確認、サイバー犯罪集団「SideWinder」が関与か

トレンドマイクロではGoogle Playストアで3つの不正アプリを確認しました。これらのアプリは、連携することでAndroidデバイスを侵害し、個人情報を窃取します。3つのアプリの1つは「Camero」と呼ばれ、Android端末の主要なプロセス間通信システム上に存在する脆弱性「CVE-2019-2215」を悪用し、開放されたメモリへの再アクセスを可能にする「UAF(Use After Free)脆弱性」を悪用した最初の攻撃事例と言えます。しかもさらなる調査の結果、これら3つのアプリは、サイバー犯罪集団「SideWinder」の攻撃ツールの一部である可能性が高いことも判明しました。このサイバー犯罪集団は2012年から活動しており、軍事関係機関で使用されているWindowsベースのシステムを標的にしていることでも知られています

これら3つの不正アプリは、写真やファイルの管理ツールアプリを装っていました。また、その中の1つのアプリに記載された証明書の情報から、いずれも2019年3月以降から出回っていたと推測されます。現在、これらのアプリはGoogle Playから削除されています。

図1:サイバー犯罪集団「SideWinder」との関連が推測される3つの不正アプリ
図1:サイバー犯罪集団「SideWinder」との関連が推測される3つの不正アプリ

図2:3つのアプリの1つに記載されていた証明書の情報
図2:3つのアプリの1つに記載されていた証明書の情報

不正アプリのインストール

SideWinderは、二段階の攻撃手順により不正アプリをインストールします。第一段階では、コマンドアンドコントロール(C&C)サーバからDEXファイル(Androidのファイル形式)がダウンロードされます。この際、モバイル向けアプリの活動を把握するツール「Apps Conversion Tracking」によりC&Cサーバのアドレスが設定されています。アドレスは、Base64方式で暗号化され、マルウェアの配布に使用されるURL上のリファラ情報のパラメータが設定されています。

図3:解析されたCCサーバのアドレス
図3:解析されたC&Cサーバのアドレス

この第一段階の後、ダウンロードされたDEXファイルがAPKファイルをダウンロードし、それを受け、デバイスの脆弱性やアクセシビリティを悪用して、不正アプリがインストールされます。これらはすべてユーザに気づかないまま、ユーザ側でアクションを起こさずに実行されます。なお、この際、検出回避のため、難読化、データの暗号化、動的コードの呼び出し等、複数の手法が駆使されます。

この場合、「Camero」および「FileCrypt Manger」双方のアプリが第一段階の役割を果たします。下図のとおり、C&Cサーバから2つのDEXファイルがダウンロードされ、これを利用してコードを呼び出し、デバイス上で3つ目のアプリ「callCam」がダウンロード・インストールされ、最終的に起動されます。

図4:2つのアプリによる第一段階を経て最終的に不正アプリがインストールされる
図4:2つのアプリによる第一段階を経て最終的に不正アプリがインストールされる

図5:DEXコードを呼び出す手順のコード部分
図5:DEXコードを呼び出す手順のコード部分

ユーザに気付かれずにデバイスへ最終的に不正アプリのcallCamをインストールするため、SideWinderは、以下の2つの手法を駆使します。

1. デバイスのルート化

この手法の場合、第一段階ではCameroが担当し、影響を受けるデバイスは、「Google Pixel(Pixel 2、Pixel 2 XL)」、「Nokia 3(TA-1032)」、「LG V20(LG-H990)」、「Oppo F9(CPH1881)」、「Redmi 6A」となります。そして手法に対応するDEXファイルがC&Cサーバからダウンロードされ、脆弱性利用コード(エクスプロイト)の情報が取得されます。

図6:CameroがダウンロードするDEXファイルのコードの一部
図6:CameroがダウンロードするDEXファイルのコードの一部

トレンドマイクロの解析では、C&Cサーバからは、合計5つのエクスプロイトがダウンロードされました。このルート権限取得の手法では、脆弱性「CVE-2019-2215」のエクスプロイトおよびエクスプロイト「MediaTek-SU」が使用されます。

図7:脆弱性「CVE-2019-2215」のエクスプロイト
図7:脆弱性「CVE-2019-2215」のエクスプロイト

図8:エクスプロイト「MediaTek-SU」
図8:エクスプロイト「MediaTek-SU」

ルート権限が取得された後、不正アプリのcallCamがインストールされます。そしてアクセシビリティ許可が有効化された後、最終的にcallCamが起動されます。

図9:callCamのインストール、起動、アクセシビリティ有効化に関するコマンド
図9:callCamのインストール、起動、アクセシビリティ有効化に関するコマンド

2. アクセシビリティ許可の利用

この手法の場合、第一段階はFileCrypt Managerが担当し、影響を受けるデバイスは、「Android 1.6」より上のバージョンのほとんどのAndroid端末のスマートフォンとなります。この第一段階のアプリは、起動後、下図のとおり、ユーザにアクセシビリティ許可の有効化をリクエストします。

図10:FileCrypt-Managerによりアクセシビリティ許可の有効化をリクエストするポップアップが表示される
図10:FileCrypt Managerによりアクセシビリティ許可の有効化をリクエストするポップアップが表示される

アクセシビリティ許可が有効化されると、下図のとおり、全面表示となって追加のセットアップ手順が必要であることが示されます。ただしこの全面表示は、デバイス上の各種表示を覆う形で示される「オーバーレイ表示」です。そしてこのオーバーレイ表示の属性である「FLAG_NOT_FOCUSABLE」および「FLAG_NOT_TOUCHABLE」の設定を変更し、オーバーレイ表示の上からも、デバイスの各種表示へのタッチイベントの検知・受信を可能にします。

図11:デバイス上のオーバーレイ表示
図11:デバイス上のオーバーレイ表示

FileCrypt Managerは、同時にDEXファイルからコードを呼び出し、目的の不正アプリであるcallCamおよびその他のアプリがインストール可能な状態にします。そしてcallCamのアクセシビリティ許可を有効化した後、callCamを起動します。これらはすべて、ユーザに気づかれないまま、オーバーレイ画面の背後で実行されます。これらの手順はすべて、デバイスのアクセシビリティ機能を利用することで可能となります。

図12:他のアプリや新たなAPKのインストールを可能にするコード
図12:他のアプリや新たなAPKのインストールを可能にするコード

図13:新たにインストールされたアプリのアクセシビリティ許可を有効化するコード
図13:新たにインストールされたアプリのアクセシビリティ許可を有効化するコード

下記は、脆弱性「CVE-2019-2215」のエクスプロイトを介して感染したデバイス「Pixel 2」上で展開される不正アプリ「callCam」の動作を示した動画となります。

■ 不正アプリ「callCam」の活動

callCamは、起動後、デバイス上の自身のアイコンを非表示にします。そして背後で以下の情報を窃取してC&Cサーバへ送信します。

  • 所在地
  • バッテリー状態
  • デバイス上のファイル
  • インストール済みアプリのリスト
  • デバイス情報
  • センサー情報
  • カメラ情報
  • スクリーンショット
  • アカウント情報
  • Wifi情報
  • WeChat、Outlook、Twitter、Yahoo Mail、Facebook、Gmail、Chromeのデータ

callCamは、RSAおよびAESの暗号化アルゴリズムを使用して、窃取した情報をすべて暗号化します。その際、SHA256により情報の整合性を検証した上で、暗号化の手順をカスタマイズ化します。この暗号化に際しては、窃取情報をまとめた一種のブロックを作成します。トレンドマイクロの解析では、便宜上、このブロックを「headData」と名付けています。headDataには、窃取情報の最初の9バイト、窃取情報データの長さ、ランダムなAES IV、RSA暗号化鍵、AES暗号化鍵、AES暗号化された窃取情報関するSHA256値などが含まれています。その後、カスタマイズ化された暗号化手順により、headDataを暗号化します。そして暗号化されたheadDataをファイル冒頭に格納し、その下にAES暗号化が施された窃取情報を配置します。

図14:窃取情報を暗号化する手順
図14:窃取情報を暗号化する手順

図15:カスタマイズ化された暗号化手順のコード部分
図15:カスタマイズ化された暗号化手順のコード部分

サイバー犯罪集団「SideWinder」との関連

これらのアプリが不正活動で利用するC&Cサーバは、SideWinderのインフラストラクチャの一部と推測されており、この点からもこのサイバー犯罪集団の関与が推測されます。さらに、これらアプリのGoogle Playページのリンクが、SideWinder利用のC&Cサーバの1つにおいて確認されています。

図16:SideWinderが利用するCCサーバでFileCrypt-MangerのGoogle-PlayページのURLを確認
図16:SideWinderが利用するC&CサーバでFileCrypt MangerのGoogle PlayページのURLを確認

■トレンドマイクロの対策

トレンドマイクロでは、モバイル環境での総合セキュリティ対策として、個人利用者向けにはGoogle Playで利用可能な「ウイルスバスター モバイル」、法人利用者向けには「Trend Micro Mobile Security™」を提供しています。これらの製品ではトレンドマイクロのクラウド型セキュリティ基盤「Trend Micro Smart Protection Network(SPN)」の機能である「Mobile App Reputation(MAR)」技術や「Web レピュテーション(WRS)」技術により、不正/迷惑アプリの検出や不正/迷惑アプリに関連する不正 Web サイトのブロックに対応しています。

■侵入の痕跡(Indicators of Compromise、IoC)

侵入の痕跡(Indicators of Compromise、IoCs)はこちらを参照してください。

参考記事:

翻訳: 与那城 務(Core Technology Marketing, Trend Micro™ Research)