Introducción:
En un proceso de pentesting, cuando se está haciendo la auditoría interna, tal vez sea necesario sacar información de un terminal iPhone (o iPad) al que se tiene acceso solo durante unos minutos, por ejemplo porque se ha ido su dueño un momento al baño, y el atacante se ha quedado solo en una sala de reuniones esperándolo, o por cualquier otra circunstancia. En esos momentos no se puede hacer un volcado del disco del terminal, o realizar un Jailbreak, o un hackup, y solo se tienen unos instantes de tiempo para manipular el terminal y dejarlo como estaba antes de que venga el dueño del mismo.
Por supuesto, aunque no se pueda acceder a todos los datos que se esconden el terminal, tal vez sea posible llevarse algo de información útil sin tener que robar el terminal, poniéndose así el atacante en una situación comprometida. Si además se han seguido los pasos adecuados y se ha estudiado al objetivo previamente, averiguando la versión exacta de iOS que tiene su iPhone, su iPod Touch o su iPad, puede que sobre tiempo para hacer otras cosas después de sacar la información.
¿Qué información es posible extraer de un terminal que esté bloqueado con el passcode sin hacer un Jailbreak al dispositivo? Lo cierto es que hay varias estrategias de ataque en las que influye la configuración por defecto del terminal, las aplicaciones que haya instalado el usuario y la versión exacta de parcheo del sistema operativo (ya que versión tras versión han ido apareciendo fallos de seguridad que permiten desbloquear un iPhone o un iPad sin conocer el passcode).
En este capítulo se mostrarán cuáles son las debilidades de configuración y los fallos de seguridad que se conocen de las últimas versiones de iOS, dejando al lector la labor de preparar la estrategia de un ataque para que funcione en los minutos que se tengan disponibles para manipular el dispositivo. Se recuerda que para conocer la versión exacta del sistema operativo del objetivo a atacar, solo hay que conseguir que la víctima se conecte a un servidor web controlado (mediante un link por Twitter o un mensaje acortado) y analizar el User-Agent de la conexión, tal y como se ha visto y se mostrará en otros capítulos de este libro.
Reconocer el modelo de dispositivo en una inspección preliminar
Un ojo bien avezado puede obtener mucha información de un terminal iPhone solo con verlo. Se recomienda conocer bien los modelos de iPhone (o iPad) para saber qué versión de sistema operativo se encuentra en cada uno de ellos. A día de hoy lo más común que se puede encontrar son equipos iPhone 5, iPhone 4S, iPhone 4 y algún iPhone 3GS.
Reconocer un iPhone 5 es fácil, ya que es más estrecho y alargado que el iPhone 4 o iPhone 4S, famoso por tener la antena alrededor del terminal. El iPhone 3GS es el que tiene los laterales redondeados, al igual que el ya abandonado iPhone 3G.
Imagen 02.01: iPhone 4, iPhone 4S e iPhone 5 diferencias físicas.
Diferenciar físicamente un iPhone 4 de un iPhone 45 es posible, ya que basta con mirar los cortes en la antena que rodea al teléfono. En iPhone 4 hay dos cortes, uno en la parte superior y otro en el lateral de los botones. Por el contrario, en el iPhone 45 los dos cortes se encuentran en el mismo lado, es decir, en el lado de la botonera.
Imagen 02.02: Los laterales del iPad I son rectos.
En el caso de iPad, reconocer los modelos con una inspección preliminar también es posible. El primer iPad, (al que llamaremos iPad 1), es el único que tiene los laterales rectos, mientras que el resto de los modelos tienen los laterales redondeados y solo se vendió en color metálico. ¡l'ad 2 es el modelo que lleva la Smart Cover, es decir, la protección magnética que interactúa con el dispositivo solo en la parte delantera y además es el más delgado de todos.
Imagen 02.03: iPad 2 junto a un iPad 3.
iPad 3, o new iPad, salió con Smart Cover delantera y trasera y se diferencia de iPad 2 en que mide 6 milímetros más de grosor y tiene ligeramente distintos los bordes de las esquinas y por detrás. iPad 1 lleva una pestaña negra en la parte superior. Diferenciar iPad 3 del New new iPad es posible porque este último lleva el conector lightning al igual que iPhone 5. Por último iPad mini es el iPad pequeño y a día de hoy solo hay una versión en el mercado.
iPad Imagen 02.04: iPad 3 y New new iPad.
Hay que tener en cuenta que si tiene una funda que no es la estándar es una buena noticia para el atacante puedes tener que ser bueno. Reconocer la versión hardware es importante, ya que así es posible saber más o menos con qué versión de iOS se va a encontrar. Esto es así debido a que las versiones que se pueden instalar en un terminal concreto sin manipularlo con Jailbreak están limitadas. La siguiente tabla recoge las versiones que pueden estar instaladas en cada versión del terminal.
Modelo Versión de sistema operativo iOS que puede tener instalado
iPhone 5 iOS 6 a iOS 6.1.3
iPhone 4S iOS 5 a iOS 6.1.3
iPhone 4 iOS 4 a iOS 6.1.3
iPhone 3GS iOS 3 a iOS 6.1.3
New new iPad iOS 6, iOS 6.1.3
iPad 3 (new iPad) iOS 5.1 a iOS 6.1.3
iPad 2 iOS 4.3 a iOS 6.1.3
iPad iOS 3.X a iOS 5.1.1
iPad mini iOS 6 a iOS 6.1.3
Tabla 02.01: Versiones soportadas de iOS por los diferentes modelos de iPhone o iPad.
Como se puede ver, iPhone 3GS es el que más variedad de versiones soporta. Se han dejado fuera de este estudio las versiones de iOS soportadas de iPod Touch, y los iPhone CDMA, estos últimos solo utilizados en Estados Unidos para comunicaciones de voz sobre redes Wi-Fi. Además, hay que tener en cuenta que, a pesar de que iPhone 3GS, iPhone 4 o iPad 2 soportan iOS 5 o iOS 6, este viene con limitaciones y no existen funciones de mapas ni Siri, que como ya se verá es muy útil en un proceso de pentesting.
En iOS 6.1 se ha introducido una nueva forma de reconocer el sistema operativo, ya que se ha cambiado el aspecto del reproductor de música, así que basta con hacer dos clics en el botón de acción para acceder al reproductor y saber qué versión es. Si tiene el nuevo (más minimalista) es la versión iOS 6.1 o superior. Además, es posible acceder al último recurso que se ha visitado, y esto puede ser hasta un vídeo de Internet, donde se podría saber qué estaba haciendo el usuario.
De todas formas, si el atacante se tiene que enfrentar a un dispositivo iPod Touch, iPhone CDMA o Apple TV y quiere saber qué versiones de iOS podría estar corriendo, puede ir a la fecha de lanzamiento del producto en Wikipedia y buscar dicha fecha en http://support.Apple.com/kb/ HT1222, que mostrará cuando salió cada actualización de iOS. Se puede apreciar que siempre hay una versión que coincide con la fecha del lanzamiento del producto.
Los números de serie y el IMEI
Como todo terminal de telefonía, los modelos de iPhone tienen un número IMEI (International Mobile Equipment Identity) y los Números de Serie de fabricación. Estos números pueden ser utilizados para trazar la línea de la historia del dispositivo, que va desde las características de fabricación hasta su dueño punto de venta, siendo también posible para reconocer el terminal en las redes de telefonía por medio del IMEI y, eventualmente, bloquear el dispositivo cuando haya sido robado o perdido.
Imagen 02.06: Números de serie de un iPad.
Las ubicaciones del IMEI cambian dependiendo del modelo, pero todos están en el terminal. En iPad y en iPhone 5 los números IMEI están en la parte posterior del terminal, mientras que en los iPhone 3G, iPhone 3GS, iPhone 4 y en los iPhone 45 hay que sacar la tarjeta SIM, ya que está en la carcasa. Para ello se debe llevar la llave de apertura de la SIM entre las ganzúas de Lockpicking (esta Ilave es útil si además se desca realizar algún ataque que se mostrará más adelante), e introducirla en el agujero que hay en la ranura lateral de la SIM.
Si no se dispone de una llave a mano, siempre se puede utilizar un clip, e introducirlo con mucho cuidado. En la web de Apple están las explicaciones para cada modelo, pero todos son básicamente igual, simplemente hay que buscar el agujero, meter la llave, hacer clic y sacar la bandeja.
Los números de serie pueden ser obtenidos con solo visualizar la parte posterior del teléfono, así que para tenerlos bien inventariados en un análisis forense o utilizarlos cuando sea preciso (como por ejemplo para "dar un cambiazo" posteriormente y llevarse el correcto) o realizar un ataque de ingeniería social del tipo:
"Hola, somos de Apple y hemos detectado que su modelo tiene un fallo de fabricación y le vamos a llevar un iPhone 5 en sustitución a todos los clientes cuyo número de serie acabe en X".
Estos datos, por lo que se pueda necesitar en el futuro, se pueden obtener rápidamente haciendo una fotografia a la parte posterior del dispositivo del objetivo. Además, el código IMEI puede servir para conocer en detalle las características físicas del terminal, y saber entre otras cosas si es un iPad 3, o un New new iPad y si tiene 3G o solo Wi-Fi.Para ello se pueden utilizar múltiples bases de datos de consulta de información del terminal a partir del código IMEI en Internet. Para este ejemplo se ha utilizado http://www.imei.info/ y tras introducir el valor del IMEI se obtendrán todas las características del modelo. Esta base de datos tiene limitado el número de consultas por día, pero además permite saber si el IMEI está bloqueado en los operadores por alguna denuncia de robo.
Códigos de marcado especiales
En iPhone, como en muchos de los terminales, se pueden utilizar códigos de marcado especiales que pueden ser utilizados desde la aplicación de realización de llamadas. Esto permite, (a pesar de que no se haya conseguido desbloquear todo el terminal con un bug), el poder lanzar comandos desde dicha aplicación allí. Estos códigos los hay para la realización de llamadas y para el envio de mensajes SMS y, dependiendo del operador de telefonia funcionarán unos u otros. La lista de códigos que se pueden utilizar es:
Código Utilidad
*#06# Muestra el IMEI del terminal.
*3001412345# Muestra el Field Test, que será de gran ayuda para los ataques de una estación de telefonía falsa, como ser verá más adelante en este libro.
*#21# Muestra si existen desvíos de llamadas para diferentes servicios activados.
*#43# Muestra la lista de llamada en espera.
*#30#* Muestra la configuración de ver el número de quién te está llamando.
*#33# Muestra configuraciones especiales de iPhone.
#31#número Permite hacer una llamada oculta al número que se marque.
**04* antiguoPIN *nuevoPIN"nuevoPIN# Cambia el valor del PIN.
Tabla 02.02: Lista de códigos de marcado especiales.
Estos códigos no son únicos de iPhone, y según los operadores se ofrecen más o menos códigos, por lo que es muy interesante averiguar antes el operador al que se conecta este terminal. Esto es tan sencillo como ver la red a la que se conecta o hacer un ataque Client-side tal y como se ve en otro capítulo, usando por ejemplo un correo electrónico o un hiperenlace para averiguar a qué operador pertenece la dirección IP por la que se conecta el dispositivo.
Estos datos, por lo que se pueda necesitar en el futuro, se pueden obtener rápidamente haciendo una fotografía a la parte posterior del dispositivo del objetivo. Además, el código IMEI puede servir para conocer en detalle las características físicas del terminal, y saber entre otras cosas si es un iPad 3, o un New new iPad y si tiene 3G o solo Wi-Fi.
Para ello se pueden utilizar múltiples bases de datos de consulta de información del terminal a partir del código IMEI en Internet. Para este ejemplo se ha utilizado http://www.imei.info/ y tras introducir el valor del IMEI se obtendrán todas las características del modelo. Esta base de datos tiene limitado el número de consultas por día, pero además permite saber si el IMEI está bloqueado en los operadores por alguna denuncia de robo.
QR de ese contenido:
Descargar Esta Imagen Aquí







