20.03.2014_dalchecco

MOBILE FORENSICS
Tecniche di acquisizione e soluzioni Open Source
Paolo Dal Checco
Security Summit 2014 a Milano
Percorso Professionale Legale
Programma dell’intervento
n 
n 
n 
n 
n 
n 
Cenni modalità di acquisizione e strumenti
Acquisizione logica dispositivi iOS e Android
Acquisizione fisica di dispositivi Android
Cenni su Analisi dati estratti da iOS e Android
La tecnica dei “marker”
Link Analysis
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
2
•  Copia dei file del
file system
•  Recupero di
maggiori
informazioni
•  Possibilità di
recuperare record
cancellati
all’interno di file
(es. SQLite
deleted records,
thumbnails)
•  Problemi di
accesso con
passcode
•  Richiede più
tempo
Fisica
•  Accesso diretto ai
“record”
memorizzati dal
telefono all’interno
delle diverse aree
di interesse (es.
Rubrica,
messaggi, registro
chiamate, ecc.)
•  Problemi di
accesso con
passcode
•  Metodo veloce
File System
Logica
Metodologie di acquisizione
•  Copia bit-a-bit
del dispositivo
•  Possibilità di
superare i blocci
con codice
•  Possibilità di
recuperare
record e interi
file cancellati
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
3
Strumenti commerciali
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
4
Software di backup
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
5
Mobile Forensics con l’Open Source
Libimobiledevice
Sql Lite database browser
adb
The Sleuth Kit
adbextractor
Bulk extractor
androguard, apktool
Strings
iPBA 2 (iPhone Backup Analyzer)
Scalpel/Foremost
Bitpim
Hex editor come XXD e Ghex2
AFLogical OSE
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
6
Acquisizione logica di iOS con DEFT
n 
h"p://www.libimobiledevice.org u 
n 
n 
supporta iPhone®, iPod Touch®, iPad® and Apple TV®N non richiede jailbreak e non dipende da librerie esterne E’ in grado di: leggere informazioni circa il disposi1vo u  eseguire backup/restore del disposi1vo u  Montare parte del filesystem (come iFunBox) u  gesDre icone e applicazioni u  leggere addressbook/calendars/notes e bookmarks u  (uDlizzando libgpod) sincronizzare musica e video u 
n 
Può essere considerata quasi un’acquisizione filesystem Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
7
Acquisizione logica di iOS con DEFT
n 
n 
n 
UlDma versione la 1.0.7 (dev/unstable 1.1.5), testata con iOS firmware 7.0.6 su Linux, Mac OS X e Windows. Ancora qualche “glitch” sul Trust Dialog, novità di iOS 7.0.1 Testata anche su iOS 7.1 e gesDsce corre"amente il pairing e il backup, introducendo un nuovo Trust Dialog anche per il PC Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
8
Acquisizione logica di iOS con DEFT
n 
n 
n 
n 
Il disposiDvo deve poter essere sbloccato con il PIN Gli sviluppatori stanno lavorando sul paring con il PC e l’uDlizzo del file di escrow/lockdown Se il disposiDvo è bloccato, infaa, è sufficiente reperire il file di lockdown da un PC dove è stato sincronizzato in passato, per poter eseguire il backup anche senza conoscere il PIN (es. in Windows 7/8 si trova in C:\Program Data\Apple\Lockdown) Il file va copiato in /var/lib/lockdown, si può verificare tramite il comando “idevicepair validate” se è il cerDficato è corre"o Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
9
Acquisizione logica di iOS con DEFT
n 
n 
Se il cerDficato di lockdown è presente (o se il disposiDvo è sbloccato) si potrà già osservare il contenuto del disposiDvo tramite il file browser Si avvia anche il backup ma poi c’è un errore dovuto al passaggio scorre"o del cerDficato di escrow Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
10
Acquisizione logica di iOS con DEFT
• 
• 
• 
• 
• 
• 
idevicebackup: create or restore backup for devices running iOS prior to
Idevicebackup2: create or restore backup for devices running iOS 4 or later
idevicedate: display the current date or set it on a connected device
idevicedebugserverproxy: remote debugging proxy
idevicediagnostics: interact with the diagnostics interface of a device
ideviceenterrecovery: make a device with the supplied 40-digit UDID enter recovery
mode
• 
idevice_id: prints the device name or a list of attached devices, showing the UDID which
is a 40-digit hexadecimal number of the device for which the name should be retrieved
• 
• 
• 
• 
• 
• 
ideviceinfo: shows information about the first connected device
idevicepair: manage pairings with devices and host
ideviceprovision: manages provisioning profiles on a device
idevicescreenshot: gets a screenshot from the connected device
idevicesyslog: relays syslog of a connected device
plistutil: reads and convert plist files to and from XML format
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
11
Acquisizione logica di iOS con DEFT
Usage: idevicebackup2 [OPTIONS] CMD [CMDOPTIONS] DIRECTORY
Create or restore backup from the current or specified directory.
commands:
backup create backup for the device
--full
force full backup from device.
restore restore last backup to the device […]
info
show details about last completed backup of device
list
list files of last completed backup in CSV format
unback unpack a completed backup in DIRECTORY/_unback_/
encryption on|off [PWD]
enable or disable backup encryption
changepw [OLD NEW] change backup password on target device
cloud on|off
enable or disable cloud use (requires iCloud account)
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
12
Acquisizione logica di iOS con DEFT
• 
Preparazione del dispositivo:
• 
Collegare il device al PC dove è installata la libimobiledevice
(se VM verificare che il device sia “attached” al guest e non
all’host)
Sbloccare il dispositivo con il PIN (compare il seguente
warning)
• 
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
13
Acquisizione logica di iOS con DEFT
•  Se iOS > 7.0 autorizzare il
paring con il PC (ancora
instabile…)
•  Disabilitare l’auto lock (per
evitare che il processo di
backup si blocchi)
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
14
Acquisizione logica di iOS con DEFT
•  Se il backup è protetto da password ed è nota, la si può
disabilitare sul device tramite iTunes o idevicepair
•  Meglio comunque fare il backup criptato e poi decriptarlo
successivamente tramite tool come iphone-dataprotection
con lo script backup_tool.py
•  Se la password non è nota, si può tentare il brute force con
il tool (commerciale) http://www.elcomsoft.it/eppb.html
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
15
Acquisizione logica di iOS con DEFT
• 
Testiamo la connessione con il dispositivo tramite il
comando “idevice_id -l” ottenendo l’UUID del device
• 
• 
• 
Meglio ancora ideviceinfo –s, output più completo
Funziona anche se il dispositivo è protetto da pin
Altri comandi utili per reperire informazioni dai dispositivi
sono “ideviceinfo” e “idevicesyslog”
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
16
Acquisizione logica di iOS con DEFT
• 
Lanciamo il comando di backup tramite “idevicebackup2
backup ./folder”
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
17
Acquisizione logica di iOS con DEFT
• 
Nel folder prescelto, troveremo una cartella il cui nome
corrisponde all’UDID del dispositivo acquisito
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
18
Acquisizione logica di iOS con DEFT
• 
Il folder conterrà file inintelligibili che, per poter fare un
esame diretto, vanno convertiti tramite il comando
“idevicebackup unback ./folder” (il dispositivo deve essere
connesso oppure va specificato UDID)
• 
“folder” deve essere quello dove sono contenuti gli UUID
dei dispositivi da cui avete estratto i dati
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
19
Acquisizione logica di iOS con DEFT
• 
Quando si estrae il backup, il dispositivo deve essere
connesso, altrimenti si ottiene un errore a meno di non
indicare esplicitamente l’UUID del device in esame:
• 
“folder” deve essere quello dove sono contenuti gli UUID
dei dispositivi da cui avete estratto i dati
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
20
Acquisizione logica di iOS con DEFT
• 
La conversione conterrà diverse cartelle spesso
autoesplicative da esplorare:
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
21
Acquisizione logica di iOS con DEFT
• 
Diversi database con contenuti rilevanti sono in formato
SQLITE
• 
Utilizziamo software come SQLiteman per aprire i
database, come ad esempio le chat Whatsapp
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
22
Acquisizione logica di iOS con DEFT
• 
Più comodo ed esaustivo parificare i dati ottenuti tramite il
tool scritto da Mario Piccinelli,
“iPBA” (www.iphonebackupanalyzer.com)
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
23
Acquisizione logica di Android con DEFT
•  Può essere considerata quasi un’acquisizione filesystem •  Se esegue tramite il tool ADB, Android Debug Bridge
•  http://developer.android.com/tools/help/adb.html.
•  Utility command line inclusa nell’SDK Google Android che
permette di comunicare con l’emulatore Android o un
device connesso via USB per:
–  Controllare il dispositivo via USB
–  Copiare file da e verso il dispositivo
–  Installare e disinstallare applicazioni
–  Eseguire comandi da shell
–  Aprire una shell sul dispositivo
–  Fare debug di applicazioni
–  Backup/restore (Android >= 4.0)
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
24
Acquisizione logica di Android con DEFT
• 
• 
• 
Preparazione del dispositivo:
Abilitare Developer Options -> USB Debugging
Se manca il menù, andare in Impostazioni, About e premere 7 volte su
Build Number
• 
Sbloccare il dispositivo e impedire di andare in lock automaticamente
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
25
Acquisizione logica di Android con DEFT
• 
Una volta connesso il dispositivo, se contiene Android 4.2.2 o superiori è
necessario confermare il fingerprint del computer per autorizzare la
connessione
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
26
Acquisizione logica di Android con DEFT
• 
Per verificare se il dispositivo è stato riconosciuto, digitare “adb
devices”
• 
Nel caso di problemi di connessione, provare a riavviare il server adb
tramite il comando “adb kill-server” seguito dal comando “adb startserver”
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
27
Acquisizione logica di Android con DEFT
• 
Avviare il backup tramite il comando “adb
backup –apk –shared –all –f backup.ab” e
confermare la richiesta di full backup
• 
E’ anche possibile criptare il backup
inserendo una password nell’apposito campo
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
28
Acquisizione logica di Android con DEFT
• 
Il backup produce un archivio non immediatamente decomprimibile:
• 
Per convertire l’archivio in un normale tar eseguire “dd if=backup.ab
bs=1 skip=24|openssl zlib -d > backup.tar”
Se il backup è criptato, utilizzare http://sourceforge.net/projects/
adbextractor o https://github.com/nelenkov/android-backup-extractor
• 
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
29
Acquisizione fisica di Android con DEFT
• 
• 
• 
Anteprima di ciò che sarà presentato alla DEFTCON 2014
Marco Giorgi (DEFT) sta coordinando un team che lavora sullo sviluppo
di un bootloader per Android che, all’avvio, esegue una copia forense
bitstream in read-only del contenuto della flash del dispositivo
Work in progress ma i primi test su un ristretto numero di dispositivi sono
positivi
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
30
Cenni su analisi dei dati estratti con DEFT
•  Due alternative:
• 
Manuale
–  Carving, parsing, estrazione stringhe, hex
–  SQL Browser
–  Plist/text/xml viewer
• 
Automatica
–  iPhone Backup Analyzer (iPBA2)
–  Skype Xtract, Whatsapp Xtract, etc…
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
31
Esperimenti con i marker
•  Abbiamo acquistato diversi telefoni da usare come
• 
“cavie”
Abbiamo utilizzato i telefoni per alcuni mesi, con profili
di prova, eseguendo tutte le operazioni tipiche degli
smartphone: sms, chat, telefonate, scambio dati,
email, navigazione, installazione applicazioni, etc…
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
32
Esperimenti con i marker
•  Nel creare questi “digital corpora” si utilizzano marker
testuali e temporali, scegliendo una notazione che
permetta poi di ritrovarli tramite ricerca testuale
•  Si tiene traccia di ogni utilizzo dei marker prendendo
sempre nota del timestamp e contesto in cui
compaiono
•  A questo punto acquisiamo i dati (basta anche una
logical/filesystem) come abbiamo visto poco fa e
cerchiamo i marker che abbiamo utilizzato
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
33
Esperimenti con i marker
n 
n 
Proviamo, ad esempio, a cercare il marker “wx1001yz”. Un semplice
“grep” ci mostra che si trova in due posti:
u  iphone4/Backup Service/var/mobile/Library/SMS/sms.db
u  nexuss/data/data/com.android.providers.telephony/databases/
mmssms.db
Vediamo di cosa si tratta…
SQLite!
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
34
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
35
Esperimenti con i marker
n 
Cerchiamo il marker wx1023yz: chat di gruppo tra Roberta, Steve e Alex
Otteniamo risultati sia dall’iPhone4, sia dal Nesus S, sia dall’iPhone 5
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
36
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
37
Esperimenti con i marker
n 
Ma invece di aprire e interpretare singolarmente i DB Sqlite, possiamo
usare Skype Xtract di Nicodemo Grawronski, tool presente in DEFT
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
38
Esperimenti con i marker
n 
Otteniamo quindi un report fruibile e chiaro
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
39
Esperimenti con i marker
n 
n 
E persino testare l’estrazione “in bulk” con Bulk Extractor, anch’esso
presente in DEFT, sui folder contenenti l’esportazione dei file, cercando
poi tra i risultati i marker
Otterremo così URL, ricerche fatte sul web, indirizzi email (con
istogrammi), kml, json, numeri di telefono, carte di credito, domini, pcap,
zip, GPS, hex, vcards, etc…
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
40
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
41
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
42
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
43
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
44
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
45
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
46
Esperimenti con i marker
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
47
Link Analysis
n 
n 
Per concludere, hanno sempre più importanza non solo le analisi dei
singoli cellulari ma anche gli incroci tra i dispositivi analizzati
Prodotti commerciali che fanno Link Analysis:
u 
u 
n 
UFED Link Analysis (LKA)
Micro Systemation XAMN Phone Analytics
Prodotti Open Source:
u 
È in corso di sviluppo da parte di Nicodemo Grawronski (DEFT) di un softtware che
sarà inserito in una delle prossime versioni di DEFT. Il software analizzerà i folder
contenenti due acquisizioni (logical o filesystem) e incrocerà i dati presentando le
analisi dei collegamenti tra i dispositivi (sms, skype, whatsapp, reti wireless, GPS,
etc…)
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
48
Link Analysis
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
49
Link Analysis
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
50
Link Analysis
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
51
Link Analysis
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
52
Invitiamo chi fosse interessato al progetto DEFT
dell’Associazione senza fini di lucro “DEFT Association”
può iscriversi gratuitamente alla DEFTCON 2014 che si
terrà venerdì 11 aprile, ore 9.30-17.00 a Milano, Edificio 3
Gino Cassinis, Piazza Leonardo Da Vinci 32.
Moderazione di Francesca Bosco con interventi del DEFT
Team e Stefano Zanero, Mattia Epifani, Luigi Ranzato,
Giuseppe Vaciago, Giovanni Ziccardi, Andrea Ghirardini,
Pasquale Stirparo, Marco Carlo Spada, Marco Albanese,
Federico Gattirio, Giacomo Zucco e Carola Frediani
Programma e link per le iscrizioni sul sito
www.deftlinux.net
Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
53
Chi sono
n 
n 
n 
n 
n 
Digital Forensics Expert per Procure, Tribunali, Aziende, AvvocaD, PrivaD Ph. D. in InformaDca (Computer & Network Security) Studio “Digital Forensics Bureau” (DiFoB) di Torino DEFT AssociaDon (behind DEFT Linux & DART) Socio CLUSIT, IISFA, AIP Mail Twi"er
Web
Tel
[email protected][email protected] @forensico – @difob h"p://www.dalchecco.it – h"p://www.difob.it 011 0438192 – 327 181 8431 Mobile Forensics – Tecniche di acquisizione e soluzioni Open Source
54