XcodeGhost(および亜種XcodeGhost S)は、AppleのXcode開発環境の改変版であり、マルウェアと見なされている。[1]このソフトウェアが最初に広く注目を集めたのは、2015年9月、中国発の多数のアプリに悪意のあるコードが潜んでいたときだった。[2] BBCによると、これは「AppleのApp Storeに対する最初の大規模攻撃」だと考えられていた。 [3]この問題は、中国の大手eコマース企業であるAlibabaの研究者によって最初に特定された。 [3] FireEyeによると、4000を超えるアプリが感染しており、これはAppleが当初認めた25をはるかに上回っており、[4]中国国外の作者によるアプリも含まれている。
セキュリティ会社パロアルトネットワークスは、中国ではネットワーク速度が遅いため、中国の開発者がApple Xcode開発環境のローカルコピーを探したところ、国内のウェブサイトに掲載されていた改変版に遭遇したと推測している。これにより、iOSデバイスで使用される注目度の高いアプリにマルウェアが挿入される可能性が高まった。[5] [6]
最初の報告から2か月後でも、セキュリティ会社FireEyeは、何百もの企業が依然として感染したアプリを使用しており、XcodeGhostは「永続的なセキュリティリスク」のままであると報告した。[7] [8]同社はまた、マルウェアの新しい亜種を特定し、XcodeGhost Sと名付けた。感染したアプリの中には、人気のメッセージングアプリWeChatやNeteaseアプリMusic 163が含まれていた。 [9]
発見
2015年9月16日、中国のiOS開発者がソーシャルネットワークSina Weiboで、Xcodeのマルウェアが、Xcodeでコンパイルされたアプリにサードパーティのコードを挿入すると 述べました[10] 。
その後、アリババの研究者はマルウェアに関する詳細な情報 を公開し[11] 、それをXcodeGhostと名付けました。
2015年9月17日、パロアルトネットワークスはマルウェアに関するいくつかのレポートを公開しました。[12] [13] [14] [15]
手術
伝搬
Appleのサーバーからのダウンロード速度が遅いため、中国のiOS開発者は、BaiduがホストするクラウドストレージサービスであるBaidu Yun(現在はBaidu WangPanと呼ばれています)などのサードパーティのWebサイトからXcodeをダウンロードするか、同僚からコピーを入手していました。攻撃者はこの状況を利用して、そのようなファイルホスティングWebサイトで侵害されたバージョンを配布しました。[16]
パロアルトネットワークスは、このマルウェアが2015年3月に存在していたと疑っている。[15]
攻撃ベクトル
起源

攻撃者はコンパイラーバックドア攻撃を使用しました。この攻撃の目新しい点は、Xcodeコンパイラーの改変です。エドワード・スノーデンが漏洩した文書によると、サンディア国立研究所のCIAセキュリティ研究者は、「Appleの独自のソフトウェア開発ツールであるXcodeの改変版を作成し、このツールを使用して作成されたアプリやプログラムに監視バックドアをこっそりと組み込むことができる」と主張しました。[17]
変更されたファイル
XcodeGhostの既知のバージョンでは、元のXcodeアプリケーションに 追加のファイル[12]が追加されます。
- iOS、iOSシミュレーター、macOSプラットフォーム上のコアサービスフレームワーク
- iOS、iOSシミュレーター、macOSプラットフォームにIDEBundleInjectionフレームワークが追加されました
XcodeGhostはリンカーも変更し、悪意のあるファイル[15]をコンパイルされたアプリにリンクします。このステップはコンパイルログに報告されますが、Xcode IDEには報告されません。
iOSアプリとmacOSアプリはどちらもXcodeGhost に対して脆弱です。
展開
XcodeGhostは、アプリで頻繁に使用される機能とフレームワークを含むCoreServicesレイヤーを侵害しました。[18]開発者が侵害されたバージョンのXcodeを使用してアプリケーションをコンパイルすると、悪意のあるCoreServicesが開発者の知らないうちにアプリに自動的に統合されます。
次に、悪意のあるファイルはUIWindowクラスとUIDeviceクラスに追加のコードを追加します。UIWindowクラスは「アプリがデバイス画面に表示するビューを管理および調整するオブジェクト」です。[19]
UIDeviceクラスは、現在のデバイスを表すシングルトンインスタンスを提供します。このインスタンスから、攻撃者は割り当てられた名前、デバイスモデル、オペレーティングシステムの名前とバージョンなどのデバイスに関する情報を取得できます。[20]
感染したデバイスでの動作
リモートコントロールのセキュリティリスク
XcodeGhost は、攻撃者がコマンド アンド コントロール サーバーからHTTP 経由で送信したコマンドによってリモート制御される可能性があります。このデータは、ECB モードのDESアルゴリズムを使用して暗号化されます。この暗号化モードは脆弱であることが知られているだけでなく、リバース エンジニアリングを使用して暗号化キーを見つけることもできます。攻撃者は中間者攻撃を実行し、偽の HTTP トラフィックをデバイスに送信する可能性があります (たとえば、ダイアログ ボックスを開いたり、特定のアプリを開いたりするため)。
ユーザーのデバイス情報の盗難
感染したアプリが iPhone または Xcode 内のシミュレーターを使用して起動されると、XcodeGhost は次のようなデバイス情報を自動的に収集します。
- 現在の時刻
- 現在感染しているアプリの名前
- アプリのバンドル識別子
- 現在のデバイスの名前とタイプ
- 現在のシステムの言語と国
- 現在のデバイスのUUID
- ネットワークタイプ
次に、マルウェアはそれらのデータを暗号化し、コマンド アンド コントロール サーバーに送信します。サーバーは XcodeGhost のバージョンによって異なりますが、Palo Alto Networks は 3 つのサーバー URL を見つけることができました。
- http://init.crash-analytics.com
- http://init.icloud-diagnostics.com
- http://init.icloud-analysis.com
最後のドメインはiOSマルウェアKeyRaiderでも使用されました。[12]
クリップボードからの読み取りと書き込み
XcodeGhost は、感染したアプリが起動されるたびに、iOS クリップボードに書き込まれたデータを保存する機能も備えています。マルウェアはこのデータを変更することもできます。ユーザーがパスワード管理アプリを使用している場合、これは特に危険です。
特定のURLを開くハイジャック
XcodeGhostは、感染したアプリが起動されたときに特定のURLを開くこともできます。Apple iOSとmacOSは、Inter-App Communication URLメカニズム[21](例: 'whatsapp://'、 'Facebook://'、 'iTunes://')で動作するため、感染したmacOSアプリケーションの場合、攻撃者は侵害された電話やコンピュータにインストールされている任意のアプリを開くことができます。このようなメカニズムは、パスワード管理アプリやフィッシングWebサイトでも有害である可能性があります。
感染したアプリ
中国製アプリの中でも、IMアプリ、銀行アプリ、携帯キャリアアプリ、地図、株取引アプリ、SNSアプリ、ゲームが感染した。また、人気のインスタントメッセージングアプリ「WeChat」や、スマートフォンのカメラを使って文書をスキャンするアプリ「CamScanner」 、 WinZipなど、世界中で使われている人気アプリも感染した。
Panguチームは、感染したアプリを3,418個数えたと主張した。[22]
オランダに拠点を置くセキュリティ会社Fox-itは、中国国外で数千件の悪意のあるトラフィックを発見したと報告している。[23] [24]
除去
コマンド アンド コントロール サーバーと Xcode の侵害されたバージョンを無力化する
AlibabaとPalo Alto Networksの記事以降、AmazonはXcodeGhostが使用していたすべてのサーバーを削除した。Baiduもクラウドストレージサービスから悪意のあるXcodeインストーラーをすべて削除した。
App Storeから悪質なアプリを削除する
2015 年 9 月 18 日、Apple はマルウェアの存在を認め、侵害されたアプリを持つすべての開発者に対し、再度審査に提出する前に、クリーンなバージョンの Xcode でアプリをコンパイルするよう求め始めました。
Pangu Teamは、デバイス上の感染したアプリを検出するツール[25]をリリースしましたが、他のウイルス対策アプリと同様に、ジェイルブレイクされていないデバイスでは実行できません。AppleはiOS App Storeでウイルス対策アプリを許可していません。[26]
Xcodeのバージョンを確認しています
AppleはXcode開発者に対し、Xcodeのバージョンを確認し[27] [28] 、マシン上で Gatekeeperを常に有効にしておくことを推奨している。
参考文献
- ^ Dan Goodin (2015 年 9 月 21 日)。「Apple は、40 個の悪意ある「XcodeGhost」アプリが App Store を悩ませた後、慌てふためく」。Ars Technica。2015年 11 月 5 日閲覧。
- ^ Joe Rossignol (2015 年 9 月 20 日)。「iOS マルウェア XcodeGhost について知っておくべきこと」。macrumors.com。2015年11 月 5 日閲覧。
- ^ ab 「AppleのApp Storeが中国でXcodeGhostマルウェアに感染」BBCニュース。2015年9月21日。 2016年9月22日閲覧。
- ^ 「XcodeGhostからお客様を保護する」FireEye 。 2021年11月9日閲覧。
- ^ Byford, Sam (2015年9月20日). 「Apple、大規模なセキュリティ侵害後にマルウェアに感染したApp Storeアプリを削除」The Verge . 2015年11月5日閲覧。
- ^ James Temperton (2015年9月21日). 「Apple App Storeハック:XcodeGhost攻撃が中国を襲う(Wired UK)」. Wired UK . 2015年11月5日閲覧。
- ^ カーク、ジェレミー (2015 年 11 月 4 日)。「FireEye によると、多くの米国企業が依然として XcodeGhost に感染した Apple アプリを実行している」。InfoWorld。2015年 11 月 5 日閲覧。
- ^ Ben Lovejoy (2015 年 11 月 4 日)。「XcodeGhost の改変版は依然として脅威。210 の企業で侵害されたアプリが発見される」9to5Mac。2015年 11 月 5 日閲覧。
- ^ Yong Kang、Zhaofeng Chen、Raymond Wei (2015 年 11 月 3 日)。「XcodeGhost S: 米国に新種が上陸」。FireEye。2015年 11 月 5 日閲覧。XcodeGhost
S: 米国に新種が上陸
- ^ 「SinaWeibo で XcodeGhost が初めて言及」。Sina Weibo。2015年 9 月 17 日。2015年 11 月 11 日閲覧。
- ^ "Xcode编译器里有鬼 – XcodeGhost样本分析-安全漏洞-安全研究-阿里聚安全". jaq.アリババ.com。 2016-04-19 のオリジナルからアーカイブ。2015 年 11 月 11 日に取得。
- ^ abc Claud Xiao (2015 年 9 月 17 日)。「新型マルウェア XcodeGhost が Xcode を改変し、Apple iOS アプリに感染して App Store に侵入 - Palo Alto Networks ブログ」。Palo Alto Networksブログ。2015 年 11 月 11 日閲覧。
- ^ Claud Xiao (2015 年 9 月 18 日)。「マルウェア XcodeGhost が WeChat を含む 39 個の iOS アプリに感染、数億人のユーザーに影響 - Palo Alto Networks ブログ」。Palo Alto Networksブログ。2015 年 11 月 11 日閲覧。
- ^ Claud Xiao (2015 年 9 月 18 日)。「更新: XcodeGhost 攻撃者は、感染したアプリを通じてパスワードをフィッシングし、URL を開くことができます - Palo Alto Networks ブログ」。Palo Alto Networks ブログ。2015年 11 月 11 日閲覧。
- ^ abc Claud Xiao (2015 年 9 月 21 日)。「XcodeGhost マルウェアと影響を受ける iOS アプリの詳細 - Palo Alto Networks ブログ」。Palo Alto Networks ブログ。2015年 11 月 11 日閲覧。
- ^ Thomas Fox-Brewster (2015 年 9 月 18 日)。「ハッカーが Apple App Store にマルウェアを忍び込ませ、iCloud のパスワードを盗む」Forbes。2015年 11 月 11 日閲覧。
- ^ Jeremy Scahill、Josh Begley (2015 年 3 月 10 日)。「Apple の秘密を盗む CIA のキャンペーン」The Intercept。2015年 11 月 11 日閲覧。
- ^ 「Core Services Layer」。developer.apple.com 。 2015年11月11日閲覧。
- ^ 「UIWindow クラスリファレンス」。developer.apple.com。2015年 11 月 11 日閲覧。
- ^ 「UIDevice クラスリファレンス」。developer.apple.com。2015年 11 月 11 日閲覧。
- ^ 「Inter-App Communication」。developer.apple.com 。 2015年11月11日閲覧。
- ^ 「Pangu Team on Weibo」2015年9月21日。 2015年11月11日閲覧。
- ^ 「Fox-ITとPalo Alto Networksの共同調査で、マルウェアに感染した人気アプリが判明」Fox-it 2015年9月18日 オリジナルより2016年8月12日時点のアーカイブ。 2015年11月11日閲覧。
- ^ Thomas, Brewster (2015年9月18日). 「ハッカーがApple App Storeにマルウェアを忍び込ませ『iCloudのパスワードを盗む』」Forbes . 2016年11月25日時点のオリジナルよりアーカイブ。
- ^ “Xcodeウイルス检测、XcodeGhostウイルス检测 - 盘古越狱”. x.pangu.io 。2015 年 11 月 11 日に取得。
- ^ Haslam, Karen. 「iOS アプリの XcodeGhost エクスプロイトが心配でならない理由」Macworld UK . 2017 年 9 月 24 日閲覧。
- ^ "有关 XcodeGhost 的问题和解答".りんご。 2015 年 11 月 14 日のオリジナルからアーカイブ。2016 年6 月 17 日に取得。
- ^ 「Xcode のバージョンを検証する - ニュースとアップデート - Apple Developer」。developer.apple.com。2015年11 月 11 日閲覧。
