[It]Deft Manuale No Appen

download [It]Deft Manuale No Appen

of 52

Transcript of [It]Deft Manuale No Appen

deftStefano Fratepietro, Sandro Rossetti

Manuale dusoR. 0,6

GLI AUTORI ................................................................................................................................... 4 LICENZA DUSO.............................................................................................................................. 5 PREMESSA..................................................................................................................................... 7 INTRODUZIONE ............................................................................................................................. 8 PERCH DEFT UTILIZZABILE NELL'ATTIVIT DI DIGITAL FORENSIC? ............................................................... 9 REQUISITI DI SISTEMA ......................................................................................................................... 10 DEFT LINUX LIVE CD .....................................................................................................................11 ELENCO DELLE APPLICAZIONI ................................................................................................................ 11 AVVIARE DEFT LINUX LIVE CD ............................................................................................................. 13 DEFT LINUX TEXT MODE ...............................................................................................................15 GESTIONE DELLE MEMORIE DI MASSA ..................................................................................................... 16 MOUNT DELLE MEMORIE ..................................................................................................................... 16 File tipo dd/raw ........................................................................................................................ 17 File di tipo EWF/Encase ............................................................................................................ 19 File di tipo AFF .......................................................................................................................... 19 CALCOLO DELLHASH........................................................................................................................... 20 Md5sum ................................................................................................................................... 20 Sha1sum ................................................................................................................................... 21 Md5 e sha deep ........................................................................................................................ 21 Dhash ....................................................................................................................................... 22 ACQUISIZIONE MEMORIE DI MASSA........................................................................................................ 23 dd ............................................................................................................................................. 23 ddrescue ................................................................................................................................... 23 dcfldd........................................................................................................................................ 24 Dhash ....................................................................................................................................... 24 CREAZIONE DI UNA TIME LINE ............................................................................................................... 25 Fls ............................................................................................................................................. 25 Mactime ................................................................................................................................... 25 RICERCA FILE E CARTELLE ..................................................................................................................... 26 Locate ....................................................................................................................................... 26

2

Find........................................................................................................................................... 27 DEFT LINUX GUI MODE.................................................................................................................29 INTRODUZIONE .................................................................................................................................. 29 GESTIONE DELLA MEMORIA DI MASSA .................................................................................................... 32 CALCOLO DELLHASH........................................................................................................................... 34 ACQUISIZIONE DI MEMORIE DI MASSA .................................................................................................... 35 Dhash ....................................................................................................................................... 35 Guymager ................................................................................................................................. 36 GESTIONE DI UN CASO CON AUTOPSY..................................................................................................... 39 Creazione di un caso................................................................................................................. 39 XPLICO............................................................................................................................................. 47 Creazione di un caso................................................................................................................. 47 DEFT EXTRA ..................................................................................................................................51 APPENDICE 1 PARAMETRI PER IL BOOT DEL KERNEL..................................................................53 APPENDICE 2 MAN PAGE .........................................................................................................145 Mount..................................................................................................................................... 145 Affuse ..................................................................................................................................... 180 Sha1sum ................................................................................................................................. 187 Md5, sha1, sha256 deep ........................................................................................................ 189 Dhash ..................................................................................................................................... 195 GREP ....................................................................................................................................... 195 DD........................................................................................................................................... 208 DD rescue ............................................................................................................................... 212 DcflDD .................................................................................................................................... 214 Fls ........................................................................................................................................... 220 Mactime ................................................................................................................................. 223 Locate ..................................................................................................................................... 225 Find......................................................................................................................................... 230 Foremost ................................................................................................................................ 258

3

Gli autoriStefano youngSTEr Fratepietro si laurea nel 2006 in Information Technology and Management (Scienze di Internet) presso lUniversit degli studi di Bologna con tesi di laurea in Informatica Forense dal titolo Uno studio del caso virus Vierika; certificato ISECOM OPST,

attualmente un security specialist presso lufficio it-security del CSE (Consorzio Servizi Bancari) ed effettua attivit peritali per tribunali, forze dellordine e privati partecipando come consulente tecnico a casi di fama nazionale come Buongiorno! Vitaminic e Pirelli-Telecom-Ghioni. Dal 2005 creatore e project leader del sistema DEFT. Saltuariamente effettua attivit di docenza in Informatica Forense per Universit italiane e corsi privati. E membro IISFA (Italian Chapter) dal 2008.

Sandro bUSBoy Rossetti Alessandro Rossetti vive e lavora a Roma. Molti dei suoi interessi personali riguardano l'Information Technology, in particolare le

problematiche di security e forensic. membro di diverse organizzazioni indipendenti quali Isaca (Boad of Directors of the Rome Chapter), IACIS ed IISFA (Italian Chapter).

4

Licenza duso

Attribuzione - Non opere derivate 2.5 Italia

Tu sei libero di riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare quest'opera Alle seguenti condizioni: Attribuzione Devi attribuire la paternit dell'opera nei modi indicati dall'autore o da chi ti ha dato l'opera in licenza e in modo tale da non suggerire che essi avallino te o il modo in cui tu usi l'opera. Non opere derivate Non puoi alterare o trasformare quest'opera, ne' usarla per crearne un'altra. Rinuncia E' possibile rinunciare a qualunque delle condizioni sopra descritte se ottieni l'autorizzazione dal detentore dei diritti. Pubblico Dominio Nel caso in cui l'opera o qualunque delle sue componenti siano nel pubblico dominio secondo la legge vigente, tale condizione non in alcun modo modificata dalla licenza. Altri Diritti La licenza non ha effetto in nessun modo sui seguenti diritti: Le eccezioni, libere utilizzazioni e le altre utilizzazioni consentite dalla legge sul diritto d'autore; I diritti morali dell'autore; Diritti che altre persone possono avere sia sull'opera stessa che su come l'opera viene utilizzata, come il diritto all'immagine o alla tutela dei dati personali. Nota Ogni volta che usi o distribuisci quest'opera, devi farlo secondo i termini di questa licenza, che va comunicata con chiarezza.

Questo un riassunto in linguaggio accessibile a tutti della licenza integrale: http://creativecommons.org/licenses/by-nd/2.5/it/legalcode

5

Dedicato ad Ele e Silvia per la loro infinita pazienza.

Dedicato anche a bubu e paguro, sperando che prendano pi dalle madri che dai loro padri.

6

PremessaCon questo manuale vogliamo fornire un'infarinatura sulle principali funzioni e potenzialit della distribuzione LIVE DEFT. Rappresenta quindi un punto di partenza da cui trarre spunto e stimolare la crescita delle proprie conoscenze tecniche. In queste pagine non sono presenti (per ora) approfondimenti sullutilizzo di gli ogni applicativi e comandi dei presenti. Abbiamo inserito alcuni esempi che suggeriscono allutente come poter svolgere alcune delle principali attivit di Digital Forensic quali lacquisizione, la preservazione, lanalisi e la gestione di casi riguardanti memorie di massa (dischi rigidi, penne usb, lettori mp3) e o traffico telematico su rete IP.

Buona lettura!

7

IntroduzioneStefano Fratepietro, con il supporto di Salvatore Tarantino, Massimiliano Dal Cero, Davide Gabrini, Bartolomeo Bogliolo, Valerio Leomporra ed Alessandro Rossetti, ha sviluppato il live CD Linux1 dedicata alla digital forensic2 DEFT3. Deft fornisce alloperatore anche una selezione, denominata DEFT Extra, di applicazioni Microsoft Windows (sia open source4 sia closed source) che non hanno ancora un equivalente altrettanto valido nel mondo *nix.

La prima versione di DEFT Linux fu sviluppata nel 2005 in collaborazione con il corso di Informatica Forense della facolt di Giurisprudenza dellUniversit degli studi di Bologna. Questa distribuzione viene tuttoggi utilizzata durante le ore di laboratorio del corso di Informatica Forense sia nellUniversit di Bologna sia in molte altre universit italiane ed enti privati. Al momento una delle principali soluzioni impiegate durante lattivit dalle forze dellordine italiane e internazionali.

Questo manuale contiene: una breve descrizione dei principali applicativi che compongono la suite alcuni how-to esplicativi

DEFT distribuita gratuitamente senza alcuna garanzia di funzionamento.

1

GNU/Linux un sistema operativo libero di tipo Unix (o unix-like) costituito dall'integrazione del kernel Linux con elementi

del sistema GNU e di altro software sviluppato e distribuito con licenza GNU GPL o con altre licenze libere. Wikipedia2

Scienza che studia l'individuazione, la conservazione, la protezione, l'estrazione, la documentazione e ogni altra forma di

trattamento del dato informatico al fine di essere valutato in un processo giuridico e studia, ai fini probatori, le tecniche e gli strumenti per l'esame metodologico dei sistemi informatici. Wikipedia3 4

Acronimo di Digital Evidence & Forensic Toolkit. Il termine indica un software i cui autori permettono il libero studio e l'apporto di modifiche da parte di altri

programmatori indipendenti.

8

Perch DEFT utilizzabile nell'attivit di Digital Forensic? Un software adatto per lattivit di digital forensic quando, durante il suo utilizzo, garantisce linalterabilit della struttura dei file o del sistema sottoposto ad analisi. In particolare DEFT implementa alcune caratteristiche che riducono al minimo il rischio di alterare il dato sottoposto ad analisi. Alcune di queste implementazioni sono: 1. Al boot, il sistema non utilizza le partizioni di swap presenti nel sistema sottoposto ad analisi. 2. Non vi sono automatismi di mount delle memorie di massa allavvio del sistema. 3. Non vi sono automatismi di alcun tipo durante lattivit di analisi delle evidente; loperatore padrone del mezzo e deve essere consapevole delle operazioni che sta eseguendo. 4. Tutti i software di acquisizione di memorie di massa e di traffico su rete IP non alterano loriginalit del dato sottoposto ad acquisizione.

9

Requisiti di sistema Per lutilizzo delle funzionalit di DEFT, sufficiente avviare con il CDROM di DEFT Linux un qualsiasi sistema avente le seguenti caratteristiche: 1. Una qualsiasi CPU x86 (Intel, AMD o Citrix) con almeno 166 Mhz per eseguire DEFT Linux in modalit testuale; 200Mhz per eseguire DEFT Linux in modalit grafica; 2. 64 Mbyte di memoria ram per eseguire DEFT Linux in modalit testuale, 128 per la modalit grafica; 3. Lettore cd-rom 24x o superiore o porta USB 2.0.

DEFT Linux supporta le nuove architetture Apple con processori Intel.

DEFT Extra pu essere eseguito su tutti i sistemi Microsoft Windows a 32 bit. Per le versioni a 64 bit sono state riscontrate alcune piccole limitazioni che pertanto non ne garantiscono il totale supporto.

10

DEFT Linux live CDElenco delle applicazioni DEFT Linux sleuthkit 3.2.0 autopsy 2.24 dff 0.8 dhash 2.0.1 aff lib 3.6.4 disk utility 2.30.1 guymager 0.5.7 dd rescue 1.14 dcfldd 1.3.4.1 dc3dd 7 foremost 1.5.6 photorec 6.11 mount manager 0.2.6 scalpel 1.60 wipe 0.21 hex dump outguess 0.2 ophcrack 3.3.0 xplico 0.6.1 DEFT edition wireshark 1.2.11 ettercap 0.7.3 nmap 5.21 dmraid testdisk 6.11 ghex, light gtk hex editor vinetto 0.6 DEFT Extra WinAudit 2.28.2 MiTeC Windows Registry Recovery 1.5.1.0 Zeroview 1.0 FTK Imager 3 Nigilant32 0.1 Windows Forensic Toolchest 3.0.05 MoonSols Win32dd 1.0.2.20100417 MoonSols Win64dd 1.0.2.20100417 Windows File Analyzer 1.0 UltraSearch 1.40 Pre-Search xx.08 SmartSniff x86 e x64 1.71 StartupRun 1.22 MyLastSearch 1.44 Mozilla Cookie View 1.30 Opened File View 1.46 Opera Cache View 1.37 Outlook Attack View x86 e x64 1.35 Process Activity View x86 e x64 1.11 Recent File View 1.20 Regscanner x86, x64 e win98 1.82 ServiWin 1.40 trID 2.02 DEFT edition readpst 0.6.41 chkrootkit rkhunter 1.3.4 john 1.7.2 catfish galletta 1.0 pasco 1.0 md5sum sha1sum sha224sum sha256sum sha512sum md5deep sha1deep sha256deep skype log view Xnview xmount 0.4.4 IE, Mozilla, Opera and Chrome cache viewer IE, Mozilla, Opera and Chrome history viewer Index.dat file analyzer pdfcrack cracking tool fcrackzip cracking tool clam antivirus 4.15 mc

11

XnView 1.97.8 X-AgentRansackk 2010 (build 762) Index.dat Analyzer 2.5 AccessEnum 1.2 Autoruns 10.03 DiskView 2.4 Filemon Process eXPlorer 12.04 RAM Map 1.1 Regmon Rootkit Revealer 1.71 VMMap 2.62 WinObj 2.15 AlternateStreamView 1.15 ChromeCacheView 1.25 CurrPorts x86 e x64 1.83 CurrProcess 1.13 FoldersReport 1.21 IE Cache View 1.32 IE Cookie View 1.74 IE History View 1.50 Inside Clipboard 1.11 Live Contacts View 1.07 Mozilla Cache View 1.30 Mozilla History View 1.25 Mozilla Cookie View 1.30 Opened File View 1.46 Opera Cache View 1.37 Outlook Attack View x86 e x64 1.35 Process Activity View x86 e x64 1.11 Recent File View 1.20 Regscanner x86, x64 e win98 1.82 ServiWin 1.40 MUI Cache View 1.01 MyEventView 1.37 SkypeLogView 1.15

USBdeview x86 e x64 1.80 User Assist View 1.01 User Profile View 1.01 Video Cache View 1.78 WhatInStartup 1.25 WinPerfectView 1.10 Password Tool ChromePass 1.10 Dialupass 3.10 IE PassView 1.20 LSA Secrets Dump x86 e x64 1.21 LSA Secrets View x86 e x64 1.21 Mail PassView 1.65 MessenPass 1.35 Network PassRecovery x86 e x64 1.30 Opera PassView 1.01 PasswordFOX 1.25 PC AnyPass 1.12 Protected Pass View 1.63 PST Password 1.12 Remote Desktop PassView 1.01 VNC PassView 1.02 Win9x Passview 1.1 WirelessKeyView x86 e x64 1.34 AViScreen Portable 3.2.2.0 Hoverdesk 0.8 File Restore Plus 3.0.1.811 WinVNC 3.3.3.2 TreeSizeFree 2.40 PCTime LTFViewer 5.2 Sophos Anti-Rootkit 1.5.4 Terminal with tools command line Spartakus 1.0 Testdisk 6.11.3 Photorec 6.11.3

12

Avviare DEFT Linux live CD Per prima cosa ci si deve assicurare che nella configurazione del BIOS del sistema da analizzare sia stato impostato il boot da cd-rom/dvd-rom o da memorie di massa esterne (in base al supporto su cui presente DEFT). Una volta configurato il BIOS, riavviate il sistema con il cd-rom gi inserito nel lettore cd/dvd o con la penna USB gi collegata. Il boat loader, oltre al cambiamento: della lingua del sistema (premendo F2) della nazionalit della tastiera (premendo F3)

Cambio lingua di sistema

13

Cambio nazionalit della tastiera

Permette di personalizzare alcuni parametri di avvio di DEFT, quali: acpi=off oppure noapic: al boot non vengono utilizzate le funzioni ACPI per la gestione dellenergia elettrica usata dal proprio sistema; nolapic, disabilita la funzione apic per le architetture basate su cpu Intel; edd=on, abilita lEnhanced Disk Drive; nodmraid, disabilita lopzione del kernel dmraid per i raid di tipo software; vga=xxx, setta la risoluzione del framebuffer se la scheda video in vesa mode

14

In rosso i parametri deprecati, in nero i parametri che non hanno riscontrato alcun problema di funzionamento. maggiori informazioni sui parametri modificabili al boot, possibile consultare lappendice 1.

DEFT Linux text modeCompletata la fase di boot, il sistema presenta la sessione ad interfaccia testuale (con sei terminali utilizzabili tramite la combinazione di tasti ALT F1 -> F6) con una shell bash dotata di permessi di root. Questa scelta implementativa molto utile quando si avvia DEFT Linux su computer molto vecchi che non permettono lutilizzo ottimale dellinterfaccia grafica oppure per lutente esperto che preferisce operare direttamente da linea di comando.

15

DEFT Linux txt mode

Gestione delle memorie di massa Di seguito sono riportati alcuni comandi utili per eseguire operazioni inerenti alla gestione delle memorie di massa: fdisk l: elenco di tutte le memorie di massa e partizioni collegate al sistema. mmls /dev/xxx oppure mmls nomefile.dd: elenca le partizioni presenti nel device o nellimmagine raw indicando loffset di partenza e gli spazi non allocati. hdparm Ig /dev/xxx: visualizza le caratteristiche della memoria di massa xxx. tail f /var/log/messages: visualizza in tempo reale i messaggi di information, warning e debug degli eventi che riguardano anche le memorie di massa. Mount delle memorie Il comando mount permette di collegare un file system a una directory di sistema. Il file system selezionato, oltre ad essere composto da un device, pu essere contenuto

16

allinterno di un file: nel formato bit stream image, meglio noto come formato dd o raw nel formato Encase, meglio noto come formato ewf nel formato advanced forensic format, meglio noto come aff.

In ambito forense, il mount diretto di unevidence deve essere fatto, solo nei casi in cui realmente necessario5, in sola lettura. In questo modo viene garantita la totale inalterabilit della memoria durante lindagine. File tipo dd/raw Per eseguire il mount di file system in sola lettura di memorie fisiche o in formato raw baster digitare un comando di tipo: mount t tipo o opzioni sorgente punto_di_mount dove tipo la tipologia del filesystem, solitamente vfat, ntfs-3g, ext3 ecc, oppure auto quando non si conosce nel dettaglio il tipo di file system sorgente pu essere una partizione come ad esempio /dev/hda1 o /dev/sda1, oppure limmagine di una partizione come ad esempio dump.dd punto_di_mount solitamente una sottocartella di /media che deve essere creata prima, ad es. con: mkdir /media/nomecartellachevoglio opzioni di uso frequente (-o): o o o o o o ro - read-only: monta in sola lettura rw - read-write: monta in scrittura (usare per la destinazione delle copia) loop - per montare un file immagine noatime - non modifica le date di ultimo accesso noexec - non permette lesecuzione di file offset=N - quando si monta limmagine di un disco, fornisce il numero di byte da saltare per puntare allinizio della partizione logica da montare (recuperabile con mmls)

5

Le best practice indicano chiaramente che non si deve lavorare mai sulla memoria di massa originale ma sempre e solo su

una copia.

17

Esempio 1: montare in scrittura una partizione NTFS in cui eseguire unacquisizione. mount t ntfs-3g o rw /dev/sdb1 /media/dest Esempio 2: montare in sola lettura una partizione NTFS dellimmagine di un intero disco. tramite il comando losetup possibile associare un device loop allimmagine della memoria image.dd cos da poter utilizzare le applicazioni funzionati su device anche su immagini di memorie di massa: losetup -r /dev/loop0 /media/disco1/dump.dd tramite lutility mmls possibile scoprire loffset di inizio di una partizione del disco: mmls /dev/loop0 ed ottenere un output simile al seguente: DOS Partition Table Offset Sector: 0 Units are in 512-byte sectors Slot Start End Length Description

00: Meta 0000000000 0000000000 0000000001 Primary Table (#0) 01: ----- 0000000000 0000002047 0000002048 Unallocated 02: 00:00 0000002048 0000032255 0026624000 Unknown Type (0x27) 03: 00:01 0000032256 0086598247 0000204800 NTFS (0x07) 05: ----- 0086598248 0976773167 0000002048 Unallocated

Montiamo la partizione identificata come 03 dalloutput di mmls specificando loffset moltiplicato per 5126: mount t ntfs ro,noatime,noauto,noexec,offset=16515072 /dev/loop0 /media/dest

Portate a termine le operazioni sulle memorie, prima di scollegare dal sistema la periferica montata, necessario eseguire il comando umount: umount /media/punto_di_mount.

6

512 byte la grandezza di default di un settore che compone una memoria di massa

18

File di tipo EWF/Encase Il mount di una memoria acquisita in formato EWF possibile mediante lapplicazione mount_ewf. Questo programma , dato uno o pi file splittati in formato Encase, converte virtualmente i file EWF nel formato raw permettendo cos il mount del device come se fosse una memoria acquisita in formato dd.

Esempio: data la memoria disk01 suddivisa nei seguenti file disk01.E01 disk01.E07 disk01.E13 disk01.E19 disk01.E02 disk01.E08 disk01.E14 disk01.E20 disk01.E03 disk01.E09 disk01.E15 disk01.info disk01.E04 disk01.E10 disk01.E16 disk01.E05 disk01.E11 disk01.E17 disk01.E06 disk01.E12 disk01.E18

Tramite il comando mount_ewf /media /case1/disk01.E* /tmp/disk01 sar possibile ricostruire lo split ed eseguire la conversione virtuale in formato raw. Loperazione dar luogo alla creazione del fire raw /tmp/disk01/disk01, contenuto nella cartella /tmp/disk01/, che potr essere montato seguendo la procedura per il mount di memorie come loop device. File di tipo AFF Come per il formato ewf, anche per le memorie acquisite in formato aff possibile eseguire il mount grazie allutility affuse. Essa permette di utilizzare acquisizioni in formato aff come se fossero immagini raw. La sintassi la seguente: affuse /media/disk/disk01.aff /tmp/disk01/ loutput sar il file /tmp/disk01/disk01.aff.raw che potr essere montato seguendo la procedura per il mount di memorie come loop device.

19

Calcolo dellhash Lhash di un blocco di dati (es. un file) una sequenza di caratteri alfanumerici di lunghezza fissa generata da una funzione matematica. Qualsiasi modifica dei dati, seppur minima, porter alla creazione di un hash totalmente diverso. Questa funzione matematica mono direzionale, cio dato un hash impossibile ricostruire il blocco che lo ha originato. Allinterno del sistema Linux questa operazione possibile mediante lutilizzo delle seguenti applicazioni: md5sum sha1sum md5, sha1 e sha256 deep dhash

Md5sum L'acronimo MD5 (Message Digest algorithm 5) indica un algoritmo crittografico di hashing realizzato da Ronald Rivest nel 1991 e standardizzato con la Request for Comments RFC 1321. Questo tipo di codifica, presa in input una stringa di lunghezza arbitraria, ne produce in output un'altra di 128 bit che pu essere usata per calcolare la firma digitale dell'input. La codifica avviene molto velocemente e l'output (noto anche come "MD5 Checksum" o "MD5 Hash") restituito tale per cui altamente improbabile ottenere una collisione tra due diverse stringhe in input una stessa firma digitale in output. Inoltre, come per la maggior parte degli algoritmi di hashing, non dovrebbe esserci possibilit, se non per tentativi (forza bruta), di risalire alla stringa di input partendo dalla stringa di output (la gamma di possibili valori in output infatti pari a 2 alla 128esima potenza). Esempio: md5sum /dev/sda

20

Sha1sum Con il termine SHA si indica una famiglia di cinque diverse funzioni crittografiche di hash sviluppate a partire dal 1993 dalla National Security Agency (NSA) e pubblicate dal NIST come standard federale dal governo degli USA. Lacronimo SHA sta per Secure Hash Algorithm. Come ogni algoritmo di hash, l'SHA produce un message digest, o "impronta del messaggio", di lunghezza fissa partendo da un messaggio di lunghezza variabile. La sicurezza di un algoritmo di hash risiede nel fatto che la funzione non sia reversibile (non sia cio possibile risalire al messaggio originale conoscendo solo questo dato) e che non deve essere possibile creare delle collisioni di hash, cio che partendo da file differenti si riescano a creare intenzionalmente due messaggi con lo stesso digest. Gli algoritmi della famiglia sono denominati SHA-1, SHA-224, SHA-256, SHA-384 e SHA-512: le ultime 4 varianti sono spesso indicate genericamente come SHA-2, in modo da distinguerle dalle varianti precedenti. Il primo tipo produce un digest del messaggio di soli 160 bit, mentre gli altri producono digest di lunghezza in bit pari al numero indicato nella loro sigla (SHA-256 produce un digest di 256 bit). Attualmente Lo SHA-1 lalgoritmo pi diffuso della famiglia SHA ed utilizzato in numerose applicazioni e protocolli. Esempio: sha1sum /dev/sda Md5 e sha deep Md5, sha1, sha256 e sha512 deep permettono di calcolare hash di pi file ricorsivamente Esempio: md5deep l /root/evidence/ > hash_device.txt La sintassi sopra citata calcola lhash md5 di tutti i file contenuti nella cartella /root/evidence/ e salva i valori degli hash nel file hash_device.txt

21

Dhash Dhash, disponibile in italiano e inglese, permette (oltre alla contemporanea acquisizione e calcolo del hash) di calcolare gli hash di file e memorie di massa fornendo in tempo reale ulteriori informazioni durante la fase di calcolo quali il tempo stimato prima del termine loperazione e lo stato del calcolo; al termine inoltre possibile generare un report in formato html. Da test fatti in laboratorio risultato essere 10% pi veloce rispetto agli altri tool sopra elencati. Esempio: dhash -t -f /dev/sda --md5 --sha1 -l dhashlog.html La sintassi sopra citata calcola simultaneamente lhash md5 e sha1 sul device /dev/sda e riporta i valori di hash nel file dhashlog.html. Il programma disponibile in lingua italiana ed inglese.

22

Acquisizione memorie di massa Per acquisizione di una memoria di massa si intende loperazione che permette una vera e propria clonazione della memoria oggetto di attivit. Allinterno del sistema Linux questa operazione possibile mediante lutilizzo dei seguenti tool: dd ddrescue dcfldd dhash

dd Dd prende in input un file o un device e ne restituisce lesatta sequenza binaria che lo compone su un file o su un altro device. Esempio: dd if=/dev/sda of=/media/disco.img il comando prende in input la memoria di massa b/dev/sda e restituisce come output il suo clone allinterno del file disco.img salvato nella cartella /media/. E possibile la clonazione della memoria non solo da memoria di massa a file (o viceversa) ma anche da memoria di massa a memoria di massa. Esempio: dd if=/dev/sda of=/dev/sdb

ddrescue Come dd, ddrescue permette di clonare il contenuto della memoria di massa di un disco riversandolo direttamente su unaltra memoria. ddrescue rappresenta una evoluzione di dd: permette infatti lacquisizione di memorie di massa che presentano errori durante laccesso a determinati settori del disco. Lacquisizione tramite ddrescue permette di includere anche quei settori danneggiati che saranno acquisiti settando a zero tutti i bit non leggibili in essi contenuti. Durante lacquisizione della memoria lapplicazione fornisce aggiornamenti su quanti byte sono

23

stati letti e scritti, quanti errori di lettura si sono riscontrati e la velocit di acquisizione calcolata per byte/s. Esempio: ddrescue /dev/sda /media/disco.img

dcfldd dcfldd una altra evoluzione di dd che permette il calcolo dellhash (sia md5 che sha1, singolarmente o contemporaneamente) durante lacquisizione della memoria. Durante le operazioni di acquisizione vengono fornite informazioni dettagliate su quanti dati si sono letti e scritti. Esempio: dcfldd if=/dev/sda of=/media/disco.img hash=sha1 hash=md5

Dhash Questo software permette lacquisizione in formato dd ed il contemporaneo calcolo degli hash risultando il 10% pi veloce rispetto agli altri programmi in circolazione. Esempio: dhash -t -f /dev/sda --md5 --sha1-o disco.dd La sintassi sopra citata acquisisce e calcola contemporaneamente lhash md5 e sha1 del device /dev/sda riportandone i valori nel file dhashlog.html.

24

Creazione di una time line Uno degli strumenti pi noti per la creazione di time line mac-time: applicazione della suite Sleuthkit realizzata da Brian Carrier. Mac-time prende in input un elenco, creato mediante lapplicazione fls, completo dei dati contenuti allinterno del file system posto ad analisi. fls, prende come input o un file raw derivante dallacquisizione di un memoria di massa o direttamente la memoria stessa, e restituisce lelenco di tutti i file, allocati e non, da utilizzare successivamente con mac-time. fls Di seguito riportato un esempio di come utilizzare fls e mac-time. fls -z GMT -s 0 -m c: -f ntfs -r /caso1/image-1.dd > /caso1/list-image1 dove con -z si specifica il fuso orario, -s il disallineamento in secondi dellora di sistema con lora reale, -m linizio di ogni path di ogni percorso di file e cartella, -f il file system della memoria acquisita, /caso1/image-1.dd limmagine che viene data come input e /caso1/list-image1 il file contenente lelenco file. mactime mactime -b /caso1/list-image -z gmt -d > /caso1/timeline.csv con -b si specifica il file da dare in input, -z il time zone, -d > /caso1/timeline.csv rappresenta la time line in formato csv7.

7

preferibile lesportazione in formato csv per facilitare la consultazione tramite applicazioni come OpenOffice o Excel.

25

La tabella seguente utile per interpretare il significato dei valori che appaiono nella colonna Activity Type. Essi indicano le azione compiute su file e cartelle in un determinato arco temporale.

File System Ext2/3 FAT NTFS UFS

M Modificato Scritto Modificato Modificato

A Acceduto Acceduto Acceduto Acceduto8

C Creato n/a MFT modificato Creato

B n/a Creato Creato n/a

Ricerca file e cartelle E possibile eseguire attivit di ricerca di file e cartelle utilizzando uno dei seguenti tool: Locate Locate permette la ricerca di file allinterno di memorie di massa. Prima va eseguita unindicizzazione con il comando updatedb. Con il comando locate finanza q-i si esegue una ricerca senza alcuna distinzione maiuscole e minuscole (opzione -i) dei file che contengono nella propria nomenclatura la parola finanza. Grazie allopzione -q saranno segnalati gli errori di accesso a determinate directory del sistema indicandone anche il motivo (es. errori di tipo access denied). esempio: locate *.png -q esegue una ricerca di tutti i file con estensione png. locate find

8

Master File Table

26

Find Find permette di eseguire la ricerca di file senza alcuna indicizzazione preventiva. esempio: find . -iwholename *porn*.png vengono indicati tutti i file che contengono la stringa porn nel nome e che abbiano estensione .png, senza alcuna distinzione maiuscole e minuscole. esempio: find . -ctime -2 > lista.txt trova tutti i file creati negli ultimi 2 giorni riportane poi lelenco nel file lista.txt

Carving di file Lattivit di carving consiste nel recupero di file, non pi referenziati dal file system, attraverso il riconoscimento di header ed footer9 presenti nel file. E un procedimento molto lungo perch il disco scandagliato dal primo allultimo bit; metaforicamente parlando, possiamo paragonare il processo di lettura della memoria di massa al processo di lettura di una unit nastro.

Foremost Foremost permette il recupero di file cancellati direttamente da memorie di massa o, preferibilmente, da file di tipo bit stream image. Il comando foremost -o outpdir dump.img esegue il carving sul file dump.img secondo la configurazione impostata in /etc/foremost.conf e salva i file estratti nella directory outpdir. Il comando foremost -t png -o outpdir dump.img esegue il carving di tutti i file png sul file dump.img e salva i file estratti nella cartella outpdir.

9

Header e footer sono firme che caratterizzano linizio e la fine di un determinato tipo di file; nel dettaglio consistono in un

gruppo di valori ottali o esadecimali consecutivi sempre presenti in una certa posizione di un determinato file all'inizio o alla fine dello stesso.

27

Tramite il parametro t possibile ricercare i seguenti tipi di file:

jpg gif png bmp avi exe

mpg wav riff wmv mov pdf

ole doc zip rar htm cpp

28

DEFT Linux GUI modeIntroduzione Linterfaccia grafica di DEFT Linux basata sul desktop environment LXDE10 (Lightweight X11 Desktop Environment). La scelta del desktop manager caduta sul progetto LXDE per le caratteristiche implementative del progetto; a oggi una delle interfacce grafiche pi leggere e perforanti per il mondo Linux. Lutilizzo di DEFT Linux in modalit grafica necessario nei casi in cui si debbano utilizzare programmi che non nascono per lutilizzo a riga di comando, come ad esempio Digital Forensic Framework (DFF) o Catfish. Dalla versione 6 le applicazioni native per sistemi Microsoft Windows, di cui non esiste un equivalente altrettanto potente per Linux, sono stati integrate ed emulate direttamente da DEFT Linux mediante il software Wine11.

Per avviare linterfaccia grafica di DEFT Linux sufficiente digitare il comando deft-gui.

10 11

http://www.lxde.org http://www.winehq.org/

29

Desktop DEFT Linux

Il desktop presenta i seguenti elementi: 1. Menu applicazioni 2. File manager 3. Mount manager per agganciare memorie di massa a directory 4. Programma per la creazione di screenshot 5. Visualizzare il desktop 6. Gestione audio 7. Gestione Reti 8. Ora di sistema 9. Manager per sospensione, log out, riavvio e spegnimento del sistema 10. Directory evidence utilizzata da Autopsy e da altri applicativi per salvare i file dinteresse delle memorie sottoposte ad analisi 11. Utility per configurare i riferimenti temporali del sistema 12. Console di root

30

Nel dettaglio il Menu Applicazioni presenta le seguenti sezioni:

DEFT Linux menu

Accessories: File manager, Galculator, Image viewer, LXTerminal, Manage print job, Xarchiver. Disk Forensic: Autopsy, Catfish, Chrome cache view, DFF, Dhash 2, Disk Utility, Guymager, Hb4most, Hex editor, IE cache view, IE cookie view, IE history view, Index.dat analyzer, Mountanager, Mozzilla cache view, Mozilla history view, Opera cache view, Ophcrack, Scite text editor, Skype log view, Take screenshot, Virus scanner, WRR, Xnview. Network Forensic: Firefox, Wireshark, Xplico. Sound & Video: Desktop recorder, Xfburn. System Tools: Htop, System profiler, Task manager. Preferences: Additional drivers, Customize look, Desktop session setting, Disk utility, Keyboard and mouse, Language support, Monitor settings, Openbox configuration, Preferred applications, Printing, Synaptic package manager, Time and date, User and groups, Windows wireless drivers.

31

Gestione della memoria di massa Le policy di gestione delle memorie di massa in DEFT Linux gui mode sono pressoch identiche a quelle della versione a riga di comando. Nel dettaglio: Di default il sistema non compie alcuna azione tolto il rilevamento dei device collegati al sistema. Utilizzando il file manager, tutte le memorie di massa, interne ed esterne, direttamente collegate al sistema saranno montate in RW (read write.) Utilizzando lapplicativo Mount Manager, loperatore potr definire policy di mount ad hoc con cui potr utilizzare i device a suo piacimento.

Mount in RW usando lxde file manager

32

Mount managerMount manager permette di tradurre semplici clic in policy di mount avanzate. Di seguito riportata la procedura per eseguire il mount di una memoria di massa in RO (read only) bloccando completamente qualsiasi azione che possa alterare il file system.

Policy di mount per inalterare il file system

Nel dettaglio, per eseguire il mount necessario associare una directory esistente a una partizione della memoria assicurandosi che siano stati configurati i parametri noatime, noauto, ro, noexec che garantiscono la non alterabilit della memoria di massa durante il suo utilizzo. Solo in questo modo sar possibile accedere al file system in sola lettura ed usato senza aggiornare linode access time12.Con Mount Manager possibile eseguire anche il mount di file di acquisizioni in formato dd e di file system di rete come Samba (Windows share) e NFS.

12

Informazione temporale di ultimo accesso ad una risorsa del file system

33

Calcolo dellhashDhash lunico tool in DEFT Linux dedicato al calcolo di hash in modalit grafica .

Calcolo dellhash di un device utilizzando dhash

Una volta avviato il programma, fate clic su open device per selezionare una memoria di massa o su open file per selezionare un file, spuntare lhash da calcolare (md5, sha1 od entrambi) e fare clic su starts. Una volta terminata loperazione possibile salvare un report in html contenente i risultati facendo clic su save log.

34

Acquisizione di memorie di massa Come gi indicato, in DEFT Linux possibile acquisire memorie di massa anche tramite interfaccia grafica utilizzando Dhash o Guymager. Il primo adatto per le acquisizioni in formato dd, mentre il secondo fortemente consigliato per le acquisizioni in parallelo e in formato ewf. Dhash In Dhash, la procedura per lacquisizione simile a quella per il calcolo dellhash. Selezionate il device da acquisire facendo clic su open device e fate clic su Acquire. Potete decidere di acquisire e comprimere in formato gz spuntando la casella Compress e/o scegliere se effettuare il calcolo del, o degli, hash.

Acquisizione di memoria di massa con calcolo in contemporanea dellhash md5 e sha1

Premendo il pulsante Starts si avvia lacquisizione. Al termine delle attivit, possibile salvare un report in formato html facendo clic sul pulsante Save log.

35

Guymager A differenza di Dhash, Guymager permette una gestione pi avanzata delle acquisizioni.

Gestione caso per la fase di acquisizione con Guymager

Guymager permette, oltre allacquisizione simultanea di pi memorie di massa, anche la gestione di informazioni come: Codice caso. Catalogazione dellevidence. Nome delloperatore che sta compiendo le operazioni. Descrizione delloggetto che si sta acquisendo.

Guymager supporta tutti i principali formati di acquisizione (dd, aff ed encase) e permette di eseguire il controllo di integrit, tramite verifica del md5 o sha256, sia dellimmagine creata sia del device originale (anche su immagini splittate). Per avviare il processo di acquisizione, una volta avviato il programma, fate clic con il tasto destro del mouse sulla memoria di massa da clonare e selezionare la funzione

36

Acquire image. La finestra Acquire Image permette di specificare numerose opzioni dedicate sia allacquisizione sia alla gestione del caso.

Ricerca di file e cartelle Grazie a Catfish, possibile eseguire le stesse operazioni che si possono compiere a riga di comando tramite i comandi find e locate. Nellesempio riportato nellimmagine, una volta selezionata la memoria o la cartella dove compiere la ricerca, abbiamo lanciato una ricerca di tutti i file aventi estensione TXT scrivendo nel campo di ricerca *.txt. Una volta terminata la ricerca possibile aprire i vari file in elenco con un semplice doppio clic.

Ricerca di file con Catfish

Nella finestra saranno sono riportate anche ulteriori informazioni i file riguardanti la data dellultima modifica, il percorso del file e la sua dimensione sul disco.

37

Carving di file Hunchbacked 4most, disponibile in italiano ed inglese, uninterfaccia grafica per la gestione delle principali funzioni di foremost. Tramite H4m possibile eseguire il carving di file con alcuni semplici clic.

Carving di file con Hunchbacked 4most

H4m, una volta indicati il file o il device in cui effettuare la ricerca e la cartella dove salvare i file recuperati, dalloperatore. Oltre ai tradizionali formati di file supportati da Foremost, possibile personalizzare la ricerca indicando la posizione del file di configurazione contenente i nuovi header e footer. ricerca e salva tutti i file con header e footer indicati

38

Gestione di un caso con Autopsy Autopsy forensic browser uninterfaccia grafica per la gestione delle funzionalit de The Sleuth Kit13. principalmente usata per la gestione dei casi in cui richiesta lanalisi di memorie di massa. Autopsy permette di: utilizzare direttamente il device o le acquisizioni in formato dd, aff e encase; Visualizzare informazioni sul tipo di file system; Analizzare ed identificare il contenuto di file e directory e i loro riferimenti temporali; Recuperare file cancellati; Gestire un database degli hash di file del caso posto ad analisi; Creare ed analizzare timeline; Eseguire ricerche di file per parola chiave; Analizzare meta dati; Creazione di report delle evidence riscontrate.

Creazione di un caso Una volta avviato Autopsy dalla sezione Disk Forensic del menu, viene richiesto alloperatore se creare un nuovo caso o aprirne uno esistente. In questo caso faremo clic su new per la creazione del nostro caso di prova ed inseriremo i dati in nostro possesso per la catalogazione, come nome del caso, descrizione del caso e i nomi degli investigatori:

13 http://www.sleuthkit.org/

39

Creazione nuovo caso

Una volta confermati i dati verr creata una directory contenente tutti i dati del caso nella directory /root/evidence/nome caso. Allinterno di un caso possono essere aggiunti una o pi oggetti (raffiguranti o i soggetti appartenenti o i sistemi informatici) facendo clic su add host allinterno del caso ed inserire i dati richiesti:

40

Aggiunta di oggetti che compongono il caso

Ad ogni oggetto pu essere aggiunta una o pi memorie di massa: sufficiente fare clic su add image file ed inserire nel campo location o il collegamento diretto ad una memoria di massa (del tipo /dev/sdx) o il path contenente il file dellacquisizione (del tipo /media/forensic/disco001.dd) e specificare se la memoria che stiamo aggiungendo una partizione o lintera memoria di massa; per quanto riguarda limport method, per comodit duso caldamente consigliato lasciare il valore predefinito, cio symlink.

41

Aggiunta di memoria di massa allinterno delloggetto

Una volta aggiunta la memoria vi verr chiesto se calcolare, o di inserire manualmente se gi calcolato, il valore dellhash md514 e di specificare il nome simbolico della partizione e il suo file system.

14 Autopsy supporta solo lalgoritmo di hash md5.

42

Gestione valore dellhash e tipo di file system della/e partizioni

Al termine delle precedenti operazioni la creazione delloggetto Disco001 completa ed possibile o continuare ad aggiungere altre memorie alloggetto o possiamo iniziare la nostra analisi facendo clic su Analyze.

43

Gestione delloggetto Disco001 appartenente al caso

Linterfaccia del modulo di analisi permette alloperatore di visualizzare lalbero delle directory della partizione sottoposta ad analisi e, una volta selezionato un file, ne viene visualizzata unanteprima del contenuto. Laccesso al file in sola lettura in modo da non alterarne ne i riferimenti temporali e ne i suoi metadati. Nella schermata di analisi visualizzato: Il nome file/directory e il suo percorso I valori temporali come data creazione, ultimo accesso ed ultima modifica Il tipo di dato Se il dato stato cancellato o no (in rosso se vi stata richiesta lazione di cancellatura del dato).

44

File analysis in Autopsy

Unaltra funzione interessante la ricerca per parola chiave. Tale funzione permette la ricerca mediante il comando grep e si estende su tutto lalbero del file system, compreso lo spazio non allocato. Tale funzione pu essere molto lenta nel caso in cui si lanci la ricerca su memorie contenenti molti file o memorie di grandi dimensioni. In questi casi suggeriamo di avviare la ricerca per parola chiave utilizzando una shell di sistema ed eseguire il grep a riga di comando. La stessa raccomandazione valida per la creazione di time line.

45

Ricerca di file per argomento

46

Xplico il progetto DEFT ha sempre sostenuto, sin dalle primissime release di DEFT Linux, levoluzione del progetto Xplico15. Lutilizzo di Xplico molto semplice: dato in input un file pcap16 contenente un dump 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.

Login Xplico

Creazione di un caso Avviamo Xplico dalla sezione Network Forensic del menu di DEFT ed inseriamo le seguenti credenziali per ottenere laccesso al gestore casi:15 Il tool, reperibile presso questo indirizzo http://www.xplico.org/, diventato nel tempo uno dei pi potenti Network Forensic Tool open source. 16 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.

47

user: xplico password: xplico Queste credenziali riguardano lutente predefinito che pu creare e gestire solo i casi ma non modificare le impostazioni dellapplicazione. Per poter personalizzare le impostazioni del pannello di controllo, creare nuovi utenti, ecc, necessario eseguire la login con le credenziali di administrator: user admin password xplico. Nellesempio sotto riportato abbiamo creato un nuovo caso denominato Pippo dove stiamo acquisendo ed analizzando tutto il traffico che in quel momento passa attraverso linterfaccia eth0 della nostra postazione.

Gestione casi Xplico

Al Termine della fase di acquisizione, Xplico avr gi provveduto a decodificare e ricostruire tutti i tipo di dati supportati, cio:

48

http dns web mail smtp

pop3 imap sip telnet

ftp tftp rtp pjl

facebook chat msn irc

Report dati ricostruiti

Nellesempio precedente abbiamo visitato il sito http://www.libero.it richiesto dallutente intercettato. La lista contenente le ricostruzioni di tutti i siti web e di tutti i contenuti visualizzati consultabile alla voce site del menu web.

49

Lista di tutte le get eseguite dal browser

Va tenuto conto che lelenco di tutte le get17 eseguite comprenda anche quelle che lutente esegue involontariamente come ad esempio tutte le richieste che vengono fatte dalla pagina web ai vari url contenenti pubblicit o script per il tracciamento.

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

50

DEFT Extra

DEFT Extra Sys info

DEFT Extra una interfaccia grafica, utilizzabile solo sui sistemi operativi della famiglia Microsoft Windows che hanno pre installato il framework .net, che permette lesecuzione di una selezione di programmi (e le loro relative descrizioni e potenzialit duso) per la Digital Forensic utilizzati principalmente durante le fasi di pre analisi di un sistema informatico. Allavvio della GUI viene chiesto allutente dove salvare il file txt che conterr il report delle attivit svolte; nel caso in cui viene annullata loperazione, DEFT Extra non terr traccia delle operazioni compiute. Lutilizzo di DEFT Extra e dei tool che la compongono, potrebbe alterare alcuni dati del sistema sottoposto ad analisi, come: chiavi del registro di Windows che memorizzeranno lavvio di DEFT Extra mediante lautorun (se abilitato); data ultimo accesso del file posto ad analisi;

51

processo DEFT-Extra-3.0.exe in esecuzione; scrittura del report in formato txt nel caso in cui lutilizzatore decidesse di salvare il report allinterno della memoria di massa del sistema (e non su un supporto esterno).

Per maggiori dettagli sullutilizzo di ogni singola applicazione si rimanda alle guide scritte dai rispettivi sviluppatori.

52