Una copia forense deve essere una copia "bit-a-bit" dell'intero disco (fisico o virtuale, se spalmato su un RAID), comprendente l'MBR e la partition table.

La copia va quindi effettuata direttamente sul device che identifica il disco (Es. /dev/hda) e non sulle singole partizioni.

La copia inoltre non deve essere sottoposta e nessun tipo di compressione: programmi come il Norton Ghost effettuano la compressione dello spazio libero, con il risultato di non poter recuperare file cancellati prima del dump dell'immagine.

La legislazione italiana attualmente e' abbastanza carente per quanto riguarda la certificazione delle copie e dei software utilizzabili per realizzarle. Per questo conviene dare uno sguardo oltreoceano, dove le agenzie statunitensi hanno certificato un ristretto gruppo di tool, quasi tutti software commerciali o costosi duplicatori hardware.

L'unico software OpenSource certificato e' dd, che se da un lato utilizza una formato raw che puo' essere letto dalla maggior parte dei software commerciali e non, dall'altro non ha (a differenza delle controparti commrciali) alcun sistema di certificazione della copia.

A questa mancanza si puo' supplire tranquillamente con tools come md5sum e sha1: entrambi sono accettati in ambito forense.

Iniziamo ora ad acquisire i dati.

Isolamento

Per prima cosa isolare le macchine dalla rete, spegnendo eventualmente gli switch/hub.

Se le macchine da controllare sono ancora accese, verificare che non ci sia attivita' dei dischi e staccare le alimentazioni: non e' uno shutdown regolare, ma e' il modo migliore per preservare lo status quo.

Riaccendere poi la macchina e entrare nel bios: verificare eventuali scostamenti di data/ora rispetto al nostro punto di riferimento e modificare l'ordine di boot in modo da far avviare il sistema esclusivamente da cd-rom.

Boot

A questo punto entra in scena uno dei nostri tool: la distribuzione live di linux. Personalmente utilizzo la strafamosa Knoppix: il supporto hardware e' ottimo.

Effettuato quindi il boot da CD-ROM, si puo' montare il disco della macchina in read-only per dare uno sguardo all'interno, eventualmente per redigere immediatamente una bozza di prospetto sui software inistallati.

Acquisizione

Il mio kit per l'acquisizione dei dati consiste in un portatile con installato linux (debian sarge), con un hard disk sufficentemente capiente e una scheda di rete veloce.La procedura e' semplice:

  1. Collegare il portatile alla macchina da analizzare con un cavo crossed, configurare correttamente i parametri di rete sul laptop e sulla knoppix
  2. Avviare la copia via rete con netcat e dd:

Sul laptop (server):

netcat -l -p numeroporta > file-immagine

Sulla macchina da analizzare (client)

dd if=device_da_acquisire bs=2048 | netcat ip-del-laptop numeroporta

Per scongiurare problemi in fase di verifica della copia e' consigliato seguire questi passi:

  • Attendere il messaggio di fine copia sul client
  • Verificare l'effettiva assenza di attivita' di rete
  • Interrompere il client con CTRL-C (a quel punto il server uscira' automaticamente)
  • Lanciare il comando sync sul server in modo da svuotare la cache del filesystem
  • Verificare origine e destinazione con il tool di hashing scelto.

Verifica dei dati

Gli algoritmi di hash ci sono utili per verificare la fedelta' dei dati acquisiti e l'inalterbilita' dei dati nel corso del tempo: riapplicando in qualsiasi momento l'algoritmo ai dati acquisiti si potra' verificare che non sono stati modificati nel corso dell'indagine.

L'utilizzo e' semplicissimo:con

md5sum immagine-acquisita

otterremo l'hash dell'immagine appena acquisita mentre, eseguando sul client (sempre con Knoppix)

md5sum /dev/deviceacquisito

ci verra' restituito l'hash del disco.

Per certificare la corretta copia, i due valori devono essere (manco a dirlo!) uguali.

In ultimo, tutte le operazioni effettuate e tutti gli hash dovranno essere annotati sul verbale di acquisizione.