• No se han encontrado resultados

Metodología y caso práctico de análisis forense en iOS 10

N/A
N/A
Protected

Academic year: 2020

Share "Metodología y caso práctico de análisis forense en iOS 10"

Copied!
53
0
0

Texto completo

(1)Trabajo final de master Metodología y caso práctico de análisis forense en iOS 10. Autor: José Tomás Rubio Lorente. Tutor: Marco Antonio Lozano Merino. Fecha de entrega: 22-12-2016.

(2) Esta obra está sujeta a una licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 España de Creative Commons.. 2.

(3) Agradecimientos:. A Berta, por apoyarme y facilitarme mi tiempo para poder realizar mis proyectos personales, mi vida profesional y este trabajo. A mi hijo de 7 meses Tomás, el mejor de los regalos y alegrías. A mi madre, por su amor incondicional, su paciencia, sus consejos, su cariño y sus enseñanzas. A mi padre, por su dedicación, sus enseñanzas, su lucha diaria, y darlo todo por sus hijos.. 3.

(4) RESUMEN El objetivo de este Trabajo Final de Master es realizar una metodología para el Análisis Forense Digital adaptada a dispositivos de Apple con Sistema Operativo iOS 10. Se hará un recorrido sobre el estado del arte en las principales herramientas de Análisis Forense de iOS existentes, tanto herramientas open source como propietarias y se validará el correcto funcionamiento en iOS 10 de las herramientas mediante pruebas en diferentes dispositivos y circunstancias. En función de los resultados de las pruebas, se elaborará una metodología para el Análisis Forense en estos dispositivos. Por último, se realizará un caso práctico de Análisis Forense sobre un dispositivo con iOS 10 al que aplicaremos la metodología definida.. 4.

(5) ABSTRACT The goal of this research work is to build a methodology for Digital Forensics Analysis adapted to Apple devices running iOS 10 Operating System. We will go through the state of the art in main iOS Forensics Analysis tools, both open source and private software and correctness in this tools for iOS 10 will be tested and checked with different devices and circumstances. A methodology for Forsnsic Analysis for these devices will be elaborated according to the results of the tests. Finally, a Forensics Analysis practical case will be held over an iOS 10 device, where we will apply the described methodology.. 5.

(6) Indice General 1. Plan de Trabajo ...................................................................................................... 8 1.1 Justificación del proyecto.................................................................................. 8 1.2 Objetivos .......................................................................................................... 8 1.3 Metodología del proyecto ................................................................................. 9 1.4 LIstado de tareas .............................................................................................. 9 1.5 Planificación.................................................................................................... 10 2. Fase I: Seguridad en iOS 10 ................................................................................ 12 2.1 Visión general: ................................................................................................12 2.2 Características de seguridad del hardware: ...................................................13 2.3 File Data Protection: ...................................................................................... 13 2.4 Passcodes: .....................................................................................................15 2.5 Data protection classes: .................................................................................15 2.6 keychain Data Protection:............................................................................... 16 2.7 Keychain access control: ................................................................................ 17 2.8 Keybags: .........................................................................................................18 2.9 Conclusiones: ................................................................................................. 19 3. Fase II: Estado del arte en análisis forense en iOS .............................................20 3.1 Herramientas propietarias: ............................................................................. 20 3.1.1 Cellebrite UFED:......................................................................................20 3.1.2 Oxygen Forensics Suite: ......................................................................... 20 3.1.3 Elcomsoft iOS Forensics Toolkit: ............................................................. 20 3.2 Herramientas gratuitas: .................................................................................. 21 3.2.1 iPhone data protection:............................................................................ 21 3.2.2 iPhone backup analyzer 2: ...................................................................... 22 3.2.3 iExplorer ..................................................................................................23 3.2.4 Exifftool .................................................................................................... 24 3.2.5 DB Browser for sqlite............................................................................... 25 3.3 Pruebas y resultados ..................................................................................... 25 3.3.1 Probando iPhone data protection en iOS 10 ........................................... 26 6.

(7) 3.3.2 Probando iPhone Backup Analyzer 2 en iOS 10 ..................................... 28 3.3.3 Probando iExplorer 4.0............................................................................ 28 3.4 Conclusiones de las pruebas.......................................................................... 30 4. FASE III: Definición de metodología de análisis forense en iOS 10..................... 31 4.1 Adquisición......................................................................................................31 4.2 Preservación ...................................................................................................31 4.2.1 Saltando el passcode en iOS 10: ............................................................31 4.2.2 Realizar el backup del dispositivo. .......................................................... 32 4.2.3 Obtener backup realizado en un ordenador con iTunes ......................... 34 4.3 Análisis............................................................................................................35 4.3.1 Análisis de la copia de seguridad de iTunes ........................................... 35 4.3.2 Análisis de los datos almacenados en iCloud .........................................43 4.3.3 Obtención de metadatos ......................................................................... 44 4.3.4 Lectura de Bases de Datos .....................................................................44 4.4 Documentación ............................................................................................... 44 5. FASE IV: Caso práctico de análisis forense en iOS 10. .......................................45 5.1 Definición del caso..........................................................................................45 5.2 Análisis del dispositivo. ................................................................................... 45 5.3 Informe técnico: .............................................................................................. 46 5.4 Resumen Ejecutivo ......................................................................................... 50 Trabajo futuro: .......................................................................................................... 51 Bibliografía: ..............................................................................................................52. 7.

(8) 1. Plan de Trabajo El proyecto va a consistir en la elaboración de una metodología de análisis forense sobre dispositivos iPhone con sistema operativo iOS 10, y la realización y exposición de un caso práctico de análisis forense sobre este tipo de dispositivo.. 1.1 Justificación del proyecto En la actualidad, los dispositivos móviles se han convertido en una extensión del ser humano que nos facilitan gran cantidad de tareas. Nos valemos de ellos para almacenar información de contactos, comunicarnos con ellos ,capturar, enviar y almacenar imágenes, navegar por internet, enviar emails y hacer uso de varias apps que cumplen uno o varios fines determinados. Todas estas características hacen que un dispositivo móvil se convierta en un diario de nuestra vida, almacenando grandes cantidades de información personal, muchas de ellas sin que el usuario sea a veces consciente de ello, como por ejemplo localización geográfica del dispositivo, fechas de conexiones a redes, historial de chats. Todos estos elementos hacen que el análisis forense de dispositivos móviles se haya convertido en una de las claves principales para investigaciones criminales, procesos judiciales y resolución de casos policiales en el siglo XXI. En la actualidad existen variedad de herramientas para la realización de estos análisis para dispositivos Android y algunas menos para dispositivos iOS, tanto de pago como gratuitas. Algunas de estas herramientas gratuitas disponibles para iOS han dejado de funcionar completamente o parcialmente con las nuevas versiones de iOS y sus mejoras en seguridad del dispositivo. Es por esto que se desea profundizar en este área para desarrollar una metodología con las herramientas disponibles en la actualidad para posteriormente describir una metodología que permitan realizar un análisis forense en dispositivos con iOS 10.. 1.2 Objetivos Los objetivos a alcanzar en este proyecto, son los siguientes: ▪. Comprender los mecanismos de seguridad de iOS 10 y como estos delimitar el alcance del análisis forense.. ▪. Estudiar las herramientas disponibles en el mercado para la realización de análisis forenses y seleccionar las que formaran parte de la metodología.. ▪. Definir una metodología para el análisis forense en dispositivos iOS 10. ▪. Realizar un análisis forense siguiendo la metodología elaborada sobre un dispositivo con iOS 10.. 8.

(9) 1.3 Metodología del proyecto El proyecto se dividirá en las siguientes fases: . Fase I: Tras la realización del plan de trabajo, el proyecto comenzará con el análisis del documento de guía de seguridad en iOS de Mayo de 2016, disponible en este link; https://www.apple.com/ business/docs/iOS_Security_Guide.pdf Una vez estudiadas y se analizarán las limitaciones impuestas por los mecanismos de seguridad que comenzarán a dar forma a la metodología del análisis forense y marcaran los posibles caminos a seguir en el análisis forense de un dispositivo iPhone 5 con iOS 10. . Fase II: Se realizara un estudio del “estado del arte” en las herramientas disponibles para el análisis forense en versiones anteriores de iOS, realizando y documentando pruebas sobre ellas para confirmar si son adecuadas o no para ser incluidas en la metodología de análisis forense en iOS 10. . Fase III: Una vez estudiadas las herramientas, se definirá una metodología de análisis forense para dispositivos con iOS 10, en la que se definirán los pasos a seguir dependiendo del grado de protección del dispositivo, se indicara cuando es recomendable y cuando no realizarlas, y se explicará que herramientas y con qué fines deben utilizarse en cada paso. . Fase iV: Finalmente, se procederá a realizar y documentar un caso práctico de análisis forense siguiendo la metodología descrita sobre un dispositivo iPhone 5 con iOS 10 instalado. . Fase V: Se finalizará la memoria del proyecto y se realizará la presentación y preparación para la defensa del TFM.. 1.4 LIstado de tareas A continuación se listan las tareas de las que constará el proyecto: 1. Realización del Plan de trabajo (presente documento). 2. Estudio de la guía de seguridad en iOS 9.3 y posteriores de Mayo del 2016. https:// www.apple.com/business/docs/iOS_Security_Guide.pdf 3. Documentación de Conclusiones, limitaciones y dependencias que afectan al análisis forense en iOS 10, obtenidas a partir del estudio del documento anterior. 4. Estudio de herramientas disponibles para el análisis forense en iOS y sus limitaciones en la versión 10 de iOS.. 9.

(10) 5. Realización de pruebas sobre herramientas estudiadas para verificación de su validez en iOS 10. 6. Documentación de las herramientas estudiadas y resultados de las pruebas. 7. Selección, en base a los resultados de las pruebas, de herramientas que se incluirán en la metodología de análisis forense. 8. Propuesta de metodología del análisis forense en base a los resultados de las tareas anteriores. 9. Realización de un caso práctico de análisis forense sobre dispositivo iPhone 5 con iOS 10 siguiendo la metodología propuesta. 10.Documentación del caso practico de análisis forense en iPhone 5 con iOS 10. 11. Finalización de la memoria TFM añadiendo y distribuyendo adecuadamente los distintos documentos creados a lo largo del proyecto. 12. Preparación de presentación TFM. 13. Preparación de la defensa del TFM.. 1.5 Planificación El proyecto tiene como fecha de cierre el 9 de Enero de 2017, Fecha en la que debe estar todo terminado y entregado. Las fases a realizar durante el proyecto son: •. FASE I: Seguridad en iOS 10: Esta fase incluye las tareas numero 2 y 3. •. FASE II: Estado del arte en análisis forense en iOS: Tareas de la numero 4 a la numero 6.. •. FASE III: Definición de metodología de análisis forense en iOS 10: Tareas número 7 y 8.. •. FASE IV: Caso práctico de análisis forense en iOS 10: Tareas número 9 y 10.. •. FASE V: Finalización de memoria y presentación Tareas de la número 11 a la número 13. A continuación se muestra un diagrama de Gantt con las fechas correspondientes a cada tarea, seguida de una tabla en la que se muestran todas las tareas, su duración en días y sus fechas de inicio y finalización:. 10.

(11) 11.

(12) 2. Fase I: Seguridad en iOS 10 2.1 Visión general: El objetivo de esta primera incursión en la seguridad de iOS pretende obtener las claves en las medidas de seguridad implementadas en los dispositivos iOS (tanto hardware como software) para ayudarnos a conocer su funcionamiento y las restricciones y opciones que estas imponen en la realización de un análisis forense en los dispositivos iOS (iPhone y iPad) a partir de su versión 9.3, concretamente en iOS 10. Para ello, existe un documento publicado por Apple el 26 de Mayo de 2016 en el que se explica la arquitectura de seguridad de iOS y cada uno de los componentes y tecnologías utilizadas en esta arquitectura. Este documento se encuentra disponible en este enlace: https://www.apple.com/ business/docs/iOS_Security_Guide.pdf. La arquitectura de seguridad de iOS esta representada en el siguiente diagrama, facilitado en el citado documento:. 12.

(13) El documento esta organizado en las siguientes secciones: 1. System security: El software y hardware integrado y seguro que son la plataforma para dispositivos iPhone, iPad y iPod Touch. 2. Encription and data protection: Arquitectura y diseño que protege los datos del usuario si el dispositivo es perdido o robado, o si una persona no autorizada intenta usarlo modificarlo. 3. App security: El sistema que permite a las apps ejecutarse de forma segura y sin comprometer la integridad de la plataforma. 4. Network security: Standards de la Industria en protocolos de redes que proveen autenticación segura y cifrado de datos en la transmisión. 5. Apple pay: Implementación de Apple para pagos seguros 6. Internet services: Infraestructura de Apple basada en redes para envió de mensajes, sincronización y copia de seguridad. 7. Device controls: Metodos para permitir la gestión de dispositivos iOS, prevenir usos no autrorizados y permitir el borrado remoto si un dispositivo es perdido o robado. 8. Privacy controls: Capacidades de iOS que pueden ser usadas para controlar el acceso a servicios de geolocalización y datos del usuario.. Aunque la mayoría de las secciones contiene información que podria ser relevante para un análisis forenese, la parte que mas nos concierte se encuentra en la sección Encription and data protection. En esta sección se habla de los mecanismos que utiliza el sistema operativo, junto con el hardware en el que corre, de proporcionar mecanismos de cifrado seguros, utilizando certificados y claves de cirfado que se generan durante el tiempo de fabricación del dispositivo en el chip de cifrado “Secure enclave”.. 2.2 Características de seguridad del hardware: Cada dispositivo iOS tiene un motor criptográfico construido entre la comunicación del DMA y el almacenamiento flash, haciendo el cifrado altamente eficiente. El UID del dispositivo (Device Unique Identifier) y el GID (Group ID) son claves criptogáficas de tipo AES 256-bit grabadas en el caso de UID o compiladas en el caso del GID dentro del procesador de aplicaciones y del secure enclave durante la fase de fabricación del dispositivo. Ningún software o firmware puede leer estos valores directamente. El UID permite que los datos estén criptograficamente ajustados a un único dispositivo. de forma que si los chips de memoria son movidos a otro dispositivo, los ficheros son inaccesibles.. 2.3 File Data Protection: Ademas del hardware de cifrado que usa el iPhone, Apple utiliza una tecnología llamada Data protection, para proteger la información almacenada en la memoria flash del teléfono. Data protección se implementa construyendo y administrando una jerarquía de claves, que se crean usando las tecnologías de cifrado de hardware del dispositivo.. 13.

(14) Arquitectura del data protection: Cada vez que un fichero es creado en la partición de datos, Data protection crea una clave de 256 bit (“per file” key), y se la pasa al motor AES de hardware, quien usa la clave para cifrar el fichero mientras es escrito en la memoria flash, usando el algoritmo AES CBC Mode. En dispositivos con el chip A8, se usa AES-XTS. El vector de inicialización (IV) se calcula con el offset del bloque del fichero, y se cifra con el hash SHA-1 de la clave del fichero (per-file key). La clave per-file key, se envuelve con una de las posibles “class key” que se estudiaran mas adelante, dependiendo de las circunstancias en las que un fichero debería ser accesible. El envoltorio del per-file key, se almacena en los metadatos del fichero en cuestión. Cuando un fichero se abre, sus metadatos se descifran con la clave del sistema de ficheros, revelando la “per-file” key envuelta, y una notación indicando que clase de protección tiene (class key). Después, el “per file” key es desenvuelto con la class key, y enviado al motor AES, que descifra el fichero mientras es leído de la memoria flash. Todo el manejo de claves ocurre en el Secure Enclave, al que el procesador principal no tiene acceso, de modo que las claves nunca son expuestas al procesador principal que usan las aplicaciones. Durante el arranque del sistema, el “Secure Enclave” negocia una clave efímera con el motor de cifrado AES. Cuando el Secure Enclave extrae la clave del fichero, se vuelve a envolver con la clave efímera y se manda de vuelta al procesador de aplicaciones. Los metadatos de todos los ficheros en el sistema de ficheros son cifrados con una clave aleatoria, que se crea cuando iOS se instala por primera vez en el dispositivo, o cuando el dispositivo es borrado completamente por el usuario. La clave de cifrado del sistema de ficheros es guardada en lo que Apple denomina “Efaceable storage” que es una zona dedicada del almacenamiento NAND usado para almacenar claves criptográficas, que puede accedido directamente y borrado de forma segura. Dado que esta key esta guardada en en el dispositivo, no esta diseñada para proveer de confidencialidad a los datos, sino para permitir ser borrada de forma casi inmediata bajo demanda, desde la opción de borrar todos los contenidos y configuraciones, o por un administrador de sistemas utilizando un comando de “remote wipe” desde un servidor de MDM (Mobile Device Management, ActiveSync o iCloud. Borrar esta clave de esta forma, hace todos los ficheros criptográficamente inaccesibles de forma inmediata. La siguiente figura, extraída del documento de Apple, muestra un diagrama del proceso:. 14.

(15) El contenido de un fichero es cifrado con el “per-file” key, que es envuelto por una classs key y guardado en los metadatos del fichero. La class key es cifrada con el UID del hardware, y para algunas clases, con el passcode del usuario.. 2.4 Passcodes: Cuando un usuario establece un passcode, automáticamente habilita los mecanismos de Data Protección. iOS soporta passcodes de 4 dígitos, 6 dígitos o alfanuméricos de longitud arbitraria. Además de desbloquear el dispositivo, el passcode provee de entropía a ciertas claves de cifrado. El passcode es mezclado con el UID, de forma que los ataques de fuerza bruta deben ser llevados a cabo sobre el dispositivo atacado. Se usa un contador de intentos para hacer cada intento mas lento. A continuación se muestra una tabla con el retraso añadido por intento: Numero de intentos. Retraso establecido. 1-4. Ninguno. 5. 1 minuto. 6. 5 minutos. 7-8. 15 minutos. 9. 1 hora. Además, se puede configurar el dispositivo para que sea automáticamente borrado tras 10 fallos consecutivos de ingreso del passcode. Esta configuración se puede gestionar ademas desde un MDM o un Exchange Active Sync, y puede ser establecido a un menor numero de intentos. En dispositivos con un procesador A7 o posterior, los retardos son forzados por el secure enclave. Si el dispositivo es reiniciado durante un retardo, el retardo sigue existiendo cuando arranca el dispositivo.. 2.5 Data protection classes: Cuando un nuevo fichero es creado, la aplicación que lo crea le asigna una determinada clase. Cada clase usa diferentes políticas para determinar cuando los datos son accesibles. Estas son las principales clases y políticas: Complete protection: (NSFileProtectionComplete): La clave de la clase es protegida con una clave derivada del passcode y del UID del dispositivo. Al poco tiempo de bloquear el dispositivo (10 segundos si el bloqueo esta configurado como inmediato), la clave de descifrado de la clase es descartada, haciendo los datos inaccesibles hasta que el usuario desbloquee el dispositivo de nuevo. (passcode o Touch ID).. 15.

(16) Protected Unless Open: (NSFileProtectionCompleteUnlessOpen): Algunos ficheros necesitan ser escritos mientas el dispositivo esta bloqueado, como por ejemplo, un fichero adjunto de un email descargándose en segundo plano. Protected Until First User Authentication: (NSFileProtectionCompleteUntilFirstUserAuthentication ) Esta clase se comporta de la misma forma que la clase Complete Protection, excepto porque la clave de la clase descifrada no es eliminada de la memoria cuando se bloquea el dispositivo. Es decir, protege los datos de ataques que implican reiniciar. Esta es la clase otorgada por defecto a las aplicaciones de terceros, a no ser que se especifique lo contrario. No protection: (NSFileProtectionNone) Esta clave de clase esta protegida por el UID, y se gurada en el “Effeceable storage”. Dado que todas las claves necesarias para descifrar los ficheros de esta clase están en el dispositivo, esta clase solo tiene el beneficio del borrado remoto.. 2.6 keychain Data Protection: El keychain de iOS proporciona una forma segura de almacenar contraseñas y datos sensibles para aplicaciones de terceros. El keychain se implementa como una base de datos SQLLite almacenada en el sistema de ficheros. Hay solo una base de datos para el KeyChain. El daemond securityd determina que items del keychain pueden ser accedidos por un proceso o aplicación. Los datos del keychain, son protegidos usando una estructura de clase similar a la utilizada en File Data Protection, y tienen comportamientos similiares, solo que utilizan distintas keys y son parte de otra API, que utiliza nomenclatura distinta:. Apple a equilibrado cuidadosamente la seguridad y usabilidad eligiendo las clases de keychain que dependen del tipo de información que esta siendo securizada, y cuando es requerida por iOS. Para los items del keychain creados por iOS , se utilizan las siguientes protections classes:. 16.

(17) 2.7 Keychain access control: Los Keychains pueden usar listas de control de acceso (ACLs) para establecer políticas de accesos y requisitos de autenticación. Los items del keychain pueden establecer condiciones como requerir la presencia del usuario, debiendo este introducir su huella mediante touch Id o introducir su código de desbloqueo para poder ser accedidos.. 17.

(18) 2.8 Keybags: Las keys (claves de cifrado) para el data protection de ficheros y keychain, son gestionadas por keybags. iOS utiliza los siguientes 5 keybags: user, device, backup, escrow, and iCloud Backup. User keybag: es donde el wrapped class key usado en operaciones normales se almacena. Por ejemplo, cuando el passcode es introducido, la key NSFileProtectionComplete se carga y desenvuelve desde este keybag. Para proveer seguridad a los keybags, esta key es borrada y regenerada cada vez que un usuario cambia el passcode. Device keybag: Se usa para almacenar las class keys envueltas utilizadas en operaciones que involucran datos específicos del dispositivo. En dispositivos iOS configurados para un único usuario (la mayoría), el user keybag y device keybag son el mismo, y se protege por el passcode del usuario. En caso de dispositivos configurados para ser compartidos, en algunos casos se requiere acceso a las credenciales antes de que ningún usuario se haya iniciado sesión. En este caso, un keybag que no este protegido por la password del usuario es requerido (device keybag). Backup keybag: Se crea cuando una copia de seguridad cifrada se crea por medio de iTunes, y se almacenada en un ordenador. En estas circunstancias, se crea un nuevo keybag con un nuevo conjunto de claves (keys), y los datos de la copia de seguridad se cifran con este nuevo conjunto de claves. Como se explicó antes, los items “non-migrtory” del keychain siguen envueltos con la clave derivada del UID, permitiendo ser restaurados en el dispositivo del que fue originalmente copiado, pero haciéndolos inaccesibles en otro dispositivo. El keybag es protegido con el password que se introduce en iTunes a la hora de realizar la copia de seguridad, y se utilizan 10000 iteraciones de PBKDF2. Aunque es un numero grande de iteraciones, este cifrado puede ser teóricamente descifrado por un ataque de fuerza bruta. Este caso se puede mitigar con una password robusta y suficientemente larga. Si la copia de seguridad se realiza sin cifrado, los ficheros de la copia de seguridad no se cifran, sin importar el data protection class, pero el keychain permanece cifrado con la clave derivada del UID. Por esta razón, los items del keychain solo se migran a si se ha utilizado un pasword para el backup. Scrow keybag: Es utilizado por iTunes y por MDM. Este keybag permite a iTunes realizar copias de seguridad y sincronizar sin que se requiera que le usuario introduzca el passcode, y permite a los servidores de MDM borrar remotamente el passcode del usuario. Se almacena en el ordenador que se utiliza para sincronizar con iTunes, o en el servidor MDM que administra el dispositivo. Cuando un dispositivo protegido por passcode se conecta por primera vez a iTunes, se le pide al usuario que introduzca el passcode. El dispositivo crea en ese momento el escrow keybag que contiene el mismo class key usado en el dispositivo, protegido por una nueva clave generada. El scrow keybag y la nueva clave generada se reparten entre el dispositivo y el host o servidor, siendo los datos almacenados en el dispositivo guardados bajo la clase Protected Until First User Authentication. Es por esto que el passcode debe ser introducido antes de que se realice una copia de seguridad con iTunes por primera vez después de un reinicio. iCloud backup keybag: Similar al backup keybag. Todas las claves de clase en este keybag son asimetricas, utilizando el standard Curve25519, de forma que los backups de iCloud pueden realizarse en segudo plano. Para todas las clases de data protection, excepto No Protection, los datos cifrados se leen del dispositivo y se envían a iCloud. Las claves de clase correspondientes son protegidas por las. 18.

(19) claves de iCloud. Las clases de claves de keychain son envueltas con una clave derivada del UID, como en el caso de las copias de seguridad no cifradas de iTunes.. 2.9 Conclusiones: iOS presenta una arquitectura de seguridad altamente avanzada, que lo convierte en uno de los sistemas operativos mas avanzados y seguros en la actualidad. La seguridad de iOS está pensada desde el diseño del hardware y su integración con el software, teniendo en cuenta ataques y amenazas presentes históricamente en dispositivos de sobremesa, y erradicando o mitigando el impacto de estas desde su diseño y su hardware. La seguridad esta fuertemente ligada a los dispositivos en los que se ejecuta. Estos factores junto con los detalles explicados anteriormente, que hacen la realización de un análisis forense sobre un dispositivo que esta protegido por passcode, sea una tarea que requiere de herramientas muy sofisticadas que aprovechen o exploten fallos de seguridad de tipo zero day, ya que Apple parchea los fallos de seguridad conocidos en sus sistemas de forma casi inmediata cuando se hacen públicos, o antes de ser públicos si son reportados previamente a Apple. Esto limitará ampliamente el tipo de análisis forense que se realizará en este proyecto, reduciendolo practicamente a dispositivos sin passcode o copias de seguridad sin cifrar, aunque se investigaran también las herramientas privadas disponibles en el mercado que permiten saltarse el passcode así como alguna técnica para ello.. 19.

(20) 3. Fase II: Estado del arte en análisis forense en iOS En este apartado, se pretende hacer un recorrido por las principales herramientas disponibles para la realización de análisis forense en el mercado, tanto herramientas privadas o propietarias y que solo son accesibles para Fuerzas y Cuerpos de Seguridad del estado, gobiernos y agencias privadas, como herramientas de software libre, que en algunos casos han quedado un poco obsoletas o con partes que han dejado de funcionar en las últimas versiones de iOS.. 3.1 Herramientas propietarias: 3.1.1 Cellebrite UFED: Se trata de una herramienta propietaria y de acceso restringido para análisis forense de dispositivos móviles que permite la extracción lógica y física del sistema de ficheros, incluidos todos sus datos y passwords, de una gran variedad de dispositivos móviles, entre los que se incluyen iPhone e iPad. Esta herramienta es utilizada por Gobiernos, Fuerzas y Cuerpos de Seguridad del Estado, agencias de inteligencia y empresas privadas entre otros, y se especula que fue la herramienta utilizada por el FBI en el famoso caso de San Bernardino para saltarse el passcode del iPhone. De acuerdo con su especificación, permite saltarse el passcode, recuperar datos de aplicaciones e incluso datos borrados. Permite extraer el historial de llamada, SMS, MMS, emails, calendarios, contactos y ficheros almacenados. Información de localización de aplicaciones, GPS, Torres de comunicaciones móviles (BSC), redes Wi-Fi y ficheros de media con información de localización. Datos de aplicación y datos privados almacenados en la nube (iCloud).. 3.1.2 Oxygen Forensics Suite: Se trata de una herramientas de pago bajo licencia para análisis forense en dispositivos móviles. La Versión detective permite analizar dispositivos en vivo y también backups cifradas, saltándose la protección y ofrece una interfaz gráfica muy intuitiva que muestra la información extraída de forma organizada e interactiva, e incluso permite mostrar las localizaciones extraídas en un mapa. Respecto a la información que es capaz de extraer, es similar si no igual a la proporcionada por Cellebrite, pero en este caso no se comenta que sea capaz de saltarse el passcode de dispositivos iOS. Además, también permite visualizar la información en una línea temporal del dispositivo, que sitúa y ordena temporalmente cada evento sucedido en el móvil, lo que facilita enormemente la tarea forense.. 3.1.3 Elcomsoft iOS Forensics Toolkit: Se trata de otra herramienta propietaria que permite la extracción de datos de los últimos dispositivos iOS con jailbreak, pero su principal característica y que lo hace mas llamativo, es que permite extraer el password de los backups de dispositivos iOS cifrados, abriendo las puertas del backup y mostrando todos sus datos. Esta herramienta se debe tener en cuenta si se pretende. 20.

(21) realizar un análisis forense sobre un backup cifrado del que no disponemos de la clave de cifrado del backup. Además un artículo reciente de un investigador de esta compañia, señala que el algoritmo de cifrado del backup en iOS 10 es mas devil que en las versiones 9.x, concretamente, según se afirma, permite probar passwords 2.500 veces más rápido que en iOS 9.x.. 3.2 Herramientas gratuitas: 3.2.1 iPhone data protection: Se trata de un conjunto de herramientas de código abierto de tipo script, que permiten realizar diversas tareas forenses como clonar el disco del iPhone bit a bit, arrancar con un boot loader especifico y conectar por USB (modelos previos a iPhone 4), obtener datos de backups locales, datos de iCloud etc. Algunas de esta herramientas han quedado obsoletas con la aparición de nuevos terminales y nuevas versiones de iOS. La empresa Dinosec ha ido actualizando parte de estas herramientas para que sigan funcionando en iOS 9, y recientemente en iOS 10, ya que el proyecto quedó desactualizado en su versión anterior disponible en google code. Podemos obtener estas herramientas de manera gratuita en el github de dinosec (https:// github.com/dinosec/iphone-dataprotection) con actualizaciones en algunas de sus herramientas para solucionar los errores en iOS 9 e iOS 10. En esta versión de dinosec, durante el mes de Noviembre de 2016 se actualizó el script backup.py para que fuese compatible con las versiones iOS10, es decir, permite obtener los datos de un backup de iOS 10 sin cifrar:. 21.

(22) 3.2.2 iPhone backup analyzer 2: Herramienta gráfica que permite analizar el contenido del backup de un dispositivo iOS. Entre los datos que podemos obtener con esta herramienta, se encuentran: - Información del dispositivo: Unique Identifier, IMEI, Numero de serie, ICCID, GUID, Versión del dispositivo (modelo) y Version del sistema operativo instalado. - Información de aplicaciones de iOS: Historial de llamadas, SMS y MMS, Lista de contactos, Historial y favoritos de safari entre otras. - Información de dominios de aplicación: Permite navegar por los directorios de aplicaciones tanto preinstaladas por Apple como instaladas por el usuario, y obtener datos de los ficheros almacenados. - Posee ademas la capacidad de leer ficheros .plist y .sql, y dispone de un visor hexadecimal con el que se puede mostrar el contenido de cualquier fichero encontrado. Esta herramienta viene instalada por defecto en distribuciones de Linux dedicadas al análisis forense de dispositivos móviles, como es el caso de Santoku, y también en otras distribuciones dedicadas a la seguridad IT y pentesting, como es el caso de Kali linux.. 22.

(23) 3.2.3 iExplorer Se trata de una herramienta que puede ser descargada de gratuita, en la que se puede intruducir una licencia de pago para usos comerciales, pero que permite ser utilizada en su versión demo para uso personal. Esta herramienta permite extraer el contenido de las copias de seguridad de iOS 10, así como acceder a los dispostivos iOS conectados y desbloqueados y obtener información similar a la obtenida con la aplicación iPhone Backup Analyzer. En su versión 4.0 soporta iPhone 7 e iOS 10.2, así que es una opción a considerar, al menos si queremos extraer el backup conociendo la contraseña y visualizar y manejar los datos desde una interfaz gráfica. También permite acceder directamente al dispositivo por el interfaz USB si conocemos la clave de desbloqueo.. 23.

(24) 3.2.4 Exifftool Esta herramienta se ejecuta desde linea de comandos y esta disponible para Window, Linux y Mac. Permite extraer metadatos de gran cantidad de formatos de ficheros, entre los que se destacan imágenes, videos, documentos pdf y de Ofimática, por nombrar algunos. La utilidad principal de esta herramienta en un análisis forense consiste en obtener información asociada a los ficheros que se han ido recopilando durante el análisis forense, como por ejemplo posicionamiento GPS en caso de imágenes que contienen esta información, o modelo del dispositivo con el que la imagen fue tomada. Así pues, esta herramienta podrá ser utilizada independientemente del sistema operativo sobre el que se esté realizando el análisis forense.. 24.

(25) 3.2.5 DB Browser for sqlite Herramienta gráfica open source que permite crear, modificar y consultar bases de datos sqlite de manera sencilla y con una interfaz gráfica amigable. En el momento de redacción de este documento, se encuentra en la Version 3.9.1. Esta herramienta u otras similares para la consulta de bases de datos sqlite es de gran utilidad en análisis forenses, dada la gran aceptación y popularidad de este tipo de bases de datos en los dispositivos móviles y sus aplicaciones.. 3.3 Pruebas y resultados En este apartado se van a realizar pruebas con dispositivos con iOS 10 para verificar el correcto funcionamiento de algunas de las herramientas enumeradas anteriormente e identificar las partes funcionales de cada una de ellas. En el caso de las herramientas descritas en la sección 3.1 de herramientas propietarias, no se dispone de dicho software, ya que en algunos casos, su uso y licencia están restringidos a Fuerzas y cuerpos de seguridad del estado u organismos gubernamentales, y ninguna de ellas dispone de una versión de demostración o de evaluación. Así pues, para la realización de estas pruebas nos centraremos en algunas herramientas descritas en el la sección 3.2 sobre herramientas gratuitas, concretamente en aquellas que por su naturaleza y objetivo, pueden resultar afectadas por las mejoras de seguridad y cambios de formato introducidos por Apple en iOS 10. Se dispone de dispositivos iPhone 5, 6 y 6S+ con versiones 10.0.1, 10.1 y 10.2 respectivamente para la realización de estas pruebas.. 25.

(26) 3.3.1 Probando iPhone data protection en iOS 10 Como se ha comentado anteriormente, de las herramientas que se proporcionan en este entorno, la gran mayoría han quedado obsoletas con las nuevas versiones de dispositivos iPhone y nuevas versiones de sistemas operativos iOS. Las herramientas que permiten crear e instalar un nuevo bootloader o conectar con el puerto USB, han dejado de funcionar en esta versión de iOS, y en dispositivo posteriores al iPhone 4. Además el script build_tools.sh, que requiere el uso de la herramienta XCode (Herramienta para el desarrollo de aplicaciones en iOS y OS X / macOS), dejó de funcionar con XCode 7, debido a cambios importantes. La última versión de Xcode en la fecha de redacción de este documento es XCode 8.2, y la compatibilidad con iOS 10 de esta herramienta apareció en XCode 8. Sin embargo, como hemos comentado antes, esta herramienta ha actualizado algunos de sus scripts para las versiones iOS 9.x y 10.x, de manera que el script the python que permite obtener los datos de un backup, ha sido modificado y funciona para un backup de iOS 10 sin cifrar:. 26.

(27) El algoritmo de cifrado de las copias de seguridad creadas desde iTunes, ha cambiado en iOS 10 de un algoritmo de hashing denominado PBKDF2 con 10000 iteraciones, a un algoritmo SHA256 con una sola interacción. La opción que proporciona este script de descifrar un backup de iOS 10 conociendo su contraseña fue actualizado durante noviembre de 2016, y teóricamente debería funcionar, pero en los dispositivos probados, se obtiene un error de parseo al descifrar el fichero Manifest.bd, debido a un carácter inválido, como se puede observar en la siguiente captura de pantalla:. 27.

(28) 3.3.2 Probando iPhone Backup Analyzer 2 en iOS 10 Desafortunadamente, esta herramienta ha dejado de funcionar en los backup de versiones 10 de iOS realizados con iTunes, debido a un cambio en la estructura de ficheros del backup. Concretamente, el fichero Manifest.mbdb es ahora un fichero de base de datos sqlite, y ha pasado a llamarse Manifest.db. Este cambio, hace que esta herramienta sea incapaz de obtener los datos del backup, puesto que en este fichero se encuentra la información sobre la estructura del backup, como se puede observar en esta captura:. 3.3.3 Probando iExplorer 4.0 Esta herramienta, en su versión demo, permite extraer el contenido de una copia de seguridad de un dispositivo iOS 10 realizada con iTunes. Para ello, lanzamos la herramienta, y tras pulsar el botón “Browse iTunes backups” se encarga de buscar las copias de seguridad en los directorios en los que iTunes deja alojadas dichas copias por defecto. Una vez localizada la copia de seguridad que deseamos, podemos navegar por su contenido de directorios, ademas de obtener la información del dispositivo, historial de llamadas, sms, ficheros multimedia, Notas, historial y favoritos de Safari y Calendario.. 28.

(29) Esta herramienta permite además acceder a las copias de seguridad de iOS 10 cifradas tras introducir su contraseña, con lo cual, ya disponemos de una herramienta gratuita para acceder a backups cifrados:. 29.

(30) Además, si conectamos un dispositivo al ordenador por USB, permite obtener información sobre el contenido del dispositivo siempre que el terminal esté desbloqueado y se haya autorizado y confiado al ordenador desde el dispositivo.. 3.4 Conclusiones de las pruebas Esta claro que iOS es un sistema que actualiza sus dispositivos y sistemas operativos con importantes mejoras de seguridad. Parte de estas mejoras en iOS 10, han dejado obsoletas herramientas y scripts de open source como hemos podido ver en las pruebas. Dados los resultados de las pruebas de las herramientas, llegamos a la conclusión de utilizar iExplorer para acceder al backup de iOS 10 en caso de que este se encuentre cifrado, y el script backup_tool.py en caso de que no lo esté para poder acceder al sistema de ficheros del backup. Las herramientas propietarias descritas en el apartado 3.1 también se incluirán en la metodología que se va a proceder a describir, ya que puede aportar gran valor en casos en los que no tengamos acceso al dispositivo por el bloqueo de passcode, y permiten obtener la información de forma mas sencilla y visual, lo que facilita la labor del análisis forense.. 30.

(31) 4. FASE III: Definición de metodología de análisis forense en iOS 10. En este apartado vamos a proceder a definir una metodología para la realización de un análisis forense en iOS 10. Esta metodología deberá tomarse como una guía de los pasos a seguir a la hora de realizar el análisis en estos dispositivos. Aunque las fases de un Análisis forense digital pueden variar según autores y circunstancias, para el caso concreto de dispositivos iOS, podemos definir las siguientes fases :. 4.1 Adquisición En esta fase se requisa u obtiene el dispositivo o dispositivos que se cree pueden haber estado implicados en un incidente, o del que se sospecha se pueden extraer pruebas que podrían ser aportadas en un caso judicial. Como primera medida, es importante Introducir el dispositivo iOS (iPhone o iPad) lo antes posible en una bolsa de Faraday para aislar al dispositivo del espacio radioeléctrico, y evitar así que pueda ser borrado o alterado de forma remota mediante el uso de iCloud. Además es importante si el caso lo permite, obtener otros materiales informáticos como ordenadores o portátiles del individuo, ya que pueden encontrarse en su interior copias de seguridad del iPhone, o ser un ordenador de confianza para el dispositivo iOS, lo que facilitaría su sincronización y posibilitaría la realización de una copia de seguridad en dicha máquina en caso de no existir una.. 4.2 Preservación Una vez que ya se dispone del dispositivo, hay que preservar el contenido de este. Para iOS 10, al no conocerse Jailbreak público a fecha de 15 de diciembre de 2016, así que no podemos realizar una copia bit a bit del dispositivo, ya que no es posible que el dispositivo este liberado, así que la única forma que tenemos de preservar la información es realizar una copia de seguridad del dispositivo mediante herramientas como iTunes o Apple Configurator. Si el dispositivo se encuentra bloqueado por un passcode, no podremos realizar la copia de seguridad directamente, a no ser que se haya incautado un ordenador en el proceso que este vinculado con el dispositivo, y este no haya sido reiniciado desde que se sincronizó por última vez, en cuyo caso podríamos realizar la copia de seguridad desde este ordenador.. 4.2.1 Saltando el passcode en iOS 10: Hasta la fecha, no se conoce ningún bypass público y completo del passcode en iOS 10. Barajamos las siguiente opciones que podrían ser efectivas: 4.2.1.1 Analizar las manchas de grasa: Podríamos sobre la pantalla para intentar adivinar el passcode, pero corremos el riesgo de que el terminal sea borrado si tiene activada la protección del numero máximo de intentos en el terminal, que por defecto está en 10 intentos, pero puede ser modificado por un MDM o un perfil de iOS instalado desde la herramienta Apple Configurator.. 31.

(32) 4.2.1.2 Cellebrite UFED: Utilizar este software si se tiene acceso a el, ya que como se ha comentado en el apartado 3.1.1, su uso esta restringido a Fuerza y Cuerpos de Seguridad del Estado y organizaciones gubernamentales. El uso de este Softawre permitiría teóricamente desbloquear el dispositivo mediante la conexión USB. 4.2.1.3 NAND Mirroring Esta es una técnica compleja y arriesgada,, ya que requiere manipulación del hardware. El objetivo de esta técnica es poder realizar un ataque de fuerza bruta sobre el passcode y evitar que se borre el dispositivo tras alcanzar el número de intentos fallidos. La técnica consiste en realizar una copia del chip de la memoria que controla el número de intentos del passcode, conocida com NAND Mirroring. Tras clonar los datos de la memoria, se copian en una memoria vacía, de forma que la memoria original y la copiada tienen el mismo número de intentos almacenado. Después se conecta esta memoria al terminal y se procede a probar códigos de desbloqueo hasta que se alcanza el límite de intentos antes del borrado, momento en que vuelven a copiarse en esta memoria los datos originales de la memoria NAND, volviendo a tener el contador de intentos como lo tenía originalmente, y siguiendo con el proceso de introducción de códigos. Este proceso se repite hasta obtener el passcode. Hasta la fecha, este ataque ha sido probado en dispositivos iPhone 5C y iPhone 4, y quedaría demostrar si este ataque es posible en el resto de dispositivos iOS.. 4.2.2 Realizar el backup del dispositivo. Una vez que se ha conseguido saltar el código de desbloqueo, o si este no estaba configurado en el dispositivo iOS, podemos proceder a realizar la copia de seguridad mediante iTunes, Software de Apple que se encuentra disponible tanto para Windows como para Mac. Lanzamos iTunes y conectamos el dispositivo con el cable USB. Si es la primera vez que se conecta el dispositivo al ordenador, se ha de autorizar la conexión desde el terminal pulsando el el botón “Confiar” o “Trust” si está en Inglés, en el pop-up que aparecerá en el dispositivo:. 32.

(33) Una vez enlazado el dispositivo, el la ventana de iTunes nos aparecerá un pop-up indicando preguntando si queremos que el ordenador acceda a la información del iPhone, y pulsamos en Continuar:. Nos aparecerá el dispositivo en la parte superior izquierda de la ventana de iTunes, pulsamos sobre el dispositivo y nos aparece la siguiente ventana en la que se muestra la opción de realizar la copia de seguridad del dispositivo, así como información sobre este:. Pulsamos sobre el botón “Realizar copia de seguridad” y dejamos sin seleccionar la opción de “Cifrar copia de seguridad del iPhone”, puesto que no nos interesa para nuestro propósitos que esté cifrada. Una vez terminado el proceso, ya tenemos la copia de seguridad en el ordenador. Podremos entonces guarda el dispositivo para que permanezca intacto.. 33.

(34) Para averiguar la ubicación de la copia de seguridad en el sistema de ficheros de un Mac, vamos al menú de iTunes y seleccionamos Preferencias-> Dispositivos. Veremos una lista de copias de seguridad realizadas a los dispositivos. Pulsamos con el botón derecho del ratón sobre ella y damos a la opción Mostrar en el Finder.. Esta acción nos abrirá una ventana del Finder con la copia de seguridad seleccionada. En el caso de Windows 7, 8 y 10, las copias de seguridad se almacenan en el directorio “\Usuarios\(nombredeusuario)\AppData\Roaming\Apple Computer\MobileSync\Backup\”.. 4.2.3 Obtener backup realizado en un ordenador con iTunes Una de las posibilidades consiste en que entre el material incautado se encuentre un ordenador que posea una copia de seguridad del dispositivo realizada con iTunes. Tras haber clonado apropiadamente el disco duro del ordenador incautado, podemos obtener de la copia del disco duro la copia de seguridad de iTunes para trabajar con ella de forma segura y sin modificar los datos originales del disco duro del ordenador.. 34.

(35) 4.3 Análisis En la realización del análisis para la obtención de datos y ficheros del dispositivo podemos hacerlo examinando la copia de seguridad de iTunes y/o los datos almacenados en iCloud. A continuación se describen cada una de las opciones.. 4.3.1 Análisis de la copia de seguridad de iTunes Como se ha mencionado anteriormente, existen en el mercado herramientas forenses para la extracción de información de los backups de iTunes. Estas herramientas automatizan la labor forense y proporcionan un interfaz gráfico que simplifica y ameniza la labor forense. En caso de disponer de una de estas herramientas como Cellebrite UFED, Oxygen Forensics Suite o Elcomsoft Forensics Tookit se recomienda su uso para el análisis de la copia de seguridad. Dado que estas herramientas no están disponible de forma gratuita ni son accesibles al público general, vamos a proceder a estudiar la estructura de la copia de seguridad de iOS realizada con iTunes y como utilizar la herramienta gratuita backup_tool.py proporcionada en el kit de iPhone data protection para su extracción. Además daremos un repaso a la versión demo de iExplorer 4.0 para casos en los que el backup esté cifrado.. 4.3.1.1 Estructura del backup de iOS 10: Abrimos el directorio en el que se encuentra la copia de seguridad y vemos que tiene la siguiente estructura:. Como se observa, contiene una serie de carpetas con nombre en formato hexadecimal y ficheros que pasamos a describir:. 35.

(36) Info.plist: Esta extensión de ficheros plist es muy conocida en el mundo Apple, y suele ser utilizada para ficheros de configuración. Para abrirlo en windows, podemos instalar algún Software como plist explorer. Desde Mac, podemos instalar la herramienta de desarrollo de aplicaciones Xcode proporcionada por Apple. En este caso, Info.plist contiene información a cerca del dispositivo. De este fichero podemos obtener los siguientes datos: • Build version del dispositivo • Nombre del dispositivo. • GUID (Global Unique Identifier) • IMEI (Inernational Mobile Equipment Identity) • Aplicaciones instaladas. • Fecha del último backup. • Nombre comercial del dispositivo (Product Name). Por ejemplo iPhone 5 • Versión del dispositivo (Product Type). Por ejemplo iPhone 5.2 • Versión del sistema operativio (Product Version) • Número de serie • Identificador del objetivo • Unique Identiier. • Versión de iTunes con que se realizó la copia de seguridad A continuación se muestra una captura de pantalla del fichero Info.plist abierto con Xcode.. 36.

(37) Manifest.bd: Se trata de un fichero de base de datos de tipo sqlite que contiene información sobre la estructura de directorios de dominio en el backup. Esta base de datos contiene una tabla llamada Files, con los campos fileID, domain, relativePath, falgs y file. El campo fileID se corresponde con el nombre del fichero almacenado el la estructura de directorios de la base de datos, y resulta de obtener el hash SHA-1 concatenando los valores de los campos domain seguido del símbolo “-” seguido del relativePath. Por ejemplo, el fileID correspondiente al dominio CameraRollDomain y la ruta Media/PhotoData/ Videos se obtiene obteniendo el hash SHA-1 de “CameraRollDomain-Media/PhotoData/Videos”, que corresponde con cacc5a1aca7bb6e7428e88a8e9868d3430844f9c .. Manifest.plist Se trata do otro fichero plist. En este caso la información que podemos extraer de el es la siguiente: • • • • • • • • • •. Backup keybag Version del sistema operativo Fecha y hora del backup Si el dispositivo tiene un pascode. Modelo y versión del dispositivo (ProductType y BuildVersion) Unique Device ID Serial Number Nombre del dispositivo Si el backup está cifrado. (isEncripted) Aplicaciones instaladas: • ContainerContentClass. 37.

(38) • • •. Ruta en la que reside en el dispositivo CFBundleIdentifier (Identificador de aplicaciones de Apple) CFBundleVersion (solo disponible en algunas aplicaciones). Status.plist: En este caso, la información que se guarda en el fichero es relativa al estado del backup, si se completo con éxito, si se trata de una copia de seguridad completa, el UDID y fecha de finalización:. 38.

(39) Estructura de directorios: Además de los ficheros descritos hasta ahora, el backup contiene una estructura de directorios cuya nomenclatura sigue un patrón de dos caracteres hexadecimales, lo que hace un total de 256 directorios desde el 00 hasta el ff. Como hemos visto en el fichero Manifest.db, los nombres de los ficheros se sustituían en la base de datos con un hash SHA-1, es decir, sus nombres están formados por caracteres hexadecimales. Cada fichero de la copia de seguridad, se guarda en el directorio cuyo nombre coincide con los dos primeros caracteres de fichero, como se puede observar en la siguiente captura:. 4.3.1.2 Obteniendo el contenido del backup con backup_tool.py: Para poder interactuar con el backup de manera mas sencilla y navegar por su contenido con normalidad podemos utilizar el script backup_tool.py disponible en el kit de herramientas iPhone Data Protection. Para ejecutar el comando, abrimos un terminal y nos colocamos en el directorio python_scripts dentro del directorio donde hayamos descargado iphone-dataprotection. A continuación tecleamos el comando “python backup_tool.py RUTA_DEL_BACKUP RUTA_DESTINO.”. 39.

(40) Tras pulsar ‘y’ + intro, se crea el directorio especificado, en el caso de la captura “extracted_backup”. En este directorio tenemos el contenido del backup:. Una vez que podemos acceder al contenido del backup, sus dominios y subdominios, será decisión de la persona que realiza el análisis que ficheros son de interés en función de que información se desee obtener. Se recomienda hacer un análisis minucioso de todo el backup, de. 40.

(41) forma que se tenga una visión general sobre que datos y aplicaciones se dispone, para después centrarse en extraer la información que se considere ma relevante. Como guía, vamos a analizar algunos directorios y ficheros interesantes a nivel general dentro del backup: CameraRollDomain: Este directorio contiene tanto las fotos realizadas con la cámara como información asociada de a estas en el fichero Photos.sqlite. Analizando las imágenes con la herramienta exiftool podemos obtener además los metadatos de la imagen, que revelan información, como la fecha, hora y posición GPS donde fue tomada, lo que podría situar el dispositivo, y como consecuencia a su propietario, en un determinado lugar a una determinada hora. WirelessDomain: En este directorio nos encontramos con el fichero Library/Databases/CellularUsage.db. Si consultamos esta base de datos podemos obtener el número de teléfono del dispositivo. HomeDomain: Contiene en su interior un directorio Library. Este directorio es uno de los mas jugosos, ya que en su interior albergar un conjunto de subdirectorios que contienen los datos de las principales aplicaciones del sistema operativo. Entre los mas destacables, se encuentran los directorios: AddressBook, Calendar, CallHistoryDB, Cookies, Notes, SMS y VoiceMail. Todos estos directorios, contienen en su interior una o varias bases de datos con información acerca del tema que propone el nombre del directorio en el que están contenidos, y todos ellos pueden ser accedimos con la aplicación DB Browser for SQLite para consultar su contenido de forma sencilla. Cabe destacar que es posible obtener llamadas borradas del registro de llamadas o SMS eliminados, ya que estos no se borran de su base de datos correspondiente, sino que son marcados como eliminados. Además, según el uso y contenido del dispositivo, es posible encontrar información interesante dentro de otros subdirectorios de este directorio Library. SystemPreferencesDomain: Dentro de este directorio encontramos otro llamado SystemConfiguration que contiene una serie de ficheros plist. Uno de ellos, llamado com.apple.wifi.plist, contiene todos los detalles de todas las redes Wi-Fi a las que se ha conectado del dispositivo, incluyendo nombre de la Wi-Fi, SSID, BSSID, Tipo de Seguridad que utiliza, fecha de conexión y de la última conexión automática. Así pues, esta información también podría ser válida para situar a un dispositivo en un lugar determinado en una fecha y hora determinadas, ya que a partir del BSSID es posible obtener la localización geográfica en servicios específicos que alimientan sus bases de datos con información recolectada realizando la técnica de wardriving.. AppDomainGroup-group.net.whatsapp.WhatsApp.shared: Un alto porcentaje de dispositivos tienen la aplicación whatsapp instalada. Esta aplicación puede aportar información relevante a un análisis forense. En las bases de datos ChatStorage.sqlite y ChatSearch.sqlite pueden obtenerse conversaciones enteras personales y de grupos de whatsapp. Es posible visualizar mensajes eliminados de la aplicación whatsapp, ya que estos no se borran de la base de datos, sino que son marcados como eliminados. AppDomain-com.apple.mobilesafari: Contiene el contenido guardado por la aplicación Safari. Entre los datos que podemos obtener se encuentra el historial de navegación y algunas thumbnails.. 41.

(42) El único directorio del que no podremos sacar utilidad es el KeychainDomain, ya que el contenido de los ficheros de este directorio está cifrado con la clave derivada del UID del dispositivo, con lo cual es solo accesible desde el dispositivo del que generó el backup, ya que es el único conocedor de la clave. 4.3.1.3 Accediendo al backup con iExplorer 4.0: iExplorer nos ofrece un interfaz gráfico sencillo. Se obtiene el contenido del backup de manera automática sin necesidad de hacer uso de ningún script. Podemos navegar por el contenido del backup desde la aplicación, y permite abrir los ficheros, mostrarlos en el Finder, añadir un marcador o exportarlos a un directorio para su posterior análisis con la herramienta correspondiente según el tipo de archivo:. Además de acceder al contenido del backup de forma similar a la que utilizamos tras extraer el contenido con backup_tool.py, permite obtener el contenido de un backup cifrado, siempre que se conozca la contraseña de cifrado, lo que lo convierte en una opción a tener en cuenta si disponemos de un backup cifrado y su contraseña. Al igual que antes, es necesario que el auditor analice el contenido de forma minuciosa en busca de los datos que puedan resultar interesantes para los fines del análisis forense. iExplorer4 también permite obtener por medio de su interfaz gráfica información de Mensajes, contactos, Mensajes del buzón de voz, Historial de llamadas, Notas, Favoritos e Historial de Safari y eventos del Calendario.. 42.

(43) 4.3.2 Análisis de los datos almacenados en iCloud En ocasiones, es posible que se obtenga la contraseña de iCloud del usuario. Puede darse el caso en que se ha incautado un ordenador en el que su clave estaba guardada dentro del llavero de su sistema operativo o en las contraseñas del navegador y ha podido ser extraída, o bien el usuario la tenia anotada en algún lugar y ha sido descubierta, o incluso puede darse el caso en que Apple colabore con Fuerzas y Cuerpos de Seguridad del Estado y faciliten un reset de contraseña para facilitar las labores de investigación. Sea cual sea la forma, tener acceso al iCloud de un usuario puede aportar datos a la investigación, así que habrá que tenerlo en cuenta en el análisis. Puede darse el caso, de que el usuario tuviese una copia de seguridad en iCloud, con lo cual podríamos configurar un iPhone nuevo y restaurar el contenido que tenía el usuario en su dispositivo, pudiendo realizar el análisis desde este iPhone nuevo, o desde una copia de seguridad de iTunes generada a partir del nuevo iPhone. Aunque no exista copia de seguridad, pueden existir otros datos importantes en iCloud, dependiendo de la configuración de iCloud que el usuario tuviese en el dispositivo, y que pasamos a nombrar: Correo, contactos, calendario, fotos, recordatorios, ficheros en iCloud Drive, notas, documentos de Pages, Numbers o Keynote.. 43.

(44) 4.3.3 Obtención de metadatos A lo largo del análisis del backup, nos encontraremos con ficheros de diversa índole, como imágenes, videos, documentos pdf o documentos ofimáticos. de los que podremos obtener sus metadatos. Para este cometido, utilizaremos la herramienta exifftool que se ha descrito en el apartado 3.2.4.. 4.3.4 Lectura de Bases de Datos Como se ha ido viendo a lo largo del análisis del backup, en iOS existe un gran número de bases de datos que contienen información crucial para el análisis forense. Para visualizar los contenidos de estas bases de datos sqlite, utilizaremos la herramienta DB Browser for sqlite descrita en el apartado 3.2.5.. 4.4 Documentación Esta fase consiste en documentar los detalles técnicos de los pasos seguidos en la realización del análisis forense, así como problemas encontrados, resultados y pruebas obtenidas, poniendo énfasis en las cuestiones claves a la causa del análisis forense. Para agilizar el proceso de Análisis Forense la precisión del documento, conviene realizar la documentación al mismo tiempo que se realiza el análisis para no olvidar ningún detalle y no tener que realizar el análisis una segunda vez. Esta documentación deberá presentarse en un Informe técnico y contener las pruebas encontradas y las conclusiones que se derivan de ellas, siendo lo mas claro y concreto sobre ellas para aclarar posibles dudas. Además de la documentación detallada, se generará un resumen ejecutivo que plasme en un lenguaje formal pero sin tecnicismos y de manera menos profunda, los pasos que se han seguido, pruebas obtenidas y conclusiones objetivas sobre ellas.. 44.

(45) 5. FASE IV: Caso práctico de análisis forense en iOS 10. En esta sección vamos a realizar un caso práctico de un análisis forense en un dispositivo iPhone 5. Primero se definirá el caso, y posteriormente se realizará el análisis del dispositivo siguiendo la metodología descrita anteriormente, para finalmente generar una documentación técnica y resumen ejecutivo del análisis forense.. 5.1 Definición del caso Don José Perez es el principal sospechoso de propinar una paliza a Juan Lopez que lo ha dejado en un estado de coma profundo y con pronóstico reservado. Al parecer, el acusado mantuvo una discusión con la víctima en un bar conocido de la ciudad de Zaragoza, próximo al lugar de la agresión durante esa misma tarde mientras ambos tomaban unas cervezas tras salir del trabajo con sus respectivos compañeros. Uno de los testigos de la discusión y amigo de la víctima, tomó varias fotografías durante esa misma tarde en las que aparecía el presunto agresor, lo que ha hecho posible su identificación. Los hechos ocurrieron durante la noche del 19 de Diciembre de 2016 alrededor a las 21:35 horas, en la calle Libertad del casco antiguo de Zaragoza, según testigos que llamaron a la policía y ambulancia. El individuo llevaba la cara cubierta con un pasamontañas, lo que hizo imposible su identificación, pero la descripción física y vestimenta descrita por los testigos coincide con las obtenidas en la foto que realizó el amigo de la víctima. El presunto agresor, mantiene su inocencia y asegura que se fue a casa poco después de la discusión a montar el árbol de Navidad. No hay testigos que puedan corroborar su coartada. Durante su detención, se incautó su teléfono móvil modelo iPhone 5 y fue introducido en una bolsa de Faraday para su preservación y posterior análisis. Se nos ha encargado la tarea de intentar obtener algún dato de su teléfono móvil iPhone 5 que sitúe al acusado geográficamente en el momento de la agresión para determinar si pudo ser el o no. El acusado ha proporcionado a la policía el passcode para desbloquear el teléfono, ya que insiste en su inocencia y ha colaborado en todo momento.. 5.2 Análisis del dispositivo. En este caso, disponemos de un terminal iPhone 5 y de su código de desbloqueo, así que seguiremos el procedimiento descrito en la metodología y realizaremos una copia de seguridad del terminal con iTunes para asegurar los datos y realizar el análisis sobre la copia de seguridad. Una vez obtenida la copia de seguridad, utilizamos la herramienta backup_tool.py para extraer su contenido y procedemos a su análisis en busca de información relevante en el intervalo de tiempo de los hechos, es decir en la fecha del 19 de Diciembre. Se obtendrán identificadores del dispositivo y número de teléfono para corroborar la pertenencia de dicho dispositivo al acusado. Se analizarán mensajes de whatasapp, sms, y llamadas de teléfono, ficheros multimedia, conexiones a redes Wi-Fi, bluetooth, aplicaciones instaladas que puedan contener imágenes o datos relevantes.. 45.

(46) Procedemos a describir los detalles del análisis forense en el siguiente apartado del Informe técnico.. 5.3 Informe técnico: Para el análisis forense del dispositivo iPhone 5, se ha procedido a realizar una copia de seguridad con el Software iTunes. Toda la investigación ha sido realizada sobre esta copia de seguridad, manteniendo el dispositivo inalterado y aislado electromagnéticamente en una bolsa de Faraday. Una vez obtenida la copia de seguridad, se ha extraído su contenido con la herramienta backup_tool.py de iPhone data protection. A partir del contenido de la copia de seguridad, se han analizado conversaciones de Whatsapp, sms, y llamadas de teléfono en un intervalo de tiempo de 2 horas antes y después de las 21:35 del 19 de Diciembre de 2016, sin obtener ninguna comunicación durante ese intervalo. Posteriormente, se han analizado las redes Wi-Fi a las que se conectó el dispositivo analizando el fichero com.apple.wifi.plist dentro del directorio SystemConfiguration. En este fichero se ha obtenido un dato relevante para la investigación, ya que verifica que este dispositivo se conecto automáticamente por última vez a una red Wi-Fi llamada MOVISTAR_42XX con BSSID e2:41:XX:XX:XX:XX el día 19 de Diciembre a las 21:28:51. Prueba 1:. 46.

(47) Tras hacer las comprobaciones pertinentes, comprobamos que es BSSID se encuentra en el domicilio del acusado, lo cual corrobora que el acusado llegó a su domicilio alrededor de las 21:29 y su teléfono móvil se conectó automáticamente a la red Wi-Fi. Analizando los ficheros multimedia se ha encontrado una imagen tomada esa misma noche de un arbol de Navidad realizada a las 21:56:05 en la posición GPS 41.6205527777778 -0.916336111111111. Esta posición GPS coincide con el domicilio del acusado.. Prueba 2: Imagen del árbol de Navidad tomada con el teléfono móvil del acusado:. 47.

(48) Prueba 3: Metadatos de la imágen de la prueba 2.. La prueba 3 certifica que el acusado se encontraba en su domicilio a las 21:56:05.. Aun así cabría la posibilidad de que el acusado hubiese entrado en su domicilio a las 21:28, dejado alli el teléfono móvil y vuelto al lugar de los hechos. Para certificar si eso es posible, situamos las coordenadas del domicilio del acusado y las coordenadas del lugar de los hechos en google maps, y calculamos su ruta mas rápida, que resulta ser en bicicleta, y cuesta 17 minutos la ida (prueba 4) y 20 la vuelta (prueba 5), puesto que en el segundo caso es una pendiente ascendente.. 48.

(49) Prueba 4: Ruta más rápida del domicilio del acusado al lugar de los hechos.. Prueba 5: Ruta mas rápida desde el lugar de los hechos al domicilio del acusado.. 49.

(50) Estos tiempos obtenidos en las pruebas 4 y 5 hacen imposible que el acusado realizase el trayecto a tiempo para llevar a cabo la agresión y también que regresase a tiempo a su domicilio para realizar la imagen geolocalizada en su domicilio. Con estas pruebas se concluye que es imposible que el acusado estuviese en el lugar de los hechos a la hora en que se produjo la agresión.. 5.4 Resumen Ejecutivo Para La realización del Análisis Forense del dispositivo iPhone 5 del acusado, se ha realizado una copia de seguridad del dispositivo y se han analizado los datos de esta copia de seguridad. Tras analizar el dispositivo, se han encontrado pruebas de que el individuo llego a su domicilio a las 21:28:51, ya que su teléfono móvil se conectó de manara automática a la red Wi-Fi de su domicilio en ese instante, y casi media hora después realizó una fotografía del árbol de Navidad que según su declaración acababa de montar. Esta fotografía fue tomada a las 21:56:05, también desde su domicilio. Se ha comprobado que el acusado no pudo estar en lugar de la agresión a la hora en que se produjo, y aún menos ir al lugar de la agresión y volver a su domicilio en un intervalo menor de 37 minutos. Conclusión: El acusado no pudo estar en el lugar de los hechos a la hora en que se produjo la agresión.. 50.

(51) Trabajo futuro: Como se ha podido observar en el presente trabajo, algunas de las herramientas open source para dispositivos iOS han quedado obsoletas con la aparición de iOS 10. En concreto, la herramienta iPhone Data Protection ha perdido algunas de sus funcionalidades como recuperar backups cifrados. De igual forma, el proyecto iPhone backup Analyzer ha dejado de funcionar completamente con la versión 10 de iOS. Estas dos carencias actuales abren la puerta a futuros desarrollos y trabajos en esta materia. De igual forma, el investigador Luca Todesco ha anunciado que liberará un Jailbreak próximamente (Durante la Navidad de 2016) para la versión 10.1, lo que implicaría el primer Jailbreak público y la posibilidad de probar y mejorar herramientas forenses que no han podido ser probadas hasta la fecha.. 51.

Referencias

Documento similar

6 Para la pervivencia de la tradición clásica y la mitología en la poesía machadiana, véase: Lasso de la Vega, José, “El mito clásico en la literatura española

Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

Es recomendable realizar más de una copia durante la adquisición de la evidencia física, destinando una de ellas para el análisis y examen (copia de trabajo),

De hecho, este sometimiento periódico al voto, esta decisión periódica de los electores sobre la gestión ha sido uno de los componentes teóricos más interesantes de la

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

En la parte central de la línea, entre los planes de gobierno o dirección política, en el extremo izquierdo, y los planes reguladores del uso del suelo (urbanísticos y

ante el caso expuesto, para evitar que la evidencia se altere por el mal manejo de ésta. Evaluación del caso. Situación del caso que el forense informático investigará. Aquí se