Löscht TRIM Dateien auf SSDs wirklich?
Leserfrage: Auf Solid-State-Disks muss jeder Block tatsächlich gelöscht werden bevor er wieder neu beschrieben werden kann. Werden bereits verwendete, aber wieder freigegebene Blöcke neu beschrieben, kommt es daher zu einer Verzögerung und die Schreibleistung kann deutlich absinken. Der von Windows 7 unterstützte TRIM-Befehl sorgt dafür, dass Blöcke von gelöschten Dateien tatsächlich vorab im Hintergrund gelöscht werden. Meine Frage lautet nun, ob TRIM damit auch den Schutz vertraulicher Daten erhöht? Sprich: kann ich mir sicher sein, dass bei aktiviertem TRIM-Befehl sensible Daten auch tatsächlich physikalisch gelöscht werden und somit nicht mehr rekonstruierbar sind?
Antwort Doc Storage:
Moderne SSD-Platten arbeiten zur besseren Auslastung des gesamten vorhandenen Speichers und zur »flachen« Abnutzung aller Zellen mit so genannten Write-Levelling-Mechanismen. Diese sorgen dafür, dass immer die am wenigsten genutzte Zelle (LRU - »least recent used«) mit der nächsten Information beschrieben wird. Hierdurch wird zum einen die Lebensdauer des gesamten Mediums verlängert, zum anderen alle Daten flach auf dem gesamten Laufwerk verteilt. Durch diese Verfahren befinden sich allerdings in den nicht überschriebenen Zellen Restdaten, die über bestimmte Techniken ausgelesen werden könnten. Andererseits lassen sich Zellen in solchen NAND-Medien nur neu beschreiben, wenn diese als leer angesehen werden.
Ein weiterer Faktor ist die Geschwindigkeit des Mediums. Im Standardfalle werden Zellen zu »Seiten« zusammengefasst, die meist 4.096 Byte, also 32.768 Zellen enthalten. 128 dieser Seiten ergeben einen »Block«, der dann 524.288 Byte, also 4.194.304 Zellen groß ist. NAND-Speicher lassen sich im Normalfall auf Seiten-Ebene beschreiben, allerdings nur auf Block-Ebene löschen. Dies bedeutet, dass das Schreiben auf ein SSD-Laufwerk nur dann sehr schnell ist, wenn leere Seiten genutzt werden können. Sollten zunächst freie Räume auf dem Laufwerk geschaffen, also Daten auf Block-Ebene gelöscht werden müssen, dauert dies wesentlich länger und verlangsamt den Prozess deutlich.
Hier soll der TRIM-Befehl helfen. Mit seiner Hilfe markiert das Laufwerk nicht mehr genutzte Zellen als leer und ermöglicht so dem Dateisystem, diese ohne weitere Prüfung zu überschreiben. Er lässt sich lediglich auf Standard-Laufwerke mit entsprechenden Dateisystemen anwenden, nicht aber auf virtuelle Abbilder (z.B. Vmware-Laufwerke) oder RAID-Gruppen. Eine weitere Einschränkung ist, dass der TRIM-Befehl die Zellen zwar als leer markiert, diese jedoch unter Umständen bis zu deren Überschreibung gültige Daten enthalten können. Somit kann man sich bei Nutzung des Kommandos nicht sicher sein, dass Daten in den als ungenutzt markierten Zellen nicht noch auszulesen sind.
Gruß
Doc Storage