Bei Festplatten ändert ein „Schnellformatieren“ nichts an den eigentlichen Daten auf der Festplatte – es löscht lediglich die FAT (Dateizuordnungstabelle), die dem Benutzer dann als „leere Festplatte“ angezeigt wird. Daher ist es ziemlich einfach, die FAT zu ignorieren und diese Daten zu lesen. Obwohl es schwierig ist, bestimmte Daten zu lesen , da es keine Hinweise darauf gibt, wo eine bestimmte Datei beginnt und endet. Einige Formatierungsbefehle speichern sogar eine Sicherungskopie der FAT-Tabelle, und die Wiederherstellung dieser Sicherungskopie manifestiert sich als die „Unformat“-Funktion.
Ein Langformat einer Festplatte setzt die meisten Daten zurück, was die Möglichkeit des Lesens dieser Daten scheinbar ausschließt - mit Ausnahme einer Eigenschaft, die magnetischen Speichermedien eigen ist: Hysterese . Wenn ein Bit auf einer Festplatte gesetzt oder gelöscht wird, ist der Vorgang nicht 100,00 % genau, da das Medium eine Hysterese aufweist. Es verbleibt also eine kleine Menge Restmagnetismus von der vorherigen Operation, und bestimmte Softwaretools können verwendet werden, um Bereiche der Festplatte (mehrmals) zu scannen, um diesen Bruchteil eines Prozents der latenten Magnetisierung zu lesen und diese überschriebenen Daten "wiederzugewinnen".
Aber wie ergeht es den heutigen nichtflüchtigen Festkörperspeichern? USB-Sticks, SSDs, NAND-Flash? Die einzige relevante Information, die ich über ihre Sicherheit und Anfälligkeit finden konnte, ist in diesem Wikipedia-Artikel, in dem es heißt:
Darüber hinaus können gelöschte Dateien auf SSDs auf unbestimmte Zeit verbleiben, bevor sie durch neue Daten überschrieben werden; Lösch- oder Shred-Techniken oder Software, die auf Magnetfestplattenlaufwerken gut funktionieren, haben keine Auswirkungen auf SSDs, wodurch die Sicherheit und die forensische Untersuchung beeinträchtigt werden.
Warte was? Dies scheinen zwei völlig unterschiedliche Aussagen zu sein - die erste impliziert, dass lange Formate niemals ausgeführt werden und Flash daher immer anfällig für die Schwachstelle meines ersten Absatzes ist. Das kann nicht sein, richtig? Da ich einen USB-Stick oder eine SSD "langformatieren" kann oder einen uC anweisen kann, jeden Block eines NAND-Flash zu überschreiben. Und da beim Wear-Leveling Blöcke etwas zufällig platziert werden, würde ich davon ausgehen, dass die Blöcke, die überschrieben werden, ebenfalls eher zufällig sind. Vielleicht würde also nicht die gesamte Datei rechtzeitig überschrieben, aber einige davon scheinen sehr wahrscheinlich.
Es sagt auch, erasure or shred techniques do not work on Flash
was ich kaum glauben kann. Solange jede Zuordnungseinheit überschrieben würde, wären alle Daten vollständig nicht wiederherstellbar, richtig?
Wie dies auf EE.SX zutrifft: Stellen Sie sich einen NAND-Flash mit mehreren Krypto-Schlüsselpaaren darauf vor. Wenn das Gehäuse geöffnet wird, wird das Gerät gelöscht, sodass niemand an die Schlüssel "kommen" kann. Aber reicht ein "Löschen" aus?
Sind nichtflüchtige Flash-Speicher jedoch für jede Art von Datenwiederherstellungstechnik anfällig? Gibt es eine elektrische Feldhysterese , die zur Wiederherstellung überschriebener Daten genutzt werden kann?
Das Problem beim sicheren Löschen besteht darin, dass das Gerät eine Übersetzungsschicht enthält. Auf einer Festplatte wird beim Schreiben in Zylinder X Sektor Y immer derselbe Bereich überschrieben. Auf einer SSD verwaltet die Gerätefirmware eine Liste leerer Blöcke und schreibt in den nächsten verfügbaren, wobei eine Tabelle verwaltet wird, die logische Adressen tatsächlichen Flash-Blöcken zuordnet. Normalerweise ist etwas mehr Flash als die angegebene Kapazität als Reserve vorhanden, sodass ein vollständiger Schreibvorgang möglicherweise nicht jeden Block berührt. Das Löschen von Blöcken ist langsam, daher werden sie nicht sofort gelöscht und möglicherweise nicht gelöscht, bis der Platz knapp ist.
Die Laufwerksfirmware kann hierfür drei mögliche Lösungen bieten. Einer ist TRIM: Teilen Sie dem Laufwerk mit, welche Blöcke keine Dateisystemdaten enthalten, und lassen Sie es diese präventiv löschen. Einer ist ein spezifischer "sicherer Löschbefehl", der eigentlich alle Blöcke löschen sollte (aber sehr lange dauert). Und eine ist die transparente Verschlüsselung auf Blockebene, bei der die Aufforderung an das Laufwerk, den Schlüssel zu verwerfen, sofort alle Daten verliert. Sie sind jedoch Geisel dafür, wie gut dies implementiert wurde, und es können Fehler auftreten.
Mir sind keine Techniken zum Wiederherstellen von Daten aus Flash-Zellen bekannt, die tatsächlich gelöscht wurden. (Tatsächlich können Bits spontan verloren gehen, daher ist eine Fehlerkorrektur eingebaut).
Eugen Sch.
Robherc KV5ROB
Asmyldof
Rohr
DoxyLover
rdtsc