4921
Commento:
|
5313
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
## page was renamed from GiuseppeTerrasi/Prove10 | |
Linea 6: | Linea 7: |
= Il tuo Nome = | = Introduzione = |
Linea 8: | Linea 9: |
In questo documento verrà mostrato come creare un immagine di un dispositivo danneggiato e come estrarre i dati dall'immagine stessa. | In questo documento verrà mostrato come creare un immagine di un dispositivo danneggiato e come estrarre i dati da essa. |
Linea 12: | Linea 13: |
Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma '''GNU ddrescue''' [:AmministrazioneSistema/InstallareProgrammi:installabile] tramite il pacchetto [apt://gddrescue gddrescue]. In seguito il suo comando sarà ''ddrescue''. | Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma '''GNU ddrescue'''. [:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto [apt://gddrescue gddrescue]. |
Linea 16: | Linea 19: |
Prima di procedere, bisogna tenere presente che i filesystem di tipo [:Hardware/DispositiviPartizioni/MontarePartizioni/Fat:Fat] dispongono di un limite di 4GiB alla dimensione di ciascun file. E' tipico delle unità USB disporre di questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare filesystem che supporti capacità superiori per il singolo file come ad esempio [:Hardware/DispositiviPartizioni/MontarePartizioni/Ext3:Ext3] o altri. | ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Prima di proseguire, si noti che i filesystem di tipo [http://it.wikipedia.org/wiki/File_Allocation_Table Fat] dispongono di un limite di 4GiB per la dimensione massima dei file. Tipicamente le unità USB utilizzano questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare dei filesystem che supportino capacità superiori per il singolo file (ad esempio, [http://it.wikipedia.org/wiki/Ext3 Ext3] o altri).'' || |
Linea 21: | Linea 24: |
* Quindi, ad esempio {{{ sudo ddrescue -r 3 /dev/sda /media/usbdrive/image /media/usbdrive/logfile }}} dove il comando ''ddrescue'' di recupererà l'immagine dal dispositivo `dev/sda` e di salvarla in `/media/usbdrive/image`; inoltre, creerà un file di log in `/media/usbdrive/logfile`. L'opzione `-r 3` rappresenta il numero di tentativi di lettura che ''ddrescue'' farà qualora incontri degli errori. `-1` invita il programma ad eseguire un numero infinito di tentativi. |
* Ad esempio il seguente comando: {{{ sudo ddrescue -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile }}} recupererà l'immagine dal dispositivo «dev/sda» e la salverà in «/media/usbdrive/nome_immagine». Inoltre, creerà un file di log in «/media/usbdrive/logfile». L'opzione `-r 3` rappresenta il numero di tentativi di lettura che ''ddrescue'' eseguirà qualora incontri degli errori. `-1` invita il programma ad eseguire un numero infinito di tentativi. |
Linea 25: | Linea 28: |
sudo ddrescue -r 3 -C /dev/sda /media/usbdrive/image /media/usbdrive/logfile }}} dove rispetto al precedente è stata aggiunta l'opzione `-C` che invita il programma circoscrivere la lettura all'interno dei file già presenti nel registro (o file di log) creato in precedenza . |
sudo ddrescue -r 3 -C /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile }}} dove rispetto al precedente è stata aggiunta l'opzione `-C` che invita il programma a circoscrivere la lettura all'interno dei file già presenti nel registro (file di log) creato in precedenza. |
Linea 29: | Linea 32: |
* Creare un immagine copiando all'interno di essa più dati possibili, senza contiere tentativi di lettura nel caso si incontrino degli errori (opzione `-n`): {{{ ddrescue -n /dev/hda1 imagefile logfile * Riprovare andando più a fondo riprovando 3 volte in presenza di errori di lettura: {{{ ddrescue -d -r 3 /dev/hda1 imagefile logfile |
* Creare un immagine copiando all'interno di essa più dati possibili, senza alcun tentativo di lettura nel caso si incontrino degli errori (opzione `-n`): {{{ sudo ddrescue -n /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile }}} * Riprovare tentando 3 volte in presenza di errori di lettura: {{{ sudo ddrescue -d -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile |
Linea 35: | Linea 39: |
ddrescue -d -R -r 3 /dev/hda1 imagefile logfile | sudo ddrescue -d -R -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile |
Linea 41: | Linea 45: |
Dopo avere creato l'immagine del dispositivo è necessario concentrarsi sul recupero dei dati presenti sull'immagine stessa. Qualora il filesystem non è recuperabile, è possibile comunque tentare di recuperare i singoli file. | Dopo avere creato l'immagine del dispositivo è necessario concentrarsi sul recupero dei dati presenti sull'immagine stessa. Qualora il filesystem non è recuperabile, è possibile comunque tentare di [:AmministrazioneSistema/RecuperoDati/Estrazione:recuperare i singoli file]. |
Linea 45: | Linea 49: |
Se è stato recuperato l'intero disco, è possibile montare le singole partizioni "in loop" sull'immagine utilizzando l'opzione "Offset". '''mmls''', [:AmministrazioneSistema/InstallareProgrammi:installabile] dal pacchetto [apt://sleuthkit sleuthkit] è in grado di mostrare le partizioni che si trovano all'interno dell'immagine: {{{ mmls file -b |
Se è stato recuperato l'intero disco, è possibile montare le singole partizioni utilizzando il comando ''mount'' e le opzioni `loop` e `Offset`. '''mmls''', [:AmministrazioneSistema/InstallareProgrammi:installabile] dal pacchetto [apt://sleuthkit sleuthkit] è in grado di mostrare le partizioni che si trovano all'interno dell'immagine. * Digitare in una finestra di terminale il seguente comando: {{{ mmls nome_immagine -b }}} * Un possibile output potrebbe essere il seguente: {{{ |
Linea 57: | Linea 67: |
Il programma mostra più partizioni. In questo esempio, volendo montare la partizione DOS a partire dal blocco 32 (terza riga nell'esempio mostrato) bisognerà calcolare il numero di byte moltiplicando per 512 (1 blocco è uguale 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione. Quindi montare l'immagine: {{{ sudo mount -o loop,offset=16384 file mnt |
* In questo esempio, volendo montare la partizione DOS a partire dal blocco numero 32 bisognerà calcolare il numero di byte moltiplicandoli per 512 (un blocco è uguale 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione. Quindi montare l'immagine: {{{ sudo mount -o loop,offset=16384 nome_immagine mnt |
Linea 61: | Linea 70: |
Per montare una tipica partizione NTFS creata da Windows usare: {{{ |
* Per montare una ipotetica partizione NTFS sarebbe possibile usare: {{{ |
Linea 64: | Linea 72: |
}}} dove 63 * 512 byte = 32256 |
}}} dove 32256 deriva da: blocco 63 * 512 byte. |
Linea 72: | Linea 75: |
Linea 79: | Linea 80: |
CategoryHomepage | CategoryAmministrazione |
Indice(depth=1) Informazioni(rilasci="10.10 10.04 9.10 8.04"; forum="http://forum.ubuntu-it.org/index.php/topic,430020")
Introduzione
In questo documento verrà mostrato come creare un immagine di un dispositivo danneggiato e come estrarre i dati da essa.
Creare un immagine di un dispositivo
Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma GNU ddrescue.
[:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto [apt://gddrescue gddrescue].
Per una breve panoramica delle sue funzionalità e per approfondimenti si invita alla lettura del [http://www.gnu.org/software/ddrescue/ddrescue_it.html seguente documento].
Prima di proseguire, si noti che i filesystem di tipo [http://it.wikipedia.org/wiki/File_Allocation_Table Fat] dispongono di un limite di 4GiB per la dimensione massima dei file. Tipicamente le unità USB utilizzano questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare dei filesystem che supportino capacità superiori per il singolo file (ad esempio, [http://it.wikipedia.org/wiki/Ext3 Ext3] o altri). |
Per utilizzare GNU ddrescue digitare in una finestra di terminale un comando avente la seguente sintassi:
ddrescue [options] partizione_da_recuperare destinazione_immagine destinazione_file_di_log
Ad esempio il seguente comando:
sudo ddrescue -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
recupererà l'immagine dal dispositivo «dev/sda» e la salverà in «/media/usbdrive/nome_immagine». Inoltre, creerà un file di log in «/media/usbdrive/logfile». L'opzione -r 3 rappresenta il numero di tentativi di lettura che ddrescue eseguirà qualora incontri degli errori. -1 invita il programma ad eseguire un numero infinito di tentativi.
Il passo successivo potrebbe essere:
sudo ddrescue -r 3 -C /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
dove rispetto al precedente è stata aggiunta l'opzione -C che invita il programma a circoscrivere la lettura all'interno dei file già presenti nel registro (file di log) creato in precedenza.
Un [http://www.forensicswiki.org/wiki/Ddrescue noto sito] di analisi forense consiglia la seguente procedura:
Creare un immagine copiando all'interno di essa più dati possibili, senza alcun tentativo di lettura nel caso si incontrino degli errori (opzione -n):
sudo ddrescue -n /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Riprovare tentando 3 volte in presenza di errori di lettura:
sudo ddrescue -d -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Se il comando precedente fallisce riprovare leggendo i settori integralmente:
sudo ddrescue -d -R -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Estrarre i dati da un immagine
Dopo avere creato l'immagine del dispositivo è necessario concentrarsi sul recupero dei dati presenti sull'immagine stessa. Qualora il filesystem non è recuperabile, è possibile comunque tentare di [:AmministrazioneSistema/RecuperoDati/Estrazione:recuperare i singoli file].
Montare le partizioni sull'immagine
Se è stato recuperato l'intero disco, è possibile montare le singole partizioni utilizzando il comando mount e le opzioni loop e Offset.
mmls, [:AmministrazioneSistema/InstallareProgrammi:installabile] dal pacchetto [apt://sleuthkit sleuthkit] è in grado di mostrare le partizioni che si trovano all'interno dell'immagine.
Digitare in una finestra di terminale il seguente comando:
mmls nome_immagine -b
Un possibile output potrebbe essere il seguente:
DOS Partition Table Offset Sector: 0 Units are in 512-byte sectors Slot Start End Length Size Description 00: ----- 0000000000 0000000000 0000000001 0512B Primary Table (#0) 01: ----- 0000000001 0000000031 0000000031 0015K Unallocated 02: 00:01 0000000032 0001646591 0001646560 0803M DOS FAT16 (0x06) 03: 00:00 0001646592 0002013183 0000366592 0179M DOS FAT16 (0x06)
In questo esempio, volendo montare la partizione DOS a partire dal blocco numero 32 bisognerà calcolare il numero di byte moltiplicandoli per 512 (un blocco è uguale 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione. Quindi montare l'immagine:
sudo mount -o loop,offset=16384 nome_immagine mnt
Per montare una ipotetica partizione NTFS sarebbe possibile usare:
sudo mount -t ntfs -o r,force,loop,offset=32256 file mnt
dove 32256 deriva da: blocco 63 * 512 byte.
Ulteriori risorse
[http://manpages.ubuntu.com/manpages/maverick/en/man1/ddrescue.1.html Pagina man ddrescue]
[http://www.sleuthkit.org/sleuthkit/man/mmls.html Pagina man mmls]