Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "andreas-xavier/Prova6"
Differenze tra le versioni 75 e 81 (in 6 versioni)
Versione 75 del 24/09/2021 15.50.57
Dimensione: 4416
Commento:
Versione 81 del 25/09/2021 15.08.37
Dimensione: 10186
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 4: Linea 4:
<<BR>>
Linea 10: Linea 10:
'''Foremost''' è uno strumento da riga di comando utile per recuperare file basandosi sui loro header, footers e struttura interna dei dati. Questo procedimento è detto ''[[https://en.wikipedia.org/wiki/File_carving|data carving]]''. Foremost può operare sia su file immagine, sia su supporti quali unità flash, hard ddisk, schede di memoria ecc. Supporta diversi tipi di filesystem, inclusi Fat16/32, Ext3/4 e NTFS. '''Foremost''' è uno strumento da riga di comando per il recupero dei file. La tecnica utilizzata è il ''[[https://en.wikipedia.org/wiki/File_carving|data carving]]'', ossia utilizzando le tracce di degli header, footers e struttura interna dei dati stessi, senza considerare i metadati del filesystem<<BR>>
Foremost può operare sia su file immagine, sia su supporti quali unità flash, hard disk, schede di memoria ecc. Supporta diversi tipi di filesystem (Fat16/32, Ext3/4, NTFS ecc.) e moltissimi formati di file (`.jpg`, `.png`, `.zip`, `.avi`, `.pdf`, `.doc`, `.exe`, ecc.).
Linea 12: Linea 13:
Sviluppato origariamente da enti governativi statunitensi quali United States Air Force Office of Special Investigations and The Center for Information Systems Security Studies and Research, è stato successivamente reso di pubblico dominio.

{{{#!wiki note
nota.
}}}
Sviluppato originariamente da enti governativi statunitensi quali l'Ufficio Investigazioni speciali della United States Air Force e il CISR (Center for Information Systems Security Studies and Research), è stato successivamente reso di pubblico dominio.
Linea 20: Linea 16:
No matter which file recovery tool or process your are going to use to recover your files, before you begin it is recommended to perform a low level hard drive or partition backup, hence avoiding an accidental data overwrite !!! In this case you may re-try to recover your files even after unsuccessful recovery attempt. Check the following dd command guide on how to perform hard drive or partition low level backup. Per evitare sovrascritture accidentali di dati, anziché operare direttamente sul supporto di memoria dal quale si voglio recuperare i file, si raccomanda di eseguire il programma su un file immagine di backup a basso livello (a tal fine è possibile usare lo strumento [[AmministrazioneSistema/BackupDelSistema#Backup_con_dd|dd]]).
Linea 29: Linea 25:
{{{#!wiki important
Per evitare sovrascritture accidentali, con consequente impossibilità di recupero dei file, si raccomanda di impostare come destinazione di salvataggio una cartella in un disco e/o partizione differente da quella in cui sono presenti i file da recuperare.
}}}
Linea 30: Linea 29:
Di default il programma:
 * crea una cartella chiamata `output` nella stessa posizione dal quale viene lanciato il comando (ad esempio la '''Home''' dell'utente, se non non viene modificata con il comando '''cd''' dopo aver aperto il terminale).
 * crea delle sottocartelle corrispondenti al formato dei file che vengono recuperati (ad esempio `jpg`, `txt`, `zip` ecc.).
 * al termine della procedura vengono eliminate eventuali sottocartelle vuote, per le quali non sono stati trovati file corrispondenti.
Linea 31: Linea 34:
Supponendo quindi di voler cercare dei file eliminati in una partizione `/dev/sdb1`, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo foremost -i /dev/sdb1
}}}
Linea 32: Linea 38:
Per cercare soltanto determinati tipi di file è inoltre possibile usare l'opzione `-t`, con i formati di file separati da una virgola. Ad esempio per cercare in una partizione `/dev/sdb1` soltanto file `.doc` e `.pdf`, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo foremost -i /dev/sdb1 -o /recovery/foremost
}}}
Linea 33: Linea 42:
= Configurazione = Per specificare una determinata cartella di salvataggio (diversa da `output`, ad esempio denominata `output`) è possibile usare l'opzione `-o`, come nel seguente esempio:{{{
sudo foremost -i /dev/sdb1 -o /home/utente/dati
}}}
Linea 35: Linea 46:
'''Trinity''' ha un centro di controllo completo, dal quale si possono configurare tutte le applicazioni e le funzionalità di sistema. Qualora la cartella di destinazione non esistesse il programma provvederà a crearla. Qualora invece sia già presente apparirà un messaggio simile al seguente:{{{
ERROR: /home/utente/dati is not empty
  Please specify another directory or run with -T.
}}}
Linea 37: Linea 51:
== Lingua di sistema == Come suggerito dall'output, sarà possibile a propria scelta usare una destinazione differente oppure usare l'opzione `-T`. Quest'ultima provvede a contrassegnare con ora e data la cartella specificata, che nell'esempio precedente verrà nominata `/home/utente/dati_Sat_Sep_25_16_32_38_2021`.
Linea 39: Linea 53:
Se la traduzione in italiano del sistema fosse incompleta seguire i seguenti passaggi: {{{#!wiki tip
In questo modo è possibile sarà possibile lanciare più volte il programma nella stessa cartella.
}}}
Linea 41: Linea 57:
 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://tde-i18n-it-trinity|tde-i18n-it-trinity]].
 0. Configurare la lingua italiana nel menù '''''Menù T → Centro di controllo di Trinity → Regionali e Accesso facilitato → Lingua e paese '''''.
 0. Riavviare il sistema affinché le modifiche abbiano effetto.
= File di configurazione =
Linea 45: Linea 59:
== Applicazioni predefinite == The foremost configuration file can be used to specify file formats not natively supported by the program. Inside the file we can find several commented examples showing the syntax that should be used to accomplish the task. Here is an example involving the png type (the lines are commented since the file type is supported by default):
Linea 47: Linea 61:
Poiché '''Trinity''' è un fork di '''KDE 3.5''', per evitare confusione conflitti con le applicazioni predefinite di KDE, i pacchetti sono stati rinominati posponendo al nome '''-trinity''' (ad esempio '''kate''' diventa '''kate-trinity''', '''konqueror''' diventa '''konqueror-trinity''' ecc.). # PNG (used in web pages)
# (NOTE THIS FORMAT HAS A BUILTIN EXTRACTION FUNCTION)
# png y 200000 \x50\x4e\x47? \xff\xfc\xfd\xfe
Linea 49: Linea 65:
Pertanto si raccomanda di seguire i seguenti consigli:
 * Non installare pacchetti relativi all'ambiente grafico '''KDE 5''' per non creare possibili conflitti, ma solo le versioni col nome posposto da `-trinity`.
 * Prima di installare programmi, controllare sempre che i programmi desiderati non siano stati rinominati e modificati nelle versioni successive di '''KDE 4''' e '''KDE 5'''.
The information to provide in order to add support for a file type, are, from left to right, separated by a tab character: the file extension (png in this case), whether the header and footer are case sensitive (y), the maximum file size in Bytes (200000), the header (\x50\x4e\x47?) and and the footer (\xff\xfc\xfd\xfe). Only the latter is optional and can be omitted.
Linea 53: Linea 67:
= Risoluzione dei problemi = If the path of the configuration file it’s not explicitly provided with the -c option, a file named foremost.conf is searched and used, if present, in the current working directory. If it is not found the default configuration file, /etc/foremost.conf is used instead.
Linea 55: Linea 69:
== Login fallito == == Aggiungere altri formati di file ==
Linea 57: Linea 71:
Qualora con login manager predefinito '''TDM''' ('''TDE Display Manager''') non si riuscisse ad eseguire il login, è possibile eseguire il seguente workaround: By reading the examples provided in the configuration file, we can easily add support for a new file type. In this example we will add support for flac audio files. Flac (Free Lossless Audio Coded) is a non-proprietary lossless audio format which is able to provide compressed audio without quality loss. First of all, we know that the header of this file type in hexadecimal form is 66 4C 61 43 00 00 00 22 (fLaC in ASCII), and we can verify it by using a program like hexdump on a flac file:
Linea 59: Linea 73:
 0. Premere la combinazione di tasti '''CTRL''' + '''ALT''' + '''F2''' ed eseguire il login da linea di comando.
 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] un secondo [[AmbienteGrafico/DisplayManager|display manager]] a piacere ed impostarlo come predefinito. Si consiglia l'installazione di [[AmbienteGrafico/DisplayManager/SDDM|SDDM]].
 0. Durante la procedura verrà chiesto di scegliere un display login fra quelli disponibili. Selezionare uno differente da'''TDM'''.
 0. Riavviare il sistema e accedere con il nuovo display manager selezionando la sessione Trinity.
$ hexdump -C
blind_guardian_war_of_wrath.flac|head
00000000 66 4c 61 43 00 00 00 22 12 00 12 00 00 00 0e 00 |fLaC..."........|
00000010 36 f2 0a c4 42 f0 00 4d 04 60 6d 0b 64 36 d7 bd |6...B..M.`m.d6..|
00000020 3e 4c 0d 8b c1 46 b6 fe cd 42 04 00 03 db 20 00 |>L...F...B.... .|
00000030 00 00 72 65 66 65 72 65 6e 63 65 20 6c 69 62 46 |..reference libF|
00000040 4c 41 43 20 31 2e 33 2e 31 20 32 30 31 34 31 31 |LAC 1.3.1 201411|
00000050 32 35 21 00 00 00 12 00 00 00 54 49 54 4c 45 3d |25!.......TITLE=|
00000060 57 61 72 20 6f 66 20 57 72 61 74 68 11 00 00 00 |War of Wrath....|
00000070 52 45 4c 45 41 53 45 43 4f 55 4e 54 52 59 3d 44 |RELEASECOUNTRY=D|
00000080 45 0c 00 00 00 54 4f 54 41 4c 44 49 53 43 53 3d |E....TOTALDISCS=|
00000090 32 0c 00 00 00 4c 41 42 45 4c 3d 56 69 72 67 69 |2....LABEL=Virgi|
Linea 64: Linea 86:
== Touchpad == As you can see the file signature is indeed what we expected. Here we will assume a maximum file size of 30 MB, or 30000000 Bytes. Let’s add the entry to the file:
Linea 66: Linea 88:
Qualora il touchpad non riconosca il tocco con le dita [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto [[apt://xserver-xorg-input-synaptics|xserver-xorg-input-synaptics]]. flac y 30000000 \x66\x4c\x61\x43\x00\x00\x00\x22

The footer signature is optional so here we didn’t provide it. The program should now be able to recover deleted flac files. Let’s verify it. To test that everything works as expected I previously placed, and then removed, a flac file from the /dev/sdb1 partition, and then proceeded to run the command:

$ sudo foremost -i /dev/sdb1 -o $HOME/Documents/output

As expected, the program was able to retrieve the deleted flac file (it was the only file on the device, on purpose), although it renamed it with a random string. The original filename cannot be retrieved because, as we know, files metadata is contained in the filesystem, and not in the file itself:

/home/egdoc/Documents
└── output
    ├── audit.txt
    └── flac
        └── 00020482.flac

The audit.txt file contains information about the actions performed by the program, in this case:

Foremost version 1.5.7 by Jesse Kornblum, Kris
Kendall, and Nick Mikus
Audit File

Foremost started at Thu Sep 12 23:47:04 2019
Invocation: foremost -i /dev/sdb1 -o /home/egdoc/Documents/output
Output directory: /home/egdoc/Documents/output
Configuration file: /etc/foremost.conf
------------------------------------------------------------------
File: /dev/sdb1
Start: Thu Sep 12 23:47:04 2019
Length: 200 MB (209715200 bytes)

Num Name (bs=512) Size File Offset Comment

0: 00020482.flac 28 MB 10486784
Finish: Thu Sep 12 23:47:04 2019

1 FILES EXTRACTED

flac:= 1
------------------------------------------------------------------

Foremost finished at Thu Sep 12 23:47:04 2019

= Esempi di utilizzo =

Negli esempi seguenti si ipotizza che i file da recuperare siano sul disco `/dev/sda`, che verranno salvati su un altro disco `/dev/sdb`, ove sarà necessario montare la cartella scrivibile creata a questo scopo, in cui salvare i file recuperati.

 0. [[AmministrazioneSistema/ComandiBase#mkdir|Creare]] sul disco `/dev/sda` la cartella `/recovery/foremost`:{{{
sudo mkdir -p /recovery/foremost
}}}
 0. [[AmministrazioneSistema/ComandiBase#mount|Montare]] il disco `/dev/sdb` nella cartella `/recovery`:{{{
sudo mount /dev/sdb /recovery
}}}
 0. Avviare '''foremost''' digitando il comando:{{{
sudo foremost -i /dev/sda -o /recovery/foremost
}}}
  Inoltre è possibile:
   * avviare ''foremost'' su un file immagine sostituendo il disco `/dev/sda` col nome dell'immagine.
   * usare l'opzione `-t all` per il recupero di tutti i tipi di file conosciuti.
 0. I file recuperati saranno di proprietà dell'utente '''root'''. Per cambiare i [[AmministrazioneSistema/PermessiFile|permessi]] digitare il seguente comando:{{{
sudo chown -R nomeutente:nomegruppo /recovery/foremost
}}}
 «`nomeutente:nomegruppo`» rappresentano rispettivamente il nome dell'utente e il nome del gruppo di appartenenza (generalmente utente e gruppo hanno lo stesso identificativo).
 0. Terminato il recupero, [[AmministrazioneSistema/ComandiBase#umount|smontare]] il disco esterno:{{{
sudo umount /dev/sdb
}}}
Linea 76: Linea 161:

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Foremost è uno strumento da riga di comando per il recupero dei file. La tecnica utilizzata è il data carving, ossia utilizzando le tracce di degli header, footers e struttura interna dei dati stessi, senza considerare i metadati del filesystem
Foremost può operare sia su file immagine, sia su supporti quali unità flash, hard disk, schede di memoria ecc. Supporta diversi tipi di filesystem (Fat16/32, Ext3/4, NTFS ecc.) e moltissimi formati di file (.jpg, .png, .zip, .avi, .pdf, .doc, .exe, ecc.).

Sviluppato originariamente da enti governativi statunitensi quali l'Ufficio Investigazioni speciali della United States Air Force e il CISR (Center for Information Systems Security Studies and Research), è stato successivamente reso di pubblico dominio.

Per evitare sovrascritture accidentali di dati, anziché operare direttamente sul supporto di memoria dal quale si voglio recuperare i file, si raccomanda di eseguire il programma su un file immagine di backup a basso livello (a tal fine è possibile usare lo strumento dd).

Installazione

Installare il pacchetto foremost.

Utilizzo di base

Per evitare sovrascritture accidentali, con consequente impossibilità di recupero dei file, si raccomanda di impostare come destinazione di salvataggio una cartella in un disco e/o partizione differente da quella in cui sono presenti i file da recuperare.

Di default il programma:

  • crea una cartella chiamata output nella stessa posizione dal quale viene lanciato il comando (ad esempio la Home dell'utente, se non non viene modificata con il comando cd dopo aver aperto il terminale).

  • crea delle sottocartelle corrispondenti al formato dei file che vengono recuperati (ad esempio jpg, txt, zip ecc.).

  • al termine della procedura vengono eliminate eventuali sottocartelle vuote, per le quali non sono stati trovati file corrispondenti.

Supponendo quindi di voler cercare dei file eliminati in una partizione /dev/sdb1, digitare nel terminale il seguente comando:

sudo foremost -i /dev/sdb1

Per cercare soltanto determinati tipi di file è inoltre possibile usare l'opzione -t, con i formati di file separati da una virgola. Ad esempio per cercare in una partizione /dev/sdb1 soltanto file .doc e .pdf, digitare nel terminale il seguente comando:

sudo foremost -i /dev/sdb1 -o /recovery/foremost

Per specificare una determinata cartella di salvataggio (diversa da output, ad esempio denominata output) è possibile usare l'opzione -o, come nel seguente esempio:

sudo foremost -i /dev/sdb1 -o /home/utente/dati

Qualora la cartella di destinazione non esistesse il programma provvederà a crearla. Qualora invece sia già presente apparirà un messaggio simile al seguente:

ERROR: /home/utente/dati is not empty
        Please specify another directory or run with -T.

Come suggerito dall'output, sarà possibile a propria scelta usare una destinazione differente oppure usare l'opzione -T. Quest'ultima provvede a contrassegnare con ora e data la cartella specificata, che nell'esempio precedente verrà nominata /home/utente/dati_Sat_Sep_25_16_32_38_2021.

In questo modo è possibile sarà possibile lanciare più volte il programma nella stessa cartella.

File di configurazione

The foremost configuration file can be used to specify file formats not natively supported by the program. Inside the file we can find several commented examples showing the syntax that should be used to accomplish the task. Here is an example involving the png type (the lines are commented since the file type is supported by default):

# PNG (used in web pages) # (NOTE THIS FORMAT HAS A BUILTIN EXTRACTION FUNCTION) # png y 200000 \x50\x4e\x47? \xff\xfc\xfd\xfe

The information to provide in order to add support for a file type, are, from left to right, separated by a tab character: the file extension (png in this case), whether the header and footer are case sensitive (y), the maximum file size in Bytes (200000), the header (\x50\x4e\x47?) and and the footer (\xff\xfc\xfd\xfe). Only the latter is optional and can be omitted.

If the path of the configuration file it’s not explicitly provided with the -c option, a file named foremost.conf is searched and used, if present, in the current working directory. If it is not found the default configuration file, /etc/foremost.conf is used instead.

Aggiungere altri formati di file

By reading the examples provided in the configuration file, we can easily add support for a new file type. In this example we will add support for flac audio files. Flac (Free Lossless Audio Coded) is a non-proprietary lossless audio format which is able to provide compressed audio without quality loss. First of all, we know that the header of this file type in hexadecimal form is 66 4C 61 43 00 00 00 22 (fLaC in ASCII), and we can verify it by using a program like hexdump on a flac file:

$ hexdump -C blind_guardian_war_of_wrath.flac|head 00000000 66 4c 61 43 00 00 00 22 12 00 12 00 00 00 0e 00 |fLaC..."........| 00000010 36 f2 0a c4 42 f0 00 4d 04 60 6d 0b 64 36 d7 bd |6...B..M.`m.d6..| 00000020 3e 4c 0d 8b c1 46 b6 fe cd 42 04 00 03 db 20 00 |>L...F...B.... .| 00000030 00 00 72 65 66 65 72 65 6e 63 65 20 6c 69 62 46 |..reference libF| 00000040 4c 41 43 20 31 2e 33 2e 31 20 32 30 31 34 31 31 |LAC 1.3.1 201411| 00000050 32 35 21 00 00 00 12 00 00 00 54 49 54 4c 45 3d |25!.......TITLE=| 00000060 57 61 72 20 6f 66 20 57 72 61 74 68 11 00 00 00 |War of Wrath....| 00000070 52 45 4c 45 41 53 45 43 4f 55 4e 54 52 59 3d 44 |RELEASECOUNTRY=D| 00000080 45 0c 00 00 00 54 4f 54 41 4c 44 49 53 43 53 3d |E....TOTALDISCS=| 00000090 32 0c 00 00 00 4c 41 42 45 4c 3d 56 69 72 67 69 |2....LABEL=Virgi|

As you can see the file signature is indeed what we expected. Here we will assume a maximum file size of 30 MB, or 30000000 Bytes. Let’s add the entry to the file:

flac y 30000000 \x66\x4c\x61\x43\x00\x00\x00\x22

The footer signature is optional so here we didn’t provide it. The program should now be able to recover deleted flac files. Let’s verify it. To test that everything works as expected I previously placed, and then removed, a flac file from the /dev/sdb1 partition, and then proceeded to run the command:

$ sudo foremost -i /dev/sdb1 -o $HOME/Documents/output

As expected, the program was able to retrieve the deleted flac file (it was the only file on the device, on purpose), although it renamed it with a random string. The original filename cannot be retrieved because, as we know, files metadata is contained in the filesystem, and not in the file itself:

/home/egdoc/Documents └── output

  • ├── audit.txt └── flac
    • └── 00020482.flac

The audit.txt file contains information about the actions performed by the program, in this case:

Foremost version 1.5.7 by Jesse Kornblum, Kris Kendall, and Nick Mikus Audit File

Foremost started at Thu Sep 12 23:47:04 2019 Invocation: foremost -i /dev/sdb1 -o /home/egdoc/Documents/output Output directory: /home/egdoc/Documents/output Configuration file: /etc/foremost.conf


File: /dev/sdb1 Start: Thu Sep 12 23:47:04 2019 Length: 200 MB (209715200 bytes)

Num Name (bs=512) Size File Offset Comment

0: 00020482.flac 28 MB 10486784 Finish: Thu Sep 12 23:47:04 2019

1 FILES EXTRACTED

flac:= 1


Foremost finished at Thu Sep 12 23:47:04 2019

Esempi di utilizzo

Negli esempi seguenti si ipotizza che i file da recuperare siano sul disco /dev/sda, che verranno salvati su un altro disco /dev/sdb, ove sarà necessario montare la cartella scrivibile creata a questo scopo, in cui salvare i file recuperati.

  1. Creare sul disco /dev/sda la cartella /recovery/foremost:

    sudo mkdir -p /recovery/foremost
  2. Montare il disco /dev/sdb nella cartella /recovery:

    sudo mount /dev/sdb /recovery
  3. Avviare foremost digitando il comando:

    sudo foremost -i /dev/sda -o /recovery/foremost
    • Inoltre è possibile:
      • avviare foremost su un file immagine sostituendo il disco /dev/sda col nome dell'immagine.

      • usare l'opzione -t all per il recupero di tutti i tipi di file conosciuti.

  4. I file recuperati saranno di proprietà dell'utente root. Per cambiare i permessi digitare il seguente comando:

    sudo chown -R nomeutente:nomegruppo /recovery/foremost

    «nomeutente:nomegruppo» rappresentano rispettivamente il nome dell'utente e il nome del gruppo di appartenenza (generalmente utente e gruppo hanno lo stesso identificativo).

  5. Terminato il recupero, smontare il disco esterno:

    sudo umount /dev/sdb

Ulteriori risorse


CategoryHomepage