Google Play にホストされているボットネット マルウェアに感染したデバイス 1,100 万台

in Vlog
1と0で埋め尽くされたコンピューター画面には、Googleのロゴと「hacked」という文字も表示されている。

5 年前、研究者たちは、Google Play マーケットで販売されていた正規の Android アプリが、開発者が広告収入を得るために使用したライブラリによって密かに悪質なものにされていたという悲惨な発見をしました。その結果、アプリはコードに感染し、感染した 1 億台のデバイスが攻撃者が管理するサーバーに接続して秘密のペイロードをダウンロードするようになりました。

今、歴史は繰り返されている。ロシアのモスクワに拠点を置く同じセキュリティ会社の研究者らは月曜日、Playから1100万回ダウンロードされた2つの新しいアプリが同じマルウェアファミリーに感染していることを発見したと報告した。カスペル​​スキーの研究者らは、今回も広告機能を統合する悪意のあるソフトウェア開発キットが原因だと考えている。

巧妙な技術

ソフトウェア開発キット(SDK)は、反復的なタスクを効率化することでアプリ作成プロセスを大幅にスピードアップできるフレームワークを開発者に提供するアプリです。アプリに組み込まれた未検証の SDK モジュールは、表面上は広告の表示をサポートしていました。しかし、その裏では、悪意のあるサーバーと密かに通信するための高度な手法が数多く提供されていました。アプリは、ユーザー データをアップロードしたり、いつでも実行および更新できる悪意のあるコードをダウンロードしたりしていました。

両方のキャンペーンで使用されているステルス型マルウェア ファミリーは、Necro として知られています。今回は、一部の亜種が、モバイル マルウェアではほとんど見られない難読化手法であるステガノグラフィーなどの技術を使用しています。一部の亜種は、高度なシステム権限で実行できる悪意のあるコードを配信する巧妙な手法も採用しています。デバイスがこの亜種に感染すると、攻撃者が管理するコマンド アンド コントロール サーバーに接続し、侵害された各デバイスとモジュールをホストするアプリケーションに関する情報を報告する暗号化された JSON データを含む Web リクエストを送信します。

次に、サーバーは、PNG 画像へのリンクと、画像ハッシュを含む関連メタデータを含む JSON 応答を返します。感染したデバイスにインストールされた悪意のあるモジュールがハッシュが正しいことを確認すると、画像をダウンロードします。

SDK モジュールは「非常にシンプルなステガノグラフィ アルゴリズムを使用しています」と、カスペルスキーの研究者は別の投稿で説明しています。「MD5 チェックが成功すると、標準の Android ツールを使用して PNG ファイルの内容 (ARGB チャンネルのピクセル値) を抽出します。次に、getPixel メソッドが、最下位バイトに画像の青チャンネルが含まれる値を返し、コード内で処理が開始されます。」

研究者らはこう続けた。

画像の青チャンネルを次元 1 のバイト配列と見なすと、画像の最初の 4 バイトは、リトル エンディアン形式でエンコードされたペイロードのサイズになります (最下位バイトから最上位バイトまで)。次に、指定されたサイズのペイロードが記録されます。これは、Base64 でエンコードされた JAR ファイルであり、DexClassLoader でデコードした後に読み込まれます。Coral SDK は、ネイティブ ライブラリ libcoral.so を使用して、JAR ファイルに sdk.fkgh.mvp.SdkEntry クラスを読み込みます。このライブラリは、OLLVM ツールを使用して難読化されています。読み込まれたクラス内での実行の開始点、つまりエントリ ポイントは、run メソッドです。

ステガノグラフィーを実装するネクロコード。
拡大する / ステガノグラフィーを実装するネクロコード。

カスペルスキー

インストールされる後続のペイロードは、感染したデバイスごとに組み合わせてさまざまなアクションを実行できる悪意のあるプラグインをダウンロードします。プラグインの 1 つは、昇格されたシステム権限でコードを実行できるようにします。Android はデフォルトで、特権プロセスによる WebView (アプリで Web ページを表示するための OS 拡張機能) の使用を禁止しています。この安全上の制限を回避するために、Necro はリフレクション攻撃と呼ばれるハッキング手法を使用して、WebView ファクトリーの別のインスタンスを作成します。

このプラグインは、WebView でレンダリングされたリンクを置き換える他の実行可能ファイルをダウンロードして実行することもできます。昇格されたシステム権限で実行すると、これらの実行可能ファイルは URL を変更して有料サブスクリプションの確認コードを追加したり、攻撃者が制御するリンクにロードされたコードをダウンロードして実行したりできます。研究者は、Necro の分析で遭遇した 5 つの個別のペイロードをリストしました。

Necro のモジュール設計により、マルウェアの動作にはさまざまな方法があります。Kaspersky は概要を示す次の画像を提供しました。

Necro Trojan 感染図。
拡大する / Necro Trojan 感染図。

カスペルシー

研究者らは、Google Play の 2 つのアプリで Necro を発見しました。1 つは Wuta Camera で、これまでに 1,000 万回ダウンロードされています。Wuta Camera のバージョン 6.3.2.148 から 6.3.6.148 には、アプリに感染する悪質な SDK が含まれていました。このアプリはその後更新され、悪質なコンポーネントが削除されました。約 100 万回ダウンロードされた別のアプリ (Max Browser) も感染していました。このアプリは Google Play で入手できなくなりました。

研究者らは、Necro が代替マーケットプレイスで入手可能なさまざまな Android アプリに感染していることも発見した。これらのアプリは通常、Spotify、Minecraft、WhatsApp、Stumble Guys、Car Parking Multiplayer、Melon Sandbox などの正規アプリの修正版であると宣伝している。

Necro に感染した可能性があると心配している人は、この記事の最後に記載されている侵害の兆候がデバイスに存在するかどうかを確認する必要があります。

関連記事

前の投稿
Cloudflare、ワンクリックブロックで無料かつ無制限のAIスクレイピングを終了へ
次の投稿
衛星画像によるとロシアの「超兵器」の実験は見事に失敗した