Domanda Come eliminare i file in modo sicuro?


C'è un modo per assicurarsi che un file cancellato non possa essere recuperato?

Come sapete, l'eliminazione di un file premendo shift-del o utilizzando il cestino non significa che il file sia sparito per sempre. Risiede da qualche parte nel computer.

Nella vita di tutti i giorni, le forze dell'ordine o ladri utilizzano programmi di recupero per rivelare i nostri dati privati ​​o qualcos'altro.

Possono recuperare tutti i dati che risiedono su disco rigido, RAM e anche USB.

Per proteggerci da queste persone, cosa si dovrebbe fare? Quale programma dovresti usare?

Nota: non voglio una risposta come prima usare un programma di ripristino, quindi cancellare quel file con shred. Con un solo programma, voglio cancellare tutti i file inutilizzati / cancellati sul mio computer.


191
2017-08-18 08:22


origine


Purtroppo la taglia è stata assegnata automaticamente anche se nessuna risposta sembra applicarsi molto strettamente all'età della SSD. Con SSD i byte non vengono realmente sovrascritti (a meno che non si utilizzino le procedure dell'intero disco) a meno che non venga effettuata una specifica chiamata API del produttore di unità, se possibile. Vedi l'articolo citato in una delle risposte. - matt


risposte:


Brandello

Questo strumento da riga di comando è già stato installato dalle utility di base di Ubuntu per cancellare e sovrascrivere in modo sicuro singoli file utilizzando il Metodo Gutman.

Triturazione veloce

shred -vzn 0 /dev/sdc1

cancella intere partizioni sovrascrivendo tutto con 0s in una singola iterazione. Se nessun aspetto legale richiede un'altra procedura, farlo probabilmente è sicuro per cancellare in modo sicuro i dati personali Craig Wright Lecture Notes in Computer Science, 2008, 5352, 243-257.

Triturazione sicura

shred -vzn 3 /dev/sdc1

cancella l'intera partizione usando 3 iterazioni con numeri casuali. Inoltre (opzione -z) questo scrive zeri per nascondere il processo di triturazione alla fine. Questo richiederà 4 volte più a lungo del metodo veloce.

NOTA: Distruggendo una partizione, sovrascriveremo questa partizione con 0 o numeri casuali. Elimina quindi in modo efficiente tutto, incluse le cache del file system su quella partizione per sempre. Questo può anche essere usato per rimuovere resti indesiderati di file cancellati. I file che vogliamo conservare dovranno essere sottoposti a backup prima di distruggere.


pulire  Install wipe

Più opzionie la possibilità di cancellare le directory oltre ai singoli file, è offerta da questa utility da riga di comando.

wipe filename
wipe -r dirname

Ulteriori note su journaling di file system e SSD:

  • Leggere le note nelle manpage collegate su problemi di sicurezza derivanti da backup ancora recuperabili nei sistemi di journaling durante la cancellazione di singoli file. La sovrascrittura di intere partizioni anziché singoli file cancella efficacemente tutti i dati anche quando si utilizza un file system di journaling.

  • Cancellare i dati su un disco a stato solido (SSD) può essere eseguito solo sovrascrivendo l'intero disco (non solo singole partizioni) con diverse iterazioni. Alcuni SSD possono avere una funzione incorporata per cancellare i dati, ma questo potrebbe non essere sempre efficiente (vedi questo link dal commento). Al momento non vi è alcuna raccomandazione generale sui processi di cancellazione o sul numero di iterazioni di cancellazione necessarie per rimuovere in modo sicuro tutti i dati residui su tutti gli SSD disponibili.

Queste opzioni possono essere aggiunte nel menu di scelta rapida di Nautilus e Thunar.

  • In Thunar, apri "Modifica" quindi "Configura azioni personalizzate"

Aggiungi (il segno più)

Nome "Shred File"

Descrizione qualunque ti piaccia

Azione "shred -u% f"

Allo stesso modo per wipe.

Seleziona "Condizioni di aspetto" e seleziona "Altri file"


179
2017-08-18 08:53



Probabilmente vale anche la pena notare che, se si utilizza un'unità a stato solido, si comporta anche come un semplice file system strutturato di log e non può sovrascrivere i dati. - James Henstridge
@shred, "circa 20 minuti per cancellare un 1.44MB". Circa tutta la vita per cancellare 640 gb :). Per la cancellazione, "... non possiamo garantire che la cancellazione cancelli effettivamente i dati, o che i dati cancellati non siano recuperabili con mezzi avanzati." In altre parole, la cancellazione non ha memoria reale / piena.
Si noti che, sebbene sia possibile utilizzare shred anche sui singoli file, se si utilizza un file system di journaling moderno, non è garantito che il shred comporterà l'eliminazione irreversibile. Dovresti spazzare via l'intera partizione. Penso che lo standard del governo degli Stati Uniti sia 7 passaggi con dati casuali. - Scott Severance
Un commento riguardo SSD: Sovrascrivere il totale guidare non sarà di grande aiuto. In breve: non è possibile rimuovere in modo affidabile i dati dalla memoria flash. Archivia sempre i file riservati crittografati. (Vedi Wei et al., Cancellare in modo affidabile i dati da unità a stato solido basate su Flash: usenix.org/events/fast11/tech/full_papers/Wei.pdf) - freddyb
@freddyb: Sono consapevole del fatto che al momento non è chiaro come cancellare in modo sicuro i dati da un SSD. La crittografia è sempre migliore - include anche le unità convenzionali! La domanda tuttavia era su come fare in modo sicuro cancellare dati (il che implica che potrebbero non essere stati crittografati prima). - Takkat


Non esiste un comando che puoi eseguire, che ripulirà facilmente tutti i file già eliminati. Tuttavia, ci sono una serie di cose che puoi fare per ridurre la tua vulnerabilità a questo tipo di attacco in futuro.

Come altri hanno già detto, usando strumenti come shred o srm ti permette di cancellare un file specifico sovrascrivendolo, piuttosto che rimuoverlo dal filesystem. Se ti senti audace, puoi sostituire il rm comando con shred o srm per cancellare in modo sicuro i file in futuro. Ciò significa che ogni volta che tu (o un altro programma) cerchi di cancellare qualcosa usando rm, il comando di cancellazione sicura verrà eseguito invece.

Tuttavia, se stai usando un disco a stato solido, o anche alcuni dischi meccanici più recenti, shred e altri metodi basati su sovrascrittura potrebbero non essere efficaci, dal momento che il disco potrebbe non scrivere effettivamente dove pensi che sia scritto (fonte).


Crittografia Full-Disk

Un'opzione più conveniente è la crittografia a disco intero. Se usi il installatore alternativo, Ubuntu può impostare automaticamente un disco completamente crittografato per te, ma puoi anche personalizzare e configurare le impostazioni da solo. Una volta installato, la crittografia è quasi invisibile per te: dopo aver inserito la passphrase (assicurati di sceglierne una buona, lunga) all'avvio del computer, tutto sembra proprio come se fosse Ubuntu normale.

Puoi anche crittografare supporti esterni come unità USB usando l'Utility Disco di Ubuntu. Configurare un disco esterno crittografato è semplice come controllare la casella "encrypt underlying filesystem" quando si formatta il disco. È anche possibile memorizzare la passphrase sul portachiavi (crittografato), in modo che non sia necessario immettere la frase ogni volta che si collega il disco al computer.

Se l'intero disco e tutti i supporti rimovibili sono crittografati, c'è molto meno da preoccuparsi. Un ladro o un ufficiale di polizia dovrebbe strisciare il tuo computer mentre è acceso, (o entro un minuto o due di spegnerlo se sono molto bene) per accedere ai tuoi dati. Se si iberna (piuttosto che sospendere) il computer quando non è in uso, si dovrebbe essere abbastanza sicuro.

Se hai mai bisogno di distruggere completamente tutti i tuoi dati, non devi fare a Gutmann pulire di tutto il tuo disco. Basta sovrascrivere l'inizio del disco, per distruggere le intestazioni per il volume crittografato. A differenza di un normale filesystem, ciò renderà praticamente impossibile il recupero dei dati.


Quindi, come si passa dalla configurazione corrente a un disco crittografato in modo sicuro? È piuttosto difficile aggiornare un sistema operativo attualmente installato per utilizzare un disco crittografato. L'approccio più semplice è eseguire il backup di tutti i dati e le impostazioni, quindi reinstallare con un disco crittografato. Quando si esegue il backup, assicurarsi di eseguire il backup dei dati su un'unità esterna crittografata, ma non salvare la passphrase nel proprio keyring.

Dopo aver eseguito il backup di tutto, si consiglia di pulire in modo aggressivo il tuo disco fisso, per assicurarti che nessuno dei tuoi dati esistenti possa essere recuperato in futuro. Se si utilizza un SSD, il processo è ancora più impegnativo, quindi a seconda di quanto si vuole investire nel processo, potrebbe valere la pena distruggere il disco corrente (a proposizione stimolante) e iniziando con uno nuovo.

Quando si reinstalla il sistema operativo, se non lo si è già effettuato in modo aggressivo, è necessario assicurarsi di riempire completamente la nuova partizione crittografata, che sovrascriverà tutti i vecchi dati. Una volta ripristinato il backup, è consigliabile eliminare in modo aggressivo l'inizio del disco di backup, per distruggere l'intestazione di crittografia, in modo che non possa essere ripristinata di nuovo.


37
2017-08-23 20:30



Puoi spiegare la parte su "Basta sovrascrivere l'inizio del disco per distruggere le intestazioni ..."? Ho sempre scartato o restituito le unità crittografate quando hanno fallito, supponendo che nessuno potesse recuperare i dati. È una cattiva ipotesi? Questo è con Esagono casuale 64 caratteri le password, quindi nessuno le sta violando. - Tom Brossman
Le diapositive (pdf) che hai collegato portano alla conclusione che l'unico modo per distruggere in modo affidabile un SSD è quello di distruggerlo (fisicamente). - Titus


Aggiornamento: se non hai ancora cancellato il file che vuoi non essere recuperabile, usa la risposta accettata. Se, tuttavia, hai già cancellato il file [s], questo è il metodo migliore che conosco.

Se ti leggo bene, vuoi cancellare tutti i file cancellati in precedenza. Ecco un modo semplice per farlo:

$ dd if=/dev/zero of=/path/to/mounted/partition/tmp_file bs=1M count=999999999999

Lascia correre finché non si lamenta fino a quando non si verifica un errore di scrittura del disco [fuori dallo spazio]. Quindi elimina il file! Quello che fa è semplicemente riempire il tuo disco vuoto di 000, quindi tutti i tuoi file precedenti vengono sovrascritti. Assicurati di cancellare il file ora, o non avrai più alcun disco. Potresti volerlo fare alcune volte se lo sei veramente paranoico. O se vuoi scrivere casualmente sul tuo disco, ti suggerirei di sostituire /dev/zero con /dev/urandom.

Tuttavia, questo richiederà molto più tempo, quindi l'ho eseguito durante la notte. Inoltre, se vuoi un indicatore di avanzamento, fallo invece:

$ free=$( df {PARTITION OR MOUNTPOINT}  |awk '{print $3}'|tail -1 )
$ dd if=/dev/zero bs=1M count=999999999999 | pv -s "$free" > /path/to/mounted/partition/tmp_file

Prima si ottiene lo spazio libero su disco con du, awk e tail, quindi si usa dd per ottenere / dev / zero, eseguendo il piping su pv che sta per "pipe viewer", che reindirizza tutto a tmp_file Ancora una volta, cancella il file in seguito. $ rm tmp_file

Ad ogni modo, spero che qualcuno lo trovi utile! :)


19
2017-08-25 13:12



C'è una utility da riga di comando che fa questo per te? Dire, overwrite_empty_space /dev/sdb1? - landroni
@landroni, non sono a conoscenza di una tale utilità. Si potrebbe facilmente inserire questo in uno script BASH, tuttavia. [Se lo hai fatto, ti consiglio di usare invece "/ dev / sdb1" semplicemente dandogli un percorso per il grande file. Ovunque sia montato, è quello che pulirà il disco] Questo richiede un piccolo sforzo, quindi non cercherò di entrare nei dettagli qui. Sono sicuro che puoi trovare le informazioni cercando. - Matt
Perché non distruggere il file tmp_file dopo che il disco è stato riempito, se si vuole veramente essere sicuri che il file non possa essere ripristinato? - SPRBRN


Per prima cosa cancella i file con rm sul terminale o con shift-delete su nautilus. Meglio ancora, usa srm, dal Strumenti di cancellazione sicura pacchetto.

Puoi installare gli strumenti di cancellazione sicura come questo:

apt-get install secure-delete

Secondo, usa sfill per cancellare lo spazio inutilizzato sul tuo disco:

sudo sfill -f <directory>

Ci vorrà del tempo, dal momento che sta usando tecniche di crittografia per riempire il disco.

avvertimento: questo sta attraversando tutto il tuo filesystem, e tu sei root. Usare con cura!

Questo creerà un file che cancella tutti i dati precedentemente esistenti. Il file verrà creato in <directory>.


11
2017-08-18 08:34



questo programma passa troppo tempo. Per 80 GB, ho aspettato circa 18 ore. Inoltre, non esiste uno strumento che mostri progressi.
Ho dimenticato di aggiungere; 18 ore per il solo riempimento del disco con i file /000.0
ma è sicuro e puoi cancellare un file o una directory. - RusAlex
Mi chiedo se questo è veramente sicuro. Sui moderni filesystem (ext2 / 3/4, ntfs, ecc.), C'è un giornale che aiuta a prevenire la perdita accidentale dei dati. Quindi, anche se cancelli lo spazio libero, non puoi garantire che il file venga rimosso dal giornale. Inoltre, capisco che alcuni filesystem funzionino a un livello sufficientemente alto da rendere difficile garantire la sovrascrittura dei settori del disco fisico su cui sono stati scritti. AFAIK, l'unico modo per cancellare in modo sicuro qualcosa è quello di cancellare l'intera partizione e tutti i file su di esso. - Scott Severance
Dovrebbe essere possibile sovrascrivere i cluster liberi e lo spazio allentato, anche in un filesystem di journaling. Anche se per lo spazio allentato è consigliabile cancellarlo in uso da un nuovo file. In ogni caso, dovresti svuotare il diario all'inizio e eventualmente sospendere le normali operazioni del filesystem per la durata. - rsaxvc


UN Programma GUI per questo è BleachBit (è anche nelle fonti). Più recente (deb file) versione al BleachBit Sourceforge page.

Oltre a cancellare semplicemente i file, include funzionalità avanzate come shredding dei file per prevenire il recupero, cancellazione dello spazio libero su disco per nascondere le tracce di file cancellati da altre applicazioni.

"BleachBit libera rapidamente lo spazio su disco e protegge instancabilmente la tua privacy.   Cache libera, cancella i cookie, cancella la cronologia di Internet, distruggi temporaneamente   file, cancella i registri e scarta la spazzatura che non sapevi fosse lì.   Progettato per sistemi Linux e Windows, pulisce 90 applicazioni pulite   incluso Firefox (passare l'aspirapolvere per renderlo più veloce), Internet Explorer,   Adobe Flash, Google Chrome, Opera, Safari e altro. "(Da http://bleachbit.sourceforge.net/)

BleachBit ha diversi detergenti avanzati:

  • Cancella la memoria e scambia su Linux
  • Elimina le scorciatoie interrotte su Linux
  • Elimina la cronologia URL di Firefox senza eliminare l'intero file, con la distruzione facoltativa
  • Trova spazzatura ampiamente diffusa come i file Thumbs.db e .DS_Store.
  • Elimina l'elenco dei documenti recenti di OpenOffice.org senza eliminare l'intero file Common.xcu
  • Sovrascrivi lo spazio libero su disco per nascondere i file precedenti
  • Vuoto Firefox, Google Chrome, Liferea, Thunderbird e Yum: compattate i file senza rimuovere i dati per risparmiare spazio e migliorare la velocità
  • Rimuovere chirurgicamente le informazioni private dai file di configurazione .ini e JSON eliminando l'intero file

Per i dettagli su come usare Bleachbit per cancellare file e cartelle specifici vedere questa risposta.


10
2017-08-24 23:21





Se si desidera una soluzione che non può essere contrastata da un individuo patologicamente ossessionato, si dovrebbe prendere in considerazione una combinazione (limitata da risorse monetarie) di:

  • smagnetizzazione - cancellazione magnetica del disco rigido
  • disabilitazione fisica del disco rigido, ad esempio perforazione industriale
  • bagno acido <- non puoi prendere pezzi da una pila di goo.

Queste soluzioni variano drasticamente in termini di costi e ingegno. Alcune:


6
2017-08-26 06:05



Risposta divertente, ma penso che il richiedente vorrebbe essere in grado di continuare a utilizzare il suo disco rigido dopo la sua cancellazione. - Christopher Kyle Horton
dov'è la volontà c'è un modo: perché non una bomba atomica? - cipricus
OP vuole che i dati vengano distrutti, non il suo paese! : P - John Rix
Trovo una mazza da 15 libbre abbastanza efficace ... e terapeutica. - user535733
thermite è un'altra alternativa per un'approfondita oblivazione (articolo in tedesco ma include immagini interessanti del processo). - David Foerster


Direi che la soluzione è una combinazione di diverse risposte fornite qui. Per i file e le partizioni già cancellati ancora in uso, sono d'accordo con Matt.

Quindi, per il futuro suggerirei di iniziare a utilizzare gli strumenti di cancellazione sicura invece del semplice 'rm'.

Infine, quando sarà possibile riformattare la partizione, dovrebbe essere considerata l'opzione di crittografare la partizione. Forse usando un approccio che offre Negazione plausibile come in Truecrypt


3
2017-08-26 05:42





Per SSD e altri supporti di memorizzazione flash

SSD e molti altri supporti di memorizzazione flash utilizzano una tecnica chiamata "wear leveling" che riassegna i blocchi inutilizzati delle celle di memoria in base al numero di cicli di scrittura precedenti per prolungare la durata del disco. Di conseguenza, la sovrascrittura di intervalli di blocchi non funziona come metodo per cancellare il contenuto di archiviazione in modo sicuro (o anche efficiente) come per le unità disco fisso. D'altro canto, l'archiviazione flash consente una cancellazione sicura molto più rapida ed efficiente di blocchi, gamme di blocchi o intere unità.

Cancella l'intero disco

Dovresti usare il drive cancellazione di sicurezzacaratteristica.

  1. Assicurarsi che la sicurezza dell'unità supporti l'uso sicuro di era1 e non è "congelato". Se lo è, potrebbe essere utile sospendere e riprendere il computer.

    $ sudo hdparm -I /dev/sdX | grep frozen
           not     frozen 
    

    L'output del comando (filtrato) significa che questa unità supporta la cancellazione sicura, è "non congelata" e puoi continuare.

  2. Imposta una password utente (Eins in questo esempio). Anche questa password è stata cancellata, la scelta esatta non ha importanza.

    sudo hdparm --user-master u --security-set-pass Eins /dev/sdX
    
  3. Emettere il comando ATA Secure Erase.

    sudo hdparm --user-master u --security-erase Eins /dev/sdX
    

Vedere il ATA Secure Erase articolo nel wiki del kernel di Linux per istruzioni complete inclusa la risoluzione dei problemi.

(fonte)

Se l'output del comando nel passaggio 1 è vuoto, l'unità non supporta la cancellazione sicura ma può ancora supportare il comando TRIM richiesto per la sezione seguente.

Cancellare una partizione dell'unità

Il blkdiscard(8)2 può cancellare in modo sicuro i dispositivi a blocchi se l'unità lo supporta1:

sudo blkdiscard --secure /dev/sdXN

dove /dev/sdXN è il percorso del nodo del dispositivo di blocco che si riferisce all'unità o alla partizione da cancellare.


1 Se l'unità si trova in un involucro esterno con una connessione USB o FireWire, il chipset di traduzione potrebbe bloccare il supporto di alcune funzioni opzionali come cancellazione sicura e TRIM anche se l'unità inclusa lo supporta.

2 Disponibile e installato di default da Ubuntu Xenial Xerus (16.04).


2
2017-07-19 10:47





Io uso TrueCrypt file immagine per tali dati essenziali. Sono pratico, gratuito, multipiattaforma e non ho bisogno di un disco completo né di alcun software aggiuntivo per "cancellare veramente" il file.

Assicurati di avere una password sicura e fai il backup del file immagine. Mantengo il backup in un cloud.


1
2017-08-23 20:41



ATTENZIONE: l'utilizzo di TrueCrypt non è sicuro poiché potrebbe contenere problemi di sicurezza non risolti Lo sviluppo di TrueCrypt è stato chiuso nel 5/2014 dopo che Microsoft ha interrotto il supporto di Windows XP. - KrIsHnA
Esistono vari derivati ​​TrueCrypt che vengono ancora mantenuti ad es. Veracrypt. Per inciso, non c'è stato alcun collegamento tra Microsoft che ha interrotto lo sviluppo di XP e TrueCrypt e le circostanze che lo circondano rimangono tuttora un mistero per quanto ne so. - John Rix