El viernes pasado un investigador de seguridad apodado axi0mX publicaba en Twitter la noticia: había descubierto un nuevo exploit para iOS que bautizó como 'checkm8' y que permitía hacer jailbreak a todos los iPhones desde el 4S al iPhone X. Solo los nuevos modelos con el Apple A12 o Apple A13 están a salvo de esta vulnerabilidad.
El exploit es especial porque actúa sobre el bootrom, una memoria de solo lectura que hace imposible que Apple pueda hacer nada por corregir el problema en los modelos afectados. No hay parche posible para checkm8, cuyo código ya ha sido publicado en GitHub: explicamos cómo actúa y qué impacto tiene en los dispositivos con iOS.
Un exploit incontrolable
Las vulnerabilidades que han ido apareciendo en los últimos años en iOS han dado lugar a algún que otro escenario en el que era posible hacer jailbreak en algunos modelos del iPhone con versiones específicas del sistema operativo móvil de Apple.
EPIC JAILBREAK: Introducing checkm8 (read "checkmate"), a permanent unpatchable bootrom exploit for hundreds of millions of iOS devices.
— axi0mX (@axi0mX) 27 de septiembre de 2019
Most generations of iPhones and iPads are vulnerable: from iPhone 4S (A5 chip) to iPhone 8 and iPhone X (A11 chip). https://t.co/dQJtXb78sG
Lo normal era que al poco de descubrirse el problema Apple lanzase una actualización de iOS para parchear el sistema, pero eso no es posible para tratar de atajar el problema planteado por checkm8.
La razón reside en la forma de actuar de este exploit, que "ataca" al bootrom de iOS, la memoria de arranque del sistema operativo que se caracteriza por ser de solo lectura y está "grabada" en el hardware de los iPhone.
Una actualización del firmware no puede actuar sobre ella, lo que hace que este exploit se convierta en un problema "perpetuo" para Apple, que no puede evitar que los usuarios puedan aprovecharlo para hacer jailbreak a sus dispositivos.
Hay que diferenciar el exploit en sí, checkm8, del jailbreak, que de momento no ha sido publicado si es que alguien lo ha desarrollado. Esta vulnerabilidad no solo da acceso a realizar el jailbreak (para, por ejemplo, instalar software de terceras partes no controlado por Apple ni por su App Store), sino a violar la seguridad del dispositivo.
Qué dispositivos están afectados
En realidad no solo los iPhone están afectados por el problema, y como señalan los expertos de MalwareBytes, otros productos de Apple que están gobernados por iOS o sistemas operativos derivados de iOS también están en riesgo.
Así, la lista afecta a los siguientes productos, que se caracterizan por no contar con los chips A12 o A13 de Apple, que están a salvo del problema:
- Todos los iPhone desde el 4s hasta el iPhone X
- Todos los iPad desde la segunda a la séptima generación
- El iPad mini 2 y el iPad mini 3
- El iPad Air de primera y segunda generación
- El iPad Pro de 10,5 y de 12,9 pulgadas de 2ª generación
- El Apple Watch Series 1, Series 2 y Series 3
- El Apple TV de 3ª generación y el modelo 4K
- El iPod Touch de quinta, sexta y séptima generación.
Necesitamos acceso físico
Algunos jailbreaks tenían la peculiaridad de poder realizarse de forma remota, lo que se conocía como 'untethered', pero checkm8 no actúa de esa forma: es necesario tener el dispositivo físico para conectarlo a un ordenador, tras lo cual es también necesario activar el modo DFU (Device Firmware Upgrade) para poder aprovechar el exploit.
HACKED! Verbose booting iPhone X looks pretty cool. Starting in DFU Mode, it took 2 seconds to jailbreak it with checkm8, and then I made it automatically boot from NAND with patches for verbose boot. Latest iOS 13.1.1, and no need to upload any images. Thanks @qwertyoruiopz pic.twitter.com/4fyOx3G7E0
— axi0mX (@axi0mX) 29 de septiembre de 2019
El propio desarrollador de este exploit explicaba además que esta vulnerabilidad no es suficiente por sí sola para instalar malware de una forma persistente en el dispositivo, aunque podrían descubrirse formas de ganar ese nivel de acceso de forma indefinida.
Eso significa que entre otras cosas el exploit debe ser ejecutado cada vez que el dispositivo atacado se reinicie. Al hacer esa operación la memoria sobre la que opera se pierde, de modo que es necesario aplicarlo de nuevo (con el citado acceso físico, conectándolo a un ordenador y activando el modo DFU) si queremos ganar acceso a los privilegios a los que da acceso el exploit.
Como explicaba axi0mX en una entrevista en Ars Technica, el riesgo para los usuarios es alto cuanto más antiguos son sus dispositivos: Apple presentó e integró su Secure Enclave y Touch ID en 2013, lo que permitía tener un grado de seguridad muy alto en los iPhone.
Sin embargo para modelos más antiguos como el iPhone 5c- el mismo que fue desbloqueado en el célebre caso del FBI y los crímenes de San Bernardino- este exploit hubiera permitido acceder a todos los datos.
En los nuevos móviles de Apple con el Secure Enclave ese acceso está totalmente bloqueado: permite la ejecución de código en el dispositivo, pero no permite superar la protección del PIN porque esa parte depende de otro subsistema en iOS.
Qué impacto puede tener checkm8 y qué puedes hacer si estás afectado
Lo que puede ocurrir a partir de ahora es una versión "perpetua" de lo que ocurrió en 2010 cuando el famoso George Hotz (geohot) descubrió un exploit para el iPhone 3GS y el iPhone 4. Aquel exploit fue aprovechado por redsn0w.
Apple acabaría parcheando el problema y aumentando la seguridad con la introducción del citado Secure Enclave, un procesador separado que gestionaba las claves de cifrado para los datos del usuario y que aumentaba de forma notable el nivel de seguridad de los dispositivos.
Checkm8 no permite el descifrado de esos datos, pero da acceso a privilegios que podrían hacer que con otras herramientas adicionales se pudiera tratar de atacar ese cifrado.
Dado que estamos hablando de un exploit que no se puede parchear, lo único que pueden hacer los usuarios para protegerse es cambiar de modelo de iPhone a uno más nuevo que tenga un procesador A12 o superior. Si lo hacen, lo ideal es borrar luego los datos del dispositivo desde el menú de configuración de iOS en sus antiguos iPhone.
Si el usuario no cambia de móvil, se recomienda que establezca una contraseña alfanumérica en lugar de una contraseña de 6 dígitos que suele ser más popular. Con el exploit podrían realizarse ataques de fuerza bruta para tratar de tener acceso a los datos del usuario, y por ello una contraseña alfanumérica fuerte puede evitar potenciales problemas.
Ver 50 comentarios