Androidの欠陥により、署名付きアプリに攻撃コードを紛れ込ませることができる

Table of Contents

Androidの欠陥により、署名付きアプリに攻撃コードを紛れ込ませることができる

研究者らは、最近修正された Android の脆弱性により、ユーザーが署名付きアプリからの攻撃に対して無防備になる可能性があると述べている。

「Janus」と呼ばれるこの脆弱性により、悪意のあるアプリは、Androidアプリで使用されるAPKまたはDEX形式に、アプリの署名に影響を与えることなく、コードバイトを追加することが可能になります。つまり、悪意のあるアプリが悪意のある命令を詰め込んだアプリであっても、Androidに信頼できるソフトウェアとして読み取らせることができるのです。

モバイルセキュリティ企業GuardSquareの研究者によると、問題はAndroid 5.0以降の一部アプリケーションのAPKファイルとDEXファイルの処理方法にあるという。アプリケーションの署名内の特定のバイトのみをチェックすることで、デバイスは改ざんされた署名を本物と読み取ってしまう可能性があり、APKファイルやDEXファイルに悪意のある命令を挿入しても検知されない可能性がある。

日食の写真(Shutterstockより)

AndroidのIDEにご注意:3つの主要IDEに脆弱性あり

続きを読む

「攻撃者は、高い権限を持つ信頼できるアプリケーション(例えばシステムアプリ)を、修正されたアップデートに置き換え、権限を悪用することができます。標的のアプリケーションによっては、ハッカーがデバイスに保存されている機密情報にアクセスしたり、デバイスを完全に乗っ取ったりする可能性もあります」とGuardSquareは述べています。

あるいは、攻撃者は、例えば銀行業務や通信業務において、機密性の高いアプリケーションの改変されたクローンを正当なアップデートとして配布する可能性もあります。クローン化されたアプリケーションは、元のアプリケーションと見た目や動作は似ていますが、悪意のある動作を組み込む可能性があります。

この脆弱性(CVE-2017-13156)は、12月のAndroidアップデートのパッチレベル1で修正されたため、Googleから直接パッチを入手しているユーザーは保護されているはずです。しかし残念ながら、Androidエコシステムの性質上、多くのベンダーや通信事業者は修正プログラムのリリースが遅れています。

しかし、脆弱なマシンを保護するための緩和策もいくつかあります。GuardSquareによると、まず、今回の攻撃はPlayストア経由では実行できないため、Playストアから入手したアプリは安全であるはずです。さらに、Android APKバージョン2では、攻撃を検出するための署名のチェックがより徹底されています。

同社は「古いバージョンのアプリケーションや、古いデバイスで実行されている新しいアプリケーションは依然として影響を受ける可能性がある」と述べた。

「開発者は少なくとも署名スキーム v2 を常に適用する必要があります。」®

Discover More