Lösung 1:
Dies wird den meisten konventionellen Weisheiten im Internet widersprechen, aber los geht's ...
Wenn es sich um eine moderne rotierende Festplatte handelt, reicht ein einfacher Durchlauf von dd mit /dev/zero aus, um fast jeden Versuch einer Datenwiederherstellung zu vereiteln, sogar von einem professionellen Datenwiederherstellungsunternehmen. Es vielleicht möglich sein, einige zu extrahieren Daten mit extrem teurer Spezialausrüstung (z. B. einem Regierungslabor), aber das ist für so ziemlich jeden unerreichbar, der nicht bereit ist, Millionen Dollar für Sie auszugeben. (Beachten Sie, dass dies nicht wird alle offiziell klingenden Regierungsstandards für die Datenentsorgung einhalten, aber es funktioniert.)
Das Problem mit den meisten Weisheiten, die Sie im Internet zu diesem Thema lesen, ist, dass es sich eher um urbane Legenden als um tatsächliche Tatsachen handelt. Wenn Sie nach einer tatsächlichen Quelle zu diesem Thema suchen, beziehen sich die meisten Leute auf ein Papier, das 1996 veröffentlicht wurde und sich auf MFM/RLL-Laufwerke (vor IDE) bezog. Darüber hinaus sind die meisten staatlichen Standards für die Datenvernichtung, auf die sich die Leute beziehen, Jahrzehnte alt.
Die Logik hinter mehreren Durchgängen zum Löschen von Daten läuft auf die Idee hinaus, dass Restinformationen im Raum zwischen den Sektoren auf einer Platte verbleiben können. Auf älteren Laufwerken war die Sektorendichte relativ gering, und auf den Platten war viel leerer Platz, auf dem diese Restdaten verbleiben konnten. Seit 1996 sind die Festplattenkapazitäten um Größenordnungen gestiegen, während die Plattengröße gleich geblieben ist. Es gibt einfach nicht mehr so viel leeren Platz auf einer Platte, auf dem Daten verweilen können. Wenn auf den Platten nutzbarer zusätzlicher Speicherplatz vorhanden wäre, würden Laufwerkshersteller diesen verwenden und Ihnen eine Festplatte mit höherer Kapazität verkaufen.
Die Weisheit dieser Standards für sicheres Löschen wurde auseinandergenommen, und es wurden Artikel veröffentlicht, die besagen, dass ein einziger Durchgang ausreicht.
Vor ein paar Jahren gab jemand die Great Zero Challenge heraus, bei der jemand ein Laufwerk mit dd und /dev/zero überschrieb und eine offene Herausforderung für jemanden herausgab, um die Daten zu extrahieren. Soweit ich mich erinnere, gab es keine Abnehmer. (Haftungsausschluss:Die ursprüngliche Website für diese Herausforderung ist jetzt verschwunden.)
Aber was ist mit Solid State Drives? Aufgrund des Flash-Wear-Leveling, der Neuzuordnung fehlerhafter Sektoren und der Speicherbereinigung sowie zusätzlicher „versteckter Kapazität“ überschreiben herkömmliche Überschreibungsmethoden die Daten möglicherweise nicht wirklich (obwohl sie auf dem Host-PC als überschrieben erscheinen). Ein einziger Durchlauf von dd mit /dev/zero hindert einen gelegentlichen Benutzer daran, Daten von der SSD zurückzulesen. Ein engagierter Angreifer mit einem Logikanalysator kann jedoch das Laufwerk knacken und Daten aus den darin enthaltenen Flash-Chips extrahieren.
Dieses Problem wurde vor einiger Zeit erkannt. Daher wurde dem ATA-Standard ein Befehl namens Secure Erase hinzugefügt. Die Firmware im Laufwerk löscht sicher alle Flash-Zellen. Die meisten modernen SSDs unterstützen diesen Befehl. Ich glaube, es funktioniert auch mit rotierenden Laufwerken. Beachten Sie, dass der Zugriff auf diesen Befehl für einen Endbenutzer manchmal schwierig sein kann. Sie benötigen normalerweise ein spezielles Dienstprogramm, um es zu verwenden, einige BIOS implementieren einen "Sicherheitsstopp", der im Weg stehen kann. Erkundigen Sie sich beim SSD-Hersteller nach einem Dienstprogramm. Wenn sie keinen haben, gibt es Drittanbieter, die funktionieren könnten.
Beachten Sie, dass einige Leute Bedenken hinsichtlich der Zuverlässigkeit der in die Laufwerksfirmware integrierten Funktion zum sicheren Löschen geäußert haben. Im Jahr 2011 wurde ein Artikel veröffentlicht, der zeigte, dass einige Laufwerke nach einem sicheren Löschen Daten hinterlassen. Beachten Sie, dass sich die SSD-Firmware seitdem ziemlich weiterentwickelt hat. Wenn sicheres Löschen für Sie eine wichtige Funktion ist, würde ich empfehlen, Laufwerke von einem erstklassigen Hersteller zu kaufen, vorzugsweise etwas aus der Server-/Rechenzentrumslinie (wo fehlerhafte Firmware weniger wahrscheinlich toleriert wird).
Wenn Sie aufgrund der obigen Angaben nervös werden, weil Daten auf dem Laufwerk verbleiben, besteht Ihre nächstbeste Option darin, die Laufwerke mehrmals mit zufälligen Daten zu füllen, da dies hoffentlich dafür sorgt, dass die überschüssige versteckte Kapazität in der SSD überschrieben wird, aber Sie können sich nicht absolut sicher sein ohne Kenntnis der internen Funktionsweise der Firmware. Dadurch wird auch die Lebensdauer der SSD verkürzt.
Was Sie daraus mitnehmen sollten:
- Das Überschreiben eines Laufwerks mit dd und /dev/zero oder die Single-Pass-Option in DBAN reicht aus, um die meisten Leute daran zu hindern, Ihre Daten zu erhalten (SSD oder Rotating).
- Wenn Sie ein rotierendes Laufwerk haben, können Sie eine Multi-Pass-Löschmethode verwenden. Es wird nichts schaden, aber es wird länger dauern.
- Wenn Sie eine neuere SSD eines namhaften Herstellers haben, sollten Sie den ATA Secure Erase Command verwenden, vorzugsweise mit einem vom Hersteller bereitgestellten Dienstprogramm.
- Wenn ATA Secure Erase von Ihrem Laufwerk nicht unterstützt wird (oder bekanntermaßen fehlerhaft ist), ist Multi-Pass-Löschung die nächstbeste Option.
- Wenn Sie das Laufwerk nach einem bestimmten Standard löschen müssen (z. B. wenn Sie einen Vertrag haben, der besagt, dass die Daten gemäß DoD 5220.22-M gelöscht werden sollen), tun Sie es einfach und streiten Sie nicht darüber, ob es notwendig ist oder nicht.
- Nichts geht über physische Zerstörung. Wenn die Daten auf dem Laufwerk so sensibel sind, dass ihr Wert den Barwert des Laufwerks selbst übersteigt, sollten Sie es physisch zerstören (verwenden Sie einen Hammer, einen Schraubstock, eine Bohrmaschine oder werden Sie kreativ). Wenn Sie wirklich paranoid sind, stellen Sie sicher, dass die Überreste des Laufwerks über ein weites Gebiet verstreut sind (z. B. mehrere öffentliche Mülleimer in mehreren Teilen der Stadt).
Lösung 2:
Definiere "sicher". Wie sehr möchten Sie, dass diese Daten weg sind, und wie schmerzhaft wäre es, den Speicherplatz zu verlieren? Wenn die Daten unbedingt nie wieder von irgendjemandem gesehen werden dürfen, ist das richtige Werkzeug nicht dd
oder shred
:Es ist ein Vorschlaghammer.
Wenn Sie nicht unbedingt das müssen weit, dann können Sie Software verwenden, aber die Frage bleibt immer noch:Wer könnte Ihrer Meinung nach die Daten haben, und wie wichtig ist es, dass sie sie nicht bekommen? Ein Durchlauf von Nullen wird einen Skript-Kiddie stoppen, aber wenn jemand tatsächlich dafür bezahlt wird, Ihre Daten wiederherzustellen, wird er keine großen Probleme haben, sie zu bekommen. Ein Durchgang von Nullen, ein Durchgang von Einsen und ein Durchgang von /dev/random wird das Leben eines entschlossenen Angreifers ziemlich unglücklich machen, aber wenn er die Ressourcen hat und Ihre Daten dringend genug haben will, gibt es immer noch Möglichkeiten, sie zu bekommen, und das Ausführen so vieler Durchgänge dauert so lange, dass Sie genauso gut shred
verwenden können sowieso.
Das Fazit ist, dass es keinen Grund gibt, dd
zu verwenden, wenn Sie wirklich sicher sein wollen zum Löschen von Dingen. Es wird keinen ausgeklügelten Angriff stoppen. Wenn shred
dauert länger als ein Vorschlaghammer, dann verwenden Sie stattdessen den Vorschlaghammer. Wenn Sie es sich nicht leisten können, Speicherplatz zu verlieren, nehmen Sie sich die Zeit, shred
zu verwenden . Mit dd
für diesen Zweck ist einfach nicht sicher genug.