• No se han encontrado resultados

Jailbreak en iOS: ventajas y riesgos

N/A
N/A
Protected

Academic year: 2020

Share "Jailbreak en iOS: ventajas y riesgos"

Copied!
68
0
0

Texto completo

(1)Universidad de Alcalá Escuela Politécnica Superior. GRADO EN INGENIERÍA INFORMÁTICA. Trabajo Fin de Grado Jailbreak en iOS: ventajas y riesgos. Autor: Saúl Ortega Bel Tutor: José María Gutiérrez Martínez. 2017.

(2) UNIVERSIDAD DE ALCALÁ Escuela Politécnica Superior GRADO EN INGENIERÍA INFORMÁTICA Trabajo Fin de Grado Jailbreak en iOS: ventajas y riesgos. Autor: Saúl Ortega Bel Trabajo realizado en: Escuela Politécnica Superior de Alcalá de Henares País: España Tutor: José María Gutiérrez Martínez Tribunal:. Presidente:. Vocal 1º:. Vocal 2º:. Fecha:. Página 2 de 68.

(3) AGRADECIMIENTOS Empecé mi andadura en esta carrera en el año 2012, y la finalización de este trabajo fin de grado supone para mi vida un punto de inflexión en el que merece la pena echar la vista atrás y valorar todo lo ocurrido desde entonces. El dar por finalizado este proyecto supone el alcanzar mi objetivo marcado y demostrar que con esfuerzo y constancia todo puede lograrse. Quiero dar las gracias a mi familia que me ha apoyado en todo momento. Con especial mención a mis abuelos Emilio y Gabriela, mis padres Mari Luz y Pablo, mi hermano Joel, mis tíos Juan y Sonia y por último y no menos importante, mi mayor inspiración en la vida, mi prima Laura. También quiero dar las gracias a la Universidad Politécnica de Alcalá de Henares y en especial, a su profesorado. Con especial hincapié en mi tutor, José María Gutiérrez, por darme la oportunidad de escoger este proyecto y por toda la ayuda prestada durante la realización de éste. También quiero mencionar a mis compañeros de universidad, y en especial a algunos de ellos que se han convertido en mis amigos, ya que, sin ellos, no podría haber llegado hasta aquí. Pero si hay alguien que se merece mi gratitud por encima del resto, es mi amigo Francisco Moreno, sin el cual, posiblemente no hubiera terminado la carrera este año.. Página 3 de 68.

(4) RESUMEN El sistema de operativo de Apple es conocido por ser bastante restrictivo en cuanto a personalización se refiere. En el año del lanzamiento del primer terminal de Apple, surgió el término Jailbreak, que da nombre al proceso mediante el cual desbloqueamos ciertas características de nuestro dispositivo iOS para instalar extensiones al sistema operativo que añadan o mejoren ciertas funcionalidades. En un mundo cada día más digitalizado, es importante saber hasta qué punto es necesario exponer aún más nuestra seguridad. A lo largo de este documento vamos a ver los tipos de Jailbreak que existen, las ventajas y desventajas de realizar el Jailbreak a un dispositivo. Además, aprenderemos mediante un tutorial, cómo realizar el Jailbreak a un dispositivo y vamos a demostrar mediante pruebas irrefutables el riesgo de realizarle este proceso a un dispositivo de Apple.. SUMMARY Apple’s OS is known due to its restrictiveness about personalization. The same year the iPhone was released, the word Jailbreak appeared. Jailbreak is the process of unlocking some features of our iOS gadget to install some extensions to the OS in order to add or upgrade some functionalities. In a world too digitalized, it’s important to know how necessary is to put at risk our security even more. Through this document were are going to see the types of Jailbreak, the advantages and disadvantages of doing it to a device. Also we are going to learn with a tutorial how to do the Jailbreak to a device and we are going to prove with irrefutable evidence the risk of doing Jailbreak to an Apple device.. Página 4 de 68.

(5) Índice de contenido índice de figuras….……................................................................................................ 6. Índice de tablas….……................................................................................................ 8. Índice de acrónimos…................................................................................................ 9. Palabras clave…….……................................................................................................ 9. 1. Introducción……................................................................................................ 10. 1.1. Motivación........................................................................................................... 11. 1.2. Objetivos........................................................................................................... 11. ¿Qué es iOS?..................................................................................................... 12. 2. 2.1 Orígenes de iOS................................................................................................. 13. 2.2. Arquitectura iOS................................................................................................. 17. 2.3. Seguridad en iOS................................................................................................ 21. ¿Qué es el Jailbreak?........................................................................................ 22. 3.1 Tipos de Jailbreak….............................................................................................. 28. 3.2 ¿Qué permite hacer el Jailbreak a nivel de usuario?............................................ 30. 3.3 Herramientas para realizar el Jailbreak................................................................ 31. 4. Tipos de Malware………………………….................................................................. 33. 5. Tutorial de cómo realizar el Jailbreak…............................................................ 41. 6. ¿Se vulnera nuestra seguridad al tener Jailbreak en nuestro dispositivo?......... 53. 7. Conclusiones y líneas futuras........................................................................... 61. 7.1 Conclusiones....................................................................................................... 61. 7.2 Líneas futuras…................................................................................................... 62. 8. Planificación del trabajo………………………………………………………………………........... 63. 9. Presupuesto del proyecto................................................................................ 64. Biblografía………….……................................................................................................ 66. 3. Página 5 de 68.

(6) Índice de figuras Figura 1: iPhone 2G, primer móvil de la compañía Apple………………………………………….………….….. 13. Figura 2: Appstore, la tienda de aplicaciones para iOS………………………………………….……….………... 14. Figura 3: Control por voz y mensajes multimedia………………………………………………….…………….…... 14. Figura 4: Implementación de la multitarea……………………………………………………….....…….…………... 14. Figura 5: Siri, el asistente virtual de Apple…………………………………………………………..…………….….... 15. Figura 6: Passbook, app para gestionar métodos de pago…………………………………..………….….…... 15. Figura 7: Centro de control, multitarea e interfaz mejorada…………………………………..………….……. 16. Figura 8: QuickType, sistema predictivo de escritura…………………………………..……….…….…………... 16. Figura 9: Split-View, función para trabajar con dos aplicaciones simultáneamente….…….……….. 17. Figura 10: Pantalla de bloqueo mejorada en iOS 10…………………………………..……….…….……..……... 17. Figura 11: Capas en las que se divide la Arquitectura de iOS…………………………………….……..……... 18. Figura 12: Diagrama de la arquitectura de seguridad de iOS…………………………………….……..……... 21. Figura 13: Cadena de arranque del sistema operativo iOS…………………………………….……..…….…... 22. Figura 14: Menú principal del programa, Jailbreak iOS 6 con RedSn0w………………….……..…….….. 41. Figura 15: Realizando Jailbreak, Jailbreak iOS 6 con RedSn0w………………….……..…….……………….. 42. Figura 16: Extras-->Just Boot, Jailbreak iOS 6 con RedSn0w………………….………..…….………….…….. 42. Figura 17: Desactivando el passcode, Jailbreak iOS 7 con Evasi0n7…….………..…….………….…….... 43. Figura 18: menú principal del programa, Jailbreak iOS 7 con Evasi0n7…….…..…….………….…….... 44. Figura 19: desactivando Find My iPhone, Jailbreak iOS 8 con Pangu8…….…..…….………….……..... 45. Figura 20: menú principal del programa, Jailbreak iOS 8 con Pangu8…….…..…….………….……...... 46. Figura 21: activando el modo avión, Jailbreak iOS 8 con Pangu8…….…..…….…………………………... 47. Figura 22: pasos previos a realizar el Jailbreak, Jailbreak iOS 8 con Pangu8…….…..……………...... 47. Figura 23: Interfaz del programa Cydia Impactor, Jailbreak iOS 9 con Home Depot…….…..……... 48. Figura 24: Introducir Apple ID y contraseña, Jailbreak iOS 9 con Home Depot…….…..……………... 48. Figura 25: Profile & Device Management, Jailbreak iOS 9 con Home Depot…….…..…………………. 49. Figura 26: Icono de Home Depot, Jailbreak iOS 9 con Home Depot…….…..………………………………. 50. Figura 27: Icono de Cydia, Jailbreak iOS 9 con Home Depot…….…..…………………………….…………... 50. Figura 28: Interfaz del programa Cydia Impactor, Jailbreak iOS 10 con Yalu…….….…….…………... 50. Figura 29: Introducir Apple ID y contraseña, Jailbreak iOS 10 con Yalu…….….…………….…………... 51. Figura 30: Aceptar el perfil yalu102, Jailbreak iOS 10 con Yalu…….….…………….……………….……... 51. Página 6 de 68.

(7) Figura 31: Aplicación yalu102, Jailbreak iOS 10 con Yalu…….….………………….….……………….……... 52. Figura 32: primer paso, cambio de contraseña por defecto OpenSSH…….….…………………….…….. 53. Figura 33: segundo paso, cambio de contraseña por defecto OpenSSH …….….……………….……... 53. Figura 34: último paso, cambio de contraseña por defecto OpenSSH…….….……………….………….. 53. Figura 35: Cain, programa para realizar un barrido a la red…….….……………….……………………….. 54. Figura 36: Nmap, programa que utilizamos para ver si el puerto 22 está abierto………………….. 55. Figura 37: FileZilla, programa que utilizamos para obtener información del dispositivo…….….. 55. Figura 38: extrayendo las fotos y vídeos del dispositivo, FileZilla…….….………………………….……... 56. Figura 39: extrayendo la biblioteca musical, FileZilla…….….…………………………………………..……... 56. Figura 40: extrayendo información del correo electrónico, FileZilla…….….…………………………….. 57. Figura 41: extrayendo información de la aplicación iMessage, FileZilla…….….…………………..….. 58. Figura 42: abriendo el archivo sms.db para ver los mensajes de iMessage, FileZilla…………..…. 58. Figura 43: extrayendo información del navegador Safari, FileZilla…….….………………………....….. 59. Figura 44: contenido del archivo bookmarks.db, FileZilla…….….…………………………….………....….. 59. Figura 45: ncrack, herramientas de fuerza bruta…….….………………………………………..………....…... 60. Figura 46: hydra, herramientas de fuerza bruta…….….………………………………………..………....….... 61. Figura 47: medusa, herramientas de fuerza bruta…….….………………………………………..………....... 61. Página 7 de 68.

(8) Índice de tablas Tabla1: planificación del proyecto…………………………..…….….………………….….……………….…….. 63. Tabla2: costes de material …………………………..…….….………………….….……………….…………….... 64. Tabla3: costes de personal …………………………..…….….………………….….……………….…………….... 64. Tabla4: coste total del proyecto …………………………..…….….………………….….……………….………. 65. Página 8 de 68.

(9) Índice de acrónimos OS. Operative System (Sistema Operativo). iOS. iPhone Operating System (Sistema operativo del iPhone/Ipad). LTE. Long Term Evolution (red 4G). OTA. Over The Air (actualizaciones vía wifi). XML. eXtensible Markup Language (lenguaje de marcado extensible). DRM. Digital Rights Management (gestión de derechos digitales). IPSW. IPod SoftWare (extensión de archivos con el firmware de los dispositivos iOS). DFU. Device Firmware Update (modo de recuperación). SSH. Secure Shell (intérprete de órdenes seguro). ROM. Read Only Memory (memoria de sólo lectura). ECID. Electronic Chip ID (chip de identificación único). NONCE. Number Used Once (número usado una sola vez). GID. Group ID (identificador de grupo). UID. User ID (identificador de usuario). LLB. Low Level BootLoader (cargador de arranque a bajo nivel). AES. Advanced Encryption Standard (estándar de cifrado avanzado). DMA. Direct Memory Access (acceso directo a memoria). VPN. Virtual Private Network (red privada virtual). BLE. Bluetooth Low Energy (bluetooth de baja energía). SIP. Session Initial Protocol (protocolo de inicio de sesión). APN. Acces Point Name (punto de acceso). Palabras clave Las palabras clave de este documento son las siguientes: • • •. iOS Jailbreak Seguridad. Página 9 de 68.

(10) 1. Introducción En esta primera parte se va a dar a conocer una idea general de lo que el lector se va a encontrar en este proyecto. A lo largo de este documento se va a presentar un Trabajo Fin de Grado donde se va a explicar las ventajas y riesgos que conlleva el realizarle el Jailbreak a un dispositivo. En un mundo cada día más digitalizado, donde nos comunicamos vía Internet y donde se sabe absolutamente todo de nosotros simplemente con buscar en la red, es importante, en la medida de lo posible, tratar de poner obstáculos para que esto no sea así. Todos los sistemas operativos móviles contienen medidas de seguridad para tratar de evitar que nos roben información privada. Para saber cómo funcionan esas medidas de seguridad, es necesario saber cómo funciona el sistema operativo en cuestión, que arquitectura posee y qué modelo de seguridad tiene implementado. El primer paso es saber qué es iOS y a qué dispositivos afecta. Se conoce como iOS, al sistema operativo móvil utilizado por Apple en sus dispositivos: iPhone, que es la marca de teléfonos de esta compañía, iPad que es como se denomina a las tablets que fabrica esta compañía y iPod que es como se conoce a la línea de reproductores de música de esta empresa. Se denomina Jailbreak al proceso de suprimir las medidas de seguridad impuestas por Apple en dispositivos que utilicen el sistema operativo iOS mediante kernels modificados, es decir, cambios en el núcleo central del sistema operativo. El primer método de Jailbreak fue lanzado por primera vez en Julio de 2007, y ofrecía la posibilidad de poder elegir cualquier archivo de música como tono de llamada o mensajes. Desde entonces Apple ofrece dinero a aquellos usuarios que consigan poder vulnerar la seguridad de sus dispositivos, con cifras que alcanzan el millón de dólares. Para que el lector se haga una idea, el Jailbreak permite al usuario poder descargar aplicaciones que no han pasado los controles de calidad de Apple, además de poder descargar de manera gratuita la mayoría de aplicaciones de pago de la tienda de aplicaciones de Apple, denominada Appstore. Además, también nos permite customizar nuestro dispositivo de una manera radical mediante lo que se conoce como tweak, es decir, una modificación del sistema operativo que nos permite realizar modificaciones y añadir funcionalidades al mismo. A priori todo son ventajas, pero no es así. El proceso de realizar el Jailbreak a un dispositivo conlleva la eliminación de ciertas medidas de seguridad. El objetivo fundamental de este proyecto es evaluar hasta qué punto merece la pena hacer el Jailbreak a un dispositivo en concreto poniendo sobre la balanza tanto las ventajas como desventajas. Para emitir unas conclusiones, vamos a explicar detenidamente todos y cada uno de los tipos de Jailbreak, los beneficios que nos aporta esta herramienta y los riesgos que conlleva. Además, vamos a explicar paso a paso como realizar el Jailbreak a un dispositivo en concreto y vamos a demostrar cómo afecta a nivel de seguridad.. Página 10 de 68.

(11) 1.1 Motivación La principal motivación al escoger este proyecto es poder evaluar el impacto de realizar el Jailbreak a un dispositivo de Apple. Es un proceso que un usuario con unos conocimientos básicos puede realizar si busca por Internet, mi motivación es tratar de que todos esos usuarios con conocimientos nulos o básicos sean conscientes de hasta qué punto exponen su seguridad al utilizar esta herramienta.. 1.2 Objetivos Los objetivos que se quieren alcanzar con este trabajo fin de grado se han planificado teniendo en cuenta: •. •. Limitaciones de tiempo. El Trabajo Fin de Grado es una asignatura de 15 créditos ECTS, lo que supone que la aplicación y la documentación de la misma, debe estar presupuestada en unas 250 horas de trabajo. Esto implica una duración de un cuatrimestre con una dedicación parcial de 15h/semana.  Las capacidades del alumno. Es un entorno parcialmente desconocido por lo que la realización de este proyecto conllevará la adquisición de unos conocimientos sólidos.. El desarrollo de este trabajo fin de grado tiene la finalidad de aportar al alumno nuevos conocimientos y situaciones parecidas a las que se va a encontrar en el mundo laboral. Es decir, el objetivo fundamental de un trabajo de estas características es la de formar el alumno de cara a la vida laboral.. Página 11 de 68.

(12) 2. ¿Qué es iOS? iOS (iphone Operating System) es un sistema operativo propietario de la empresa Apple Inc, fundada por Steve Jobs, Stephen Wozniak y Ronald Wayne con sede en Cupertino, California. Este sistema operativo se utiliza en los siguientes dispositivos propios de la compañía: iPhone(móvil), iPad (Tablet) y iPod (reproductor mp3). iOS utiliza una interfaz multitáctil donde se utilizan simples gestos para interactuar con el dispositivo como por ejemplo arrastrar el dedo a través de la pantalla para cambiar de página o utilizar el gesto de “pellizco” para realizar zoom en algo en concreto. Los principales puntos fuertes del sistema operativo de la empresa de Cupertino son los siguientes: -. Actualizaciones inmediatas: ya sea porque se libera una nueva versión de iOS con numerosas mejoras, o porque se descubre un error que afecta a determinados dispositivos, o una vulnerabilidad en un protocolo de comunicación que usan los dispositivos para conectase a Internet, o un nuevo tipo de ataque que se beneficia de un agujero en la seguridad. Independientemente del tipo de actualización, Apple lo arreglará en la mayor brevedad posible en forma de actualización. Y esa actualización estará disponible para todos los usuarios desde el minuto en que esté disponible su descarga.. -. Un hardware y un solo sistema operativo: Apple diseña, desarrolla y optimiza su sistema operativo para un dispositivo en concreto. Aunque el iPad, el iPhone o el iPod puedan parecer dispositivos diferentes, en realidad utilizan la misma arquitectura, de tal manera que todo está optimizado para que funcione en un solo entorno.. -. Mayor filtro y exclusividad dentro del mercado de aplicaciones: todas las aplicaciones para iOS atraviesan un proceso de revisión por parte del equipo de Apple. De esta manera se permite un mercado de aplicaciones muy cuidado, con un alto índice de calidad de aplicaciones.. -. Sincronización entre los diversos dispositivos Apple: desde su creación, ha sido una de las banderas de la marca. Servicios como iTunes o iCloud sirven para sincronizar de forma cómoda y sencilla todos y cada uno de los dispositivos de Apple.. -. Interfaz intuitiva: los dispositivos iOS focalizan todos sus elementos en la mejora de la experiencia de usuario, con opciones muy sencillas de configuración, pocos botones y menú de navegación que si se caracteriza por algo es por la intuición.. Página 12 de 68.

(13) Ahora bien, no es oro todo lo que reluce y este sistema operativo también posee puntos flojos. Las principales desventajas con respecto a sus competidores son las siguientes: -. Poca personalización: si comparamos iOS con Android nos encontramos que en iOS simplemente podemos modificar el fondo de pantalla y poco más. Mientras que Android podemos cambiar completamente la Interfaz de manera muy sencilla.. -. iOS es un sistema operativo cerrado: el sistema operativo de Apple es cerrado, es decir, no podemos utilizar aplicaciones de terceros que no hayan sido aprobadas por Apple y que se encuentren en la Apple Store. Android en este caso es un sistema operativo de código abierto, por lo que podemos instalar aplicaciones de cualquier fuente.. -. Poca variedad y precios elevados: si nos fijamos en el hardware, la compañía de Cupertino posee muy pocos modelos, sin embargo, en Android podemos escoger entre un sinfín de modelos. Todos los modelos que posee Apple son de gama alta por lo que no hay mucha variedad donde escoger si queremos un dispositivo económico.. 2.1 Orígenes de iOS Vamos a comentar brevemente el origen de iOS y las características principales de cada una de las versiones. -. iOS 1 (Enero de 2007): fue presentado con el primer IPhone. Todo lo que incluía esta primera versión parecía mágico: gestos multi-touch (multipantalla), todo extremadamente visual, búsqueda en Internet con navegador propio (Safari) y una aplicación para Youtube. Un año más tarde, mediante una actualización, se podía personalizar el sistema moviendo las aplicaciones en pantallas diferentes.. Figura 1: iPhone 2G, primer móvil de la compañía Apple. Página 13 de 68.

(14) -. iOS 2 (Julio de 2008): se presentó por primera vez la tienda de aplicaciones de Apple, denominada App Store. Además, se añadió soporte para redes 3G y GPS. También incluía soporte para Microsoft Exchange.. Figura 2: Appstore, la tienda de aplicaciones para iOS. -. iOS 3 (Junio de 2009): las novedades más relevantes de esta versión fueron las siguientes: posibilidad de control por voz, mensajes multimedia, búsqueda con Spotlight, que es un buscador incorporado en la pantalla principal para buscar cualquier cosa, ya sea una aplicación o un contacto de nuestra agenda y las funciones archiconocidas de copiar, cortar y pegar.. Figura 3: Control por voz y mensajes multimedia. -. iOS 4 (Junio de 2010): en esta versión se incluyó, por primera vez, la posibilidad de cambiar el fondo de pantalla. Además de la multitarea, carpetas para organizar las aplicaciones, un lector de archivos denominado iBooks y una aplicación para realizar videollamadas, que recibió el nombre de FaceTime.. Página 14 de 68.

(15) Figura 4: Implementación de la multitarea. -. iOS 5 (Octubre de 2011): si algo caracterizó a esta versión fue Siri, un asistente virtual que marcaría tendencia los años siguientes. Además, se incluyó por primera vez un centro de notificaciones y una aplicación de mensajería propia denominada iMessage. Se implementó por primera un sistema de actualizaciones vía OTA.. Figura 5: Siri, el asistente virtual de Apple. -. iOS 6 (Septiembre de 2012): se lanzó una aplicación de mapas creada por Apple, para competir contra Google Maps. Además, se añadió soporte LTE, integración con Facebook y Passbook, una aplicación para tener nuestras tarjetas de crédito, tickets o billetes de vuelo organizado.. Figura 6: Passbook, app para gestionar métodos de pago. Página 15 de 68.

(16) -. iOS 7 (Septiembre de 2013): por primera vez se introdujo un centro de control, desde donde podemos activar el wifi, el bluetooth o la linterna entre otras cosas. Además, se produjo el cambio más radical en cuanto a interfaz. Se abandonó el skeumorfismo, a favor de un colorido sistema basado en las transparencias y los degradados. También se mejoró la multitarea, tanto la implementación como en la interfaz.. Figura 7: Centro de control, multitarea e interfaz mejorada. -. iOS 8 (Septiembre de 2014): en esta versión, las aplicaciones podrían tener sus propios widgets en el centro de notificaciones. Además, Apple añadió su propio sistema de pago mediante móvil denominado Apple Pay. También hay que destacar la aplicación Salud, que permite tener controlado todo lo relacionado con nuestro bien estar, incluyendo soporte para aplicaciones de terceros. Aparece por primera vez QuickType, que es ni más ni menos que un sistema predictivo de escritura. Destacar también la introducción de teclados de terceros.. Figura 8: QuickType, sistema predictivo de escritura. Página 16 de 68.

(17) -. iOS 9 (Septiembre de 2015): se introdujo un modo de ahorro de batería que limita las conexiones y características del sistema para no consumir tanta energía. Además, se presentó el 3D Touch, que es una forma de interactuar con el dispositivo dependiendo de la presión ejercida en la pantalla (sólo disponible para los nuevos dispositivos). La aplicación mapas se ve mejorada gracias a la inclusión de direcciones y tráfico. También se presentó Split-View, que divide la pantalla de nuestro dispositivo en dos para poder trabajar con dos aplicaciones a la vez.. Figura 9: Split-View, función para trabajar con dos aplicaciones simultáneamente. -. iOS 10 (Septiembre de 2016): esta versión se caracterizó por abrir el sistema a los. desarrolladores para que aprovechasen todas las posibilidades. De esta manera, los desarrolladores tienen acceso a Siri, al 3D Touch y a aplicaciones directas del propio dispositivo como iMessage o Teléfono. Esto quiere decir que, por ejemplo, podemos enviar mensajes de Whatsapp con Siri o llamar por Skype mediante la app Teléfono. El centro de notificaciones ahora es más intuitivo y la pantalla de bloqueo más útil.. Figura 10: Pantalla de bloqueo mejorada en iOS 10. Página 17 de 68.

(18) 2.2 Arquitectura de iOS La arquitectura en iOS está basada en capas, donde las capas más altas contienen los servicios más importantes para el desarrollo de aplicaciones, y las capas más bajas controlan los servicios básicos. Las capas de nivel superior hacen de intermediarias entre las aplicaciones y el hardware. Hay que aclarar que las aplicaciones y el hardware no se comunican directamente, es decir, se comunican a través de lo que se conoce como interfaz del sistema. iOS cuenta con un total de cuatro capas que son las siguientes: la capa del núcleo del sistema operativo (Core OS), la capa de los servicios multimedia (Media), la capa de los servicios principales del sistema (Core Services) y la capa superior (Cocoa Touch).. Figura 11: Capas en las que se divide la Arquitectura de iOS. Veamos ahora en detalle cada una de estas cuatro capas:. - Cocoa Touch: es la capa superior y contiene un conjunto de Frameworks enfocados al desarrollo de aplicaciones. Esta capa define la infraestructura de la aplicación básica y el soporte de tecnologías como la multitarea, pantalla multitáctil, notificaciones y más servicios. Esta capa está formada por dos frameworks fundamentales: • •. UIKit: contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario. Foundation Framework: define las clases básicas, acceso y manejo de objetos, servicios del Sistema operativo.. Además, posee todos los recursos esenciales para ejecutar aplicaciones iOS. Entre estos recursos, se distinguen los siguientes: •. Multitarea: esta función permite que el sistema pueda ejecutar varias aplicaciones a la vez, es decir, nosotros podemos abrir una aplicación y pasar a otra sin que la primera se cierre. Las aplicaciones que están. Página 18 de 68.

(19) corriendo, pero no vemos, se dice que están en segundo plano o background. •. Protección de datos: esto permite a las aplicaciones operar con datos de usuario sensibles. Si un archivo se define como protegido, es almacenado por el sistema de manera encriptada. De esta manera, cuando bloqueamos el dispositivo, el contenido de ese archivo es inaccesible tanto para el usuario como para cualquiera. Y cuando desbloqueamos el dispositivo, el sistema genera una clave de desencriptación para permitir que la aplicación acceda al archivo en cuestión.. •. Notificaciones push: este tipo de notificaciones permite a los desarrolladores o dueños de las aplicaciones de informar a los usuarios de información nueva sin necesidad de que el usuario tenga que abrir dicha aplicación.. •. Reconocimiento de gestos: esta característica permite a los desarrolladores incluir objetos para detectar gestos simples como un deslizamiento o una pulsación en pantalla. UKIt contiene una clase con todos estos gestos, denominada UIGestureRecognizer.. •. Controladores del sistema de vistas: UKIt posee un conjunto de controladores de vista (view controllers) para que la interfaz de la aplicación sea lo más estándar posible, mejorando la comodidad y experiencia de usuario.. •. Pantalla externa: mediante el framework UIKit y el conector correspondiente, se puede conectar el dispositivo a una pantalla externa.. - Media: esta capa contiene tecnologías que dan acceso a ficheros multimedia (gráficos, video y audio). Además, contiene una serie de macros que pueden utilizarse para el desarrollo de aplicaciones. Entre las tecnologías de esta capa, se distinguen las siguientes: •. Gráficos: la calidad de los gráficos es importante de cara a desarrollar una aplicación en iOS. Para desarrollar estas aplicaciones, se utiliza el Framework UIKit con vistas lo más estándar posible. Sin embargo, hay aplicaciones que necesitan opciones gráficas más detalladas. Para ello, se pueden utilizar las siguientes tecnologías para mejorar el aspecto gráfico: OpenGL, Quartz, CoreAnimation o la biblioteca Assets.. •. Video: iOS contiene numerosas tecnologías para capturar video y reproducirlo. Estas tecnologías se encuentran en la clase UIImagePickerController ubicado en el Framework UIKIT, el framework AV y el Core Media.. Página 19 de 68.

(20) •. Audio: el sistema ofrece varias formas de reproducir y grabar contenidos de audio. Algunas de estas tecnologías son OpenAI, Framework AV, Media Player y el Core de Audio.. •. Airplay: esta tecnología permite el envío y visualización en tiempo real de audio y video entre los dispositivos compatibles de Apple mediante Wi-Fi.. - Core Services: esta capa contiene los servicios fundamentales del sistema que utilizan todas las aplicaciones como pueden ser: base de datos SQLite, acceso a la red o soporte para XML. Algunas de las tecnologías que se encuentran en esta capa son:. -. •. Objetos por bloque: conjunto de características a nivel de lenguaje de alto nivel (Objective-C) que permiten crear líneas de código que pueden ser pasadas como valores a través de funciones o procedimientos.. •. Almacenamiento iCloud: se conoce como iCloud a un sistema de almacenamiento en la nube que permite a las aplicaciones almacenar datos y que puede accederse a ellos desde diversos dispositivos.. •. Conteo de referencias automáticas: es una función del compilador que permite la simplifación de la gestión de la vida útil de los objetos en Objective C.. •. Compra de aplicaciones: mediante la utilización del framework StoreKit, las aplicaciones pueden vender contenidos o servicios desde la propia aplicación.. •. Biblioteca SQLite: es una biblioteca implementada en C que posee un motor de base de datos SQL. Sin embargo, al contrario que MySQL, SQLite opera directamente desde el disco sin necesidad de crear peticiones al servidor.. •. Soporte para XML: la clase NSXMLParser se utiliza para recuperar elementos en documentos de extensión XML. Además, permite escribir datos XML y transformarlo a HTML.. Core OS: es la capa de nivel más bajo y se conoce como el núcleo del sistema operativo. Además, incluye los siguientes servicios: • • •. Elementos de seguridad Gestión de memoria Gestión de procesos. Página 20 de 68.

(21) • • • •. Drivers Servicios del sistema Sistema de archivos Control de acceso a accesorios. Hay que recalcar que los drivers hacen de intermediario entre los Frameworks del sistema y el hardware. También hay que remarcar que el acceso al kernel está restringido a un número muy limitado de frameworks por seguridad.. 2.3 Seguridad en iOS Si algo caracteriza a los dispositivos iOS es que se han diseñado combinando hardware y software con el propósito de proporcionar al usuario una gran seguridad y una experiencia de usuario satisfactoria. El sistema operativo iOS se encarga de proteger al dispositivo y los datos que contiene. También protege al ecosistema totalmente, incluyendo las acciones que el usuario pueda realizar de forma local o en servicios de redes. Los dispositivos iOS y su sistema operativo se encargan de proporcionar métodos de seguridad avanzados, siendo estos fáciles de utilizar. La mayoría de estos métodos están activados por defecto, de esta manera los departamentos de TI no tienen que realizar apenas configuración alguna. También destacar que los métodos de seguridad clave como por ejemplo la encriptación de los dispositivos no pueden configurarse, evitando que los usuarios puedan desactivarlo inintencionadamente. Si hay un método que facilita la seguridad y mejora la experiencia del usuario, es el Touch ID. La seguridad de iOS está diseñada de tal modo que el hardware y software están protegidos en todos los componentes centrales de los dispositivos. Están incluidos el proceso de arranque, el coprocesador Secure Enclave y las actualizaciones de software entre otros. Se puede decir que esta arquitectura es de fundamental importancia para la seguridad del sistema y, además, no afecta a la experiencia de usuario. Figura 12: Diagrama de la El utilizar un dispositivo con iOS garantiza que todos los componentes del sistema son de completa confianza debido a la completa integración del arquitectura de seguridad software y hardware. Todo lo que sucede en el sistema se analiza y aprueba de iOS con el objetivo de garantizar que software y hardware funcionan perfectamente juntos y que utilizan los recursos de manera correcta. Entre estos pasos se pueden encontrar las actualizaciones de software en aplicaciones de terceros o el arranque inicial del sistema.. Ahora vamos a comentar los elementos que llevan a este sistema operativo a ser seguro.. Página 21 de 68.

(22) -. Cadena de arranque seguro: se denomina Secure Boot Chain o cadena de arranque seguro al proceso de inicialización del firmware, incluyendo la carga de los archivos que se necesitan para arrancar el sistema. Todos los pasos del proceso hasta que arranca el sistema están cifrados, de tal forma que se pueda garantizar la seguridad del proceso en sí. Cuando encendemos por primera vez un dispositivo con iOS, el procesador de aplicaciones automáticamente ejecuta código ROM, es decir, código ubicado en memoria de solo lectura. El código de la ROM de arranque posee la llave pública CA, que es la entidad encargada de los certificados digitales. Esta llave se utiliza para asegurar que el LLB o cargador de arranque de bajo nivel, contiene la firma digital de Apple antes de permitir su carga. Este se considera como el primer paso de la cadena de confianza, donde cada paso garantiza que el posterior contiene la firma de Apple. Cuando el cargador de arranque de bajo nivel (LLB) finaliza sus tareas, se encarga de verificar y ejecutar el cargador de arranque del paso siguiente (iBoot). A su vez, iBoot verifica y ejecuta el kernel. El Secure Boot Chain garantiza que no se han manipulado los niveles de software inferiores. Además, permite que iOS solo se ejecute en dispositivos validados por Apple. Los dispositivos que poseen un procesador A7 en adelante, el coprocesador Secure Enclave también utiliza un proceso de arranque seguro para garantizar que el software contiene la firma de Apple. Si uno de estos pasos falla en el proceso de arranque, es decir, no se consigue verificar que el software está firmado, se detiene el arranque seguro y el dispositivo muestra por pantalla el siguiente mensaje “Conectarse a iTunes”. A esto se le conoce como modo de recuperación. En otras palabras, si la ROM de arranque no consigue verificar el LLB, entra en modo DFU, es decir, en modo de actualización de firmware. Si esto sucede, hay que conectar el dispositivo a un ordenador con iTunes y se tendría que restaurar completamente a los ajustes de fábrica.. Figura 13: Cadena de arranque del sistema operativo iOS. -. Autorización del software del sistema: Apple lanza constantemente actualizaciones de software con el objetivo de mejorar la seguridad y de solucionar problemas que van surgiendo, además de ofrecer nuevas características. Estas actualizaciones se lanzan de forma simultánea para todos los dispositivos que sean compatibles. En el apartado anterior hemos visto que la cadena de arranque seguro o Secure Boot Chain nos asegura que el dispositivo solo pueda ejecutar código que haya sido firmado anteriormente. Para evitar problemas de seguridad, iOS utiliza el. Página 22 de 68.

(23) proceso denominado como autorización del software del sistema. Este proceso evita la instalación de versiones anteriores de iOS, es decir, evita el downgrade. Si hacer downgrade fuera posible, un atacante podría volver a una versión anterior del sistema para aprovecharse una vulnerabilidad del sistema corregida en versiones posteriores. Durante el proceso de instalación de actualizaciones de iOS, el propio dispositivo se conecta al servidor de autorización de instalaciones de Apple. Este servidor envía una lista de medidas de cifrado para cada paquete de instalación, un identificador único de dispositivo o ECID, y el NONCE o valor antirreprodución aleatorio. El ECID y el NONCE aseguran que una versión del sistema iOS antigua se pueda copiar de un dispositivo a otro. Además, el NONCE impide que un posible atacante guarde la respuesta del servidor y la pueda utilizar para manipular un dispositivo modificando el software del sistema.. -. Secure Enclave: es un coprocesador que incorpora el procesador A7 y posteriores. Este coprocesador utiliza memoria encriptada, además posee un generador de hardware de números aleatorios. Su principal función es proporcionar operaciones cifradas para la gestión de claves de protección de datos. El procesador y el Secure Enclave se comunican mediante un buzón basado en interrupciones y memorias intermediarias de datos de la memoria compartida. Cuando se fabrica este coprocesador, se le proporciona un UID o identificador único que la propia Apple no conoce y al que el sistema no tiene acceso. Cuando se inicia el dispositivo, se vincula una clave efímera al UID que sirve para encriptar la parte que ocupa el Secure Enclave en la memoria del dispositivo. Durante el proceso de fabricación, se proporciona a cada Secure Enclave un identificador único (UID) propio que Apple no conoce y al que otras partes del sistema no tienen acceso. Cuando el dispositivo se enciende, se crea una clave efímera —vinculada a su UID—, que se utiliza para encriptar la parte que ocupa el Secure Enclave en el espacio de la memoria del dispositivo. También destacar que ese coprocesador es el responsable de procesar los datos del sensor de huella dactilares Touch ID, y verificar que coincida con alguna de las huellas registradas.. -. Touch ID: se conoce como TouchID al sistema de detección de huellas digitales que poseen los dispositivos con iOS más recientes. Este sistema permite un acceso sencillo y seguro al dispositivo. Esta tecnología almacena la huella digital del usuario para poder acceder al dispositivo, para realizar compras de aplicaciones o para el Apple Pay.. Página 23 de 68.

(24) -. Encriptación y protección de datos: el sistema operativo iOS posee funciones de encriptación y protección de datos con el fin de proteger la información del usuario. Los dispositivos con iOS instalado poseen un motor de cifrado AES de 256 bits integrado entre la memoria principal y el almacenamiento flash. De esta manera se consigue una encriptación eficiente. El GID o identificador de grupo y el UID o identificador único del dispositivo son claves AES de 256 bits vinculadas y compiladas en el Secure Enclave en el momento de la fabricación. También se utiliza una tecnología denominada Protección de datos, con el fin de aumentar la protección de datos que se encuentren almacenados en el dispositivo. Esta tecnología permite un alto nivel de encriptación en los datos del usuario. Las aplicaciones instaladas en la versión del sistema iOS 7 o posterior reciben automáticamente esta protección.. -. Seguridad de las aplicaciones: como hemos comentado en el apartado anterior, iOS posee funciones de encriptación y protección de datos para proteger los datos del usuario. iOS posee capas de protección para asegurar que las aplicaciones de terceros estén firmadas y aisladas para proteger los datos del usuario. De esta manera los usuarios pueden acceder a estas aplicaciones sin el riesgo de obtener malware o de sufrir ataques. Las aplicaciones predeterminadas del dispositivo como Safari, iMessage o Mail están firmadas por Apple. Las aplicaciones de terceros que se encuentran en la Appstore, también están válidadas y certificadas con el certificado emitido por Apple. Con este certificado, las aplicaciones de terceros no pueden cargar código sin firmar. Para subir aplicaciones a la Appstore es necesario registrarse en Apple y unirse al programa de desarrolladores de Apple. Una vez dentro del programa, cada desarrollador obtiene su certificado. De esta manera los desarrolladores pueden, mediante este certificado, firmar las aplicaciones y enviarlas a la Appstore. iOS se encarga de aislar las aplicaciones de terceros para impedir que accedan a ficheros almacenados por otras aplicaciones. De esta manera se evita que las aplicaciones adquieran información almacenada por otras apps.. -. Seguridad de la red en iOS: iOS utiliza protocolos de red estándar para las comunicaciones autenticadas, autorizadas y encriptadas. iOS no necesita firewall al reducir la superficie de ataque al limitar los puertos de escucha y al eliminar utilidades de red no necesarias como Shell, un servidor web o telnet.. Página 24 de 68.

(25) -. •. TLS: la seguridad de transporte de las aplicaciones brinda unos requisitos de conexión por omisión, es decir, obliga a las aplicaciones a cumplir buenas prácticas para una conexión segura. Si estos requisitos no se cumplen, la conexión de error dará error.. •. VPN: la configuración para utilizar una red privada virtual en iOS es mínima. Admite los siguientes métodos de autenticación y protocolos: IKEv2/IPSec, Cisco IPSec, L2TP/IPSec y PPTP.. •. Wi-Fi: iOS es compatible con los protocolos Wi-Fi estándar. También es compatible con WPA2 Enterprise, que utiliza encriptación de 128 bits con el fin de asegurar a los usuarios que sus datos estén protegidos durante las comunicaciones a través de una red Wi-Fi. Algunos dispositivos son compatibles con los siguientes métodos de autenticación inalámbrica 802.1X: EAP-TLS, EAP-TTLS, EAP-FAST, EAPSIM, PEAPv0, PEAPv1 y LEAP.. •. BlueTooth: iOS posee una conectividad Bluetooth con una funcionalidad realmente útil, y el acceso a datos no aumenta de manera innecesaria. Los dispositivos con iOS soportan conexiones Security Mode 4, Service Level 1 y Encryption Mode 3.. •. Seguridad de AirDrop: los dispositivos iOS utilizan BLE o Bluetooth de baja energía, además de la tecnología Wi-Fi F2P para enviar información a dispositivos que se encuentren cerca. Cuando el usuario utiliza Airdrop para mandar un archivo, el dispositivo envía una señal a través del BLE, y los dispositivos cercanos que tengan Airdrop activado captarán la señal, respondiendo con un hash de identidad que se basa en el número de teléfono y dirección de correo asociada al ID de Apple del usuario.. Seguridad de los servicios de Internet: Apple posee un ecosistema compuesto por servicios con el fin de ayudar a sus usuarios a sacar todavía más partido a sus dispositivos. Estos servicios, entre los que se encuentran Facetime, iMessage, Siri o iCloud, se han diseñado teniendo en cuenta una gestión de datos segura, la protección de información confidencial, y la protección frente al acceso malintencionado o no autorizado. Cada uno de estos servicios posee una arquitectura de seguridad propia, de tal manera que no compromete la facilidad de uso del sistema. •. ID de Apple: El ID de Apple está formado por un nombre y una contraseña de usuario que son necesarios para utilizar los servicios de Apple como la Appstore, Facetime o iCloud. Esta contraseña tiene que tener al menos ocho caracteres, debe combinar letras y números y no puede repetirse el mismo carácter más de tres veces seguidas. Página 25 de 68.

(26) Apple notifica a sus usuarios en caso de que se produzca algún cambio en sus cuentas. Además, se ofrece a los usuarios la autenticación de doble factor, que es un sistema de autenticación de capa adicional de seguridad y está diseñado para que solo el usuario pueda acceder a su cuenta, aunque otra persona conozca sus credenciales. En el 2013, Apple incorporó un nuevo método de seguridad denominado verificación en dos pasos. Este método consiste en comprobar la identidad del usuario mediante el envío de un código temporal a uno de los dispositivos de confianza del usuario antes de permitir alguna modificación en su cuenta. •. IMessage: es una aplicación de mensajería para dispositivos con iOS y ordenador Mac. Los mensajes que se mandan están protegidos mediante una encriptación punto a punto, de tal manera que únicamente el emisor y receptor puedan acceder a ellos.. •. FaceTime: es la aplicación de llamadas de audio y vídeo para iOS y MAC OS X. El contenido de las llamadas se protege con una encriptación punto a punto de tal manera que solo el emisor y receptor pueden acceder a él. Este servicio utiliza el establecimiento de conectividad de Internet o ICE con el objetivo de establecer una conexión P2P entre dos dispositivos. Los dispositivos verifican sus certificados de identidad mediante el SIP o protocolo de inicio de sesión, para posteriormente establecer un secreto compartido para cada sesión.. •. iCloud: este servicio se encarga de almacenar los contactos, fotos, documentos y más información del usuario con el fin de mantenerla actualizada en todos sus dispositivos. Las aplicaciones de terceros también pueden beneficiarse de este servicio para sincronizar documentos. ICloud encripta todos los archivos con AES-128 y una clave derivada del contenido de cada fragmento que utiliza SHA-256. Estos fragmentos encriptados, se almacenan en servicios de almacenamiento de terceros como Microsoft Azur y Amazon S3.. •. Copia de seguridad de iCloud: además de almacenar archivos del usuario, iCloud también se encarga de realizar copias de seguridad a diario a través de la red Wi-Fi. Con el fin de proteger el contenido, iCloud encripta todo antes de enviarlo por Internet, almacenándolo en un formato encriptado y para proteger su autenticación, utiliza identificadores seguros. Estas copias de seguridad solamente se realizan cuando el dispositivo está enchufado a la red, bloqueado y conectado a una red Wi-Fi.. •. Llaveo de iCloud: este servicio brinda a los usuarios la oportunidad de sincronizar de forma segura sus contraseñas entre ordenadores Mac y Página 26 de 68.

(27) dispositivos con iOS. La primera vez que se activa este servicio, se establece un círculo de confianza creando así una identidad de sincronización para el dispositivo. Esta identidad está formada de una clave pública y una privada. La clave pública se coloca en el círculo y éste se firma dos veces: primero, lo firma la clave privada y después una clave de curva elíptica asimétrica (con P256) que deriva de la contraseña de la cuenta de iCloud del usuario. •. Siri: es una aplicación que funciona como asistente personal. Los usuarios tienen la oportunidad de utilizar Siri para hacer llamadas telefónicas, consultar noticias o concretar reuniones hablando al dispositivo ya que Siri utiliza el reconocimiento de voz, además de convertir el texto a voz y un modelo cliente-servidor con la posibilidad de responder a una numerosa variedad de solicitudes. Cuando activamos Siri, el dispositivo crea identificadores aleatorios para utilizar con el reconocimiento de voz y los servidores de Siri. Este tipo de identificadores solamente se utilizan dentro de Siri con el objetivo de mejorar el servicio. Cuando se desactiva Siri, el dispositivo vuelve a generar un identificador aleatorio para utilizarlo cuando se vuelva a activar.. •. Handoff: este servicio brinda al usuario la oportunidad de transferir automáticamente aquello en lo que esté trabajando actualmente de un dispositivo a otro. Cuando un usuario inicia su sesión de iCloud en otro dispositivo, ambos dispositivos establecen un enlace mediante Bluetooth LE 4.0 fuera de banda por medio de APNs. La encriptación utilizada es prácticamente calcada a la que utiliza iMessage, de tal manera que una vez que los dispositivos están conectados, cada uno de ellos genera una clave simétrica AES de 256 bits y se almacena en el llavero del dispositivo. Esta clave sirve para encriptar los avisos de la conexión Bluetooth que comunican la actividad actual del dispositivo con otros dispositivos enlazados de iCloud utilizando AES-256.. 3. ¿Qué es el Jailbreak? Se denomina Jailbreak, al proceso de romper el Code-Signing, que esa una medida de seguridad que aplica Apple para que solo se puedan descargar, instalar y ejecutar aplicaciones firmadas por una entidad certificadora de confianza. Lo que se consigue con el Code-Signing es filtrar los contenidos que se suben o se publican en la App Store, dificultando así la propagación o difusión de malware y aplicaciones maliciosas. Esta medida de seguridad obliga a que todo el software deba ir firmado, de tal manera que cualquier intento de instalación o ejecución de una aplicación, página o código proveniente. Página 27 de 68.

(28) de memoria, no es permitida, a menos que vaya firmada digitalmente por un certificado que proceda de una entidad de confianza. Si no disponemos de esta medida de seguridad, los riesgos son bastantes porque parte de la seguridad del sistema desaparece. Al realizar el Jailbreak, no solo eliminamos el Code-Signing, mediante unas modificaciones a nivel de kernel, sino que además es posible tener un acceso completo al sistema de ficheros, y al sistema operativo. De esta manera, el Jailbreak no es ni más ni menos que una forma de escalada de privilegios. ¿Vulnera la seguridad de nuestro dispositivo realizar el Jailbreak? En una sola palabra: Si. Y no es solo que vulnere la seguridad, es que incide más de lo que cabría imaginar. La mayoría de usuarios domésticos creen que realizar este proceso es solo para liberal el terminal y poder instalar aplicaciones no firmadas por Apple, como extensiones o tweaks, o simplemente para descargar aplicaciones de pago de manera gratuita, utilizando repositorios no oficiales, en donde se encuentran aplicaciones crackeadas, es decir, aplicaciones a las que se les ha eliminado la protección o DRM.. 3.1 Tipos de Jailbreak Hay diferentes tipos de Jailbreak, por lo que vamos a explicar detenidamente cada uno de ellos: -. Untethered: cuando encendemos el dispositivo cargará primeramente el kernel de Apple, y posteriormente, mediante un exploit, el kernel será parcheado. De esta manera no necesitamos ningún PC para utilizar el Jailbreak cada vez que encendamos el dispositivo. Este Jailbreak es el más complicado de realizar, y es necesaria muchísima experiencia en ingeniería inversa.. -. Tethered: cada vez que reiniciamos el terminal, perderemos el kernel parcheado, por lo que es necesario tener acceso a un ordenador para volver a realizar todo el proceso. El dispositivo puede que no se pueda utilizar hasta que no realicemos el proceso del Jailbreak, quedando en un estado de reinicio infinito.. -. Semi – Tethered: existe una solución “semi-Tethered”. Lo que esta solución implica es que cuando el dispositivo se inicia, el kernel no estará parcheado, pero podemos seguir utilizándolo de manera “normal”, es decir, sin utilizar ninguna de las funciones que nos proporciona el Jailbreak. Si queremos utilizar funciones que requieran tener el código del kernel alterado, necesitaremos volver a cargar el Jailbreak mediante un ordenador y la herramienta correspondiente.. -. Semi – unTethered: En Julio del 2016 se presentó una solución denominada “semi – unTethered”. Funciona como el semi-Tethered cuando el dispositivo se inicia, es Página 28 de 68.

(29) decir, el kernel no estará parcheado. La diferencia radica en la no necesidad de recurrir a un computador para volver a cargar el Jailbreak. Pero es necesario volver a realizar en Jailbreak mediante la utilización de una serie de aplicaciones que se han instalado la primera vez que se ha realizado el proceso.. Si los ordenásemos por orden de mejor a peor método de Jailbreak, quedarían de la siguiente forma: 1) El método más completo y que se realiza una sola vez, es el Untethered. Con este método tendremos el Jailbreak para siempre, sin tener que volver a realizar el proceso cada vez que reiniciemos nuestro dispositivo. 2) Seguidamente tenemos el semi – Untethered, que cada vez que reiniciemos nuestro dispositivo, tendremos que cargar el Jailbreak de nuevo, pero sin la necesidad de recurrir a un PC. 3) Después tenemos la opción semi – Tethered. Siempre que reiniciemos nuestro dispositivo, tendremos que recurrir a un computador para volver a realizar el proceso de Jailbreak. 4) Por último, tenemos el método más problemático, el conocido como Tethered. Cada vez que reiniciemos nuestro dispositivo, es más que probable que no pasé de la pantalla de “inicio” es decir, se quedará en un estado de reinicio infinito. Por lo que es necesario tener un ordenador a mano para volver a parchear el kernel y poder utilizar nuestro dispositivo.. 3.2 ¿Qué permite hacer el Jailbreak a nivel de usuario? Al realizar el Jailbreak, se instala automáticamente una aplicación denominada Cydia. Esta aplicación se basa en el uso de repositorios, que no son ni más ni menos, que unos servidores que contienen aplicaciones y extensiones para el sistema operativo. En Cydia también nos encontramos muchísimas aplicaciones que no entraron en la App Store debido a las estrictas normas que Apple impone a los desarrolladores. La aplicación más importante que se instala a través de Cydia se llama VShare. En esta aplicación podemos encontrar la gran mayoría de aplicaciones de la App Store de pago, pero de manera gratuita. Es decir, el Jailbreak abre una puerta a la piratería. Mediante el Jailbreak también podemos customizar nuestro dispositivo de una manera radical. El sistema operativo de Apple es conocido por ser muy cerrado, y ofrece muy poquita opción a los usuarios que quieran cambiar el aspecto de su dispositivo. Aquí entra en juego el. Página 29 de 68.

(30) término tweak, que es una modificación del sistema operativo que nos permitirá realizar modificaciones y añadir funcionalidades al mismo. Los hay tanto gratuitos como de pago. Con la utilización de tweaks, podemos, por ejemplo, utilizar temas, cambiar la voz de Siri e incluso cambiar el aspecto de los iconos de las aplicaciones. También podemos añadir nuevas funciones al panel de control. ¿Cuál es la parte negativa de realizar el Jailbreak a nuestro dispositivo? -. Perdemos el acceso a la garantía de manera inmediata. Si nosotros acudimos a una Apple Store para solucionar un problema con el dispositivo, automáticamente nuestra garantía queda anulada. Recalcar que se puede restaurar el dispositivo y eliminar todo rastro del Jailbreak. El mayor problema radica en que nuestro dispositivo quede “brickeado”, es decir, que al realizar el proceso del Jailbreak algo vaya mal y nos quede un dispositivo inservible. En este caso, no podremos revertir el Jailbreak de ninguna manera y, por ende, la garantía no cubriría la reparación del terminal.. -. Imposibilidad de actualizar nuestro dispositivo. Si queremos actualizar nuestro dispositivo deberemos eliminar el Jailbreak para poder actualizarlo. Además, deberemos esperar a que la comunidad de desarrolladores lance una nueva versión de Jailbreak para esa actualización en cuestión. El problema es que desde que sale una actualización de iOS, hasta que los desarrolladores consiguen sacar una herramienta que vulnere el sistema, pueden pasar meses.. -. Duración de batería. El Jailbreak por sí solo no supone un aumento en el gasto de batería, pero si instalamos muchos Tweaks, drenarán nuestra batería.. -. Seguridad: el simple hecho de realizar el Jailbreak, no es ni más ni menos, que aprovechar una brecha en el sistema operativo y adentrarse en él removiendo ciertas protecciones de seguridad. Esto hace que nuestro dispositivo sea aún más vulnerable a posibles ataques de malware.. 3.3 Herramientas para realizar el Jailbreak Lo primero que hay que tener en cuenta es que, dependiendo de la versión de nuestro dispositivo, se puede utilizar una herramienta u otra. A continuación, vamos recoger todas herramientas que hay para cada una de las versiones. Las herramientas que tenemos a nuestra disposición son las siguientes: -. JailbreakMe: se basa en la explotación mediante la visita con el dispositivo a una página web (http://www.JailbreakMe.com). Esta página web ataca al sistema y. Página 30 de 68.

(31) realiza un Jailbreak de tipo Untethered. Se requiere conocer previamente la contraseña del terminal, es decir, que esté desbloqueado. Existen tres versiones de esta herramienta: • • •. JailbreakMe: disponible para las versiones de iOS 1.1.1 a iOS 2.0 JailbreakMe 2.0 (Star): disponible para las versiones de iOS 3.1.2 a iOS 4.01. JailbreakMe 3.0 (Saffron): disponible para las versiones de iOS 4.3 a 4.33 y IPhone CDMA en versiones 4.2.6 y 4.2.8.. -. Limera1n: herramienta enfocada a realizar el Jailbreak de tipo Tethered a los dispositivos iPhone 3GS, iPhone 4 y iPad 1. Estos dispositivos poseen el mismo chipset, el A4. Además, no requiere passcode.. -. Purplera1n: esta herramienta sirve para realizar el Jailbreak al iPhone 3GS y concretamente, para la versión iOS 3.0. Destacar que no requiere el código de desbloqueo.. -. Blackra1n: esta herramienta es la heredera de Purplera1n y soporta el IPhone 3G/3GS. Las versiones que comprende son iOS 3.1, 3.1.1 y 3.1.2. Tampoco es necesario conocer el passcode o código de desbloqueo.. -. Spirit: abarca todos los dispositivos con las versiones de iOS 3.1.2 a iOS 3.2. El Jailbreak que realiza esta herramienta es de tipo Tethered y es necesario conocer el passcode y utilizar iTunes en un ordenador.. -. GreenPois0n: esta herramienta se aprovecha del exploit conocido como SHATier para saltarse la seguridad. Soporta los dispositivos iPhone 3GS con la versión iOS 4.1, el iPad 1 con la versión iOS 3.2.2 y los iPhone con las versiones de iOS 4.1 a iOS 4.2.1. El Jailbreak que realiza es de tipo Tethered, además de que no es necesario conocer el código de desbloqueo.. -. Absinthe: esta herramienta permite realizarle el Jailbreak a todos aquellos dispositivos con chip A5. Soporta las versiones de iOS 5 a iOS 5.1.1. Requiere saber el passcode de antemano.. -. Evasi0n: esta herramienta sirve para realizar el Jailbreak a dispositivos con la versión iOS 6 a iOS 6.1.2. Es necesario tener el passcode.. -. Redsn0w: esta herramienta permite realizarle el Jailbreak Tethered y Untethered a todos los dispositivos con las versiones de iOS 3 a iOS 5.1.1. También sirve para iOS 6 pero permite solamente el tipo Tethered. Además, si el dispositivo posee el chip A4, no es necesario conocer el código de desbloqueo. Existen más de 50 versiones de esta popular herramienta.. Página 31 de 68.

(32) -. Sn0wbreeze: esta herramienta permite realizar el Jailbreak mediante la creación de un IPW personalizado y una vez creado, se restaura con iTunes. Es necesario tener un pc con Windows. Soporta las versiones iOS 3.1.3 a 5.1.1.. -. Seas0nPass: permite realizar el Jailbreak a todos aquellos dispositivos con las versiones iOS 4.0 a iOS 5.1.1. Destacar que requiere el passcode para poder efectuarlo.. -. PwnageTool: es una herramienta de Mac OS X que permite realizar el Jailbreak mediante la creación de un IPSW personalizado, y una vez creado, se restaura en el dispositivo mediante iTunes. Sirve para las versiones de iOS 4.0 a iOS 5.0.1.. -. Evasi0n7: esta herramienta permite realizar el Jailbreak mediante una aplicación de escritorio, tanto para Windows como para Mac OS X. Soporta las versiones de iOS 7.0 a iOS 7.0.6. Destacar que es necesario conocer el passcode y tener el dispositivo desbloqueado en el momento del proceso.. -. Pangu: permite realizar el Jailbreak mediante un programa de computador, por lo que es necesario tener Windows o Mac OS X. Soporta las versiones 7.1 a 7.1.2. Es necesario tener el dispositivo desbloqueado para realizar el proceso.. -. Pangu8: esta herramienta sirve para realizar el Jailbreak de tipo Untethered a los dispositivos con las versiones de iOS 8.0.1 a iOS 8.1. Necesitamos un ordenador con Windows o Mac OS X porque es necesario descargarse un programa. Además, es necesario tener desbloqueado el terminal.. -. Taig: herramienta para realizar el Jailbreak a todos los dispositivos con las versiones de iOS 8.1.3 a iOS 8.4. El tipo de Jailbreak es Untethered y es necesario tener el passcode. Además, es necesario tener acceso a un ordenador, ya sea con Windows o Mac OS X porque el proceso se realiza por medio de un programa.. -. PP Jailbreak: esta herramienta permite realizar el Jailbreak de tipo Untethered a los dispositivos que tengan las versiones de iOS 8.1.3 a iOS 8.4. Es necesario desbloquear el terminal y también hay que poseer un pc con Windows o Mac OS X porque el proceso se realiza mediante un programa.. -. Pangu9: sirve para realizar el Jailbreak de tipo Untethered a dispositivos de con las versiones de iOS 9 a iOS 9.0.2. Posteriormente se incluyeron las versiones de iOS 9.2 a iOS 9.3.3 pero solo para dispositivos de 64 bits, es decir, aquellos que poseen el chip A7 en adelante. Destacar que necesitamos el código de desbloqueo y un ordenador porque es necesario realizar el proceso mediante un software que podemos descargarnos gratuitamente.. -. Home Depot: esta herramienta permite realizar el Jailbreak de tipo Semi-Tethered a todos aquellos dispositivos con las versiones de iOS 9.1 a iOS 9.3.4. Es necesario realizar este proceso con el programa denominado Cydia Impactor. Pero este Jailbreak tiene un hándicap, y es que hay que reinstalarlo cada semana debido a Página 32 de 68.

(33) que Cydia Impactor es un software de pago, teniendo una versión gratuita, pero con la limitación de que el Jailbreak sólo dura una semana teniendo que realizar el proceso cada semana. -. Phoenix: esta herramienta permite realizar el Jailbreak de tipo Semi-Untethered a todos los dispositivos de 32 bits, es decir, todos los que tienen chips A5 y A6. La versión que soporta es iOS 9.3.5. Es necesario utilizar un ordenador con Windows o Mac OS X. También necesitaremos el passcode del dispositivo en cuestión.. -. Yalu: esta herramienta permite realizar el Jailbreak a las versiones de iOS 10.0.1 a iOS 10.2. El tipo del Jailbreak es Semi-Untethered. El proceso puede realizarse desde un ordenador con Windows o Mac OS X y mediante Cydia Impactor o directamente desde el navegador del dispositivo. Si nos decantamos por la segunda opción, simplemente accedemos a la siguiente página web https://cloud.baytapps.net/jbyalu/ le damos a aceptar, esperamos a que reinicie el dispositivo y aceptamos el certificado.. 4. Tipos de Malware en iOS La lista que voy a enumerar a continuación son casos de malware que afectan a dispositivos con Jailbreak realizado. El objetivo de esta lista es tratar de que el lector entienda a los riesgos que se expone al realizar el Jailbreak a su dispositivo. Vamos a dividir esta lista en varias categorías: 1) Herramientas de malware enfocadas al público en general 2) Herramientas de malware realizadas por gobiernos o agencias enfocadas a un individuo específico 3) Herramientas de malware realizadas como parte de investigación 4) Herramientas de malware realizadas con el fin de ser vendidas al público para utilizarlas en individuos específicos. 1) Herramientas de malware enfocadas al público en general -. IKee and Duh (Noviembre 2009) El virus “Ikee” es un gusano que se transmite entre dispositivos con Jailbreak que tienen OpenSHH instalado y que no han cambiado la contraseña root por defecto. Lo que hace este virus es cambiarte el fondo de bloqueo por una foto del cantante británico Rick Astley. Página 33 de 68.

(34) Dos semanas más tarde, un virus similar al “Ikee” aparece. Este virus, denominado como “Duh”, es bastante más peligroso que el anterior ya que convierte al dispositivo con iOS en parte de un Botnet, que no es ni más ni menos que un conjunto de robots informáticos o bots que se ejecutan de manera autónoma y automática. Además, el artífice de la botnet puede controlar todos los dispositivos infectados de forma remota. -. “Find and Call” (Julio 2012) “Find and Call” es una aplicación de la App Store que automáticamente mandaba la lista de contactos del usuario al servidor de la compañía y mandaba en forma de spam a esos contactos un link a la aplicación.. -. Packages by Nobitazz (Agosto 2012 y Septiembre 2013) Nobitazz es un desarrollador de tweaks que incluyó adware en sus tweaks. Este adware iba oculto en paquetes gratuitos y algunos de pago que vendía en Cydia. Lo que hacía este adware es correr publicidad en segundo plano, de tal manera que no aparecía la publicidad en pantalla pasando totalmente desapercibida mientras el desarrollador se lucraba a costa de los usuarios.. -. AdThief/Spad (Marzo y Agosto 2014) AdThief o Spad, es un malware conocido por robar los beneficios de la publicidad de los desarrolladores de tweaks. Es decir, lo que hace este malware es desviar los fondos del desarrollador a un tercero aprovechándose del trabajo del desarrollador.. -. Unflod (Abril 2014) Unflod es un software malicioso que trata de averiguar el usuario y contraseña de Apple del usuario en cuestión utilizando MobileSubstrate para “escuchar” toda la información que pasa por el dispositivo.. -. AppBuyer (Septiembre 2014) Es un malware que se conecta al servidor C&C, descarga y ejecuta archivos ejecutables maliciosos, roba la contraseña y el ID del usuario y lo sube al servidor del atacante. Además de simular los protocolos de Apple para comprar aplicaciones de la App Store con la identidad del usuario afectado.. -. Xsser Mrat (Diciembre 2014) Es un tipo de malware que se instala mediante un repositorio de Cydia, que recordamos que es la tienda de aplicaciones más conocida para los usuarios que han realizado el Jailbreak. Una vez instalado, no puede eliminarse y obtiene datos del usuario infectado mediante conexión remota. Página 34 de 68.

Figure

Figura 1: iPhone 2G, primer móvil de la compañía Apple
Figura 2: Appstore, la tienda de aplicaciones para iOS
Figura 6: Passbook, app para gestionar métodos de pago
Figura 7: Centro de control, multitarea e interfaz mejorada
+7

Referencias

Documento similar