Quante e quante volte è capitato, erroneamente, di cancellare particolari file e/o di avere un hd con dati nascosti che compromettono la visione degli stessi ?
Esistono molteplici tool per l’indagine e recupero dei dati in ambito linux; tra questi sicuramente è bene conoscere: Foremost.
Link Ufficiale: Foremost
Foremost è un tool di indagine & ripristino dati che agisce a patto che lo spazio su cui pogiavano i dati da recuperare “se cancellati per errore e/o volutamente” non sia stato utilizzato e sovrascritto da altri dati.
Come prima cosa chiaramente, preoccupiamoci di installare il tool aggiornato all’ultima release disponibile:
~$ wget foremost-1.5.5.tar.gz ~$ tar zxvf foremost-1.5.5.tar.gz ~$ cd foremost-1.5.5 ~$ make ~$ su Password: ~# make install
Sintassi:
$ foremost [-v | -V | -h | -T | -Q | -q | -a | -w-d] [-t |
[-b
- -H Stampa il messaggio d’aiuto ed esce
- -V Stampa le informazioni di copyright ed esce
- -v Modalità Verbose
- -q Modalità Quick. Ricerca l’header solo all’inizio del settore
- -i Legge i file da analizzare nel file passato come parametro
- -o Imposta la directory nella quale saranno salvati i file recuperati
- -c Imposta il file di configurazione da utilizzare
- -s Salta il numero di bytes specificato prima di iniziare la ricerca
File di configurazione:
Il file di configurazione guida il comportamento di foremost durante la ricerca ed è sostanzialmente un elenco delle caratteristiche da ricercare per ogni file. Le righe che iniziano col carattere # sono considerate commenti e non vengono prese in considerazione dal programma. Ogni riga è divisa in sezioni con gli attributi dei file:
extension |
case sensitive |
size |
header |
footer |
opzioni |
</td> |
</td> |
</td> |
</td> |
</td> |
</td> </tr> |
mpg |
y |
4000000 |
x00x00x01xba |
x00x00x01xb9 |
REVERSE |
</td> |
</td> |
</td> |
</td> |
</td> |
</td> </tr> </tbody> </table> Foremost nomina numericamente ogni file recuperato, partendo da 00000000 ed aggiungendo l'estensione specificata nel campo extension. E' possibile inserire NONE nel suddetto campo per fare in modo che nessuna estensione sia aggiunta al nome del file. Case sensitive può essere impostato 'y' o 'n' e riguarda il trattamento di header e footer. Size rappresenta il massimo numero di byte che foremost recupera se non trova un footer. L'header ed il footer possono essere specificati con valori esadecimali, ottali o in caratteri, lo spazio è rappresentato da s. I valori esadecimali sono rappresentati come x[0-f][0-f], quelli ottali come [0-3][0-7][0-7] . L'esempio riportato nel file di configurazione stesso è il seguente:
x4f123IsCCI è equivalente a “OSI CCI”
Spiegata la sintassi e il conf non resta che recuperare i dati persi. Uso Comune: NB: E' buona norma in caso di partizioni creare un mount point "che potrebbe essere un ennesimo hd Dati" e/o un hard disk usb esterno e quindi: - Supponiamo di voler recuperare i dati dell'hard disk Hda2; creo la cartella foremost nel disco esterno usb che chiamerò "recupero", grande a sufficienza da contenere tutto hda2 "disco/partizione sul quale si tenta la scansione e quindi il recupero di dati": ~# mount /dev/hda3 /mnt/recupero "disco usb" ~# mkdir /mnt/recupero/foremost "creazione punto di montaggio sul disco usb (dove finiranno i dati)" Creato il punto di montaggio scelto come in esempio, basterà avviare foremost in maniera generica (cercando il recupero di tutti i dati) indicando l'hd su cui verificare la scansione e il punto di montaggio che di default risulta essere altrimenti la directory "/output" : ~# foremost -i /dev/hda2 -o /mnt/recupero/foremost NB: la durata di scansione e recupero varia a seconda della grandezza della partizione e/o dell'hd su cui si lavora. A lavoro finito la cartella o il punto di montaggio scelto si presenta come segue: audit.txt dll/ gif/ jpg/ mpg/ png/ rif/ sxc/ vis/ xls/ avi/ doc/ htm/ mbd/ ole/ ppt/ sdw/ sxi/ wav/ zip/ bmp/ exe/ jar/ mov/ pdf/ rar/ sx/ sxw/ wmv/ NB: Come da esempio, i file sono suddivisi in cartelle per estensione. La nota dolente è che all'interno delle cartelle i file recuperati sono rinominati numericamente perdendo il nome originario. Rapporto: Nella directory in cui sono immagazzinati i dati recuperati, Foremost crea un file dal nome audit.txt, ovvero un report contenente i dettagli dell'operazione effettuata tra i quali è da evidenziare l'offset di partenza originale del file recuperato ( Found at Byte). Questo parametro risulta molto utile per approfondire una prima ricerca di base. Cercando ad esempio alcune immagini create con Photoshop, possiamo impostare l'header in modo che trovi una caratteristica unica dell'immagine ( la stringa AdobesPhotoshop). Sapendo che l'occorrenza dell'header è collocata all'offsett 144 (0x90) del file possiamo recuperare per intero l'immagine calcolando il byte di partenza del file impostandolo come punto di avvio della ricerca con l'opzione -s. Uso Specifico per tipi di file: Potrebbe essere utile scansionare la partizione e/o l'hd scelto cercando solo ed esclusivamente determinati tipi di file: ~# foremost -t jpg -i /dev/hda2 -o /mnt/recupero/foremost NB: Come da esempio l'estensione è configurabile con il tipo di file che si intende recuperare Gif, Avi, Zip, Rar, Doc, Html etc ... Le possibilità di indagine e ripristino con Foremost sono varie, e anche se può risultare non troppo comodo permette di creare file di configurazione vari per i vari tipi di file che si intende ricercare fuori dal contesto della ricerca default; ricerca che di suo risulta essere davvero semplice all'user comune. Riferimenti: Cybercrimes # |