Tecno

HackiOS: el kernel de iOS 16.5 corre en un Android

Un grupo de investigación logró arrancar el kernel XNU de Apple y el entorno de iOS 16.5 sin modificar sobre un POCO X5 Pro 5G. No es un ROM: cada sesión dura segundos y devuelve un registro.

Por WebMaster 2 min de lectura104 visualizaciones
Home screen
Home screen

El grupo OOSEX GANG publicó HackiOS, un proyecto de investigación que hace arrancar el kernel XNU de Apple (xnu-8796.121.2, el de iOS 16.5) sobre hardware de un teléfono Android y ejecuta encima el espacio de usuario de iOS 16.5 sin modificaciones: launchd, backboardd, SpringBoard y las aplicaciones.

El teléfono que usan es un POCO X5 Pro 5G (redwood), con el bootloader desbloqueado. Según los responsables, no se escribe nada en el almacenamiento del equipo.

Para que funcione hicieron falta un cargador EFI propio, reemplazos propios de los controladores cerrados de Apple, un port de UEFI y un controlador de Wi-Fi de Linux sobre una capa de compatibilidad. Ningún archivo de Apple está en los repositorios: el script ios165/fetch.sh descarga el IPSW de iOS 16.5 desde el CDN de Apple en la máquina del usuario y extrae ahí lo necesario.

Una sesión de segundos, no un sistema para usar

El proyecto se presenta como un banco de pruebas y no como un ROM. Cada sesión dura una cantidad determinada de segundos; después el kernel vuelve al cargador y entrega su registro. La pantalla de bloqueo aparece a los 2 o 3 minutos.

  • Requisitos: Linux x86-64, unos 12 GB de disco libre y 4 GB de RAM libre.
  • En Arch, los paquetes están detallados en el repositorio; en Debian y Ubuntu incluyen git, python3, 7zip, liblz4-dev, gcc, qemu-system-arm y qemu-efi-aarch64.
  • 7-Zip tiene que ser versión 23 o posterior, porque es el que lee APFS.
  • El firmware del teléfono no está ni puede estar en el repositorio: es del fabricante y se toma del mismo equipo donde va a correr, desde su Android.

La carpeta prebuilt/ contiene el kernel, el cargador y los programas compilados desde esos repositorios, así que solo falta la imagen del sistema, que se arma en la máquina del usuario a partir del IPSW de Apple. Cada release adjunta hackios-redwood-boot.img, el UEFI de redwood con el cargador adentro, listo para fastboot boot.

Qué se toca y qué no

Los programas de iOS, los frameworks y la caché compartida de dyld no se modifican ni un byte. Lo que falta lo resuelve el kernel con reemplazos de controladores o con una biblioteca que inyecta mediante DYLD_INSERT_LIBRARIES (kern.exec_inject).

El comando ./xl sin argumentos lista todas las funciones disponibles: registros, grabación de pantalla y sonido, capturas de cámara, detención y estado. Para portar a otro dispositivo, common/build.sh corre cada paso que la máquina pueda ejecutar y usa prebuilt/ para el resto; los perfiles están en common/devices/ (redwood.conf, qemu-virt.conf, _template.conf) y el procedimiento en docs/PORTING.md.

HackiOS es un proyecto independiente de OOSEX GANG y no tiene afiliación, autorización ni respaldo de Apple Inc. iOS, iPhone y Apple son marcas de Apple Inc.

Comentarios

Ingresá para comentar — leer es gratis, comentar también.

Todavía no hay comentarios. Sé el primero en opinar.

Notas relacionadas