これまでiOSのアプリは、Appleの厳しい審査を通過しているから安全。脱獄(ジェイルブレイク、Jailbreak)して野良アプリをインストールでもしない限り、App Storeからアプリをインストールするのであれば大丈夫と言われてきた。しかし、今回の件でわかったのは、普通にApp Storeからダウンロードして使っていてもマルウェアに感染してしまう可能性があるということ。

いったいどういうことなのだろうか?

マルウェア「XcodeGhost」
最初の一報は、セキュリティベンダーのパロアルトネットワークスが、中国のApp Storeが配布するiOSアプリにマルウェアが混入しているものを発見したというもの。

でも、どうやって?
前述のようにApp Storeで配布するアプリはリリース前にAppleの審査を受ける形になっている。その審査でマルウェアの混入は、わからなかったのだろうか?

その仕組はこうだ。
iOSアプリの開発には「Xcode」という開発環境のソフトウェアを用いている。
そのXcodeが改ざんされていた場合、その改ざんされた「Xcode」を使って開発したアプリにマルウェア「XcodeGhost」が仕込まれてしまう。

XcodeGhostは、実行時にデバイスの名前やUUID、使用言語、実行時刻、ネットワークの種類などを指定されたサーバ側に送信する。こうした動作自体は通常のアプリも(機能によっては)行う動作である。そのため、審査では、マルウェアとして引っかからなかったとされている。

◎改ざんされたXcod
XcodeはAppleが無償で提供している開発環境。通常、Appleの公式サイト(developer.apple.com)からダウンロードする。
しかし、問題となったのはミラーサイトに上がっていた非公式のもの。
中国からAppleの公式サイトにアクセスし、Xcodeをダウンロードするのは時間がかかる。そのため、こうしたミラーサイトを利用することが横行しており、今回そうした事情が利用されてしまったのではないかと言われている。

当初、影響は中国だけとされていたが、徐々に詳細が明らかになるにつれ被害は広がった。今やXcodeGhostに感染したアプリは350近くに上る。

たとえば日本の会社がリリースするアプリでも、開発の一部を海外に発注している場合がある。その際、現地で正規のルートから入手したXcodeでなく、汚染されたXcodeが使われていれば、リリースしたアプリがXcodeGhostに感染しているという事態もあり得る。
すでに現在、350近くのアプリがXcodeGhostに感染しているというのだから、実際こういうパターンも多いと思われる。

◎"完璧"と思われた仕組みの隙をつく
開発用ソフトウェア、SDKなど開発リソースを広く無償に提供し、誰でもiOSアプリの開発ができる(App Storeでリリースするためには別途有償のDevelopper Program登録が必要だが)。
作成されたアプリは、ストアで公開する前に審査することで利用するユーザーには安全を確保する。

Appleの掲げたアプリストアの仕組みは完璧に思えたが、今回の件では、その隙間をつかれたといえる。

アプリストアの根本にある開発用ソフトウェアを改ざんする。
改ざんされた開発用ソフトウェアがそのままアプリ開発に使われることでマルウェアが混入されてしまう。
すると、これまで成功してきた仕組みが完璧だと過信している分、逆になかなか露見しない。

開発用ソフトウェアを正式なサイトからダウンロードしないとは、もちろん誰も思わない。
ユーザーの立場では、回線が遅い、不安定などの状況下で、より近くのミラーサイトに欲しいファイルがあれば、そこからダウンロードしてしまうことはある。しかし、非公式のものを、よりにもよって"開発用のソフトウェアとして"しまうということは、普通では考えられない。

だが、その考えられないことが現実には起きてしまった。
人間が行うイレギュラーな行動が信じられない事態を引き起こす。今まで成功してきたことを理由に仕組みを盲信することの怖さを思い知る一件だ。

XcodeGhostに感染したアプリの中にはクリップボードの中身やパスワードを不正に取得しようとするものも発見されているという。

すでにAppleは、XcodeGhostに感染したアプリをApp Storeから順次取り除いていくことを明らかにしている。各ニュースサイトでもXcodeGhostに感染したアプリのリストが公開されているので、もしインストール済みのものがあればすぐに削除しよう。

Xcodeに続き、ゲーム開発エンジン「Unity」にも改ざんされたバージョンが見つかったという説も、一部にある。同様に、改ざんされたUnityで開発したゲームアプリにUnityGhostが仕込まれているというもの。ただ、Unityに関してAppleはまだ正式なコメントを出していない。

App Storeからダウンロードしたものでも過信は禁物。セキュリティ情報をキャッチし、早めに対応することだ。


大内孝子