Publicado el 29 de Noviembre del 2018
732 visualizaciones desde el 29 de Noviembre del 2018
6,3 MB
62 paginas
Creado hace 10a (20/10/2013)
Análisis Forense
Iphone
Carlos Rebollo
IDICE
Analisis del Backup ..................................................................................... 3
Copia bit a bit a través de SSH .................................................................. 25
Atacar por fuerza bruta el passcode ......................................................... 32
Como crackear el keychain ....................................................................... 42
Accediendo al Iphone con Ramdisk .......................................................... 52
Analisis del Backup
Vamos a analizar el Backup que genera iTunes en el ordenador. Existen otros métodos
para la extracción de datos del iPhone como puede ser la copia íntegra del contenido
mediante el uso del comando “dd” a través del ssh (requiere tener el jailbreak) pero lo
dejaré para otra entrada futura.
1. Ubicación de las copias de seguridad.
Dependiendo de si nuestro ordenador corre Mac OS o Windows se ubicará en sitios
distintos; a continuación se muestra una tabla con las ubicaciones:
SISTEM A
OPERATIVO
UBIC ACIÓ N
Windows XP
C:\Documents and Settings\[USUARIO]\Application
Data\Apple Computer\Mobile Sync\Backup\
Windows 7
C:\Users\[USUARIO]\AppData\Roaming\Apple
Computer\Mobile Sync\Backup\
Mac OS
Users/[USUARIO]/Library/Application Support/Mobile
Sync/Backup
Dentro de la carpeta Backup aparecen subcarpetas con nombres como este:
“9f2df5d47_____________________a9c2cba7c” (no voy a poner el mio entero jeje) que
es el UDID (Unique Device Identifier) que es un código hexadecimal que se crea la
primera vez que se conecta el iPhone a iTunes y que lo identifica de manera única.
Si accedemos a esta ruta y navegamos por las carpetas veremos solo que hay ficheros
con nombres “muy extraños” (que son el resultado de un hash) que no nos aclaran nada.
2. Ficheros importantes
Junto a esta cantidad de ficheros ilegibles aparecen 4 ficheros que si se pueden leer.
2.1 Info.plist:
Este fichero contiene multiple información sobre el dispositivo: IMEI, número de teléfono,
nombre del dispositivo, nombre de todas las aplicaciones instaladas y demás
información.
Solo con este archivo, hemos obtenido ya mucha información clave.
2.2 Manifest.plist:
Este fichero contiene detalles de aplicaciones asi como una referencia a si el terminal
tiene el passcode activado y si el backup tiene cifrado
2.3 Status.plist:
Este fichero contiene información relativa al backup: Versión con que ha sido hecho,
fecha de realización y si el backup ha sido completo.
2.4 Manifest.mbdb:
Se trata de un fichero binario que contiene información sobre el resto de archivos del
backup: tamaños de ficheros, estructura de los datos, hashes SHA-1, etc
Como la información es un poco ilegible, vamos a pasar una herramienta creada por
Alejando Ramos (@aramosf) llamada listmanifest.pyque basándose en la estructura del
binario “parsea” el Manifest y imprime un .csv por pantalla que nos hace más fácil la
lectura del fichero.
Tras pasar la herramienta, pegar el resultado en el excel y hacer un mínimo tratamiento
de los datos, nos ha quedado la siguiente tabla con información:
3. Traducir ficheros a nombres legibles
Estos titulos que no entendemos a priori aparecen porque Apple realiza un Hash SHA-1
a la ruta donde se aloje el fichero.
Para entenderlo vamos a mostrar un ejemplo.
Para la ruta “HomeDomain-Library/AddressBook/AddressBookImages.sqlitedb” Apple
ejecuta un SHA-1 y obtiene el valor: “cd6702cea29fe89cf280a76794405adb17f9a0ee”.
Mediante un diccionario muy grande con las rutas estándares se pueden retornar los
ficheros al formato original. Otra opción es parsear el Manifest.mbdb y ya tenemos todas
las rutas
Existen aplicaciones para hacer estas conversiones, pero casi todas las que he probado
me han parecido un poco malas porque no son capaces de hacer la traducción de todos
los datos con un solo click. Es necesario ir aplicación por apliación.
Dentro de los programas que he probado, el que más me ha gustado ha
sido http://www.icopybot.com/itunes-backup-manager.htm que está sólo disponible para
Mac y Windows ( es una lástima que no está para Linux =S ).
Seleccionas las aplicacion que quieras retornar al valor original y la extrae. “iOS Files”
congrega los ficheros del teléfono y del sistema que se guardan en el Backup.
Como se ve en la imágen, es necesario ir aplicación por aplicación dando a extraer. Con
mucha paciencia se consigue traducir todo.
Finalmente nos quedan todas las carpetas organizadas y listas para ser abiertas y
tratadas.
Ahora os voy a mostrar las rutas de los ficheros más “interesantes” de analizar así como
la estructura de los mismos y algunas aplicaciones para abrirlos.
4. Tipos de ficheros
Los tipos de ficheros que nos encontraremos serán los siguientes:
4.1 Sqlite:
Se trata de un tipo de base de datos que no necesita instalación previa. En el propio
fichero de la base de datos está contenida toda la información.
Os dejo 2 links con más información sobre la estructura interna de sqlite por si queréis
echar un vistazo. No lvoy a ponerlo porque se podría hacer un Post entero solo
explicando esto.
http://www.sqlite.org/fileformat.html
http://forensicsfromthesausagefactory.blogspot.com.es/2011/05/analysis-of-record-
structure-within.html
4.2 Plist:
Es un tipo de fichero de propiedades que contiene información de aplicaciones y del
propio sistema.
Dejo otro link para ver la estructura interna del fichero.
https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/ma
n5/plist.5.html
5. Aplicaciones parar abrir los ficheros
El primer tipo de aplicaciones que debemos usar es un editor hexadecimal. Un editor
hexadecimal abre absolutamente cualquier fichero y nos lo muestra en “bruto”. De esta
manera siempre podemos visualizar el contenido del fichero aunque no aparezca de una
forma bonita.
Algunos que he encontrado por la web han sido:
- Es multiplataforma y me ha gustado mucho el diseño que
tiene: http://sourceforge.net/projects/wxhexeditor/
- Windows: http://www.hexedit.com/download.htm
- Mac OS: http://ridiculousfish.com/hexfiend/
- GNU/Linux: http://home.gna.org/bless/downloads.html
No está de más que a parte de poder leer los datos en bruto también los leamos con
aplicaciones específicas para cada cosa, asi lo siguiente que vamos a necesitar es un
lector de sqlite
- El Multiplataforma que más me ha
gustado: http://sourceforge.net/projects/sqlitebrowser/
- Windows: http://www.softpedia.es/programa-SQLite-Database-Browser-141732.html
- Linux: http://sqliteadmin.orbmu2k.de/
Como última aplicación, no estaría mal disponer de un lector específico para archivos
.plist, ya que apple usa de forma muy habitual estos ficheros para almacenar
informacióm
- Windows: http://www.icopybot.com/plist-editor.htm
- Mac OS: http://www.fatcatsoftware.com/plisteditpro/
- GNU/Linux: http://scw.us/iPhone/plutil/
6. Paths importantes
Las Rutas que muestro a continuación han sido sacadas de un Backup de iOS en la
versión 6.1. Es posible que si se buscan estas mismas rutas en versiones anteriores o
futuras, no coincidan.
6.1 iOS Files
En la Carpeta “iOS Files” está concentrada la mayoría de información a analizar.
6.1.1 Contactos
Los contactos son almacenados en una base de datos úbicada en: /iOS
Files/Library/AddressBook/AddressBook.sqlitedb
También podemos encontrar las imágenes pertenecientes a los contactos en: /iOS
Files/Library/AddressBook/AddressBookImages.sqlitedb
6.1.2 historial llamadas
El historial de llamadas lo podemos encontrar en: /iOS
Files/Library/CallHistory/call_history.db
6.1.3 SMS
Los SMS podemos encontrarlos en: /iOS Files/Library/SMS/sms.db
6.1.4 Notas
Las notas se encuentra ubicadas en: /iOS Files/Library/Notes/notes.db
6.1.5 Fotos
Las fotos son almacenadas en 2 carpetas. La ubicación donde se almacenan cuando se
hacen es: /iOS Files/Media/DCIM/100APPLE
Si se tiene habilitada la opción de subir a icloud estarán aquí: /iOS
Files/Media/PhotoStreamsData/ …
En el Fichero Photos.sqlite (/iOS Files/Media/PhotoData/Photos.sqlite) podemos
encontrar información sobre todas las fotos en el teléfono.
6.1.6 Wifis
Poedmos ver los Wifis que tiene guardados el teléfono mediante la
ruta: /iOSFiles/SystemConfiguration/com.apple.wifi.plist.
Una vez ubicados las principales bases de datos relativas al funcionamiento del teléfono
pongo la ruta donde se encuentran aplicaciones que casi todo el mundo usa.
6.2 Whatsapp
La carpeta donde se encuentra la información de Whatsapp
es: /net.whatsapp.WhatsApp/
Más concretamente, el fichero donde encontraremos las conversaciones es el
siguiente:/net.whatsapp.WhatsApp/Documents/ChatStorage.sqlite
También podemos ver los contactos que tiene en la agenda de Whatsapp
en: /net.whatsapp.WhatsApp/Documents/Contacts.sqlite
Es posible también ver las fotos recibidas y descargadas en el iPhone a través de la
aplicación Whatsapp en:/net.whatsapp.WhatsApp/Library/Media
6.3 Line
La carpeta donde se encuentra la información de Line es: /jp.naver.line/
En concreto, las conversaciones quedan guardadas
en: /jp.naver.line/Documents/talk.sqlite
Copia bit a bit a través de SSH
Después de mostrar las rutas donde se almacenan los datos importantes v
Comentarios de: Analisis Forense Iphone (0)
No hay comentarios