deftcon 2014 - Federico Grattirio - TIMESHARK: Uno strumento per la visualizzazione e l’analisi...
-
Upload
deft-association -
Category
Data & Analytics
-
view
346 -
download
1
Transcript of deftcon 2014 - Federico Grattirio - TIMESHARK: Uno strumento per la visualizzazione e l’analisi...
TIMESHARK: Uno strumento per la visualizzazione e l’analisi delle supertimelines
Relatore: Federico Grattirio
Indice:
Introduzione Architettura Sviluppi
Cos’è una timeline ?
A cosa serve ?
Dove posso trovare le
informazioni ?
Come ottenere una
timeline ?
Analisi e problemi
Tool disponibili
Timeshark
Case of study
Timeline nelle analisi forensi
● Metodo rapido e intuitivo per comprendere la sequenza degli eventiavvenuti in una determinata finestra temporale
● Ricostruire le attività di un utente o di un intruso
● Ricostruire le fasi di un attacco informatico
● Individuare il punto di compromissione originale
● Individuare le cause di un incidente
● Evidenziare incongruenze sintomo di attività illecite o antiforensics
● Gli eventi provengono da una pluralità di fonti eteronegee
● Gli eventi di natura digitale sono registrati in quantità tali da richiederenecessariamente una trattazione automatizzata
● Raccogliere una ricca base dati è ormai relativamente semplice…
● …elaborarla invece no
Introduzione Architettura SviluppiCase of study
Dove posso trovare le informazioni ?
● Filesystem
Introduzione Architettura SviluppiCase of study
Dove posso trovare le informazioni ?
● Filesystem
● File di log (sistema e applicazioni)
Introduzione Architettura SviluppiCase of study
Dove posso trovare le informazioni ?
● Filesystem
● File di log (sistema e applicazioni)
● Cronologia e cache dei browser
Introduzione Architettura SviluppiCase of study
Dove posso trovare le informazioni ?
● Filesystem
● File di log (sistema e applicazioni)
● Cronologia e cache dei browser
● Metadati interni ai documenti
Introduzione Architettura SviluppiCase of study
Dove posso trovare le informazioni ?
● Filesystem
● File di log (sistema e applicazioni)
● Cronologia e cache dei browser
● Metadati interni ai documenti
● ...e molti altri, anche esterni al sistema in esame
● log dei provider, tabulati telefonici, sistemi di videosorveglianza…
Introduzione Architettura SviluppiCase of study
Come ottenere una timeline ?
Introduzione Architettura SviluppiCase of study
Analisi e problemi
● Grandi moli di dati
○ Timeline derivanti dal solo journal NTFS possono avere dai 500.000 a2.000.000 eventi
● Grande varietà di formati in input
○ I timestamp sono registrati in formati diversi, che variano da sistemaoperativo, filesystem, applicazioni…
○ Le timeline possono provenire dai report di diversi tool diacquisizione o carving
○ Gli eventi possono essere stati registrati da diversi sistemi, con diversifusi orari o time skew rilevanti
● Complessità di visualizzazione
● Complessità di analisi
Introduzione Architettura SviluppiCase of study
Tool disponibili - Autopsy
Introduzione Architettura SviluppiCase of study
• Open source
• Funzione ancora in beta (e si vede…)
• Base dati limitata al filesystem
• Accesso diretto alla sorgente dell’evento
• Non permette di applicare filtri alla timeline
• Non permette di evidenziare gli eventi
• Disponibile solo per Windows e DEFT
Tool disponibili – Kibana
Introduzione Architettura SviluppiCase of study
• Open source e web based
• Interfacciabile con Plaso/log2timeline
• Altamente scalabile
• Non disegnato specificamente per analisi forensi
• Nessun accesso alla sorgente
Tool disponibili – 4n6time
Introduzione Architettura SviluppiCase of study
• Non è open source
• Buona integrazione coi backend
• Interfaccia molto evoluta, ma ancora difettosa (navigazione visuale, accesso
alla sorgente, gestione filtri, paginazione…)
• Strumento potente, ma non adattabile
Tool disponibili – Aftertime
Introduzione Architettura SviluppiCase of study
• Sorgenti chiusi
• Licenza d’uso fortemente limitante
• Ottimo supporto agli artefatti, ma non estensibile
• Interfaccia intuitiva, ma non priva di difetti (accesso alla sorgente, bookmark…)
• Tempi di reazione insoddisfacenti
Tool disponibili - FTK
Introduzione Architettura SviluppiCase of study
• Raccolta dati basata su log2timeline
• Accesso diretto alla sorgente
• Interfaccia grafica scarsamente produttiva
• Software proprietario
• Disponibile solo per Windows
Tool disponibili - Encase
Introduzione Architettura SviluppiCase of study
• Interfaccia limitata, ma molto reattiva
• Accesso diretto alla sorgente dell’evento
• Base dati limitata ai timestamp del filesystem
• Reportistica inadeguata
• Software proprietario
• Disponibile solo per Windows
Tool disponibili - Webscavator
Introduzione Architettura SviluppiCase of study
• Open source
• Ottima interfaccia
• Filtri preconfigurati e report intuitivi
• Permette solo l’analisi di timeline derivanti da navigazione web
Tool disponibili - IEF
Introduzione Architettura SviluppiCase of study
• Lunghi tempi di caricamento
• Interfaccia molto reattiva
• Base dati ampia, ma comunque limitata ai risultati di IEF
• Software proprietario
• Disponibile solo per Windows
Timeshark
● Open source
● Multipiattaforma
● Tempi di risposta adeguati anche con grandi moli di dati
● Interfaccia punta e clicca, intuitivo, semplicità di utilizzo
● Possibilità di segnalare eventi sospetti
● Possibilità di aggregare più eventi
● Possibilità di filtrare e colorare gli eventi
● Possibilità di personalizzazione del software
Introduzione Architettura SviluppiCase of study
Indice:
Introduzione Architettura Sviluppi
Struttura generale
Plugin
Tecnologie
Case of study
Struttura generale
● Model: Gestione dei dati presenti nel
database
● View: Gestione della visualizzazione dei
dati
● Controller: Gestione della elaborazione
dei dati
● Plugin managers: Gestione dei plugin
Introduzione Architettura SviluppiCase of study
Plugin
● Caricati dinamicamente all’avvio di Timeshark
● Plugin scanner -> Permettono l’interpretazione di file in input
● Plugin filtro -> Permettono la creazione di filtri standard
● Plugin di visualizzazione -> Permettono la creazione di svariati punti di vista
sul database
● Plugin di export -> Permettono l’esportazione dei dati nel formato desiderato
Introduzione Architettura SviluppiCase of study
Tecnologie
● Python
○ Linguaggio di programmazione multipiattaforma
● Librerie Qt
○ Librerie grafiche multipiattaforma per lo sviluppo di interfacce grafiche
● SqLite
○ Libreria software per la creazione di un database relazionale
Introduzione Architettura SviluppiCase of study
Indice:
Introduzione Architettura SviluppiCase of study
Case of study
Dati:
● Journal derivato da partizione NTFS
Obiettivo:
● Ricavare eventi compresi tra le ore 07:27 e le ore 07:30
● Evidenziare gli eventi di creazione file
● Segnalare tramite tag gli eventi che comprendono solo il tipo “file_created”
Workflow:
Creazione
analisiAggiunta file Aggiunta filtri Aggiunta tag
Introduzione Architettura SviluppiCase of study
Creazione analisi
Introduzione Architettura SviluppiCase of study
Creazione analisi
Introduzione Architettura SviluppiCase of study
Aggiunta file
Introduzione Architettura SviluppiCase of study
Aggiunta file
Introduzione Architettura SviluppiCase of study
Aggiunta filtro
Introduzione Architettura SviluppiCase of study
Aggiunta filtro
Introduzione Architettura SviluppiCase of study
Aggiunta filtro
Introduzione Architettura SviluppiCase of study
Aggiunta filtro
Introduzione Architettura SviluppiCase of study
Aggiunta tag
Introduzione Architettura SviluppiCase of study
Aggiunta tag
Introduzione Architettura SviluppiCase of study
Export data
Introduzione Architettura SviluppiCase of study
Results
Introduzione Architettura SviluppiCase of study
Indice:
Introduzione Architettura SviluppiCase of study
Sviluppi
Sviluppi:
● Creazione di plugin di visualizzazione grafica delle timeline
● Creazione di plugin di visualizzazione di statistiche/sessioni presenti nei dati
analizzati
● Creazione di plugin per l’importazione dei più comuni file derivanti da tool di
estrazione e carving
● Creazione di plugin per l’esportazione in formato xml (con xsl)
● Link diretto alla sorgente dell’evento
Introduzione Architettura SviluppiCase of study
Introduzione Architettura SviluppiCase of study
Timeshark v. 0.1
Contatti:
• Federico grattirio
Acknowledgement:
• Antonio Barili
• Davide Gabrini Domande ?