Italian deft 7 manual 90

25
65 Manuale DEFT 7 6.10 Xplico Il progetto DEFT ha sempre sostenuto, sin dalle primissime release di DEFT Linux, l’evoluzione del progetto Xplico 73 . L’utilizzo di Xplico è molto semplice: dato in input un file pcap 74 contenente un dump di traffico di rete IP, il programma è in grado di ricostruire i contenuti dei dati transitati in quel momento nella rete IP rendendoli disponibili e consultabili grazie ad una comoda interfaccia web. Dalla release 7 di DEFT, Xplico viene gestito come servizio. Pertanto, per poter eseguire l’applicativo, sarà necessario avviare i seguenti servizi in sequenza: 1. Apache web server; 2. Xplico. L’avvio dei servizi sopra citati può avvenire tramite menu DEFT > menu services, oppure tramite l’utilizzo della linea di comando. Una volta avviati i servizi è possibile lanciare l’icona Xplico dal menu Network Forensics. 73 Il tool, reperibile presso questo indirizzo http://www.xplico.org/, è diventato nel tempo uno dei più potenti Network Forensic Tool open source. 74 Questo tipo di file contiene pacchetti di dati catturati tramite i programmi "packet sniffing". Solitamente sono pacchetti che sono stati registrati durante la trasmissione in una rete.

Transcript of Italian deft 7 manual 90

Page 1: Italian deft 7 manual 90

65 Manuale DEFT 7

6.10 Xplico

Il progetto DEFT ha sempre sostenuto, sin dalle primissime release di DEFT Linux,

l’evoluzione del progetto Xplico73.

L’utilizzo di Xplico è molto semplice: dato in input un file pcap74 contenente un dump di

traffico di rete IP, il programma è in grado di ricostruire i contenuti dei dati transitati in

quel momento nella rete IP rendendoli disponibili e consultabili grazie ad una comoda

interfaccia web.

Dalla release 7 di DEFT, Xplico viene gestito come servizio. Pertanto, per poter eseguire

l’applicativo, sarà necessario avviare i seguenti servizi in sequenza:

1. Apache web server;

2. Xplico.

L’avvio dei servizi sopra citati può avvenire tramite menu DEFT > menu services, oppure

tramite l’utilizzo della linea di comando.

Una volta avviati i servizi è possibile lanciare l’icona Xplico dal menu Network Forensics.

73

Il tool, reperibile presso questo indirizzo http://www.xplico.org/, è diventato nel tempo uno dei più potenti Network

Forensic Tool open source. 74

Questo tipo di file contiene pacchetti di dati catturati tramite i programmi "packet sniffing". Solitamente sono pacchetti

che sono stati registrati durante la trasmissione in una rete.

Page 2: Italian deft 7 manual 90

66 Manuale DEFT 7

6.10.1 Creazione di un caso

Avviamo Xplico dalla sezione Network Forensic

seguenti credenziali per ottenere l’accesso al gestore casi:

user: xplico

password: xplico

Queste credenziali riguardano l’utente predefinito che

non modificare le impostazioni dell’applicazione.

Per poter personalizzare le impostazioni del pannello di controllo, creare nuovi utenti,

ecc., è necessario eseguire il

user: admin

password: xplico

Nell’esempio seguente abbiamo creato un nuovo caso denominato Pippo dove

ed analizzato tutto il traffico che in quel momento

della nostra postazione.

un caso

Manca la didascalia

Avviamo Xplico dalla sezione Network Forensics del menu di DEFT ed inseriamo le

seguenti credenziali per ottenere l’accesso al gestore casi:

Queste credenziali riguardano l’utente predefinito che può creare e gestire solo i casi ma

non modificare le impostazioni dell’applicazione.

Per poter personalizzare le impostazioni del pannello di controllo, creare nuovi utenti,

il login con le credenziali di administrator:

abbiamo creato un nuovo caso denominato Pippo dove

tutto il traffico che in quel momento è passato attraverso l’interfaccia eth0

del menu di DEFT ed inseriamo le

può creare e gestire solo i casi ma

Per poter personalizzare le impostazioni del pannello di controllo, creare nuovi utenti,

abbiamo creato un nuovo caso denominato Pippo dove è acquisito

attraverso l’interfaccia eth0

Page 3: Italian deft 7 manual 90

67 Manuale DEFT 7

Al Termine della fase di acquisizione, Xplico avrà già decodifica

dati supportati, cioè:

• http

• dns

• web mail

• smtp

• pop3

Xplico: Gestione casi

Al Termine della fase di acquisizione, Xplico avrà già decodificato e ricostruito

• imap

• sip

• telnet

• ftp

• tftp

• rtp

• pjl

• facebook chat

• msn

• irc

ricostruito tutti i tipi di

rtp

pjl

facebook chat

msn

irc

Page 4: Italian deft 7 manual 90

68 Manuale DEFT 7

Nell’esempio precedente abbiamo visitato il sito

intercettato.

L’elenco contenente le ricostruzioni di tutti i siti web e di tutti i contenuti visualizzati è

consultabile alla voce site del menu

Report dei dati ricostruiti

ll’esempio precedente abbiamo visitato il sito http://www.libero.it richiesto dall’utente

contenente le ricostruzioni di tutti i siti web e di tutti i contenuti visualizzati è

del menu web.

richiesto dall’utente

contenente le ricostruzioni di tutti i siti web e di tutti i contenuti visualizzati è

Page 5: Italian deft 7 manual 90

69 Manuale DEFT 7

Va tenuto conto che l’elenco di tutte le

l’utente esegue involontariamente come ad esempio tutte le richieste che vengono fatte

dalla pagina web ai vari url contenenti pubblicità o sc

75

Richiesta ad un web server per la visualizzazione di un dete

Lista di tutte le get eseguite dal browser

Va tenuto conto che l’elenco di tutte le get75 eseguite comprende anche quelle che

l’utente esegue involontariamente come ad esempio tutte le richieste che vengono fatte

dalla pagina web ai vari url contenenti pubblicità o script per il tracciamento.

Richiesta ad un web server per la visualizzazione di un determinato url.

anche quelle che

l’utente esegue involontariamente come ad esempio tutte le richieste che vengono fatte

ript per il tracciamento.

Page 6: Italian deft 7 manual 90

70 Manuale DEFT 7

6.11 Hydra

Hydra è uno dei più noti software utilizzati per la forzatura di login e password mediante

attacco a forza bruta76.

76

http://it.wikipedia.org/wiki/Metodo_forza_bruta

Hydra è uno dei più noti software utilizzati per la forzatura di login e password mediante

Hydra : selezione dei protocolli

http://it.wikipedia.org/wiki/Metodo_forza_bruta

Hydra è uno dei più noti software utilizzati per la forzatura di login e password mediante

Page 7: Italian deft 7 manual 90

71 Manuale DEFT 7

L’elenco seguente indica i protocolli ed applicativi su cui si può eseguire un attacco brute

force utilizzando Hydra:

• AFP

• Cisco AAA

• Cisco auth

• Cisco enable

• CVS

• Firebird

• FTP

• HTTP-FORM-

GET

• HTTP-FORM-

POST

• HTTP-GET

• HTTP-HEAD

• HTTP-PROXY

• HTTPS-FORM-

GET

• HTTPS-FORM-

POST

• HTTPS-GET

• HTTPS-HEAD

• HTTP-Proxy

• ICQ

• IMAP

• IRC

• LDAP

• MS-SQL

• MYSQL

• NCP

• NNTP

• Oracle Listener

• Oracle SID

• Oracle

• PC-Anywhere

• PCNFS

• POP3

• POSTGRES

• RDP

• Rexec

• Rlogin

• Rsh

• SAP/R3

• SIP

• SMB

• SMTP

• SMTP Enum

• SNMP

• SOCKS5

• SH (v1 and v2),

• Subversion

• Teamspeak

(TS2)

• Telnet

• VMware-Auth

• VNC

• XMPP

All’interno di DEFT Linux non sono inclusi dizionari per eseguire le attività di “violazione”

password.

Tramite l’applicazione cupp è possibile generare dizionari personalizzati: rispondendo alle

domande che vi pone l’applicazione è possibile generare una elenco di parole chiave

basate sulle informazioni presenti nella macchina protetta dalle credenziali da forzare77.

77 Le wordlist sono reperibili facilmente in rete in diverse tipologie: lingue, raccolte di password, ecc. come ad esempio

ftp://ftp.ox.ac.uk/pub/wordlists/ o http://wordlist.sourceforge.net/

Page 8: Italian deft 7 manual 90

72 Manuale DEFT 7

6.12 Keepnote

Keepnote è un software utilizzato per la

Nel campo della Computer Forens

catalogando le memorie di massa e tutte

È possibile creare un albero di oggetti (directory e pag

esigenze ed inserire all’interno delle pagine informazioni

• Testo non formattato

• Html;

• Immagini;

• File.

Le informazioni inserite all’interno del notebook creato con

salvate nel formato KeepNote

è un software utilizzato per la raccolta e la classificazione di informazioni.

Nel campo della Computer Forensics può essere usato per la gestione delle evidence,

catalogando le memorie di massa e tutte i risultati delle analisi all’interno di altri oggetti.

KeepNote: la raccolta di evidence

È possibile creare un albero di oggetti (directory e pagine), strutturarlo secondo le proprie

ed inserire all’interno delle pagine informazioni quali:

Testo non formattato;

Le informazioni inserite all’interno del notebook creato con KeepNote possono essere

pNote o esportate in un file html.

e la classificazione di informazioni.

ics può essere usato per la gestione delle evidence,

all’interno di altri oggetti.

secondo le proprie

possono essere

Page 9: Italian deft 7 manual 90

73 Manuale DEFT 7

6.13 Maltego

Maltego78 può essere utilizzato sia nell’ambito de

Intelligence.

È multi-piattaforma, scritto in Java, in grado di trovare e

collegamenti tra persone, g

indirizzi IP, nomi di dominio, file, documenti, ecc.

Poiché l’utilizzo di questo programma esu

funzionamento non verrà trattato nel dettaglio

Vi suggeriamo di fare riferimento all’esaustiva documentazione ufficiale presso questo

indirizzo:

http://www.paterva.com/web5/documentation/userguide.php

78

http://www.paterva.com/

può essere utilizzato sia nell’ambito della Computer Forensics sia di Cyber

piattaforma, scritto in Java, in grado di trovare e rappresentare

collegamenti tra persone, gruppi, aziende, siti web, città, vie, e-mail, numeri di telefono,

indirizzi IP, nomi di dominio, file, documenti, ecc.

Maltego CE, creazione di un diagramma

Poiché l’utilizzo di questo programma esula dagli scopi di questo documento

non verrà trattato nel dettaglio.

Vi suggeriamo di fare riferimento all’esaustiva documentazione ufficiale presso questo

http://www.paterva.com/web5/documentation/userguide.php

Computer Forensics sia di Cyber

rappresentare graficamente

mail, numeri di telefono,

a dagli scopi di questo documento, il suo

Vi suggeriamo di fare riferimento all’esaustiva documentazione ufficiale presso questo

Page 10: Italian deft 7 manual 90

74 Manuale DEFT 7

Capitolo 7: Mobile forensics

Dalla release 7 di DEFT Linux sono inclusi alcuni strumenti destinati all’analisi dei

dispositivi cellulari.

È ora disponibile Sqlite database browser per permettere l’analisi dei database Sqlite,

usati nella maggior parte delle applicazioni dei dispositivi Android, Iphone e Ipad.

Per l’analisi dei cellulari è stato incluso:

• Ipddump per l’analisi dei backup di dispositivi BlackBerry;

• Iphone Analyzer per l’analisi di iPhone dalla versione 3 e precedenti;

• Iphone backup analyzer per l’analisi dei backup di dispositivi iPhone;

• Bitpim che supporta i seguenti dispositivi:

Audiovox CDM8900

LG AX-8600

LG C2000

LG G4015

LG LX570

LG PM225

LG UX-5000

LG VX-3200

LG VX-4400

LG VX-4500

LG VX-4650

LG VX-5200

LG VX-5300

LG VX-6000

LG VX-6100

LG VX-7000

LG VX-8000

LG VX-8100

LG VX-8300

LG VX-8500

LG VX-8560

LG VX-8600

LG VX-8610

LG VX-8700

LG VX-8600

LG VX-8800

LG VX-9100

LG VX-9200LG VX-

9600

LG VX-9700

LG VX-9800

LG VX-9900

LG VX-10000

LG VX-11000

Motorola E815

Motorola E815m

Motorola K1m

Motorola V325

Motorola V325M

Motorola V3c

Motorola V3cm

Motorola V3m

Motorola V3mM

Motorola V710

Motorola V710m

Samsung SCH-A870

Samsung SCH-A930

Samsung SCH-A950

Samsung SCH-U470

Samsung SCH-U740

Samsung SCH-U750

Samsung SPH-M300

Sanyo SCP-6600

(Katana)

Other Sanyo Phones

Toshiba VM-4050

Page 11: Italian deft 7 manual 90

75 Manuale DEFT 7

Bitpim: la lista dei telefoni supportati

Page 12: Italian deft 7 manual 90

76 Manuale DEFT 7

7.1 Android

Android è un sistema operativo open source, derivato da linux, destinato ai dispositivi mobile (smartphone, tablet, netbook).

Particolarmente diffuso nei sistemi a basso costo di origine cinese, è presente in una grandissima varietà di disinstallarlo sullo stesso iPhone di Appleutilizzato Nokia OS

Il sistema, sviluppato attualmente dalla Open Handset AllianceGoogle, ha visto la

release, si è arricchito di funzionalità che ne hanno garantito una notevole maturità.

In questo momento le versioni più recenti del sistema operativo sono:

• 2.3.x Gingerbread: diffusa soprattutto t

• 3.2 Honeycomb: destinata ai tablet, ha introdotto un supporto maggiore per gli schemi di

dimensioni maggiori, multiprocessori ed hardware per l’accelerazione grafica.

Si sta diffondendo sempre più la nuova verforza delle due versioni.

In questo capitolo, per ragioni di spazio, rivolgeremo la nostra attenzione solo alla versione 2.3.x Gingerbread.

L’OHA, comunque, non cura l’aggiornamento del sistemademandando questa incombenza ai singoli produttori che decidono autonomamente il rilascio delle patch per la correzione di problemi di sicurezza o l’implementazione di nuove funzioni. Questa ha causato indirettamente la nascita di un gran numero di “Rom Cooked”, tratte dalla versione 2.3, personalizzate per i singoli modelli e più performanti della versione normalmente presente nel dispositivo.

Ciò influenza pesantemente il lavoro dell’operatore che si trova a compiere un’analisi forense poiché non potrà sapere con certezza quale versione di Android sia installata nel dispositivo sottoposto a perizia

Il sistema operativo di base supporta le funzionalità essenziali di uno

• connessioni via GSM/EDGE, UMTS, Bluetooth, Wi

• chiamate;

• ricezione e trasmissione di SMS e MMS

• supporto multilingue;

• navigazione web;

• “Dalvik virtual machine”84;

• supporto multimediale audio/video

• multitasking;

• comandi vocali;

• tethering.

80 http://www.giardiniblog.com/guida-installare-

81 Da intendersi come tutti i sistemi operativi installati sui dispositivi Nokia, creati da Nokia: http://en.wikipedia.org/wiki/Nokia_OS

82 http://www.openhandsetalliance.com/

83 Vedi ad esempio la rom CyanogenMod (www.cyanogenmod.com

4.0.

84 Macchina virtuale java ottimizza per operare con consumi energetici ridotti in dispositivi con scarsa potenza.

Android è un sistema operativo open source, derivato da linux, destinato ai dispositivi mobile (smartphone, tablet, netbook).

Particolarmente diffuso nei sistemi a basso costo di origine cinese, è presente in una grandissima varietà di dispositivi, scavalcando per diffusione iOS (è possibile installarlo sullo stesso iPhone di Apple80) e l’ormai datato ma ancora molto utilizzato Nokia OS81 .

Il sistema, sviluppato attualmente dalla Open Handset AllianceGoogle, ha visto la luce per la prima volta nel novembre del 2007 e, ad ogni

release, si è arricchito di funzionalità che ne hanno garantito una notevole maturità.

In questo momento le versioni più recenti del sistema operativo sono:

2.3.x Gingerbread: diffusa soprattutto tra gli smartphone ed i tablet di fascia bassa

3.2 Honeycomb: destinata ai tablet, ha introdotto un supporto maggiore per gli schemi di

dimensioni maggiori, multiprocessori ed hardware per l’accelerazione grafica.

Si sta diffondendo sempre più la nuova versione 4.0 Ice Cream Sandwich, che dovrebbe riunire i punti di

In questo capitolo, per ragioni di spazio, rivolgeremo la nostra attenzione solo alla versione 2.3.x

L’OHA, comunque, non cura l’aggiornamento del sistema operativo installato nei singoli dispositivi ai singoli produttori che decidono autonomamente il rilascio delle patch

per la correzione di problemi di sicurezza o l’implementazione di nuove funzioni. Questa la nascita di un gran numero di “Rom Cooked”, tratte dalla versione 2.3,

personalizzate per i singoli modelli e più performanti della versione normalmente presente nel dispositivo.

lavoro dell’operatore che si trova a compiere un’analisi forense poiché non potrà sapere con certezza quale versione di Android sia installata nel dispositivo sottoposto a perizia

Il sistema operativo di base supporta le funzionalità essenziali di uno smartphone:

via GSM/EDGE, UMTS, Bluetooth, Wi-Fi, WiMAX;

ricezione e trasmissione di SMS e MMS;

supporto multimediale audio/video;

-android-su-iphone-3g

nstallati sui dispositivi Nokia, creati da Nokia: http://en.wikipedia.org/wiki/Nokia_OS

www.cyanogenmod.com) o la Rom Miui (miui.nexus-lab.com) nate entrambe attorno alla versione

Macchina virtuale java ottimizza per operare con consumi energetici ridotti in dispositivi con scarsa potenza.

Android è un sistema operativo open source, derivato da linux, destinato ai

Particolarmente diffuso nei sistemi a basso costo di origine cinese, è presente in positivi, scavalcando per diffusione iOS (è possibile

e l’ormai datato ma ancora molto

Il sistema, sviluppato attualmente dalla Open Handset Alliance82 (OHA) guidata da luce per la prima volta nel novembre del 2007 e, ad ogni

release, si è arricchito di funzionalità che ne hanno garantito una notevole maturità.

ra gli smartphone ed i tablet di fascia bassa;

3.2 Honeycomb: destinata ai tablet, ha introdotto un supporto maggiore per gli schemi di

dimensioni maggiori, multiprocessori ed hardware per l’accelerazione grafica.

sione 4.0 Ice Cream Sandwich, che dovrebbe riunire i punti di

In questo capitolo, per ragioni di spazio, rivolgeremo la nostra attenzione solo alla versione 2.3.x

operativo installato nei singoli dispositivi ai singoli produttori che decidono autonomamente il rilascio delle patch

per la correzione di problemi di sicurezza o l’implementazione di nuove funzioni. Questa politica di mercato la nascita di un gran numero di “Rom Cooked”, tratte dalla versione 2.3,

personalizzate per i singoli modelli e più performanti della versione normalmente presente nel dispositivo.

lavoro dell’operatore che si trova a compiere un’analisi forense poiché non potrà sapere con certezza quale versione di Android sia installata nel dispositivo sottoposto a perizia83.

nstallati sui dispositivi Nokia, creati da Nokia: http://en.wikipedia.org/wiki/Nokia_OS

m) nate entrambe attorno alla versione 2.3 e

Page 13: Italian deft 7 manual 90

77 Manuale DEFT 7

Ulteriori funzionalità possono essere disponibili in base al tipo di hardware presente (touchscreen, GPS,

accelerometro, scheda 3D, ecc.) o all’aggiunta di particolari applicazioni (client per social network,

gestionali di ogni tipo, sicurezza, giochi, ecc.).

L'Hardware utilizzato negli smartphone è strettamente legato alle caratteristiche progettuali decise dal

produttore: varia sia sulla base del budget destinato alla produzione, sia al target di mercato.

Per quanto concerne la memoria del dispositivo, nella maggior parte dei casi il sistema operativo è

installato all’interno della memoria flash, generalmente non rimovibile senza un procedimento di

dissaldatura della memoria stessa dalla piastra madre. Essa è spesso affiancata da uno slot di espansione

per memorie esterne (MicroSD).

Scelte diverse da quanto indicato nel paragrafo precedente sono spesso attuate dai produttori minori,

solitamente aziende di origine cinese, che possono progettare l'architettura in modo drasticamente

diverso. Ad esempio per quanto riguarda la memorizzazione del sistema operativo, può capitare che sia

preferito l'utilizzo di schede MicroSD, di costo minore, estraibili con una semplice pressione del dito.

è possibile quindi affermare che la difficoltà di accesso alla memoria del cellulare possa variare

enormemente in base al prodotto da analizzare.

Spesso è necessario utilizzare delle procedure che ci daranno la possibilità di andare a leggere il contenuto

di partizioni accessibili solo con i permessi di root e senza smontare la memoria a stato solido dal

dispositivo.

Il principale punto debole di questo tipo di procedure è che sarà alterato, seppur in minima parte, il

contenuto della memoria di massa. Pertanto è auspicabile che l'operatore, qualora agisca durante

procedimenti penali, richieda il regime di accertamento tecnico non ripetibile per l'attività di acquisizione

dei dati85.

7.2 Breve Panoramica sulle applicazioni Google

Nonostante sia molto comune che il sistema operativo sia più o meno personalizzato dal produttore dello

smartphone o dall’operatore telefonico, è probabile che le applicazioni google86 siano presenti e possano

costituire un fonte di informazione primaria ai fini della perizia.

Tra le varie, le due principali sono il profilo Gmail e Market87.

85

Art. 360 c.p.p. (Accertamenti Tecnici Non Ripetibili). 86 Vedi http://www.google.com/mobile/android/

87 Esistono diverse eccezioni a quanto appena scritto: un esempio può essere il netbook AC 100 di Toshiba: le applicazioni Google sono assenti ed il

market presente per le applicazioni è il Camangi Market (www.camangimarket.com).

Page 14: Italian deft 7 manual 90

78 Manuale DEFT 7

7.2.1 Gmail

Ai fini investigativi è il caso di tenere conto del profondo legame tra la gestione

interna dello smartphone ed un account Google. Molte delle funzionalità interne

(gestione dei contatti, calendario, google talk, google market, ecc.) dipendo, o posso

dipendere, da un account attivo sui sistemi Google.

Alcuni esempi:

• È necessario registrare un account Google per scaricare/acquistare le applicazioni dall’Android

market;

• I dati dei Contatti e del calendario posso essere salvati automaticamente anche nel profilo Google;

• Se presente, il client di Google+ offre la possibilità di caricare automaticamente ogni foto scattata

tramite la fotocamera interna in un album privato di un

corrispondente all'account Google predefinito

• La funzione Latitude, presente

nell’applicazione Maps, si

appoggia anch’essa al profilo

Google registrato e memorizza la

posizione del cellulare, check

locali particolari, ecc. Questi dati

sono poi trasmessi e registrati nel

profilo dove sono conservati fino a

quando non siano eliminati

dall'utente.

88 http://www.google.com/support/mobile/bin/answer.py?ans

Ai fini investigativi è il caso di tenere conto del profondo legame tra la gestione

interna dello smartphone ed un account Google. Molte delle funzionalità interne

ione dei contatti, calendario, google talk, google market, ecc.) dipendo, o posso

dipendere, da un account attivo sui sistemi Google.

Alcuni esempi:

È necessario registrare un account Google per scaricare/acquistare le applicazioni dall’Android

dati dei Contatti e del calendario posso essere salvati automaticamente anche nel profilo Google;

e presente, il client di Google+ offre la possibilità di caricare automaticamente ogni foto scattata

tramite la fotocamera interna in un album privato di un profilo Google+ non necessariamente

corrispondente all'account Google predefinito88;

a funzione Latitude, presente

nell’applicazione Maps, si

appoggia anch’essa al profilo

Google registrato e memorizza la

posizione del cellulare, check-in in

olari, ecc. Questi dati

sono poi trasmessi e registrati nel

profilo dove sono conservati fino a

quando non siano eliminati

http://www.google.com/support/mobile/bin/answer.py?answer=1304818

Ai fini investigativi è il caso di tenere conto del profondo legame tra la gestione

interna dello smartphone ed un account Google. Molte delle funzionalità interne

ione dei contatti, calendario, google talk, google market, ecc.) dipendo, o posso

È necessario registrare un account Google per scaricare/acquistare le applicazioni dall’Android

dati dei Contatti e del calendario posso essere salvati automaticamente anche nel profilo Google;

e presente, il client di Google+ offre la possibilità di caricare automaticamente ogni foto scattata

profilo Google+ non necessariamente

Page 15: Italian deft 7 manual 90

79 Manuale DEFT 7

7.2.2 Market

Analogamente a quanto si verifica per il sistema iOS con l'applicazione App Store,

l’Android Market

applicazioni che permettono di aumentare le funzionalità dello smartphone.

Sempre tramite il Market è possibile ottenere gli aggiornamenti delle applicazioni

installate.

Oltre a questa modalità, il

installare applicazioni tramite market terzi (applibs, Amazon Android Market,

ecc.) oppure tramite la copia diretta dell’applicazione all’interno del cellulare.

Va rilevato che le politiche adottate da

alquanto “indulgenti” ed hanno permesso nel corso degli ultimi mesi la presenza di malware

successivo dilagare di diverse infezioni

tramite la pronta diffusione degli aggiornamenti da parte di google sia tramite la disinstallazione remota

dell'applicazione vettore dell'infezione

Il controllo sulle applicazioni è ancora minore, se non assente, nel caso di market parallel

numerosi i casi segnalati di malware di vario tipo presenti in questi canali che per ora appaiono confinati

nell'area cinese o del vicino94.

L’effetto delle attività indicate qui sopra è stato limitato dalla non omogenea gestione, se prese

rilascio di appositi aggiornamenti del firmware da parte dei produttori di smartphone o degli operatori

telefonici che distribuiscono smartphone Android. Ciò condiziona pesantemente la possibilità di chiudere le

falle di sicurezza nei vari modelli in circolazione e contribuisce al permanere e

La presenza di ROM cooked gratuite

pratica di installare rom non originali viene spesso scoraggiata dalle case produt

Ipoteticamente le politiche di vendita prodotti e rilascio aggiornamenti potrebbero creare la possibilità di

attaccare precise aree geografiche o l'utenza di determinati operatori.

7.2.3 File System in uso

YAFFS2 (Yet Another Flash File System)

Creato da Charles Manning per l'azienda finlandese Aleph One, è al momento distribuito sotto licenza GPL.

Ad oggi è ufficialmente supportato dai seguenti sistemi operativi:

89 Il market è accessibile anche via web alla pagina https://market.android.com. Permette inoltre l’installazione da remoto dell

90 Le software house hanno inoltre la possibilità di limitare la disponibilità delle applicazioni stes

sulla base delle proprie esigenze di vendita.

91 Uno degli esempi più recenti di malware è Anserverbot ( http://www.csc.ncsu.edu/faculty/jiang/pubs/AnserverBot_Analysis.pdf )

92 https://www.mylookout.com/_downloads/lookout

93 http://arstechnica.com/gadgets/news/2011/03/google

94http://www.pcworld.com/businesscenter/article/237196/mobile_malware_is_on_the_rise_but_theres_n

95 Vedi ad esempio Cyanogen mod (http://www.cyanogenmod.com/devices) o Miui (http://miuiandroid.com/)

Analogamente a quanto si verifica per il sistema iOS con l'applicazione App Store,

l’Android Market89 viene utilizzato per lo scaricamento e/o acquisto, di giochi od

applicazioni che permettono di aumentare le funzionalità dello smartphone.

Sempre tramite il Market è possibile ottenere gli aggiornamenti delle applicazioni

installate.90

Oltre a questa modalità, il sistema operativo Android garantisce la possibilità di

installare applicazioni tramite market terzi (applibs, Amazon Android Market,

ecc.) oppure tramite la copia diretta dell’applicazione all’interno del cellulare.

Va rilevato che le politiche adottate da Google nell’accettare un’applicazione all’interno del market sono

alquanto “indulgenti” ed hanno permesso nel corso degli ultimi mesi la presenza di malware

successivo dilagare di diverse infezioni92. La diffusione di malware è stata parzialmente os

tramite la pronta diffusione degli aggiornamenti da parte di google sia tramite la disinstallazione remota

dell'applicazione vettore dell'infezione93.

Il controllo sulle applicazioni è ancora minore, se non assente, nel caso di market parallel

numerosi i casi segnalati di malware di vario tipo presenti in questi canali che per ora appaiono confinati

L’effetto delle attività indicate qui sopra è stato limitato dalla non omogenea gestione, se prese

rilascio di appositi aggiornamenti del firmware da parte dei produttori di smartphone o degli operatori

telefonici che distribuiscono smartphone Android. Ciò condiziona pesantemente la possibilità di chiudere le

in circolazione e contribuisce al permanere e alla diffusione del malware.

La presenza di ROM cooked gratuite95 permetterebbe di sopperire in parte a questo “problema” ma la

pratica di installare rom non originali viene spesso scoraggiata dalle case produttrici.

Ipoteticamente le politiche di vendita prodotti e rilascio aggiornamenti potrebbero creare la possibilità di

attaccare precise aree geografiche o l'utenza di determinati operatori.

(Yet Another Flash File System) è il file system adottato nei dispositivi Android fino alla versione 2.2.

Creato da Charles Manning per l'azienda finlandese Aleph One, è al momento distribuito sotto licenza GPL.

Ad oggi è ufficialmente supportato dai seguenti sistemi operativi:

Il market è accessibile anche via web alla pagina https://market.android.com. Permette inoltre l’installazione da remoto dell

Le software house hanno inoltre la possibilità di limitare la disponibilità delle applicazioni stesse ad aree geografiche o a gestori telefonici precisi

Uno degli esempi più recenti di malware è Anserverbot ( http://www.csc.ncsu.edu/faculty/jiang/pubs/AnserverBot_Analysis.pdf )

_downloads/lookout-mobile-threat-report-2011.pdf

http://arstechnica.com/gadgets/news/2011/03/google-using-remote-kill-switch-to-swat-android-malware-apps.ars

http://www.pcworld.com/businesscenter/article/237196/mobile_malware_is_on_the_rise_but_theres_no_need_to_panic.html#tk.mod_rel

Vedi ad esempio Cyanogen mod (http://www.cyanogenmod.com/devices) o Miui (http://miuiandroid.com/)

Analogamente a quanto si verifica per il sistema iOS con l'applicazione App Store,

tilizzato per lo scaricamento e/o acquisto, di giochi od

applicazioni che permettono di aumentare le funzionalità dello smartphone.

Sempre tramite il Market è possibile ottenere gli aggiornamenti delle applicazioni

sistema operativo Android garantisce la possibilità di

installare applicazioni tramite market terzi (applibs, Amazon Android Market,

Google nell’accettare un’applicazione all’interno del market sono

alquanto “indulgenti” ed hanno permesso nel corso degli ultimi mesi la presenza di malware91 ed il

. La diffusione di malware è stata parzialmente ostacolata sia

tramite la pronta diffusione degli aggiornamenti da parte di google sia tramite la disinstallazione remota

Il controllo sulle applicazioni è ancora minore, se non assente, nel caso di market paralleli. Sono, infatti,

numerosi i casi segnalati di malware di vario tipo presenti in questi canali che per ora appaiono confinati

L’effetto delle attività indicate qui sopra è stato limitato dalla non omogenea gestione, se presente, del

rilascio di appositi aggiornamenti del firmware da parte dei produttori di smartphone o degli operatori

telefonici che distribuiscono smartphone Android. Ciò condiziona pesantemente la possibilità di chiudere le

la diffusione del malware.

permetterebbe di sopperire in parte a questo “problema” ma la

trici.

Ipoteticamente le politiche di vendita prodotti e rilascio aggiornamenti potrebbero creare la possibilità di

system adottato nei dispositivi Android fino alla versione 2.2.

Creato da Charles Manning per l'azienda finlandese Aleph One, è al momento distribuito sotto licenza GPL.

Il market è accessibile anche via web alla pagina https://market.android.com. Permette inoltre l’installazione da remoto delle applicazioni.

se ad aree geografiche o a gestori telefonici precisi

Uno degli esempi più recenti di malware è Anserverbot ( http://www.csc.ncsu.edu/faculty/jiang/pubs/AnserverBot_Analysis.pdf )

apps.ars

o_need_to_panic.html#tk.mod_rel

Page 16: Italian deft 7 manual 90

80 Manuale DEFT 7

• Android

• Linux

• Windows CE

La seconda versione di questo file system garantisce un alto livello d’integrità del dato

scritto all'interno della memoria e, allo stesso tempo, cerca di mantenere il più elevat

possibile le performance di accesso ai dati

le performance di scrittura di un file sono state migliorate del 500% e le performance di

cancellazione97 del 400%.

Dalla versione 2.3 di Android, gli sviluppatori hanno deciso di abbandonare questo file

system migrando ad EXT4.

7.2.4 EXT4 file system

Ext498 (fourth extended file system) è un file system journaled

dell'Ext3 per aumentarne i limiti di immagazzinamento a 64 bit e migliorarne in parte le

prestazioni. Per quanto concerne la lettura di

inferiori a quelle di file system concorrenti

performante nelle operazioni di scrittura.

Ad oggi è considerato più sicuro rispetto agli altri file system Linux in virtù dell

semplicità e della maggior base di installazioni a scopo di test.

96 Viene inoltre tenuto in considerazione che l'hardware è di tipo “portabile” ed il tipo di memoria nel 99% dei casi è a st

solido.

97 http://www.yaffs.net/yaffs-2-specification

98 Ad oggi ext4 è supportato nativamente da qualsiasi distribuzione Linux, da Windows mediante il progetto Ext2fs e dai

principali applicativi, commerciali e non, per la Compute

99 È una tecnologia utilizzata da molti file system moderni per preservare l'integrità dei dati da eventuali cadute di tensione o

spegnimenti improvvisi; si basa sul concetto di transazione, ogni scrittura su disco è interpretata dal file system

transazione.

100 Quali ad esempio JFS, ReiserFS e XFS, Ext4

• pSOS

• eCos

• ThreadX

La seconda versione di questo file system garantisce un alto livello d’integrità del dato

scritto all'interno della memoria e, allo stesso tempo, cerca di mantenere il più elevat

possibile le performance di accesso ai dati96. Rispetto alla prima versione del file system,

le performance di scrittura di un file sono state migliorate del 500% e le performance di

Dalla versione 2.3 di Android, gli sviluppatori hanno deciso di abbandonare questo file

(fourth extended file system) è un file system journaled99 nato come miglioramento

dell'Ext3 per aumentarne i limiti di immagazzinamento a 64 bit e migliorarne in parte le

prestazioni. Per quanto concerne la lettura di file, nonostante le performance siano

inferiori a quelle di file system concorrenti100, richiede meno risorse della CPU ed è più

performante nelle operazioni di scrittura.

Ad oggi è considerato più sicuro rispetto agli altri file system Linux in virtù dell

semplicità e della maggior base di installazioni a scopo di test.

Viene inoltre tenuto in considerazione che l'hardware è di tipo “portabile” ed il tipo di memoria nel 99% dei casi è a st

specification-and-development-notes.

Ad oggi ext4 è supportato nativamente da qualsiasi distribuzione Linux, da Windows mediante il progetto Ext2fs e dai

principali applicativi, commerciali e non, per la Computer Forensics

una tecnologia utilizzata da molti file system moderni per preservare l'integrità dei dati da eventuali cadute di tensione o

spegnimenti improvvisi; si basa sul concetto di transazione, ogni scrittura su disco è interpretata dal file system

JFS, ReiserFS e XFS, Ext4.

La seconda versione di questo file system garantisce un alto livello d’integrità del dato

scritto all'interno della memoria e, allo stesso tempo, cerca di mantenere il più elevato

petto alla prima versione del file system,

le performance di scrittura di un file sono state migliorate del 500% e le performance di

Dalla versione 2.3 di Android, gli sviluppatori hanno deciso di abbandonare questo file

nato come miglioramento

dell'Ext3 per aumentarne i limiti di immagazzinamento a 64 bit e migliorarne in parte le

file, nonostante le performance siano

, richiede meno risorse della CPU ed è più

Ad oggi è considerato più sicuro rispetto agli altri file system Linux in virtù della sua

Viene inoltre tenuto in considerazione che l'hardware è di tipo “portabile” ed il tipo di memoria nel 99% dei casi è a stato

Ad oggi ext4 è supportato nativamente da qualsiasi distribuzione Linux, da Windows mediante il progetto Ext2fs e dai

una tecnologia utilizzata da molti file system moderni per preservare l'integrità dei dati da eventuali cadute di tensione o

spegnimenti improvvisi; si basa sul concetto di transazione, ogni scrittura su disco è interpretata dal file system come una

Page 17: Italian deft 7 manual 90

81 Manuale DEFT 7

Le principali caratteristiche si possono riassumere in:

• file system di dimensioni fino a 1 exabyte (1.000.000 terabyte);

• rimozione del limite delle 32000 sotto directory;

• pre-allocazione persistente101;

• retro compatibilità, cioè poter eseguire il mount di un file system ex4 come se

fosse un ext3 o ext2;

• aumento delle prestazioni per il controllo dell’integrità del file system (fsck);

• deframmentazione in linea riducendo drasticamente la frammentazione del file

system.

Il supporto nativo ad ext4 è stato introdotto in Android nella versione 2.3 per le sue nuove

caratteristiche legate al miglioramento nella scrittura di file ed alla loro garanzia di

integrità.

Da un punto di vista forense, tale implementazione ha reso molto più semplici le

operazioni di analisi del file system poiché, ad oggi, non esistono strumenti software,

commerciali o gratuiti, che supportino nativamente file system di tipo YAFFS.

7.2.5 Policy di utilizzo delle memorie di massa

Nella maggior parte dei dispositivi Android, l’utente finale può decidere come utilizzare la

memoria di massa, interna ed esterna, a sua disposizione.

Generalmente tutte le applicazioni scaricate ed installate dall’applicazione Market

vengono salvate all’interno della memoria interna del dispositivo, ad eccezione di quelle

che hanno implementato la funzione di scelta della memoria di massa in cui essere

installate. Anche nel caso dei file prodotti dalle applicazioni presenti102 viene data la

possibilità all’utente finale di decidere se salvarli nella memoria esterna o in quella

interna.

7.2.6 Accesso al file system del sistema operativo

Tutti i dispositivi Android delle principali case produttrici sono distribuiti senza l’utenza di

root abilitata e senza la possibilità di accedere direttamente al file system dove è presente

il sistema operativo103.

Esiste comunque la possibilità di superare questo tipo di restrizioni in pratica per tutti i

dispositivi oggi in commercio a patto che siano accettate delle modifiche parzialmente

101 In altre parole le applicazioni hanno la possibilità di pre allocare spazio su disco.

102 Ad esempio il salvataggio di allegati o di una foto scattata con il proprio dispositivo.

103 I dispositivi delle case produttrici minori di provenienza asiatica invece, in alcuni casi, non applicano questo tipo di

restrizione, facilitando in questo modo l’accesso alle informazioni di nostro interesse

Page 18: Italian deft 7 manual 90

82 Manuale DEFT 7

invasive al sistema stesso, alterandone in parte l’originalità. Tali operazioni, “rooting”104,

che differiscono in base al dispositivo ed alla versione del sistema operativo, vengono

disincentivate dai produttori degli smartphone al punto di minacciare la perdita

immediata della garanzia in caso di rooting.

Dal punto di vista forense, questo tipo di alterazione è strettamente necessaria per poter

accedere alle informazioni di interesse quali il registro delle chiamate, gli sms, la

cronologia della navigazione Internet e tutto ciò che una applicazione potrebbe scrivere

nella directory data.

104 http://en.wikipedia.org/wiki/Rooting_(Android_OS)

Page 19: Italian deft 7 manual 90

83 Manuale DEFT 7

7.3 Samsung Galaxy S i9000

Lo smartphone oggetto di analisi è un Samsung Galaxy S i9000 con Android 2.3.3.

Samsung, come altre azien

modo pesante l’architettura Android presente nei propri dispositivi.

Il file system in uso su questo dispositivo è una realizzazione proprietaria di Samsung dal

nome RFS (Robust FAT File System)

sistema di journaling che lo dovrebbe renderebbe più sicuro, evitando perdite di dati in

caso di errore.

Tale implementazione in realtà è stata piuttosto fallimentare dato che la maggioranza

degli utilizzatori del dispositivo hanno lamentato problemi di performance, legati proprio

alle scarse prestazioni che RFS fornirebbe in termini di velocità di lettura e scrittura.

Da un punto di vista forense, le partizioni di tipo RFS possono essere trattate c

VFAT. Pertanto tutti i software per la Computer Forensic che supportano file system di

tipo VFAT sono in grado leggere un file system RFS

Le principali caratteristiche hardware del dispositivo sono:

Processore:

S5PC110 CPU, 45 nm 1 GHz ARM Cortex

PowerVR SGX 540 GPU con supporto OpenGL ES

1.1/2.0.

Memoria:

512 MB LPDDR2 RAM dedicata,

8GB di memoria a stato solido con la possibilità di

espansione fino a 32 GB mediante l’utilizzo di una

microSD card.

105 È quindi possibile immaginare che tutte le distribuzioni Linux e i s

già predisposti per attività di analisi per questo tipo di dispositivo.

i9000– caratteristiche hardware

Lo smartphone oggetto di analisi è un Samsung Galaxy S i9000 con Android 2.3.3.

Samsung, come altre aziende produttrici di smartphone, ha deciso di personalizzare in

modo pesante l’architettura Android presente nei propri dispositivi.

Il file system in uso su questo dispositivo è una realizzazione proprietaria di Samsung dal

nome RFS (Robust FAT File System). Si tratta un file system FAT a cui è stato aggiunto un

sistema di journaling che lo dovrebbe renderebbe più sicuro, evitando perdite di dati in

Tale implementazione in realtà è stata piuttosto fallimentare dato che la maggioranza

tilizzatori del dispositivo hanno lamentato problemi di performance, legati proprio

alle scarse prestazioni che RFS fornirebbe in termini di velocità di lettura e scrittura.

Da un punto di vista forense, le partizioni di tipo RFS possono essere trattate c

VFAT. Pertanto tutti i software per la Computer Forensic che supportano file system di

tipo VFAT sono in grado leggere un file system RFS105.

Le principali caratteristiche hardware del dispositivo sono:

S5PC110 CPU, 45 nm 1 GHz ARM Cortex-A8 based

PowerVR SGX 540 GPU con supporto OpenGL ES

512 MB LPDDR2 RAM dedicata, 16-32 MB DRAM,

8GB di memoria a stato solido con la possibilità di

espansione fino a 32 GB mediante l’utilizzo di una

È quindi possibile immaginare che tutte le distribuzioni Linux e i software commerciali per la Computer Forensics siano

già predisposti per attività di analisi per questo tipo di dispositivo.

Lo smartphone oggetto di analisi è un Samsung Galaxy S i9000 con Android 2.3.3.

de produttrici di smartphone, ha deciso di personalizzare in

Il file system in uso su questo dispositivo è una realizzazione proprietaria di Samsung dal

. Si tratta un file system FAT a cui è stato aggiunto un

sistema di journaling che lo dovrebbe renderebbe più sicuro, evitando perdite di dati in

Tale implementazione in realtà è stata piuttosto fallimentare dato che la maggioranza

tilizzatori del dispositivo hanno lamentato problemi di performance, legati proprio

alle scarse prestazioni che RFS fornirebbe in termini di velocità di lettura e scrittura.

Da un punto di vista forense, le partizioni di tipo RFS possono essere trattate come le

VFAT. Pertanto tutti i software per la Computer Forensic che supportano file system di

oftware commerciali per la Computer Forensics siano

Page 20: Italian deft 7 manual 90

84 Manuale DEFT 7

7.3.1 Procedura per il “rooting” del dispositivo

La procedura per ottenere il “rooting” di questo dispositivo consiste sostanzialmente nella

modifica del kernel dello smathphone tramite l'aggiunta di un programma denominato

busybox106.

Questa procedura è la meno invasiva per il sistema e permette che la memoria non sia né

sovrascritta né cancellata, lasciando inalterato il contenuto delle partizioni di file system

che contengono i file prodotti dalle applicazioni e le applicazioni stesse.

Gli strumenti necessari per le operazioni di rooting del dispositivo Android sono:

• Il software di sincronizzazione Samsung Keies (installato ed avviato almeno una

volta)107;

• La versione di CF-ROOT108 adatta per il dispositivo sottoposto ad indagine

(controllare il numero build andando su impostazioni -> info sul telefono) che è

possibile scaricare dal sito degli sviluppatori xda109.

Dopo aver ottenuto tutto il necessario, possiamo proseguire con la procedura:

1. Abilitare la modalità di debug usb dal menu impostazioni > applicazioni > sviluppo,

permettendo in questo modo al telefono di trasmettere file tramite il

collegamento usb;

2. Spegnere il Galaxy S e riavviarlo in modalità aggiornamento/recovery premendo

contemporaneamente il tasto centrale, tasto volume giù e il tasto accensione

(dovrebbe comparire un segnale di pericolo che vi avvisa sulle potenziali azioni

dannose)110;

3. Collegare il dispositivo tramite usb al pc ed avviare l'applicativo Odin; se il campo

ID:COM è di colore giallo lo smartphone è stato riconosciuto correttamente, in

caso contrario probabilmente si è verificato qualche problema con i driver del

sistema operativo111;

4. Estrarre l’archivio CF-Root.zip, cliccare su PDA e scegliere il file scompattato;

5. Selezionare solo Auto-Reboot e F. Reset Time112 tra le opzioni disponibili;

106 http://www.busybox.net/about.html

107 http://www.samsungapps.com/about/onPc.as

108 File per la modifica del Kernel del dispositivo

109 http://forum.xda-developers.com/showpost.php?p=12651359&postcount=6

110 Tale procedura permetterà di avviare il dispositivo in una modalità dedicata all'acquisizione di file per le operazioni di

flash della memoria.

111 È necessario avviate Kies con un Galaxy S (preferibilmente non quello sottoposto ad analisi) collegato tramite usb e dal

menu strumenti cliccare su installa drive. 112 NON selezionate l'opzione Re-Partition: tale funzione cancellerà l'attuale kernel in uso

Page 21: Italian deft 7 manual 90

85 Manuale DEFT 7

6. Fare clic su START, dopo cir

verde. Da quel momento in poi il dispositivo si riavvierà in automatico con il

sistema “rootato”.

7.3.2 Samsung Galaxy S -

L’attività di acquisizione fisica

scomoda e rischiosa se paragonata a quella di un disco rigido.

L'unico metodo a disposizione è l'utilizzo del comando dd da eseguire o mediante la

tastiera virtuale del dispositivo (previa install

terminale") o via rete utilizzando

del comando dd a sua volta potrà essere salvato soltanto all'interno delle memorie

riconosciute dal dispositivo: o la memoria flash

Nel nostro caso si è scelto di salvare la

ragioni di comodità e portabilità della memoria esterna

Per ragioni architetturali, a differenza delle memorie di massa classiche, non è possi

eseguire la clonazione dell'intera memoria in una sola sessione, ma si è obbligati ad

eseguire il comando dd per ogni partizione montata dal dispositivo.

clic su START, dopo circa 15 secondi comparirà la scritta PASS evidenziata in

quel momento in poi il dispositivo si riavvierà in automatico con il

- acquisizione fisica della memoria flash interna

L’attività di acquisizione fisica della memoria interna del dispositivo è sicuramente molto

scomoda e rischiosa se paragonata a quella di un disco rigido.

L'unico metodo a disposizione è l'utilizzo del comando dd da eseguire o mediante la

tastiera virtuale del dispositivo (previa installazione di un app come "emulatore

terminale") o via rete utilizzando ssh (previa installazione di un "demone ssh"). L'output

a sua volta potrà essere salvato soltanto all'interno delle memorie

riconosciute dal dispositivo: o la memoria flash interna o la MicroSD.

Nel nostro caso si è scelto di salvare la bit stream image all'interno della MicroSD per

ragioni di comodità e portabilità della memoria esterna.

Per ragioni architetturali, a differenza delle memorie di massa classiche, non è possi

eseguire la clonazione dell'intera memoria in una sola sessione, ma si è obbligati ad

per ogni partizione montata dal dispositivo.

ca 15 secondi comparirà la scritta PASS evidenziata in

quel momento in poi il dispositivo si riavvierà in automatico con il

della memoria interna del dispositivo è sicuramente molto

L'unico metodo a disposizione è l'utilizzo del comando dd da eseguire o mediante la

azione di un app come "emulatore

(previa installazione di un "demone ssh"). L'output

a sua volta potrà essere salvato soltanto all'interno delle memorie

all'interno della MicroSD per

Per ragioni architetturali, a differenza delle memorie di massa classiche, non è possibile

eseguire la clonazione dell'intera memoria in una sola sessione, ma si è obbligati ad

Page 22: Italian deft 7 manual 90

86 Manuale DEFT 7

Per poter conoscere il numero di tutte le partizioni in uso dal sistema è necessario

visualizzarle tramite il comando mount.

Un esempio di output del comando può essere il seguente:

rootfs on / type rootfs (ro,noatime,nodiratime) tmpfs on /dev type tmpfs (rw,noatime,nodiratime,mode=755) devpts on /dev/pts type devpts (rw,noatime,nodiratime,mode=600) proc on /proc type proc (rw,noatime,nodiratime) sysfs on /sys type sysfs (rw,noatime,nodiratime) none on /acct type cgroup (rw,relatime,cpuacct) tmpfs on /mnt/asec type tmpfs (rw,noatime,nodiratime,mode=755,gid=1000) tmpfs on /mnt/obb type tmpfs (rw,noatime,nodiratime,mode=755,gid=1000) none on /dev/cpuctl type cgroup (rw,relatime,cpu) /dev/block/stl9 on /system type rfs (ro,noatime,nodiratime,vfat,log_off,check=no,gid/uid/rwx,iocharset=utf8) /dev/block/stl3 on /efs type rfs (rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8) /dev/block/mmcblk0p2 on /data type rfs (rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8) /dev/block/stl10 on /dbdata type rfs (rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8) /dev/block/stl11 on /cache type rfs (rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8) /dev/block/stl6 on /mnt/.lfs type j4fs (rw,noatime,nodiratime) /sys/kernel/debug on /sys/kernel/debug type debugfs (rw,noatime,nodiratime) /dev/block/vold/179:1 on /mnt/sdcard type vfat (rw,dirsync,nosuid,nodev,noexec,noatime,nodiratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/vold/179:9 on /mnt/sdcard/external_sd type vfat (rw,dirsync,nosuid,nodev,noexec,noatime,nodiratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/vold/179:9 on /mnt/secure/asec type vfat (rw,dirsync,nosuid,nodev,noexec,noatime,nodiratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) tmpfs on /mnt/sdcard/external_sd/.android_secure type tmpfs (ro,relatime,size=0k,mode=000) /dev/block/dm-0 on /mnt/asec/android.androidVNC-2 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/dm-1 on /mnt/asec/net.androgames.level-2 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/dm-2 on /mnt/asec/punteroanull.app.androick-1 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/dm-3 on /mnt/asec/com.natenai.glowhockey-1 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iochars

Page 23: Italian deft 7 manual 90

87 Manuale DEFT 7

et=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/dm-4 on /mnt/asec/com.feelingtouch.bocce-1 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro) /dev/block/dm-5 on /mnt/asec/com.fridgecat.android.atiltlite-1 type vfat (ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)

Prima di avviare l’acquisizione è necessario ottenere i permessi di root digitando il

comando su. Dopo qualche secondo il terminale chiederà se confermare la richiesta di

autorizzazione al programma per l’esecuzione con i privilegi di amministratore.

Una volta ottenuti i permessi, il comando da eseguire per l'acquisizione è il classico dd così

configurato:

dd if=partizione of=/mnt/sdcard/nomefile.img

Pertanto nel caso in cui volessimo acquisire la partizione /system, il comando sarà

dd if=/dev/block/stl9 of=/mnt/sdcard/system.img

Una volta terminata l'acquisizione sarà possibile accedere alla partizione clonata mediante

il comando mount, trattando la partizione RFS come se fosse una vfat:

mount -o loop -t vfat –o ro system.img /mnt/evidence/system

dove

• -o loop permette di eseguire il mount di immagini in formato bit stream;

• -t vfat dichiara che il tipo di partizione che si desidera utilizzare è di tipo vfat;

• -o ro permette di accedere in sola lettura alla partizione;

• /mnt/evidence/system è il percorso creato per visualizzare il contenuto della

memoria acquisita all'interno della directory.

7.4 Samsung Galaxy S - acquisizione fisica della memoria esterna

A differenza della memoria flash interna del dispositivo, l'acquisizione della MicroSD può

essere eseguita seguendo le indicazioni delle best practices della Computer Forensics e

non necessità dell’accesso come root:

1. estrarre la scheda MicroSD;

2. collegarla ad un write blocker113 o ad un sistema che abbia funzioni equivalenti114;

3. calcolo dell'hash115 della memoria originale;

113 Dispositivo usato per prevenire eventuali scritture su memorie di massa oggetto di analisi.

114 Distribuzioni Linux per la Computer Forensics.

115 L'hash è una funzione matematica univoca ed unidirezionale (cioè che non può essere invertita), che trasforma un testo

di qualunque lunghezza (input) in un testo di lunghezza fissa (output) relativamente limitata; in pratica, applicando una

Page 24: Italian deft 7 manual 90

88 Manuale DEFT 7

4. Acquisizione tramite il programma preferito116 e verifica che l'hash della memoria

clonata coincidi con l'hash dell’originale.

7.4.1 Lavorare direttamente sullo smartphone

Nei casi di particolare urgenza, è possibile eseguire attività di ricerca dei file d’interesse

direttamente dal touchscreen del dispositivo mediante l'utilizzo di alcune applicazioni

scaricabili gratuitamente dal Market.

Un’applicazione molto utile per questo tipo di attività, pur non essendo un software

creato espressamente per la Computer Forensics, è File Manager HD117. Attivando la

funzione "Root Explorer" nelle impostazioni dell'applicativo, è possibile navigare nel file

system anche nelle directory protette come data, dbdata e system, ricercando i file di

interesse mediante l'apposita funzione di search e copiarli nella microSD card per

un’analisi più approfondita su una postazione adibita all'analisi dotata degli strumenti

necessari.

7.4.2 Posizione e analisi delle applicazioni e dei file di comune interesse

Generalmente un’applicazione è composta dal suo file eseguibile con estensione .apk ed i

suoi file di configurazione o database.118

Le cartelle che più interessano l'operatore sono:

• /system/app/ : contiene le applicazioni di base fornite dal produttore del

dispositivo;

• /data/app/ : contiene le applicazioni che l’utente ha installato tramite

l’applicativo Market;

• /data/data/ : contiene i file di configurazione e i database delle applicazioni

presenti;

• /dbdata/database/ : qui sono presenti i database contenente gli sms, gli mms, la

rubrica e tutto ciò che riguarda la parte fonia.

L’analisi dei file di configurazione e dei database delle applicazioni può essere eseguita

mediante strumenti come editor di testo per le configurazioni testuali ed xml e con un

normale client SQLite119 per i database con estensione .db.

funzione di hash a un file o ad un intero hard disk, si ottiene una sequenza alfanumerica, ad es. di 32 caratteri, che

rappresenta una specie di "impronta digitale" del file, e viene detta valore di hash.

116 Esempio: FTK Imager per Windows, Guymager o dd per Linux

117 https://market.android.com/details?id=com.rhmsoft.fm

118 Samsung, come tutti gli altri produttori di dispositivi, ha preferito non modificare la porzione di memoria standard dove

raggruppare gli applicativi.

119 Sqlite (http://www.sqlite.org) permette di creare una base di dati, comprese tabelle, query, form e report, in un unico file.

Page 25: Italian deft 7 manual 90

89 Manuale DEFT 7

Nell'esempio riportato nell'immagine, si è usato un client SQLite per aprire il database

degli sms ed mms di nome mmssms.db

/dbdata/database/com.android.providers.telephony/

ed analizzarne il contenuto, esportandolo i dati utili nel formato desiderato (txt, xml o

csv).

L’analisi delle tabelle di un database SQLite può anche essere eseguita mediante l’utilizzo

di query sql120 senza l’utilizzo di strumenti dedicati

Esempi:

È possibile visualizzare tutti i campi contenuti nella tabella sms con la richiesta:

Nel caso in cui interessi solo il contenuto di tutti gli sms:

Se volessimo visualizzare solo gli sms ricevuti dall’utenza +3912345:

Select *

120 Interrogazione di un database nel compiere determinate operazioni (selezione, inserimento, cancellazione dati, ecc..) da

eseguire in uno o più database; solitamente una query viene interpretata, dal linguaggio Sql per renderla più comprensibile

al DBMS

121 Come ad esempio http://www.filesig.co.uk/sqlite

Nell'esempio riportato nell'immagine, si è usato un client SQLite per aprire il database

mmssms.db contenuto in

/dbdata/database/com.android.providers.telephony/

alizzarne il contenuto, esportandolo i dati utili nel formato desiderato (txt, xml o

L’analisi delle tabelle di un database SQLite può anche essere eseguita mediante l’utilizzo

senza l’utilizzo di strumenti dedicati121.

le visualizzare tutti i campi contenuti nella tabella sms con la richiesta:

Select * from sms

Nel caso in cui interessi solo il contenuto di tutti gli sms:

Select body from sms

Se volessimo visualizzare solo gli sms ricevuti dall’utenza +3912345:

Select * from sms where address= ‘+3912345’

azione di un database nel compiere determinate operazioni (selezione, inserimento, cancellazione dati, ecc..) da

eseguire in uno o più database; solitamente una query viene interpretata, dal linguaggio Sql per renderla più comprensibile

http://www.filesig.co.uk/sqlite-forensic-reporter.html

Nell'esempio riportato nell'immagine, si è usato un client SQLite per aprire il database

alizzarne il contenuto, esportandolo i dati utili nel formato desiderato (txt, xml o

L’analisi delle tabelle di un database SQLite può anche essere eseguita mediante l’utilizzo

le visualizzare tutti i campi contenuti nella tabella sms con la richiesta:

azione di un database nel compiere determinate operazioni (selezione, inserimento, cancellazione dati, ecc..) da

eseguire in uno o più database; solitamente una query viene interpretata, dal linguaggio Sql per renderla più comprensibile