Cada cierto tiempo, en Applesfera publicamos artículos hablando de versiones de iOS que Apple ha dejado de firmar. Es posible que la mayoría de usuarios no sepan qué significa esto ni qué consecuencias tiene. Pero se trata de una acción de gran importancia para todos los involucrados.
Qué significa que una versión de iOS está firmada
Cuando hablamos de una versión de iOS firmada, nos referimos a que lleva la firma digital de Apple. Es un elemento necesario para la instalación de versiones nuevas o anteriores del sistema operativo, sin el cual no pueden realizarse. Según nos comenta nuestro compañero Julio César Muñoz, el proceso de instalación sigue estos pasos:
Paso 1: se descarga la versión a instalar, bien sea desde el propio dispositivo (que tiene una versión anterior y conexión a internet activa) o desde un ordenador para instalar mediante iTunes o el Finder, teniendo también conexión a internet.
Paso 2: al iniciar la instalación desde la versión anterior o desde el ordenador, toma el hash de la versión (firmado por Apple) y lo envía a los servidores de Apple para verificar que ese hash existe, que corresponde con una versión generada y que está en la white-list para ser aceptada como instalable en un dispositivo.
Paso 3: la petición, a su vez, va firmada por una clave privada proporcionada por Apple para verificar que ellos y solo ellos han generado la propuesta.
Paso 4: si todo está correcto, da permiso al sistema para que pueda iniciar la instalación.
La firma es, por tanto, una manera que tiene Apple de controlar que el contenido instalado en el dispositivo no se ha visto alterado. Y se ha mantenido intacto desde que se firma hasta que se vuelve a verificar la firma posteriormente.
Un protocolo para instalar siempre la versión más reciente de iOS
Como sabemos, Apple lanza versiones de iOS nuevas regularmente. En ellas nos encontramos tanto nuevas funciones, mejoras y cambios en el sistema como parches de seguridad. Estos últimos solucionan errores que pueden permitir a un atacante explotarlos, consiguiendo que el dispositivo haga cosas que se supone no debería hacer.
A comienzos de 2021, Apple lanzaba iOS 14.4, una versión que solucionaba dos errores de seguridad que la compañía creía que habían sido aprovechados por un tercero. Errores como estos pueden permitir, además, realizar el jailbreak a un dispositivo. De ahí el interés por explotar este tipo de fallos. El problema para ellos reside en que Apple deja de firmar versiones anteriores de iOS poco después de lanzar una nueva.
En concreto, apenas tardó dos semanas entre el lanzamiento de iOS 14.4.1 y quitar la firma de iOS 14.4. Y en los últimos años, la comunidad jailbreak va a remolque de las actualizaciones de iOS. Por ejemplo, unc0ver lanzó una herramienta para hacer jailbreak hasta la versión de iOS 14.3 el pasado mes de marzo. iOS 14.3 se lanzó a mediados de diciembre de 2020 y fue sustituido por iOS 14.4 a finales de enero de este año.
Una buena medida de seguridad para proteger y mantener al día los dispositivos
Una forma de acceder a un iPhone o iPad es mediante la instalación de una versión antigua de un sistema operativo (algo que se conoce como downgrade). Una que sepamos que tiene uno o varios errores que nos permitirían acceder al dispositivo, cuando con la versión actual resulta imposible. Es por ello que si la versión con el fallo no está firmada, nos va a ser imposible instalarla.
Existe una forma para rodear este impedimento, aunque requiere que el usuario guarde los blobs SHSH de su dispositivo con una versión firmada de iOS. De modo que debemos guardarla cada vez de modo preventivo. Y tampoco sirve para dispositivos a los que no tenemos acceso constante si no podemos guardar los blobs.
Con la firma digital solo de las versiones de iOS más actuales, que pueden consultarse para cada dispositivo aquí, Apple se asegura que cuando un usuario actualiza su dispositivo, lo hace a la última. Se evitan las versiones intermedias que, como es lógico, tendrían errores y fallos no corregidos en las más recientes. Se evita también que el usuario tenga que padecer más de una actualización, acortando pasos hasta la última disponible.
Como vemos, dejar de firmar versiones de iOS no es una tarea menor para Apple. Ayuda a mantenernos al día y evita que se pueda hacer downgrade a una versión anterior de iOS con fines nefarios.
Ver 11 comentarios