INFORMATICA - COMPUTER FORENSICS

Marzo 2013

Ricordo ancora quando, in una delle prime indagini informatiche che affrontavo (1998), mi fu detto: "ma che problema hai? attiva quel PC e cerca quello che ti serve sull'hard disk..." Inutile dire che non feci quell'errore idiota che sfortunatamente ancora in molti oggi fanno ma piuttosto mi procurai le mie prime conoscenze tecniche di Forensic Computing e realizzai un software ed una procedura per il repertamento dei dati.

Indagini sulle memorie di massa dei computer

Si è sentito talvolta parlare di "Informatica forense" ma la realtà è che in Italia non è stato ancora definito un termine corretto per Forensic Computing. Resta il fatto che tutte le Forze di Polizia ed un discreto numero di ditte e consulenti privati si sono dotati di strumenti tecnologici e conoscenze per effettuare indagini sulle memorie di massa, soprattutto sugli hard disk dei Personal Computer.

Forensic Computing (informatica forense? legale?...)

Il FC nasce da un fatto semplice ed a suo modo affascinante: un qualsiasi utente, operando su di un sistema computerizzato crea, spesso a sua completa insaputa, tracce che possono divenire prove di un’attività illecità. Al fine di recuperare tali informazioni atte, a seguito del dibattimento processuale, a divenire prove sono necessarie procedure e sistemi specifici.

Si può sicuramente affermare che il FC deve soddisfare sia esigenze di natura tecnico/metodologiche che giuridico/legali. In primo luogo però è necessario stabilire dal punto di vista legale di cosa si stia parlando. Il sistema giudiziario italiano guarda al FC come ad una tecnica per trattare, attraverso sistemi hardware/software, dati digitali a fini investigativi e/o giudiziari. Tale sommaria definizione è volutamente dispersiva nel senso che include nel FC problematiche molto più complesse quali, ad esempio, l’analisi forense delle reti telematiche ma ciò è necessario al fine di sottolineare l’ampiezza della problematica.

Dal punto di vista scientifico esistono buoni tentativi di definire il FC ma le seguenti due possono raccogliere sicuramente i concetti fondamentali inerenti:

“…il processo di: Identificazione, Conservazione, Analisi e Presentazione di ‘digital evidence' [1] in processo garantendone l’ammissibilità” [2]

“…la raccolta e l’analisi di dati secondo una prassi che ne garantisca la libertà da distorsioni e pregiudizi cercando di ricostruire dati ed azioni avvenuti nel passato all’interno del sistema informatico” [3]

In ogni caso, dato che le attività di FC tendono ad ottenere elementi atti a testimoniare un fatto accaduto-in o per-tramite-di un sistema informatico, la loro caratteristica principale è che intervengono sempre dopo il fatto stesso. Si noti che le due definizioni riportate tendono a completarsi e spiegarsi perché l’ammissibilità citata in [2], nella maggioranza degli ambiti legali è proprio la “libertà da distorsioni (volontarie/involontarie) e pregiudizi (di analisi)” di cui in [3].

Il Processo di Identificazione

Il primo e fondamentale passo nel FC è determinare dove cercare la prova digitale nel senso di stabilire quale apparato è in grado almeno teoricamente di memorizzare informazioni digitali attendibili ed inerenti il caso in studio per poi capire in quale stato dovrebbe essere repertato [4] e/o analizzato. Sebbene molti pensino che il FC si limiti al repertamento ed analisi dei personal computer nella realtà esso si estende ad una grande varietà di sistemi elettronici digitali. La valutazione di quale tra i sistemi digitali presenti nell’area di competenza debba essere repertato per la successiva analisi non risulta immediata. Telefoni cellulari, smartphone(s), smart-card(s), palmtop, intere reti di computer, ecc. potrebbero in molti casi risultare utili ed il riconoscimento del loro stato (attivi, spenti, batteria scarica, connessi, ecc.) sicuramente influisce sulla decisione di acquisirli e sulla modalità per farlo. L’esempio ormai classico del provider di servizi Internet per utenti comuni che nei suoi server mantiene informazioni utili a delle indagini ha portato, in questi ultimi dieci anni, a sequestrare e bloccare fisicamente interi apparati (commettendo peraltro diversi illeciti) mentre il repertamento avrebbe dovuto limitarsi esclusivamente alle informazioni di interesse presenti nelle memorie di massa. Tale esempio è uno dei più importanti riscontri dei problemi legati ad un errato processo di identificazione.

La conservazione delle prove digitali

In [5] viene sottolineato che “…la speciale natura delle prove digitali richiede considerazioni aggiuntive ed alcuni cambiamenti rispetto le prove reali” ed in particolare il fatto che le informazioni memorizzate su un sistema digitale sono per loro natura indipendenti da quest’ultimo. In pratica, senza la necessaria e forzata caratterizzazione esterna (fisica), le prove digitali non sono associabili ad un apparato o ad un istante di tempo. Questo determina il fatto fondamentale che la differenziazione tra copia ed originale, quando si opera su memorie digitali ed in mancanza di specifiche direttive dell’operatore è impossibile. Ecco quindi un principio di indistinguibilità che ha condotto la preservazione dei dati utili (anche chiamata repertamento dei dati) ad essere un’attività equivalente alla copia degli stessi su supporti di memoria particolarmente affidabili (ottici e/o nastri magnetici con “blindatura”).

La caratterizzazione delle copie avviene includendo in esse informazioni ausiliarie come: data ed ora in cui avviene la copia, ID dell’operatore, commenti, ecc.. Tali elementi vengono sottoposti ad un processo di hashing assieme ai dati utili ed i valori calcolati rimangono definitivamente storicizzati in supporti ausiliari a quelli di destinazione della copia. A questo proposito, nel FC, si impiegano delle funzioni di hash standard come l'arcaico DIVA [6] (proprietario della ditta Computer forensics ltd) o il frequentissimo ed oggi osteggiato (per la sua presunta debolezza) MD5 [7] , SHA, ecc. I valori di hash calcolati durante la copia sono utili per garantire due fatti essenziali:

- Data la possibilità di calcolare l’hash sia sui dati di partenza che su quelli copiati e fermo restando le proprietà di univocità degli algoritmi che implementano la funzione di hash, è possibile verificare l’aderenza “assoluta” della copia ai dati di partenza durante il processo di clonazione, impiegando tale metodo come un pesante (computazionalmente) e rigoroso sistema di controllo errore.

- Successivamente alla copia, la disponibilità del valore(i) di hash, consente di stabilire se la copia è ancora valida e se sono intervenute delle alterazioni (volontarie e/o involontarie).

Diversi livelli di copia dei dati

Una nota molto importante deve essere riportata in relazione al tipo di copia dei dati di una memoria di massa o di una device digitale in genere. Si possono distinguere infatti almeno tre livelli di copia:

a. copia di livello fisico: o bitstream copy, in cui il contenuto dell’unità fisica viene letto sequenzialmente (la sequenza è stabilita dall’indirizzamento fisico, in genere gestito dal controller dell’unità di memoria) caricando la minima quantità di memoria di volta in volta indirizzabile (ad es. negli hard disk il settore fisico, nelle ROM il byte, ecc.) per poi registrarla nella stessa sequenza su di un comune file binario (immagine fisica dell’unità);

b. copia di basso livello del file system: o cluster(block)-copy, in cui il contenuto di una partizione logica (strutturatasi a seguito di una formattazione correlata ad un preciso file system) viene letto sequenzialmente caricando la minima quantità di memoria che il file system consente di indirizzare di volta in volta (ad es. il cluster in FATxx o NTFS) per poi registrarla nella stessa sequenza su di un comune file binario (immagine di basso livello del file system);

c. copia del file system: in cui parte o tutto il contenuto di alto livello di una partizione logica (strutturatasi a seguito di una formattazione correlata ad un preciso file system), ivi intendendo i contenuti di file e directory evidenti (non cancellati), viene sottoposto a backup su di un file (file di backup) di particolare formato (dipendente dal tool impiegato).

Il classico comando "dd" dei sistemi operativi Unix-like può ad esempio effettuare delle copie sia di tipo a. che b. mentre i tool di backup svolgono usualmente copie di tipo c. o b.. Il "dd", per la semplicità di impiego e per la disponibilità del codice sorgente (es. in Linux) è divenuto un punto di riferimento anche nel dump di sistemi digitali come ad esempio le smart-card. Sfortunatamente non fornisce nessuna garanzia di tipo forense, nel senso che non effettua controlli di aderenza o calcoli di hash-function [8].

Si sottolinea, infine, che i citati livelli di copia non sono affatto equivalenti se lo scopo è individuare elementi probatori di tipo forense. In [9] si asserisce che “La persistenza dei dati è enorme. Contrariamente a quanto si possa pensare è molto difficile rimuovere dei dati da una memoria di massa, a prescindere dalla propria volontà…abbiamo impiegato un hard disk di discrete dimensioni per installare prima una copia di Windows, poi una di Solaris ed infine una di Linux ed il risultato è stato che con un opportuno software forense i file delle prime due installazioni erano facilmente recuperabili…”. La ricerca dei dati cancellati (generalmente ricchissimi di informazioni sull’attività svolta) è un elemento fondamentale dal punto di vista legale e le tre copie di cui sopra non permettono parimenti la citata analisi. In particolare la copia fisica a. mantiene tutte le informazioni possibili anche sul partizionamento (ad es. coesistenza di più sistemi operativi, ecc.), quella b. contiene sia i file cancellati che quelli evidenti ma non i dati sulle partizioni includendo una sola di esse, per finire la c. mantiene solo il contenuto di file e directory evidenti. Ovviamente a tali fattori si contrappongono la velocità di svolgimento della copia che aumenta da a. fino a c.. La scelta del tipo di copia da svolgere dipende quindi molto dal tipo di prova digitale che si intende ottenere e dal tempo che si ha a disposizione.

L'analisi forense dei dati

Come evidenziato in [2] ed in aderenza alla definizione di FC in [3], l’analisi forense deve rispettare le seguenti regole:

a. Minimo trattamento dei dati di partenza: il caso ideale è ovviamente quello in cui si riesce a svolgere una copia completa e certificata dei dati utili. In tale situazione infatti l’oggetto di analisi è la copia e quindi la probabilità di alterazione dei dati in origine è praticamente nulla. Purtroppo esistono dei casi particolari nei quali non è possibile svolgere copie complete e quindi bisogna operare direttamente sul reperto originale. In questo frangente è necessario svolgere tutte quelle operazioni minime indispensabili a scopo forense che garantiscano la minima alterazione possibile del sistema in studio [10].

b. Logging delle attività: tutte le attività svolte durante l’analisi forense devono essere accuratamente registrate in un log o meglio ancora in un report ricco di particolari che consentano, nel migliore dei casi, di ripetere tutte le azioni svolte ma comunque sempre di evidenziare se siano state avviate alterazioni dei dati originali (magari indispensabili al fine di ottenere le prove digitali cercate). In particolare di ogni alterazione bisogna sottolineare chi la origina, in cosa consiste ed a quali limiti si estende, se è avvenuta a livello logico o fisico, lo stato preesistente (qualora rilevabile), le motivazioni del cambiamento, ecc.. Nel settore forense si dice che deve esserci una precisa catena di custodia dei dati e deve essere garantita la continuità probatoria [11].

c. Ammissibilità legale dei risultati: le prove digitali che si ottengono devono provenire da una procedura tecnica che rispetta appieno le locali leggi.

Un problema comune nel settore del FC è la necessità di prendere in considerazione tutti i dati disponibili per l’attività. Questo vincolo non è sempre di banale soddisfazione. Uno dei casi più evidenti è quello del time-stamping di file, e-mail, log(s), ecc., ipotizzando l’analisi di un PC, l’analisi di date ed orari dipende ovviamente dallo stato dell’orologio interno e quindi, più in generale, del BIOS, da cui la semplice copia dell’hard disk non porta tutte le informazioni necessarie [12]. Un altro caso interessante è quello in cui la configurazione interna del computer analizzato è di un qualche interesse ai fini dell’indagine, ecc., la scelta quindi del cosa considerare come dato per l’analisi si deve lasciare al singolo caso.

Presentazione delle prove digitali in dibattimento

Le citate attività tecniche (identificazione, preservazione ed analisi del sistema informatico) trovano, nel settore informatico forense, sfogo unico e sostanziale nell’esposizione dibattimentale e quindi un errore espositivo e/o formale può vanificare mesi di analisi ed invalidare anche prove digitali molto evidenti.

Le presentazioni delle prove digitali (in genere tramite relazioni tecniche e discussioni) vengono preparate basandosi su aspetti sociali e psicologici, informatici e legali imponendo la costituzione di un gruppo di lavoro interdisciplinare il più delle volte difficile da integrare causa le evidenti differenze degli approcci professionali nei singoli settori.

L'ideale è scindere il più possibile le considerazioni di tipo legale da quelle di natura prettamente tecnica. Ciò consente agli operatori di muoversi più liberamente svincolandosi da condizionamenti relativi ai risultati della loro attività di analisi. Questo se lo scopo, eticamente corretto, è la ricerca della “verita” e non la verifica di un’ipotesi accusatoria o difensiva.

Una valida e completa relazione tecnica di un'attività forense dovrebbe contenere: la sintesi dei principi scientifici accademicamente riconosciuti su cui l’analisi ed il repertamento si basano, la catena di custodia dei reperti (generalmente formata dai verbali che ne testimoniano prelievi, trasferimenti e luoghi di permanenza) e la loro accurata descrizione, le specifiche richieste dell’Autorità Giudiziaria con annesse le necessarie e precise autorizzazioni della Procura competente, la descrizione delle operazioni tecniche svolte in laboratorio e l’esito finale.

Di dette parti le richieste della A.G. e l’esito finale rappresentano gli elementi chiave che vengono presi in considerazione da avvocati, giudici e pubblici ministeri al fine di trarre conclusioni di ordine legale. Tutte le altre vengono riportate in maniera da rendere agevole lo studio e l’eventuale ripetizione delle analisi da parte di ulteriori organi tecnici forensi.

In particolare, l’esito finale deve avere le seguenti caratteristiche:

- Sintetico: dato che non necessita di riportare eccessivi particolari tecnici dell’analisi ma solo ciò che interessa dal punto di vista giuridico.

- Semplificato: colui che legge e valuta l’esito è di principio un fruitore inesperto nel settore informatico e quindi, nell’ipotesi che sia possibile, bisogna eliminare terminologie non consuete e spiegare a livello elementare quanto rilevato.

- Asettico: non deve contenere giudizi personali dell’operatore né tanto meno valutazioni legali sulle informazioni rilevate a meno che tali considerazioni non siano state espressamente richieste.

La relazione tecnica è quindi, assieme ad altri elementi provenienti dalle indagini classiche, la base per il dibattimento e non dovrebbe suggerire considerazioni di tipo legale che invece sono da formarsi in tale frangente processuale.