iPhone Backup Analyzer 2 - presentation [ITA]

818 views
718 views

Published on

Presentation of iPhone Backup Analyzer 2

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
818
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

iPhone Backup Analyzer 2 - presentation [ITA]

  1. 1. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Software open source per l’analisi di backup iOS Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it Universit`a degli Studi di Brescia Dipartimento di Ingegneria dell’Informazione Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  2. 2. Outline Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins
  3. 3. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Software open source per l’analisi della directory di backup di un dispositivo iOS. Licenza MIT Permission is hereby granted, free of charge, [...] to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, [...], subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  4. 4. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Scritto in Python 2 con interfaccia utente sviluppata in Qt, quindi multipiattaforma (Windows, Linux, Mac Os X). Viene distribuito in forma di sorgente (script Python e file Qt Designer) e come eseguibile Windows precompilato. http://www.ipbackupanalyzer.com Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  5. 5. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Cosa `e: Strumento per l’analisi dei dati di backup. Strumento per l’esplorazione degli archivi contenuti nel backup. Gratuito, con sorgenti aperti, il cui funzionamento pu`o essere verificato da perizia indipendente. A quanto mi risulta l’unico software di questo tipo presente nel mondo open source. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  6. 6. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Cosa NON `e: Un software forense ”standard” (ma quale lo `e?). Un sistema di analisi ”automatico”: le funzionalit`a di reportistica sono impostate ma non ancora complete. Un sistema completo. Ovviamente, nulla impedisce che un domani lo sia! Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  7. 7. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 - iPhone Backup Analyzer 2 Di cosa ha bisogno: Sviluppo nuove funzionalit`a. Verifiche indipendenti di funzionamento. Individuazione di errori. Tutto quello che ci pu`o venire in mente. Siete tutti invitati! Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  8. 8. Outline Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins
  9. 9. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup Ogni volta che un dispositivo iOS viene sincronizzato con un computer, ad esempio mediante l’applicativo iTunes R , ne viene eseguito un backup (salvo che non sia stato disattivato manualmente). Il backup pu`o essere cifrato, ma di default `e in chiaro. Il backup `e incrementale: viene mantenuta solo una copia per ciascun dispositivo, la pi`u recente. Eccezione se un dispositivo viene resettato. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  10. 10. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup mediante iTunes Canale privilegiato per l’esecuzione di backup di iDevices. Non si possono utilizzare metodi hardware/software per garantire la non modifica del dispositivo in esame. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  11. 11. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup mediante software open source Canale alternativo per la sola estrazione dati. Il backup realizzato `e identico a quello realizzato da iTunes. In effetti si tratta di una emulazione del protocollo di backup di iTunes. $ ./idevicebackup2 backup new backup dir Anche in questo caso non si possono utilizzare metodi hardware/software per garantire la non modifica del dispositivo in esame. Tuttavia il software `e open source e se ne pu`o quindi analizzare il funzionamento. Il software `e disponibile all’indirizzo: http://www.libimobiledevice.org/ Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  12. 12. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup Cosa NON contiene: File multimediali sincronizzati mediante iTunes. Email (sincronizzate con account esterni). Eseguibili delle App installate. Eseguibili di sistema. Password (o meglio, in realt`a ci sono ma sono cifrate). Dati delle applicazioni considerati temporanei o nella directory ”Cache”. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  13. 13. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup Cosa contiene: Tutto il resto... Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  14. 14. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iOS Backup Che tipi di file pu`o contenere: Database SQLite3. File PLIST. File PLIST binari. Altro (file di testo, file multimediali, file binari in formato proprietario). I formati SQLite e PLIST sono i formati privilegiati per l’archiviazione di informazioni sotto iOS. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  15. 15. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Database SQLite Database relazionale contenente una o pi`u tabelle, interamente racchiuso in un singolo file. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  16. 16. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Cos’`e un database relazionale Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  17. 17. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins File PLIST File di testo in formato simile a XML per l’archiviazione di informazioni strutturate e gerarchiche. Contiene diversi tipi di dati racchiusi tra tag standard: <string>testo</string> <integer>10</integer> <array> <string>testo1</string> <string>testo2</string> </array> I file PLIST possono essere archiviati in forma binaria (compatta) per risparmiare spazio. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  18. 18. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Esempio di PLIST <plist version="1.0"> <dict> <key>BookmarksData</key> <array> <data> CAAQABgDIAAqJ1ZpYSBWYWxsb... </data> <data> FHUYGHFGIYhu4789HIGUVUIGYU...... </data> <key>BookmarksData</key> <array> ... Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  19. 19. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Posizione backup In OS X: (your home directoy)/ Library/ Application Support/ MobileSync/ Backup/ In Windows XP: C: Documents and Settings user Application Data Apple Computer MobileSync Backup In Windows Vista/Seven: C: Users user AppData Roaming Apple Computer MobileSync Backup Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  20. 20. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Esempio di directory di backup I backup sono divisi in cartelle denominate con l’UUID (Universally Unique IDentifier) del dispositivo di origine. Se esistono diverse copie di un backup (solo per dispositivi resettati), quelle archiviate sono identificate anche mediante data e ora. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  21. 21. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Contenuto directory backup Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  22. 22. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Contenuto del backup Manifest.mbdb: file binario con l’indice dei file contenuti nel backup e i loro attributi. Status.plist: file PLIST con informazioni sull’effettuazione del backup. Manifest.plist: file PLIST che descrive il contenuto del backup. Info.plist: file PLIST con informazioni sul dispositivo oggetto del backup. Tutti i singoli file copiati dal filesystem del dispositivo, senza distinzione di path. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  23. 23. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Info.plist Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  24. 24. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Manifest.plist Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  25. 25. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Status.plist Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  26. 26. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Organizzazione dei file I file contenuti nel backup sono divisi in domini, ovvero raggruppamenti logici di contenuti. In iOS 5, i domini sono: AppDomain: dati delle applicazioni non di sistema. CameraRollDomain: contenuto della galleria fotografica. HomeDomain: dati delle applicazioni di sistema. KeychainDomain: dati relativi al portachiavi. ManagedPreferencesDomain: vuoto. MediaDomain: elementi multimediali non legati alla fotocamera (ad es. allegati degli SMS). (continua) Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  27. 27. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Organizzazione dei file (continua) MobileDeviceDomain: provisioning profiles. RootDomain: dati di cache della geolocalizzazione. SystemPreferencesDomain: configurazione dei componenti core di iOS. WirelessDomain: configurazione della parte telefonica del dispositivo. Gli elementi del dominio delle applicazioni sono a loro volta divisi in sottodomini, uno per ciascuna applicazione. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  28. 28. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Organizzazione dei file Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  29. 29. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Decodifica dei nomi La prima fase dell’analisi `e ricostruire il legame tra il nome file reale (dominio - dottodominio - path - filename - ext) e il nome effettivo nel backup (stringa esadecimale di 40 caratteri). I dati reali sono contenuti nel file Manifest.mbdb, il nome effettivo si ricava calcolando l’hash SHA1 del reale, nella forma: domain-subdomain-path/name ⇓SHA1 nome effettivo Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  30. 30. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Struttura file MBDB Header Record Record Record "mbdb50" uint8[6] Domain string Path string Link Target string Data Hash string unknown string Perm. uint16 unknown uint32 unknown uint32 User ID uint32 Group ID uint32 m. time uint32 a. time uint32 c. time uint32 File size uint64 Flag uint8 Property count uint8 Property Property Name string Value string Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  31. 31. Outline Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins
  32. 32. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Struttura iPBA Analisi PLIST Analisi SQLite Analisi PLIST binari Decodifica ed esplorazione struttura backup Visualizzazione testo e immagini Visualizzazione file binari Analisi EXIF SMS / iMessage Lista chiamate Rubrica indirizzi Parametri di connessione Stato Safari Contatti Safari Preferiti Safari Thumbnails History e preferiti YouTube ... iPBA (ad oggi) Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  33. 33. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Schermata principale Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  34. 34. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Visualizzatore di file PLIST Analisi del contenuto del file Manifest.plist. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  35. 35. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Visualizzatore di immagini Preview, dati EXIF, informazioni file. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  36. 36. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Visualizzatore di database SQLite3 Visualizzazione del database del log chiamate. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  37. 37. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Visualizzatore di file binari in HEX Visualizzazione esadecimale di un file. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  38. 38. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Analisi di una applicazione Esempio della procedura di reverse engineering del contenuto del backup di una applicazione. Caso: nel backup individuo i dati di un’applicazione (RunKeeper, applicazione usata per registrare attivit`a di jogging) e devo estrarne informazioni utili per una indagine. Che informazioni mi aspetto di individuare? I dati relativi all’attivit`a sportiva? Proviamo su un dispositivo di test: installiamo l’appplicazione, generiamo dei dati noti e tentiamo di individuarli nel backup di prova. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  39. 39. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Analisi applicazione - RunKeeper Analisi del contenuto del backup. Individuiamo un database SQLite contenente una tabella ”trips”. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  40. 40. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Analisi applicazione - Runkeeper Incrociamo i dati contenuti nel database con i dati visualizzati sul dispositivo di test, e verifichiamo che le nostre supposizioni siano confermate. start date: 1301423993.75 convertito da Unix Epoch: Tue Mar 29 2011 20:39:53 GMT+2 distance: 4719.983374 in chilometri: 4.72 km elapsed time: 2627.6 convertito da secondi a minuti: 43.787 minuti = 43:48 minuti calories: 322 Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  41. 41. Outline Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins
  42. 42. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Struttura modulare iPBA 2 `e stato pensato per l’analisi del backup a scopo di studio. Successivamente ci si `e accorti che la complessit`a dei dati non permette un’analisi consistente semplicemente analizzando gli elementi singoli. ´E stato quindi deciso di implementare un sistema modulare, composto da singoli moduli ciascuno specializzato nell’analisi di un archivio specifico. Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  43. 43. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Struttura modulare Esempio di complessit`a: struttura rubrica contatti. ABPerson ROWID First Last ... ABMultiValue UID record_id property label value ABMultiValueLabel ABMultiValueEntry parent_id key value ABMultiValueEntryKey 3 4 5 22 phone number email address multivalue entry (address) url ABGroupMembers UID group_id member_id ABGroup ROWID name ABThumbnailImage record_id data ABFullSizeImage record_id data AddressBookImages.sqlitedb AddressBook.sqlitedb Sample values for the "property" field of the "ABMultiValue" table Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  44. 44. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - rubrica contatti Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  45. 45. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - elenco chiamate Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  46. 46. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - reti WiFi contattate Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  47. 47. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - cronologia Safari Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  48. 48. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - preferiti Safari Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  49. 49. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - stato Safari Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  50. 50. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - elenco SMS/iMessage Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  51. 51. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugin - thumbnails Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  52. 52. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins iPBA 2 Plugins Molti altri plugin, ed altri ancora in sviluppo o in progetto. Tra quelli attualmente presenti nella release si citano: Skype Viber Whatsapp Informazioni generali sul telefono e sul backup Applicativo Note Reti WiFi analizzate (range IP, dominio, MAC address dell’AP) ... Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  53. 53. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Conclusione iPBA `e liberamente scaricabile all’indirizzo: http://www.ipbackupanalyzer.com I sorgenti sono liberamente disponibili su GitHub: https://github.com/PicciMario/iPhone-Backup-Analyzer Ogni contributo allo sviluppo `e bene accetto! :-) Sviluppo nuovi moduli Test/individuazione errori Sviluppo nuove funzionalit`a Suggerimenti Report di uso in casi pratici ... Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2
  54. 54. Presentazione iOS Backup iPBA - Features iPBA 2 - Plugins Conclusione Grazie per l’attenzione! Mario Piccinelli mario.piccinelli@ing.unibs.it Dott. Mario Piccinelli mario.piccinelli@ing.unibs.it iPBA 2 - iPhone Backup Analyzer 2

×