Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

36
Timeline e Supertimeline Analisi temporale dell’attività di un PC con DEFT 7 Creative Commons Attribuzione-Non opere derivate 2.5 Dr. Paolo Dal Checco [email protected] DEFTCON 2012 - Torino Friday, March 30, 2012

description

 

Transcript of Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

Page 1: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

Timeline e SupertimelineAnalisi temporale dell’attività di un PC con DEFT 7

Creative Commons Attribuzione-Non opere derivate 2.5

Dr. Paolo Dal [email protected]

DEFTCON 2012 - Torino

Friday, March 30, 2012

Page 2: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

La cosiddetta “timeline”

• Con “timeline” ci si riferisce a un documento, un elenco, una lista di attività (manuali o automatiche) avvenute sul PC ordinata per giorno e ora esatta in cui sono avvenute

• I formati di visualizzazione possono essere diversi, alcuni testuali, altri grafici, alcuni ideali per ricerche altri per display su video

Friday, March 30, 2012

Page 3: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Un esempio naif di “timeline”• 2012 03 30 10:16 GMT+2 computer acceso

• 2012 03 30 10:23 GMT+2 documento “deftcon-slides.key” aperto

• 2012 03 30 10:35 GMT+2 aperta pagina web “www.facebook.com/DEFTlinux”

• 2012 03 30 12:01 GMT +2 documento “deftcon-slides.key” salvato

• 2012 03 30 12:12 GMT +2 inserita USB key VERBATIM con s/n 234cb42a73

• 2012 03 30 12:18 GMT +2 PDF “deftcon-slides.pdf” creato

• 2012 03 30 12:22 GMT +2 documento “deftcon-slides.key” cancellato

• 2012 03 30 12:25 GMT+2 computer spento

• 2012 03 30 14:30 GMT+2 computer acceso

• 2012 03 30 14:35 GMT +2 driver schermo esterno PC avviato

• 2012 03 30 14:37 GMT +2 PDF “deftcon-slides.pdf” aperto su chiavetta con VOL ID 0x3bd2cd22

• 2012 03 30 15:00 GMT +2 computer spento

Friday, March 30, 2012

Page 4: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Cosa vogliamo ottenere• Vogliamo avere con immediatezza lo storico ordinato di:

• inserimento periferiche USB, utilizzo driver

• creazione, apertura, salvataggio e cancellazione file e documenti, valutandone le tempistiche (copia massiva)

• data di scatto delle fotografie o di documenti con exif

• date rilevanti Office/PDF (creazione, stampa, salvataggio, autore, etc...)

• esecuzione programmi

• avvio e spegnimento del computer

• login/logout utenti

Friday, March 30, 2012

Page 5: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Cosa vogliamo ottenere• Vogliamo avere con immediatezza lo storico ordinato di:

• file ‘lnk’ di Windows (che mantengono info e S/N sulle periferiche su cui risiedevano i file aperti, comprese USB esterne)

• navigazione internet (Chrome, Firefox, Explorer, Opera, Safari, etc...)

• eventi di sistema (errori, notifiche, violazioni, etc...)

• log antivirus

• traffico di rete

• cestino e punti di ripristino di Windows

• log webserver Apache/IIS

• Skype chat

Friday, March 30, 2012

Page 6: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Timeline vs Supertimeline

• Timeline tradizionale: esaminati soltanto i timestamp dei file ricavati dal filesystem anche per taluni file cancellati (creazione, modifica, accesso, entry modified) ma non il contenuto dei file stessi, che viene ignorato

• Supertimeline: si aggiungono ai timestamp del filesystem anche i dati (che chiameremo metadati) estratti e parsificati dall’interno di diverse tipologie di file (registro, eventi, link, prefetch, exif, etc...) anche cancellati

Friday, March 30, 2012

Page 7: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Timeline vs Supertimeline

• Timeline tradizionale: limitata ma veloce da fare, si può fare anche offline estraendo un solo metafile ($MFT) dal sistema, permette daily/hourly summary, feedback immediato

• Supertimeline: completa ed esauriente ma più lunga da fare, soprattutto se ci sono tanti file esistenti o cancellati, difficile farla offline senza avere l’intero disco

Friday, March 30, 2012

Page 8: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Timeline

• Useremo i tool fls/mactime della suite TSK, The Sleuth Kit di Brian Carrier

• Esistono diverse alternative, più o meno scomode, open/gratuite/commerciali

• fls è la più usata, anche perchè utilizzata dal frontend Autopsy inserito in diverci LiveCD

Friday, March 30, 2012

Page 9: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Tool alternativi ma “scomodi”

• FTK Imager, di AccessData [accessdata.com/support/adownloads#FTKImager]

• NTFSwalk, di TzWorks [www.tzworks.net/prototype_page.php?proto_id=12]

• AnalyzeMFT, di David Kovar [www.integriography.com/]

• mft.pl, di Harlan Karvey [code.google.com/p/winforensicaanalysis]

• MFTView, della Sanderson Forensics [www.sandersonforensics.com]

• Encase [www.guidancesoftware.com/]

• X-Ways Forensics [www.x-ways.net/forensics]

Friday, March 30, 2012

Page 10: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Suite TSK, con fls credo file in formato bodyfile

• Converto il bodyfile in CSV

• Creo daily summary con attività giornaliera

fls -o 63 -r -m C: /dev/sda > c-timeline.body

mactime -y -m -d -i day c-timeline-daily.csv -z Europe/Rome -b c-timeline.body > c-timeline.csv

Timeline con daily summary

Friday, March 30, 2012

Page 11: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Il daily summary serve perrilevare anomalie sui giorni

• Nell’esempio, cominceremo ad esaminare il giorno 4 marzo 2010, dove rileviamo 62.239 movimentazioni di file

• Possibile anche hourly summary, con analisi oraria, nell’esempio rileviamo pesante attività tra le ore 11 e 12

Timeline con daily summary

Friday, March 30, 2012

Page 12: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Otteniamo (i dati provegono dall’$MFT) data di creazione/accesso/salvataggio/entry modified, dimensione, numero di inode e percorso sul filesystem quando disponibile

• Sappiamo se un file esisteva ma è stato cancellato e in tal caso anche se l’area disco è stata riscritta

Timeline con daily summary

Friday, March 30, 2012

Page 13: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Interfaccia grafica alla suite TSK

• Creo un caso, imposto timezone, inserisco immagini/dischi (/dev/sda)

• Utile per fare preview di file anche cancellati (ricavati da MFT table)

• Utile per fare keyword search su raw disk, estrazione stringhe, estrazione spazio non allocato, organizzazione file per tipo, ricupero di tutti i file cancellati (a livello MFT)

• Preview raw a livello di settore

Menù > DEFT > Analysis Tools > Autopsy

No cmdline? Autopsy

Friday, March 30, 2012

Page 14: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Interfaccia grafica Autopsy

Friday, March 30, 2012

Page 15: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline

• Aggiungiamo ai timestamp del filesystem anche i metadati contenuti nei file per creare la nostra linea temporale

• utilizzeremo il tool open source log2timeline, scritto in perl dal ricercatore Kristinn Gudjonsson

• framework composto da 4 moduli: front-end, librerie condivise, modulo input e modulo output

• Ultima versione 0.62 (DEFT 7.1) diversi plugin

• log2timeline-sift: cmdline tool che cerca di automatizzare il mounting delle evidenze e il parsing

Friday, March 30, 2012

Page 16: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: metadati e plugin• altiris 0.1 Parse the content of an XeXAMInventory or AeXProcessList log file

• analog_cache 0.1 Parse the content of an Analog cache file

• apache2_access 0.3 Parse the content of a Apache2 access log file

• apache2_error 0.2 Parse the content of a Apache2 error log file

• chrome 0.3 Parse the content of a Chrome history file

• encase_dirlisting 0.2 Parse the content of a CSV file that is exported from Encase (dirlist)

• evt 0.2 Parse the content of a Windows 2k/XP/2k3 Event Log

• evtx 0.5 Parse the content of a Windows Event Log File (EVTX)

• exif 0.4 Extract metadata information from files using ExifTool

• ff_bookmark 0.3 Parse the content of a Firefox bookmark file

• ff_cache 0.2 Parse the content of a Firefox _CACHE_00[123]_ file

• firefox2 0.3 Parse the content of a Firefox 2 browser history

• firefox3 0.8 Parse the content of a Firefox 3 history file

• ftk_dirlisting 0.3 Parse the content of a CSV file that is exported from FTK Imager (dirlist)

• generic_linux 0.3 Parse content of Generic Linux logs that start with MMM DD HH:MM:SS

Friday, March 30, 2012

Page 17: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: metadati e plugin• iehistory 0.8 Parse the content of an index.dat file containg IE history

• iis 0.5 Parse the content of a IIS W3C log file

• ibsatxt 0.4 Parse the content of a ISA text export log file

• jp_ntfs_change 0.1 Parse the content of a CSV output file from JP (NTFS Change log)

• l2t_csv 0.1 Parse the content of a body file in the l2t CSV format

• mactime 0.6 Parse the content of a body file in the mactime format

• mcafee 0.3 Parse the content of log files from McAfee AV engine

• mcafeefireup 0.1 Parse the content of an XeXAMInventory or AeXProcessList log file

• mcafeehel 0.1 Parse the content of a McAfee HIPS event.log file

• mcafeehs 0.1 Parse the content of a McAfee HIPShield log file

• mft 0.1 Parse the content of a NTFS MFT file

• mssql_errlog 0.2 Parse the content of an ERRORLOG file produced by MS SQL server

• ntuser 1.0 Parses the NTUSER.DAT registry file

• openvpn 0.1 Parse the content of an openVPN log file

• opera 0.2 Parse the content of an Opera's global history file

Friday, March 30, 2012

Page 18: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: metadati e plugin• oxml 0.4 Parse the content of an OpenXML document (Office 2007 documents)

• pcap 0.5 Parse the content of a PCAP file

• pdf 0.3 Parse some of the available PDF document metadata

• prefetch 0.7 Parse the content of the Prefetch directory

• proftpd_xferlog 0.1 Parse the content of a ProFTPd xferlog log file

• recycler 0.6 Parse the content of the recycle bin directory

• restore 0.9 Parse the content of the restore point directory

• safari 0.3 Parse the contents of a Safari History.plist file

• sam 0.1 Parses the SAM registry file

• security 0.1 Parses the SECURITY registry file

• setupapi 0.5 Parse the content of the SetupAPI log file in Windows XP

• skype_sql 0.1 Parse the content of a Skype database

• software 0.1 Parses the SOFTWARE registry file

• sol 0.5 Parse the content of a .sol (LSO) or a Flash cookie file

Friday, March 30, 2012

Page 19: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: metadati e plugin• squid 0.5 Parse the content of a Squid access log (http_emulate off)

• symantec 0.1 Parse the content of a Symantec log file

• syslog 0.2 Parse the content of a Linux Syslog log file

• system 0.1 Parses the SYSTEM registry file

• tln 0.5 Parse the content of a body file in the TLN format

• volatility 0.2 Parse the content of a Volatility output files (psscan2, sockscan2, ...)

• win_link 0.7 Parse the content of a Windows shortcut file (or a link file)

• wmiprov 0.2 Parse the content of the wmiprov log file

• xpfirewall 0.4 Parse the content of a XP Firewall log

Esistono software commerciali equivalenti? :-)©

Friday, March 30, 2012

Page 20: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: moduli e liste

!

Friday, March 30, 2012

Page 21: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Supertimeline: output

!

• Useremo CSV perchè veloce da gestire e ideale per integrare le diverse fonti di dati/metadati

Friday, March 30, 2012

Page 22: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Monto il disco in modalità read only

• Importanti i parametri speciali per file di sistema e ADS:

• show_sys_files

• streams_interface=windows

mount -o ro,show_sys_files,streams_interface=windows

/dev/sda1 mnt/c

Montiamo il disco in readonly

Friday, March 30, 2012

Page 23: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Montiamo l’immagne in readonly

• Diversi tipi di immagini: raw, split raw, aff, split aff, ewf, split ewf

• Possibile operare anche su dischi fisici

• Si possono montare tutti i tipi di immagini usati nella computer forensics o i dischi tramite i seguenti tool:

• affuse (raw, split raw)

• xmount (raw, split raw, aff, ewf)

• mount [-o loop] (raw)

• mount_ewf.py [ewf]

mount -o ro,loop,show_sys_files,offset=$((512*63)) /mnt/raw/nps-2009-domexusers.dd /mnt/c

Friday, March 30, 2012

Page 24: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Si notano alcuni file di metadati NTFS ($Boot, $MFTMirr, etc...)

• Alcuni metafile non si vedono ma si possono accedere direttamente ($MFT, $UsnJrnl:$J) e potranno servirci

Alcuni strani file...

Friday, March 30, 2012

Page 25: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Uso regripper per identificare Sistema Operativo e timezone

• Utile nel caso in cui il preprocessor di log2timeline fallisse la detection e quindi la scelta dei moduli/plugin

cd /opt/regripper./rip.pl -r /mnt/c/WINDOWS/system32/config/software -p winver./rip.pl -r /mnt/c/WINDOWS/system32/config/system -p timezone

Identifico versione di OS

Friday, March 30, 2012

Page 26: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• A volte utile usare parametri “-p” e “-f winxp”

• l2t_process può filtrare per keyword (blacklist/whitelist), timestomping (MFT con millisecondi a 0), date o evidenziare scostamenti time/number MFT tramite scatter plot della cartella /windows/system32

log2timeline -r -z Europe/Rome /mnt/c/ -m C: -w c-log2t.csvcat c-log2t.csv > supertimeline-unsorted.csv

l2t_process -i -b supertimeline-unsorted.csv -y > supertimeline.csv

Supertimeline dei file presenti

Friday, March 30, 2012

Page 27: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Utile se non si ha tempo di fare timeline/supertimeline

• log2timeline ultima versione lo elabora in automatico

• Si può elaborare in laboratorio con diversi tool, compreso log2timeline

• Se non si ha tempo di usare fls/autopsy, acquisire MFT e parsificare in laboratorio

cat -c /mnt/c/\$MFT > mft.bin(oppure)

icat -o 63 /dev/sda 0 > mft.bin

Esporto $MFT per il laboratorio

Friday, March 30, 2012

Page 28: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Se il journaling è attivo, il file contiene timestamp di creazione, modifica e cancellazione dei file presenti sul disco

• Si può elaborare in laboratorio con diversi tool, commerciali e non e integrare tramite apposito plugin nella supertimeline

cat /mnt/c/\$Extend/\$UsnJrnl:\$J > usnjrnl.bin

Esporto journal NTFS

Friday, March 30, 2012

Page 29: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Si recupero tutti i file con struttura nota cancellati

• Operazione in genere lunga, da fare in laboratorio

• Tutti e tre i tool supportano custom config

• Scalpel e Foremost supportano custom config più avanzato

• Disponibile GUI (Menu’ > DEFT > Carving Tools > Hb4most)

cd carvingphotorec /dev/sda

vi /etc/foremost.confforemost -o carving -i /dev/sda

vi /opt/hb4/scalpel.confscalpel -v /opt/hb4/scalpel.conf -o carving -i /dev/sda

Carving e recupero dati

Friday, March 30, 2012

Page 30: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

• Prassi poco nota ma dagli ottimi risultati

• Estrarre tramite carving e applicare log2timeline su quanto ricuperato

• Verranno parsificati registro, eventi, immagini, documenti, link, navigazione Internet e molti altri metadati che altrimenti non sarebbero stati inclusi nella supertimeline

log2timeline -r -z Europe/Rome ./carving -m C: -w c-log2t-carve.csvcat *.csv > supertimeline-unsorted.csv

l2t_process -i -b supertimeline-unsorted.csv -y > supertimeline.csv

Dr. Paolo Dal Checco - [email protected]

Integrazione nella supertimeline

Friday, March 30, 2012

Page 31: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: documenti office

• 10/29/2008,09:15:00,PST8PDT,MACB,OXML,Open XML Metadata,created,domex1,-,, -

Application: Microsoft Office Word - AppVersion: 12.0000,2 […]

10/29/2008,09:15:00,PST8PDT,MACB,OXML,Open XML Metadata,modified,domex1,-,, -

Application: Microsoft Office Word - AppVersion: 12.0000,2 […]

Friday, March 30, 2012

Page 32: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: Windows lnk

• 09/18/2008,09:44:24,PST8PDT,.A..,LNK,Shortcut LNK,Access,-,-,C:/Program Files/Google/

Picasa3/Picasa3.exe […]

09/18/2008,09:44:24,PST8PDT,..CB,LNK,Shortcut LNK,Created,-,-,C:/Program Files/Google/Picasa3/

Picasa3.exe […]

10/21/2008,08:11:48,PST8PDT,M...,LNK,Shortcut LNK,Modified,-,-,C:/Program Files/Google/Picasa3/

Picasa3.exe […]

Friday, March 30, 2012

Page 33: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: Navigazione web

• 10/20/2008,15:42:24,PST8PDT,.ACB,WEBHIST,Internet Explorer,time1,Administrator,-,visited

http://www.google.com/search?hl=en&q=pidgin&aq=f […]

10/20/2008,15:42:55,PST8PDT,M...,WEBHIST,Internet Explorer,time2,Administrator,-,visited http://

sourceforge.net/project/downloading.php?groupname=pidgin&filename=pidgin-2.5.2.exe&use

_mirror=internap […]

Friday, March 30, 2012

Page 34: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: Filesystem

• 10/21/2008,11:13:04,PST8PDT,.A..,FILE,NTFS $MFT,$FN [.A..] time,-,-,C:/Documents and Settings/All Users/Documents/pidgin-2.5.2.exe […]

10/21/2008,11:04:08,PST8PDT,.A..,FILE,NTFS $MFT,$FN [.A..] time,-,-,C:/Documents

and Settings/All Users/Documents/Thunderbird Setup 2.0.0.17.exe […]

Friday, March 30, 2012

Page 35: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: Esecuzione programmi

• 10/29/2008,19:44:34,,MACB,REG,UserAssist key,Time of

Launch,domex2,REALISTIC_XP,UEME_RUNPATH:C:/Program Files/Mozilla Thunderbird/

thunderbird.exe, [Count: 2] […]

10/30/2008,00:50:43,PST8PDT,MACB,PRE,XP Prefetch,Last

run,-,REALISTIC_XP,AIM6.EXE-34DC5725.pf: AIM6.EXE was executed,AIM6.EXE-34DC5725.pf -

[AIM6.EXE] was executed - run count [5] […]

Friday, March 30, 2012

Page 36: Deftcon 2012 - Paolo Dal Checco - Timeline e Supertimeline

DEFTCON 2012 - Torino

Dr. Paolo Dal Checco - [email protected]

Esempio: Avvio e spegnimento PC

Friday, March 30, 2012