Title: Laureando:
1Università degli Studi di MilanoFacoltà di
Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Informatica
ACQUISIZIONE ED ANALISI INVESTIGATIVE E FORENSI
DELLE MEMORIE DI DISPOSITIVI EMBEDDED
- Laureando
- Relatore Prof. Mattia MONGA Vincenzo
SCOGNAMIGLIO - Correlatore Magg. CC Marco MATTIUCCI
Matricola 662252 -
-
- Anno Accademico 2008-2009
2EMBEDDED FORENSICS Laumento dei crimini
compiuti per mezzo di un sistema informatico,
della diffusione dei dispositivi digitali in
grado di conservare tracce attinenti a fatti
illeciti, ha fatto nascere lesigenza
dellanalisi di tali dispositivi al fine di
estrarne il contenuto da utilizzare in
procedimenti giudiziari. La Digital Forensics si
occupa dellanalisi del contenuto della memoria
studiando l'individuazione, la conservazione, la
protezione, l'estrazione e la documentazione del
dato informatico estratto da un qualsiasi
dispositivo digitale acquisito come fonte di
prova da valutare in sede di dibattimento. LEmbe
dded System Forensics si occupa in particolare
di svolgere indagini tecniche su sistemi
elettronici dedicati (embedded) ad una specifica
applicazione illecita.
3IL PROBLEMA DELL ACQUISIZIONE DEI
DATI Nellambito della Digital Forensics, le
tecniche di acquisizione dei dati, volte alla
loro salvaguardia, hanno assunto maggiore
rilevanza legale con lapprovazione della Legge
18 marzo 2008, n. 48, che recepisce la
Convenzione del Consiglio d'Europa sulla
criminalità informatica. Essa apporta
significative modifiche al Codice di Procedura
Penale in materia di conservazione e non
alterazione della fonte di prova
informatica ...anche in relazione a sistemi
informatici o telematici, adottando misure
tecniche dirette ad assicurare la conservazione
dei dati originali e ad impedirne
lalterazione. Nel caso dellanalisi forense di
dispositivi embedded, è possibile eseguire
lacquisizione della memoria attraverso un
accertamento tecnico non ripetibile, a norma
dell art. 360 del Codice di Procedura Penale.
4LA SPERIMENTAZIONE Esistono a tuttoggi diverse
tecniche e metodologie per l'acquisizione e
l'analisi delle memorie contenute nei sistemi
embedded. Nello specifico sono state prese in
analisi le tecniche utilizzate sui dispositivi
con sistema operativo Windows CE 6.0 allo scopo
di valutarne l'utilizzabilità in contesti
investigativi. La sperimentazione è stata
condotta su di un dispositivo di navigazione
veicolare marca TOMSTAR modello 5006 con sistema
operativo Windows CE v. 6.0, processore
Centrality Atlas IV 500 MHz, 64MB SDRAM, 64MB
Flash ROM. Ne sono state illustrate le
problematiche ponendo particolare attenzione, ai
fini forensi, all'analisi delle aree di memoria
in cui potrebbe essere possibile occultare dei
dati, con l'obiettivo di effettuare il loro
recupero.
5SISTEMA OPERATIVO WINDOWS CE Windows CE (Compact
Edition) è un sistema operativo sviluppato da
Microsoft, a partire dal 1996, per dispositivi
portatili (PDA, Palmari, Pocket PC), Smartphone e
sistemi embedded.
Windows CE 6.0 opera in uno spazio di memoria
virtuale di 4 gigabytes. Il Kernel di sistema
utilizza i 2 GB superiori della memoria virtuale,
mentre il processo utente attivo ne utilizza i 2
GB inferiori, supportando fino a 32.000 processi
utente, limitatamente alle risorse di sistema.
6ARCHITETTURA DELLA MEMORIA I 2 GB superiori
dello spazio di indirizzamento sono riservati al
sistema. La metà inferiore dello spazio di
indirizzamento è divisa in più aree. La maggior
parte di quest'area, è definita area di memoria
estesa e viene utilizzata per allocare blocchi
estesi dello spazio di memoria.
7ACQUISIZIONE DELLA MEMORIA Lestrazione dei dati
da un dispositivo digitale si suddivide in due
classi principali lacquisizione logica e
lacquisizione fisica. Lacquisizione logica si
focalizza sul contenuto visibile a livello del
file system, limitandosi ad estrarre file,
database, ecc. Lacquisizione fisica, invece,
può recuperare tutti i dati contenuti in un
dispositivo digitale. Nella maggior parte dei
casi, tuttavia, è possibile recuperare solo il
contenuto della flash ROM e della RAM,
utilizzando o una particolare modalità operativa
del dispositivo (es debugging del PALM OS) o un
canale di comunicazione con il sistema operativo
(es. protocollo RAPI). Per ottenere una copia
completa della memoria flash possono essere
utilizzate tre tecniche - flasher tool (qui
utilizzati) - porte di accesso di test JTAG -
disassemblaggio dei componenti.
8FLASHER TOOL I flasher tool sono destinati a
copiare la memoria di alcune famiglie di
dispositivi digitali. Essi utilizzano alcune
funzionalità delle API per interagire con aree
indirizzabili di memoria. Vengono generalmente
implementati dai produttori stessi a scopo di
test, anche se sono generalmente disponibili
anche su siti internet di hacker che li creano
allo scopo di modificare le funzionalità o i
limiti dei dispositivi. Hanno il vantaggio di
copiare il contenuto dei chip di memoria senza
doverli smontare dalla mother board.
9CASO DI STUDIO Il dispositivo in esame è stato
connesso via USB ad un PC con sistema operativo
Windows 7 Ultimate a 32 bit, tramite il Centro
Dispositivi Windows Mobile v. 6.1.6965. Per
lacquisizione sono stati utilizzati tool basati
sui protocolli RAPI e ActiveSync. I tool
principalmente utilizzati per eseguire la copia
della memoria del dispositivo in esame sono
pmemdump e pmemmap, della famiglia dei flasher
tool. Tali tool per poter funzionare necessitano
della copia della libreria itsutils.dll
allinterno della cartella Windows del
dispositivo. Tale copia si effettua mediante
lutilizzo del tool pput. Successivamente si
esegue il dump della memoria attraverso il tool
pmemdump.
10ESTRAZIONE DELLAREA DI MEMORIA CONTENENTE IL
SISTEMA OPERATIVO
Al fine di poter visualizzare i soli file del
sistema operativo di un dispositivo Windows CE si
esegue un pmemdump specificando loffset relativo
allarea che contiene il file NK.BIN che
rappresenta limmagine del sistema
operativo 0x80040000-0x81f00000 Il dump
ottenuto, in formato nb, è stato successivamente
convertito in formato bin attraverso il tool
nb2bin.exe. Il tool viewbin.exe fornisce i dati
relativi allindirizzo di inizio e alla lunghezza
del blocco, informazioni necessarie per la
successiva conversione del file nk.bin in nk.nb0,
attraverso il tool cvrtbin.exe. Il tool ha
generato un file in formato nb0, necessario al
tool dumprom.exe che estrae nella directory
specificata tutti i file del sistema operativo
Win CE.
11ANALISI FORENSE - 1 Per qualsiasi tipologia di
file è possibile calcolare attraverso algoritmi
di digest (come lMD5, SHA1 e lo SHA256) la sua
impronta digitale. Nel caso del dump della
memoria ROM è possibile generare un impronta
digitale ma non è possibile confrontare
questultima con un impronta di riferimento. Ciò
si verifica perchè ogni dump della memoria è
diverso luno dallaltro in quanto lo stato della
memoria varia a seconda dei processi che in quel
dato istante sono in esecuzione. E possibile,
dopo aver estratto i file dal dump della memoria,
sottoporli ad analisi forense, attraverso
lapplicazione di un algoritmo di digest ed il
confronto con una copia autentica. Questo allo
scopo di rilevare una eventuale alterazione dei
file.
12ANALISI FORENSE - 2 Allo scopo di rilevare la
configurazione del sistema, sono stati
analizzati, attraverso un tool di editing, i file
di registro, precedentemente estratti dal
immagine ottenuta, questi sono stati identificati
in boot.hv default.hv user.hv tali
file contengono le seguenti chiavi HKEY_CLAS
SES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT
_USER Poiché la struttura dati dei file di
registro è documentata è possibile verificare
quali parti sono state modificate rispetto ad un
file di registro non alterato.
13OCCULTAMENTO DI DATI IN UN DISPOSITIVO WINCE La
ROM di un dispositivo WinCE ha una sezione
allocata al boot loader, mentre il resto della
memoria è dedicata al kernel. Limmagine della
ROM è composta da una sequenza di blocchi di
memoria contigui, alcuni dei quali vuoti, dove è
possibile occultare dei dati, utilizzando due
tipi di tecniche principali - utilizzo di
flasher tool rielaborati con tecniche di reverse
engineering - utilizzo di una memory card
precaricata con una immagine della ROM con la
quale eseguire un soft-reset del dispositivo.
Inoltre le modalità standard di allocazione
delle pagine nella memoria principale possono
essere utilizzate anche per occultare dati nello
slack space della ROM. Per recuperare dati
nascosti in spazi non allocati si utilizzano
tecniche di data carving offerte da diversi tool,
che offrono specifiche tecniche per ogni diverso
dispositivo.
14- CONCLUSIONI
- Lanalisi dei dispositivi embedded si è rivelata
particolarmente problematica a causa di diversi
fattori - Dispositivi eterogenei per i quali il
costruttore personalizza il sistema operativo,
pertanto non si hanno informazioni standard sui
dispositivi - A causa di ciò non esistono applicazioni
specifiche per la loro analisi ma tool generici
non certificati - Invasività delle tecniche che non permettono
lacquisizione della memoria senza alterarne il
contenuto. - Nel caso in cui sorga il sospetto che siano state
utilizzate tecniche di antiforensics per
nascondere e/o eliminare informazioni di natura
illecita allinterno del dispositivo in esame, si
ricorre a tecniche di analisi più sofisticate (e
costose), per esempio tramite il disassemblaggio
dei chip di memoria flash, per la loro analisi
successiva in un contesto controllato.
15Fine
Un sentito ringraziamento a tutti coloro che mi
sono stati vicino e che mi hanno sostenuto ed
incoraggiato in questi anni di studio, e in
particolar modoai docenti del Dipartimento di
Informatica, al prof. Mattia MONGA ed ai suoi
valentissimi ricercatori che, con immensa
pazienza, mi hanno guidato in questo periodo di
preparazione della mia Tesi ai miei compagni di
studio con cui ho potuto condividere questa
splendida avventura al Maggiore dei Carabinieri
Marco MATTIUCCI, senza il cui prezioso contributo
non mi sarebbe stato possibile realizzare questa
tesi ed infine ma non in ordine di importanza a
mia moglie Giovanna ed alle mie figlie Giulia ed
Alice che mi hanno sostenuto, incoraggiato e
sopportato per tutto il percorso di studi
svolto.