iOS 61 Jailbreak 01

El Jailbreak de iOS 6 fue liberado hace una semana en medio de una expectación enorme, mucho mayor que en anteriores ocasiones debido al retraso entre el lanzamiento de iOS 6 y la llegada de la solución Jailbreak. Por si había alguna duda, el éxito del  programa Evasi0n ha sido constatado por Saurik (creador de Cydia) que anunció que en apenas cuatro días ya había más de siete millones de iPhone, iPad y iPod Touch que habían aplicado el Jailbreak con este método, confirmando que es el Jailbreak con mayor adopción hasta la fecha. El proceso de trabajo ha ocupado más de cinco meses, que se dice pronto, y por ello no es descabellado decir que, además de tener mucho éxito, este ha sido el Jailbreak más complicado para los hackers desde el punto de vista técnico.

Cuando el Jailbreak está terminado y llega a nuestras manos en forma de programa -en este caso Evasi0n-, la sencillez y rapidez del proceso puede hacer que olvidemos que todo el trabajo que hay detrás es realmente costoso. Los hackers de Evad3rs con Planetbeing a la cabeza han trabajado durante cientos de horas para poder llegar a la solución definitiva y que podamos hacer el Jailbreak en nuestros terminales. La compañía Accuvant Labs investigó en los entresijos de Evasi0n y el resultado es que es una herramienta mucho más compleja de lo que parece.

iphone jailbreak 02

Para empezar el propio nombre del programa, Evasi0n, ya ofrece muchas pistas de cómo ha sido el proceso de trabajo. Como sabrás, Apple aumentó notablemente la seguridad de su plataforma móvil con iOS 6 y esto provocó que los hackers no pudieran vencer las defensas tan fácilmente. Lo curioso de Evasi0n es que en lugar de atacar esas defensas lo que hace es rodearlas o evadirlas, una estrategia sin la que había sido imposible tener el Jailbreak. Otro detalle interesante es que es un Jailbreak bastante seguro, al menos si lo comparamos con otros métodos anteriores como Jailbreakme de Comex. Para empezar el hecho de que sea necesario aplicar el Jailbreak usando el cable USB ya indica que es necesaria una conexión física con el terminal para poder entrar en la raíz del sistema, algo que nos asegura que un hacker con malas intenciones lo tendrá bastante difícil. Además Evasi0n no funciona si tenemos activado el bloqueo por código en el iPhone o iPad ya que necesita conexión constante, por tanto mientras el terminal esté protegido por el bloqueo con código no será posible desbloquearlo, por ejemplo si ha sido robado.

ios 6 jailbreak 02

El propio Planetbeing, cuyo nombre real es David Wang, reveló las claves del intrincado proceso que tuvieron que seguir para poder llegar al resultado final. Todo comienza con Libimobiledevice, un programa que simula el protocolo de iTunes para comunicarse con el dispositivo, éste inserta un enlace simbólico en la parte destinada a la zona horaria que por medio de varios atajos consigue privilegios para lanzar aplicaciones a nivel de raíz del sistema (root privileges). La siguiente barrera se la saltan con el icono de Jailbreak que aparece más o menos en la parte intermedia del proceso con Evasi0n. Después consiguen modificar el archivo launchd cada vez que está funcionando, así aseguran que el Jailbreak sea Untethered. Lo más complicado fue llegar el kernel y saltar el sistema conocido como KASLR (Kernel Address Space Layout Randomization), esta medida de seguridad hace que el código se vaya «escondiendo» en lugares aleatorios de la memoria, sin embargo hay una parte de esta que  siempre está fija, la conocida como «Kernel exception vector». En este apartado se guardan los errores de las aplicaciones y el lugar donde se han producido, lo que hace Evasi0n es simular un «crash» que permite detectar el lugar de la memoria donde se encuentra el código necesario para poder completar el proceso. A partir de aquí todo fue rodado, en palabras del propio Wang «una vez entras en el kernel, la seguridad deja de ser importante. Entonces es cuando ganamos».