Wie lösche ich sicher auf einer SSD gespeicherte Dateien?


27

Aus einem (sehr langen, aber definitiv lesenswerten) Artikel über SSDs :

Wenn Sie eine Datei in Ihrem Betriebssystem löschen, reagiert weder eine Festplatte noch eine SSD darauf. Erst wenn Sie den Sektor (auf einer Festplatte) oder die Seite (auf einer SSD) überschreiben, verlieren Sie tatsächlich die Daten. Dateiwiederherstellungsprogramme nutzen diese Eigenschaft zu ihrem Vorteil, und auf diese Weise können Sie gelöschte Dateien wiederherstellen.

Der Hauptunterschied zwischen Festplatten und SSDs ist jedoch, was passiert, wenn Sie eine Datei überschreiben. Während eine Festplatte die neuen Daten einfach in denselben Sektor schreiben kann, weist eine SSD den überschriebenen Daten eine neue (oder zuvor verwendete) Seite zu. Die Seite mit den jetzt ungültigen Daten wird einfach als ungültig markiert und irgendwann gelöscht.

Was ist der beste Weg, um auf einer SSD gespeicherte Dateien sicher zu löschen? Das Überschreiben mit zufälligen Daten, wie wir es von Festplatten gewohnt sind (z. B. mit dem Dienstprogramm "shred"), funktioniert nur, wenn Sie das GANZE Laufwerk überschreiben ...

Antworten:


22

Wie wäre es, das Volume selbst zu verschlüsseln? Die gelöschten Daten bleiben erhalten, sollten jedoch ohne den entsprechenden Schlüssel für niemanden zugänglich sein.


Komischerweise habe ich nicht darüber
nachgedacht

Wie hier angegeben, hat dies schwerwiegende Auswirkungen auf die Leistung. Bei SandForce-basierten Laufwerken löscht die Verwendung von ATA Secure Erase den AES-Verschlüsselungsschlüssel und bietet eine Lösung für das Problem des sicheren Löschens, wenn keine Softwareverschlüsselung verwendet wird.
c089

12

Wenn das SSD-Laufwerk den ATA-Sicherheitsmodus unterstützt, ist eine Funktion zum sicheren Löschen integriert, auf die Sie mit Secure Erase zugreifen können sollten, die hier und hier dokumentiert ist .


2
+1 für den Funktionsumfang des ATA-Sicherheitsmodus. Es gibt ein gutes Video dazu auf SecurityTube.net
RJFalconer

2
Aber diese Funktion ist auch nur für komplette Laufwerke verfügbar, oder?
c089

@ Chris089: Das stimmt: Durch sicheres Löschen wird das gesamte Laufwerk gelöscht. Durch das Überschreiben des gesamten Laufwerks mit zufälligen Daten kann nicht garantiert werden, dass das gesamte Laufwerk gelöscht wird. (Einige der nicht gelöschten Daten könnten jedoch zumindest für normale Benutzer unzugänglich werden.) Weitere Informationen finden Sie unter anandtech.com/storage/showdoc.aspx?i=3531&p=9 .
Mittwoch,

Beachten Sie, dass (ältere) Laufwerke diese Funktion nicht ordnungsgemäß implementieren. Es sollte auch für Festplatten funktionieren, aber auf SSDs hat es den Vorteil, dass es tatsächlich in Sekunden anstatt in Stunden fertig sein kann .
Maarten Bodewes

Ein frustrierendes Problem bei Secure Erase ist, dass Sie viele Laufwerke physisch aus- und wieder einschalten müssen (Netzstecker ziehen und wieder einstecken), um den Status "Sicherheit eingefroren" zu beenden. Erst dann funktioniert Secure Erase. Es ist nicht immer einfach oder wünschenswert, einen PC öffnen zu müssen, insbesondere wenn es sich um einen Laptop oder ein schlechteres Embedded-System handelt.
Mischa256

10

Selbst wenn Sie das gesamte Laufwerk überschreiben, können Sie nicht absolut sicher sein, da sowohl Festplatten als auch SSDs Ersatzsektoren enthalten, die bei Fehlern oder bei SSDs zur Unterstützung des Verschleißausgleichs ausgetauscht werden .

Wenn Sie absolut sicher sein möchten, dass die Daten nicht wiederherstellbar sind, müssen Sie das Laufwerk physisch unwiderruflich zerstören. Das Überschreiben gibt Ihnen eine angemessene Sicherheit bei HDs - bei SSDs gibt es nicht einmal eine Möglichkeit, dies zu erreichen. Wenn Sie das gesamte Laufwerk füllen, ist es dennoch möglich, dass der Block, in dem sich die Daten befanden, zum Ausgleich des Verschleißes auf einen Ersatzblock umgestellt wurde und später wieder angezeigt wird.


Kann noch nicht abgelehnt werden, aber die sichere Löschantwort macht dieses Argument ungültig. Wenn Sie sich nicht auf das sichere Löschen des Herstellers verlassen möchten, können Sie den Blitz natürlich auch physisch zerstören. Aber stellen Sie sicher, dass Sie es verbrennen oder alle Chips zerbrechen, der Blitz ist sehr belastbar.
Maarten Bodewes

Beachten Sie, dass dies eine alte Antwort ist. Inzwischen sollte SECURE ERASE von den meisten, wenn nicht allen Laufwerken unterstützt werden, einschließlich der meisten Festplatten.
Maarten Bodewes

1
Secure Erase löscht alle SSDs. Aber keine separate Dateigruppe oder Partition.
Mikhail Moskalev

9

Aufgrund der Natur des NAND-Flash-Speichers können SSDs Daten nicht direkt überschreiben. Das wiederholte Überschreiben einer Datei vor dem Löschen löscht sie nicht sicher auf einer SSD - die Daten würden nur an einer anderen Stelle im NAND geschrieben.

Um zu verstehen, warum dies der Fall ist, muss erklärt werden, wie SSDs im Inneren funktionieren.

  • NAND-Flash ist in Blöcke unterteilt , die jeweils aus einer Reihe von Seiten bestehen, die in der Regel 4 KB groß sind (zuzüglich fehlerkorrigierender Codes). Die meisten modernen SSDs verwenden NAND mit Blöcken von 128 Seiten für eine Blockgröße von 512 KB, obwohl einige Laufwerke, insbesondere ältere, möglicherweise 256 KB oder kleinere Blöcke verwenden. Das folgende Diagramm geht von 256-KB-Blöcken aus, das Konzept ist jedoch unabhängig von der Blockgröße dasselbe.

Diagramm von Seiten in einem NAND-Block
Quelle - Courtesy Music Sorter bei Wikipedia, CC BY-SA 3.0

  • Jede Seite kann einzeln beschrieben werden, aber die Seiten können erst nach dem Löschen neu geschrieben werden, und das Löschen kann nur in ganzen Blöcken erfolgen. Dies bedeutet, dass die SSD bei jedem erneuten Schreiben von Daten die Daten auf den betroffenen Seiten als ungültig markieren und an einer anderen Stelle, möglicherweise in einem anderen Block, neu schreiben muss. Zu einem angemesseneren Zeitpunkt, im Idealfall, wenn sich das Laufwerk im Leerlauf befindet und alle Seiten in einem Block als ungültig markiert sind, kann die SSD Blöcke löschen, die nicht mehr verwendet werden. Dieser Bereinigungsprozess wird als Garbage Collection bezeichnet .

  • Damit die SSD weiß, welche Blöcke gelöscht werden können, muss das Betriebssystem ihr mitteilen, welche Blöcke keine gültigen Daten mehr enthalten. Dies erfolgt mit dem Befehl ATA TRIM . Der SSD steht es dann frei, diese unbenutzten Blöcke zu entsorgen.

SSDs versuchen, Schreibvorgänge gleichmäßig über das NAND zu verteilen, um vorzeitige Ausfälle zu vermeiden. Dies hängt vom verfügbaren Speicherplatz des Laufwerks ab.

  • Jeder NAND-Block kann nur eine begrenzte Anzahl von Schreib- / Löschzyklen unterstützen. Viele der heutigen Consumer-SSDs verwenden 19-21-nm-NAND, wobei jeder Block ungefähr 3.000 Zyklen lang gültig ist, bevor er unbrauchbar wird, obwohl Enterprise-SSDs und mehrere High-End-Consumer-SSDs, die haltbarere NAND-Typen verwenden, im Handel erhältlich sind.

  • In allen Fällen müssen SSDs jedoch Schreibzugriffe auf das gesamte Laufwerk ausbreiten, um übermäßigen Verschleiß an einem einzelnen Block zu vermeiden, damit das Laufwerk nicht vorzeitig ausfällt . Dies wird als Verschleißausgleich bezeichnet . Ein effizienter Verschleißausgleich kann nur erreicht werden, wenn eine bestimmte Menge an Speicherplatz ( Überversorgung ) reserviert ist, um bei Bedarf eine effiziente Müllabfuhr zu ermöglichen, selbst wenn das Laufwerk fast voll ist.

  • Unter extremen Bedingungen, in denen die SSD aufgefordert wird, Daten schneller zu schreiben, als sie alte Blöcke löschen kann (häufig bei Workloads mit hohem Datenaufkommen), muss sie möglicherweise die Daten in einem Block in einen anderen Block umschreiben und dann den alten Block sofort löschen um Platz für neue Daten zu machen, bevor sie die Möglichkeit hatten, die Garbage Collection durchzuführen.

  • Das erzwungene Neuschreiben eines Blocks ist nicht ideal, da es die Leistung beeinträchtigt und zur Schreibverstärkung beiträgt , bei der mehr Daten in das zugrunde liegende NAND geschrieben werden, als das Laufwerk tatsächlich schreiben soll. Durch das Hinzufügen von Over-Provisioning wird die Schreibverstärkung verringert, da mehr Speicherplatz zum erneuten Schreiben von Daten und Löschen alter Blöcke zur Verfügung steht. Aus diesem Grund sind High-End-SSDs für Unternehmen wie die Samsung SSD 845DC PRO in Größen wie 200 GB und 400 GB erhältlich, obwohl das Laufwerk tatsächlich mehr als 256 bzw. 512 GB NAND enthält. Siehe auch: Warum haben SSDs seltsame Größen?

  • Die Whitepaper-Reihe zu SSDs von Samsung enthält eine ausführliche Erläuterung der Funktionsweise von SSDs. Das Schreiben und Löschen von NAND-Seiten und Blöcken sowie die Speicherbereinigung werden in Whitepaper 04 erläutert.

Die einzige Möglichkeit, Daten auf einer SSD wirklich zu löschen, besteht in der Verwendung der ATA Secure Erase-Befehle.

  • Secure Erase weist das Laufwerk an, alle gespeicherten Daten zu löschen, einschließlich der Daten, die möglicherweise in den überprovisionierten NAND-Regionen verbleiben. Dabei werden alle Blöcke gelöscht, was zu einem makellosen Laufwerk führt.

  • Bei Laufwerken mit Selbstverschlüsselungsfunktion kann Secure Erase einfach durch Löschen des Verschlüsselungsschlüssels implementiert werden. Da die Daten auf dem NAND eines verschlüsselten Laufwerks ohne den Schlüssel nicht lesbar sind, müssen nicht alle Blöcke gelöscht werden, wie dies auf einem unverschlüsselten Laufwerk erforderlich wäre.


Beachten Sie, dass nicht alle Laufwerke die sicheren Löschbefehle korrekt implementieren. Wenn Sie das Laufwerk weiterhin verwenden möchten, ist dies möglicherweise das Beste, was Sie tun können, wenn Sie nicht die Voraussicht hatten, von Anfang an zu verschlüsseln. Wenn Sie das Laufwerk entsorgen möchten, sollten Sie es physisch zerstören - insbesondere die Flash-Chips.
Bob

Wenn physische Zerstörung erforderlich ist, öffne ich das Laufwerk und zerstöre die darunter liegende Platine.
bwDraco

@ Bob Haben Sie einen Link zu einer Quelle, in der über eine falsche Implementierung gesprochen wird? Der secure_eraseBefehl ist Teil des ATA-Standards. Bei einigen günstigeren Laufwerken ist es möglicherweise nicht vorhanden, sollte dort jedoch ordnungsgemäß funktionieren. Der Grund, warum es besser funktioniert als andere Optionen, besteht darin, dass das Laufwerk auf die ursprüngliche werkseitige Konfiguration zurückgesetzt wird. Selbst auf Festplatten ist es schneller und effektiver als Tools wie DBAN.
Paul

@ Paul security.stackexchange.com/questions/41676/... , usenix.org/legacy/events/fast11/tech/full_papers/Wei.pdf , security.stackexchange.com/questions/62253/... Es gibt absolut keine Garantie ein willkürlicher Die Firmware des Laufwerks implementiert jeden gegebenen Befehl korrekt (Fehler können überall auftreten) - und Tests haben gezeigt, dass zumindest einige Laufwerke dies definitiv nicht tun. Letztendlich ist das größte Problem, dass Sie die korrekte Löschung nicht wirklich überprüfen können .
Bob

1
Da wir keine pauschale Aussage / Erfolgsgarantie machen können, müssen wir zumindest davon ausgehen, dass einige Laufwerke diese nicht korrekt implementieren. Wenn wir annehmen, dass einige Laufwerke es nicht korrekt implementieren, ist es sicher, anzunehmen, dass kein Laufwerk es korrekt implementiert, bis das Gegenteil bewiesen ist. Und es ist nicht leicht zu beweisen, dass das Löschen für Sie richtig aussehen könnte, während Sie die Informationen auf den Flash-Chips behalten, so weit Sie wissen - was bedeutet, dass Sie für alles, was wirklich empfindlich ist, immer physisch zerstören sollten .
Bob

6

Wie von @teabot angegeben, umgeht die Verwendung der vollständigen Festplattenverschlüsselungssoftware das Problem des sicheren Löschens, da Sie keine weiteren Schritte ausführen müssen. Wie in einer verwandten Frage ausgeführt , hat dies jedoch enorme Auswirkungen auf die Leistung, da viele Funktionen des Controllers wie Komprimierung und TRIM verhindert werden und die Leistung Berichten zufolge auf ein Niveau gesenkt wird, bei dem eine normale Festplatte schneller ist als die teure SSD. Für SandForce-basierte Geräte gibt es eine bessere Lösung: Diese Geräte führen standardmäßig eine AES-Verschlüsselung durch und der Schlüssel wird gelöscht, wenn Sie die ATA-Funktion für sicheres Löschen verwenden. Auf diese Weise ist der Zugriff auf alle Daten nur dann möglich, wenn der Angreifer AES unterbrechen kann (128 Bit für aktuelle 256 Bit) für die im März 2011 erschienenen neuen Laufwerke).


1
Es scheint jedoch keine Lösung zu geben, um nur einige Dateien sicher zu löschen. Sie müssen die gesamte Festplatte löschen.
c089

3

Wie Sie dachten, ist das Löschen des gesamten freien Speicherplatzes, um sicherzustellen, dass alle Blöcke, in denen sich die Daten befanden, gelöscht werden, die einzige Möglichkeit, um sicherzugehen. Nun, abgesehen davon, dass man die Seite aus dem Orbit entfernt ...

Dies ist sehr zeitaufwendig und verkürzt die Lebensdauer der Flash-Chips, wenn Sie einen Multi-Pass-Shred verwenden.

Die andere Möglichkeit, die gelöschten Daten zu schützen, besteht darin, sie an den ersten Stellen verschlüsselt in einem verschlüsselten Dateisystem zu speichern, das so etwas wie truecrypt verwendet.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.