• Non ci sono risultati.

5. Analisi forense di reperti informatici per il reato di pedopornografia:

5.2. I principali software di file sharing su reti peer-to-peer e aspetti rilevant

5.2.5. Emule

Il client peer-to-peer più noto e diffuso soprattutto in alcuni paesi, tra cui l’Italia e il Brasile, è eMule284: si tratta di un programma open-source il cui programma di installazione, così come i sorgenti, sono disponibile nella pagina ufficiale del progetto285. La partecipazione all’interno della rete può avvenire utilizzando i protocolli eDonkey e Kademlia (singolarmente o insieme). Le peculiarità e le metodologie utili per condurre un’analisi forense verranno illustrate nel paragrafo seguente.

<KMDKSA ver="1.0">

<CATEGORY>Video</CATEGORY> <KEYWORDS>Pinocchio</KEYWORDS> </KMDKSA>

283 L’agente di ricerca funziona in maniera simile alla ricerca standard ma continua a

ripetere la ricerca per le 24 ore successive ad intervalli di 30 minuti, in modo tale da ottimizzare i risultati per via del fatto che nella rete peer-to-peer è la normalità che un nuovo utente possa fare login.

284 http://sourceforge.net/projects/emule

5.2.5.1. Installazione di eMule

Per comprendere correttamente il funzionamento di eMule e compiere una corretta analisi forense è importante partire dalle modalità di installazione del programma: se non diversamente indicato, eMule viene installato nella directory predefinita C:/Programmi/eMule nella quale vengono create varie

altre cartelle ausiliarie tra cui, importanti per l’analisi forense, l’archivio dei file in condivisione (di default C:/Programmi/eMule/incoming) e l’archivio dei

file temporanei in scaricamento (di default C:/Programmi/eMule/temp).286 A

livello di registro è possibile individuare la cartella di installazione nella chiave di registro HKEY CURRENT USER/Software/eMule/Install Path.

Quando un file è completamente scaricato viene spostato dalla cartella temp

alla cartella incoming (o comunque tra le cartelle designate dall’utente ad

ospitare i file temporanei e completati).

5.2.5.2. L’user ID

Emule prevede un sistema di crediti il cui scopo è incoraggiare gli utenti a condividere i propri file: più file sono condivisi e inviati ad altri client, più crediti si ricevono e quindi più velocemente si scalano le code di attesa per i download.

Il valore dei crediti maturati è conservato all’interno del file denominato

clients.met dai singoli nodi remoti, ovvero dai nodi a cui si è inviato dei file,

dove ogni utente è identificato mediante un valore a 16 byte noto come user ID. Lo user ID si presenta simile ad un digest MD4 in quanto stringa a 128 bit e viene assegnato a ciascun utente alla prima esecuzione di eMule utilizzando una funzione di concatenazione di numeri casuali, ad eccezione del sesto e quindicesimo byte, i cui valori sono sempre rispettivamente i valori esadecimali

0x0E e 0x6F.

Poiché il valore di user ID è fondamentale per la corretta gestione dei crediti, un algoritmo di identificazione che prevede un meccanismo di cifratura

286 In alternativa, la cartella dei file condivisi può essere impostata nel profilo personale di

ogni utente, per cui in C:/Documents and Settings/[USER]/My Documents/eMule Downloads/Incoming o in C:/Users/[USER]/Downloads/eMule/Incoming, a seconda il sistema operativo sia Windows XP o Windows Vista/7). Stesso discorso vale per la cartella dei file temporanei.

con chiavi pubbliche e private RSA viene utilizzato al fine di evitare che un utente si spacci per un altro utilizzandone così il vantaggio accumulato287.

5.2.5.3. Il file ID

Ogni file disponibile nella rete è caratterizzato univocamente da un identificato detto file ID calcolato mediante l’algoritmo di hash MD4288 specifico di eDonkey289 dal client che ne ha disponibilità: i file di dimensione superiore a 9,28MB vengono suddivisi in una serie di parti (grandi al massimo circa 9 MB) e per ognuna di esse viene calcolato un valore hash MD4: in questo modo, una volta scaricato l’intero file, il client può verificarne la correttezza confrontando l’hash dell’intero file; qualora questo non fosse concordante può ancora effettuare una verifica sulle singole parti e, rintracciata la porzione danneggiata, procedere al download correttivo290.

Quando il file supera i 9,28 MB, eMule procede al download nella cartella

temp di singole parti, anche in maniera non consecutiva, che verranno poi

riassemblate al termine dello scaricamento, ma immediatamente rese disponibili alla divulgazione verso i nodi che ne facessero richiesta.

È comunque importante sottolineare che l’utente che richiede il download non solo non può scegliere uno specifico nodo remoto da cui scaricare o a cui inviare un file, ma è ignaro di come funzioni, e non ha il potere di influire, il meccanismo con cui:

 si stabilisce il numero di utenti remoti da coinvolgere nello scaricamento del file;

 si selezionano gli utenti remoti da cui scaricare il file;  si frazioni il file e in quale ordine si prelevino le varie parti;  si pone in condivisione il file, o sue parti già scaricate;

 si accettano le richieste di invio del file da parte di altri utenti.

287 Bickson D., Kulbak Y. (2005) The emule protocol specification. Op. cit.

288 Dettagli sull’algoritmo MD4 e sua implementazione sono disponibili all’indirizzo

http://www.ietf.org/rfc/rfc1320.txt.

289 Per calcolare il digest di un file utilizzando lo stesso algoritmo impiegato da eDonkey è

possibile utilizzare l’applicazione HashCalc disponibile all’url

http://www.slavasoft.com/hashcalc/.

290 Lange R., Ghedini Ralha C. (2011) Identificação de Artefatos Periciais do eMule. In

Può tuttavia verificarsi la circostanza per la quale due o più utenti si accordino in modo tale da utilizzare la rete eDonkey con un server privato con il quale condividere solo file di una certa tipologia.

5.2.5.4. File di eMule

Oltre ai file oggetto di condivisione, l’analisi forense su un sistema che utilizza eMule richiede la valutazione anche di una serie di file salvati nella cartella config che vengono gestiti dal software di file sharing per il corretto

funzionamento dello stesso.

Tra essi, l’unico file in formato testuale è denominato

AC_SearchString.dat e contiene la lista delle ultime keyword utilizzate per

cercare file utilizzando il motore di ricerca interno al software291. Gli altri file (in formato binario) utili per un’indagine sono:

 emfriends.met, che contiene la lista degli amici con cui si sono

svolte conversazioni di chat: eMule dispone infatti anche di un modulo per conversare con altri utenti, ma delle conversazioni non viene mantenuta traccia;

 known.met, che contiene la lista dei file posti in condivisione,

scaricati e in scaricamento;

 client.met, che contiene la lista degli altri utenti con i quali si e

condiviso un file (in download o in upload).

 preferences.dat, che contiene l’user ID dell’utente.

5.3. Prodotti commerciali esistenti per l’analisi forense del peer-