2. Casi d'uso
I tipi di utilizzo ai quali è destinato il Coroner's Toolkit sono molteplici, ma volendo semplificare potremmo dire che gli scenari principali per i quali è designato il TCT sono due:
Nel secondo caso invece si è verificata la perdita di file presenti su un supporto di memoria e si desidera recuperarli. Sono molteplici le volte in cui file vengono perduti. Basta pensare alle volte in cui un sistema viene attaccato e i dati vengono resi irraggiungibili all'utente. Altre volte è l'utente stesso a causare la scomparsa dei dati. Questo può accadere accidentalmente a causa di distrazione o di errori di valutazione, oppure volontariamente per nascondere documenti "compromettenti" agli occhi di autorità giudiziarie. Solitamente i documenti non vengono eliminati definitivamente dalla memoria, bensì vengono eliminati tutti i riferimenti ad essi. Pertanto, a meno che non si sia riscritto nei settori in cui era memorizzato, il file è ancora presente e integro, dunque recuperabile.
2.1 Analisi del Sistema
nDisco
Rigido e Memorie di Massa
nMemoria
Volatile
dDispositivi
di Rete
n
Inoltre, è necessaria una serie di applicazioni che permetta di risalire a informazioni sullo stato del sistema quali ad esempio:
L’analisi deve inoltre essere abbastanza precisa da permettere la comprensione dello stato del sistema anche a chi non ha familiarità con esso. Nel caso di indagini, deve anche essere specificamente orientata alla raccolta di informazioni da usare in ambito prettamente legale e deve poter essere eseguita anche su sistemi o memorie di massa difficilmente smontabili o trasportabili.
Questi dati sono tanto importanti in ambito forense quanto effimeri, in quanto sono modificati da moltissime tra le più banali operazioni eseguite sui file.
Per catturare tutte le informazioni che ci servono l'applicazione giusta è Grave-Robber. Esso si occupa della raccolta dei dati importanti del sistema, e per fare ciò lancia in successione la maggior parte degli altri tools del TCT.
Dunque per esaminare il sistema andremo a eseguire le seguenti operazioni:
se il sistema è attivo, lasciamo che rimanga tale. Altrimenti lo accendiamo.
se possibile effettuiamo l'accesso al sistema da root, in modo che possano essere analizzati anche eventuali dati non accessibili da utenti normali.
copiamo il contenuto del pacchetto del TCT in una cartella qualsiasi.
installiamo il software.
lanciamo il comando grave-robber. Di default, l’analisi viene eseguita sull’intero sistema.
La raccolti dei dati può richiedere molte ore, e qualsiasi operazione eseguita dal sistema rischia di alterare anche il contenuto dei dati sottoposti a indagine. nPer porre rimedio, il Grave-Robber evita appositamente di inviare comandi alla shell di Unix automatizzando tutta la procedura. Nonostante questo, a tutt’oggi è comunque impossibile fare in modo che l’analisi venga eseguita senza il minimo rischio per l’integrità dei dati.
se il sistema è ancora attivo, spegnerlo.
smontare tutti i dischi rigidi del sistema.
montarli su un altro sistema, sul quale è installato TCT, con permessi di sola lettura.
eseguire una copia di sicurezza di tutti i dati.
smontare i dischi rigidi contenenti i dati originali.
lanciare il comando grave-robber con l'opzione -f.
Questa procedura però, sebbene protegga i dati temporali, causa la perdita di altre informazioni. Basta pensare a quelle relative ai processi attivi sulla macchina e ai dati contenuti nella memoria volatile. Dunque se la macchina è ancora accesa è preferibile evitare questa procedura. Se invece si è interessati soprattutto alle informazioni temporali dei file allora essa è raccomandata.
Il materiale raccolto da Grave-Robber è molto vario, e include:
Informazioni sui processi.
nInformazioni sulle periferiche (in particolare dischi e partizioni).
nFile di importanza rilevante (file di configurazione, file di log, altri file critici).
Figura 1: all'interno della directory data viene creata una cartella che contiene l'output.
2.2 Recupero File
Nella maggior parte dei sistemi operativi, i file cancellati non vengono rimossi fisicamente dal disco rigido, ma semplicemente ogni riferimento a loro nel file system viene cancellato, cosicché lo spazio dove risiedono può essere nuovamente occupato da un qualsiasi tipo di dati. Finché questo non avviene, i dati cancellati sono tecnicamente ancora presenti e integri.Per risolvere il problema sono state create le applicazioni Unrm e Lazarus. Unrm esegue la scansione del disco rigido alla ricerca di dati grezzi non indicizzati dal filesystem, mentre Lazarus provvede a interpretare questi dati eseguendo dei test.
Le precauzioni da prendere prima di eseguire il recupero sono fondamentali. Qualsiasi operazione eseguita sul sistema, anche la più banale, rischia di sovrascrivere parti del disco rigido in cui possono trovarsi i dati che cerchiamo.
Per effettuare l'operazione di recupero, è necessario eseguire i seguenti passi:
Arrestare il sistema al più presto.
Smontare tutti i dischi rigidi che potrebbero contenere dati da recuperare e rimontarli con permessi di sola lettura.
Eseguire una copia di tutti i dati su di un altro disco rigido.
Smontare i dischi rigidi contenenti i dati originali.
Approntare un altro disco sul quale sia installato il TCT. Questo disco conterrà l'output dell'analisi, per cui la dimensione del suo spazio libero deve essere almeno pari a quella del disco che si va ad esaminare. E' consigliabile, comunque, che sia almeno pari al doppio. Generare l'output sullo stesso disco è pericoloso, perchè si va a sovrascivere facilmente spazio ancora non esaminato.
Lanciare unrm, che si occuperà di recuperare la porzione di dati grezzi su cui effettuare le ricerche volte al recupero. In generale questo avviene specificando l'unità interessata e la quantità di dati da recuperare. Conviene eseguirlo da root, in quanto urnm lavora a basso livello sulla macchina.
Lanciare lazarus sulla suddetta porzione.
E inoltre consigliabile avere molto tempo a disposizione: l'analisi può richiedere ore, e la sua durata varia a seconda della velocità della macchina e alle dimensione dello spazio che si va ad esaminare.