INFORMATICA - NETWORK FORENSICS

"...quando l'evidenza di un fatto è distribuita su una rete"

Marzo 2007

Una delle più grosse superficialità di un tecnico informatico forense è pensare di poter esaurire l'indagine tecnica sui dati di una rete di computer analizzando le singole macchine componenti. E' davvero il caso di dire che in questi frangenti i dati della rete sono "maggiori" di quelli dovuti alla somma dei dati nei singoli nodi componenti.

Premessa

Il termine "Network Forensics" (NF) si riferisce all'analisi di sistemi di rete, ivi inclusa la Rete delle reti ossia Internet, al fine di determinare elementi probatori inerenti un determinato caso investigativo. Da questo punto di vista è bene sottolineare una differenza notevole tra il NF e la Network Security (NS). La prima opera in ambito legale e quindi si occupa di violazioni delle leggi mentre la seconda si può trovare ad operare in ambiti non necessariamente penali come quelli in cui si viola un regolamento interno di una struttura. Dal punto di vista delle autorizzazioni necessarie a svolgere determinare attività tecniche si crea un divario enorme. Questo non toglie che diversi strumenti hardware/software impiegato nella sicurezza informatica trovano vasta applicazione in ambito di NF. Un'altra differenza di natura questa volta più tecnica è che il NF interviene sempre dopo il fatto mente la NS può agire prima e nel mentre. Ad esempio lo studio, l'installazione e l'impostazione dei parametri di un Intrusion Detection System (IDS) è NS mentre l'analisi di una intrusione che ha causato un danneggiamento al sistema informatico attraverso i LOG dello stesso IDS rappresenta attività di NF.

La definizione

La prima definizione di NF nasce in seno alla NS ed in particolare agli IDS: "...è il prelievo, la memorizzazione e l'analisi degli eventi di rete al fine di identificare la sorgente degli attacchi alla sicurezza o l'origine di altri problemi del sistema di rete..." [13]. Come si può vedere si tratta sempre di analisi "dopo il fatto" ma orientata squisitamente ai problemi di sicurezza e non solo a quelli legali. La differenza di natura tecnico-pratica è evidente se si va a verificare i tool impiegabili nel NS che raramente si occupano di raccogliere prove digitali con tutte le richieste garanzie quanto piuttosto di segnalare eventi eventi di rete ad un osservatore-guardiano. Ad oggi sono stati sviluppati diversi Network Forensic Analysis Tools (NFAT) [14] così definiti da Information Security Magazine [15] che oltre ad analizzare flussi di dati ed eventi consentono dopo il fatto di averne evidenze utili in ambito dibattimentale.

Sebbene le fasi generali esaminate nella FC possano essere applicate alla NF è inevitabile considerare che estrarre delle prove digitali da una rete richiede un discreto livello di preparazione tecnica specifica ulteriore a quella del FC, gli NFAT più opportuni e spesso anche degli strumenti di FC adeguati. La stessa presentazione dei risultati dell'indagine tecnica a non tecnici (magistrati, giudici ed avvocati) può risultare molto complicata proprio a causa del fatto che sono spesso coinvolti eventi di natura prettamente digitale e non fisica (es. danneggiamento/alterazione di dati, penetrazione di un sistema protetto, ecc.).

Di seguito, parimenti a quanto fatto per il FC, si passa a considerare l'insieme dei passi più o meno necessari per la NF in un ambito che ovviamente rispetta i pieni termini della legalità. Quest'ultimo concetto è da evidenziare perchè spesso il NF può essere realizzato attraverso strumenti come il cracking, lo sniffing, il denial of service, ecc. non specificamente autorizzati dalla magistratura. Queste scorciatoie, problematicamente alla portata di un gran numero di specialisti, conseguono risultati il più delle volte non impiegabili in dibattimento (ma, bisogna ammettere, talvolta utili investigativamente).

Le autorizzazioni legali

La considerazione da fare inizialmente è che una rete di computer, pur essendo impiegabile come mezzo per lo svolgimento di un determinato reato non è necessariamente tutta coinvolta nel reato stesso. In pratica l'analisi forense in ambito NF può coinvolgere più dati di quelli specificamente inerenti il reato che si sta perseguendo e questo è un problema sostanziale perchè le autorizzazioni legali sul prelievo e l'analisi dei dati dovrebbero riguardare esclusivamente ciò che attiene il procedimento penale mentre spesso si ha la necessità di "allargarle" con ovvi rischi di commettere violazioni durante le operazioni.

Sono ormai famosi i casi investigativi, che non cito nel particolare, in cui diverse FFPP sono intervenute a reato avvenuto sequestrando interi server di ISP danneggiando gli stessi in maniera non necessaria ma semplicemente per una forma di cautela dovuta spesso a ignoranza sull'argomento specifico. Tale ignoranza, oltre ai danni sugli utenti, ha determinato anche enormi richieste di rimborsi e spesso la citazione in ambito civilistico appunti per danni a terzi non coinvolti nell'indagine (in questi fatti si vede l'importanza di definire prima possibile con chiarezza legale e tecnica il NF).

Alla precedente considerazione va aggiunta quella sul personale del sistema informativo che regge la rete. Spesso gli amministratori di rete, di database, i tecnici manutentori, ecc. non sono minimamente interessati dal reato nè possono avervi preso parte eppure ciò che conoscono può essere determinate ai fini della risoluzione del caso. Si pensi a quegli amministratori che, per ragioni di sicurezza, talvolta neanche troppo giustificate, mantengono dati sull'andamento della rete (MAC address, IP address, indirizzi email, ecc.) che poi sono fondamentali per dimostrare dei fatti rilevanti. L'unico problema è che la metodologia di raccolta e conservazione di tali dati non risponde generalmente a canoni forensi e talvolta neanche alle disposizioni sulla privacy da cui seppur utili le informazioni possono essere impiegate solo a livello investigativo.

In definitiva, dato che trattare i dati di una rete può voler significare analizzare: email headers, intranet, Usenet, DNS, LOG, data base, ecc. quali tipi di autorizzazione deve fornire un magistrato che richiede tali operazioni tecniche? Qualcuno con superficialità risponde che basta un'autorizzazione del tipo "...quant'altro utile ai fini delle indagini..." voce spesso presente nei documenti formali di richiesta. Si tratta ovviamente di una modalità non sempre valida! L'esempio classico è sui data base distribuiti. Un archivio elettronico è un vero e proprio "domicilio virtuale" soggetto a protezione dei dati e degli accessi. Autorizzare l'analisi dei dati della rete sulla quale opera il data base non vuole assolutamente dire autorizzare l'entrata del tecnico forense nell'ambiente del data base e trattarne (memorizzarne o visionarne) i dati: si prefigurerebbe una violazione di sistema informatico, reato specificamente previsto dal codice penale.

Vi è la necessità di autorizzazioni specifiche e non generiche molto di più di quanto accada per il FC [16]. Le autorizzazioni specifiche possono essere ottenute solo dal peculiare connubio di attività tra AG e tecnico forense. La NF si deve pianificare attentamente prima dell'intervento richiedendo il minimo di autorizzazioni legali necessarie per la presunta attività tecnica. Successivamente si deve interagire con l'AG comunicando tempestivamente le eventuali variazioni dell'ambito di analisi.

L'identificazione

Ad oggi la maggioranza delle attività di FC conduce verso un ambito di rete e quindi verso attività di NF. Risulta interessante, però, notare che molte attività di NF hanno come logica conclusione il sequestro di una o più memorie di massa ricandendo quindi nel FC. Una discreta bidirezionalità tra i due ambiti che porta necessariamente le strutture che si occupano di NF ad avere le necessarie competenze di FC per non dover alllungare i tempi di risoluzione dei casi.

Data questa mutua interazione, cosa vuole dire identificare i dati utili per un indagine su una rete? Per primo verificare quali sistemi e supporti per la connessione pura possono essere interessati (hub, switch, proxy, ISP, ecc.). Poi ricercare ed individuare tutti gli elementi che testimoniano una determinata attività (nota o presunta) sulla rete e quindi analizzare file di LOG, software di monitoring eventualmente attivi, report di IDS, ecc.. Infine trovare, se esistono, macchine/memorie o parti di di esse che, una volta sequestrate ed analizzate mediante un'attività di FC, aiutino a descrivere il più possibile l'accaduto ed a prelevare tali elementi probatori.

Documentazione e raccolta

Qualora non sia possibile far intervenire il processo di FC ma gli elementi che dimostrano un crimine sono un prodotto della rete che non risiede specificamente su un nodo fisico (es. data base distribuiti), la copia dei dati rilevanti è un processo di difficile interpretazione e con scarse garanzie. Nel FC le garanzie si esplicano in quanto la copia forense viene certificata mediante un codice di verifica che ne assicura la genuinità prima e dopo l'analisi. Nel NF i dati rilevanti sono spesso frutto dell'elaborazione congiunta di dati provenienti da diversi nodi e non semplicemente di una copia, da cui la certificazione mediante hash non ha molto senso, bisognerebbe piuttosto certificare il processo di ottenimento assieme allo stato (di natura dinamico) della rete nel momento. A questo problema sostanziale vanno poi aggiunte molte osservazioni:

- spesso le macchine in rete non possono essere spente o che le copie devono essere fortemente circoscritte ai dati di interesse (classico caso degli ISP);

- alcuni dati di interesse sono rappresentati da dinamiche di azioni in rete e non semplicemente dai dati statici;

- quando si tratta di raccogliere ipertesti attivi (con script) può avere poco senso memorizzare lo script e non quello che lo script determina in quel momento;

- dato l'ambiente distribuito più investigatori possono agire sulla stessa scena del crimine virtuale mutuamente influenzando i dati che ottengono;

- esistono poche o scarse garanzie circa la presenza e l'attendibilità forense dei LOG (caratteristiche entrambe da comprovare caso per caso);

- la massa di dati da memorizzare per determinati casi investigativi può essere enorme o teoricamente illimitata, si pensi ai tool di analisi del traffico di rete quando si indaga su una P2P.

Copia ed analisi?

Volendo essere sfacciatamente conformi alla tipologia di attività del FC che poi realizza il processo di indagine tecnica attualmente più stabilizzato ed affidabile nel settore HTC ci si potrebbe chiedere di cosa fare la copia! Se si considera un canale di trasmissione digitale la copia è del flusso, si trasformerebbe cioè un flusso in un set statico di dati memorizzato su qualche (ampia) memoria con tutti i problemi connessi alla tipologia fortemente dinamica e tempo-dipendente dei legami tra informazioni che si trasmettono. Se si considera un nodo del network il problema sembrerebbe di più semplice soluzione: vi è comunque un computer o sistema informatico complesso con delle memorie di massa e quindi agire con FC sembrerebbe la soluzione più ovvia. Sfortunatamente questo non è sempre vero: molti dei "nodi" di una rete non possono ammettere lo shut down senza compromettere definitivamente informazioni e processi che viaggiano sulla rete stessa da cui si arriverebbe all'assurdo di preservare lo stato della singola macchina alterando quello della rete. In questo caso l'unica via d'uscita è la copia a runtime, ossia durante la normale attività del nodo e della rete. La forensic live analysis è infatti la frontiera del FC e gli studi scientifici in tale direzione sono nati proprio in seno alla necessità di repertare dati su una rete facendo il minor danno possibile.

Sebbene dal punto di vista tecnico la Forensic Live Analysis sembra rispondere alla problematica del NF bisogna evidenziare che innanzitutto sono pochi gli strumenti hardware e software in grado di realizzare compiutamente attività di questo tipo (generalmente si tratta di estensioni dei normali pacchetti di FC) e poi dal punto di vista legale si aprono problematiche notevoli. Dal mio punto di vista di tecnico forense la copia a runtime di dati su una memoria di massa operativa è un'operazione sicuramente irripetibile, non tanto perchè distrugge o consuma l'oggetto della sua attività ma piuttosto perchè ricostruire le condizioni globali entro le quali si svolge è praticamente irrealizzabile. Questo, si badi bene, anche senza che la macchina bersaglio sia collegata ad una rete, figurarsi durante le connessioni.

Le operazioni irripetibili nel settore HTC sono problematiche da diversi punti di vista: (1) difficoltà nel documentarle e certificarle in assenza di tecnici di controparte che possano aderire o meno a quanto svolto (2) difficoltà di presentazione in dibattimento dei risultati in quanto si deve poter ragionare esclusivamente su quanto acquisito sviscerandolo dal necessario ambito fortemente tecnico (si devono discutere oltre che i risultati anche i passi per ottenerli dato che non possono essere compiuti nuovamente da qualcun altro).

Riguardo l'analisi ci piacerebbe sicuramente poter operare come nel FC in cui lavorando su copie è possibile elaborarle in diversi modi senza preoccuparsi troppo delle alterazioni. Nel NF purtroppo la copia, come si è visto, ha validità limitata (es. due tecnici che valutano aspetti differenti dell'indagine possono svolgere copie a runtime diverse!) e poi l'analisi è quasi sempre urgente data la natura fortemente dinamica della rete per cui anche l'analisi assume spesso caratteristiche di irripetibilità (runtime analysis).

Strategie di recupero dei dati nel NF

In FC il recupero dei dati è uno degli aspetti salienti dell'attività di indagine. Classico è il recupero dei dati cancellati, meno noto ma ugualmente importante la ricostruzione manuale di dati documentali o immagini a partire da cluster non referenziati, poi vi è la ricostruzione degli eventi e delle linee temporali di esecuzione di essi, ecc.

In NF l'aspetto recupero dei dati assurge al massimo livello di complessità dando i risultati del FC in quest'area come scontati. Il recupero dei file di log, il recupero di entry all'interno di file di log, la ricostruzione degli eventi e dei dati a partire dal traffico di rete, il recupero di password per accedere alle sessioni di lavoro, ecc. sono solo alcuni esempi di attività di recupero in NF. La loro complessità si accompagna ad un grado di aleatorietà notevole che fanno di essi generalmente più un mezzo investigativo (indizi) che fonte di elementi probatori da dibattimento.