File shredding - Cancellare i dati dal disco rigido
Il nostro computer, e in particolare l'hard disk, contiene tantissime informazioni non solo su come lo utilizziamo, ma anche riguardanti la nostra persona.
Ci sentiamo tranquilli quando cancelliamo un file (anche dal cestino) perchè crediamo che nessuno potrà visualizzarlo di nuovo; tuttavia questo non è vero, infatti non è raro sentir parlare di indagini risolte tramite l'acquisizione di informazioni dal pc dell'indiziato.
Senza entrare nel merito della questione privacy, voglio parlare di come cancellare "effettivamente" i file dal disco o perlomeno renderne difficile la lettura.
Iniziamo a parlare dei file (ovviamente facendo un discorso generale). I file sono dei lunghi insiemi di bit che, interpretati in modo corretto, portano delle informazioni di tipo generico. Questi bit vengono scritti sull'hard disk o su altre periferiche di memorizzazione. Visto che i file vengono modificati spesso e non è possibile conoscere quanto spazio occuperanno, sono distribuiti in vari settori non contigui del disco e le posizioni di questi "pezzi" sono scritti in tabelle poste in posizioni specifiche del disco, a seconda della codifica che viene utilizzata (FAT16, FAT32, NTFS, EX3 etc..).
Quando si cancella un file tramite i comandi del computer (intendo anche dal cestino), quello che si esegue è un "unlink" ovvero si cancella il riferimento di quelle zone del file dalla tabella di cui parlavo. In questo modo non si riesce più ad accedere al file. Tuttavia, in laboratorio, è possibile ricostruire il contenuto, anche dopo che questa zona è stata sovrascritta!
Per evitare questo si utilizza una tecnica particolare, ovvero si scrivono più volte dati casuali su quelle zone dove erano salvati i file, prima di effettuare l'unlink. Così facendo è possibile non dico cancellare, ma almeno rendere molto difficile la lettura dei file eliminati. Il comando da utilizzare è "shred" che significa "fare a pezzi i documenti".
Questa funzionalità, presente su ogni sistema GNU-Linux ("shred" è infatti parte del pacchetto "CoreUtils", ovvero le minime funzioni che secondo il progetto GNU un computer dovrebbe avere), non è presente di default su Windows. Facendo una veloce ricerca su Internet si trovano moltissimi programmini, di cui però non si riesce a capire l'affidabilità. Tuttavia, esiste un porting delle CoreUtils per windows che risolve il problema, anche se l'ultimo aggiornamento risale al 2005, ben sette anni fa!
A questo punto, per chi ha installato MinGW-get sul proprio computer, c'è un'alternativa: il pacchetto CoreUtils di MSYS che è molto più recente, ma necessita appunto MinGW-get per funzionare!
Per installare i componenti necessari ad usare shred, si devono seguire questi passaggi:
Aprire la Shell di MinGW cliccando su Start -> Tutti i Programmi -> MinGW -> MinGW Shell (come in figura)
Le immagini di questo articolo sono state create da Marco Manino e sono rilasciate con licenza Creative Common Attribuition
-Scrivere: mingw-get install msys-core msys-coreutils-bin
E' necessaria una connessione a Internet per scaricare i pacchetti. Dopo questa operazione è possibile usare shred, sia dalla shell di MinGW, sia dalla normale console dei comandi di Windows; tuttavia per poter utilizzare shred in quest'ultima, è necessario specificare il nome completo del file, quindi al posto di shred, si dovrà scrivere:
PathToMinGW\msys\1.0\bin\shred
Dove PathToMinGW è il percorso della cartella che contiene MinGW, che cambia a seconda della propria installazione. Nel mio caso per esempio sarebbe: "C:\MinGW" (senza virgolette). L'immagine qui sotto mostra il risultato dell'utilizzo del comando "shred --help". Tramite questo si possono stampare l'utilizzo e le informazioni riguardanti questa utilità.
Il risultato della chiamata "shred --help" tramite il promt dei comandi di Windows
Marco Manino
















