Slack (Dateisystem)
Slack ist die Bezeichnung für ungenutzten Speicherplatz in alloziertem Speicher blockorientierter Massenspeichergeräte. Es handelt sich hierbei nicht um nicht allozierten Speicher.[1] Es werden mehrere Arten von Slack unterschieden.[2][3]
File-Slack
Der Begriff File-Slack (dt. Datei-Versatz, auch Schlupfspeicher) bezeichnet denjenigen Slack, der sich nach dem Ende einer bestimmten Datei findet.
Blockorientierte Massenspeichergeräte, wie Festplatten etc., legen Daten im Allgemeinen in 512 Byte großen Sektoren ab. Dateisysteme gruppieren dabei zur Verwaltungsvereinfachung ein bis mehrere Sektoren zu Clustern als kleinste einer einzelnen Datei zuweisbaren Dateneinheit. Eine in vielen Dateisystemen beliebte Clustergröße ist z. B. 4096 Byte, wobei die meisten Dateisysteme verschiedene Clustergrößen unterstützen.
Wenn im Extremfall eine Datei von 1 Byte Größe auf einer Partition mit einer Clustergröße von 4096 Byte gespeichert wird, dann belegt diese Datei auf der Festplatte ein ganzes Cluster, d. h. die Datei hat einen File-Slack von 4095 Byte. Dateisysteme wie NTFS vermeiden diesen Effekt, indem sie die Inhalte sehr kleiner Dateien direkt im ohnehin vorhandenen FILE-Record speichern, d. h. in der Metadatenstruktur, die die betreffende Datei verwaltet.
Der File-Slack setzt sich aus zwei verschiedenen Arten von Slack zusammen, dem Ram-Slack und dem Drive-Slack.
Ram-Slack
Der Begriff Ram-Slack müsste eigentlich Sektor-Slack heißen, da er den Bereich vom Ende einer Datei bis zum Ende des aktuellen Sektors beschreibt. Er heißt Ram-Slack, weil Microsoft-Betriebssysteme bis einschließlich Windows 95A in diesem Bereich zufällige Daten aus dem Arbeitsspeicher abgelegt haben. In weiten Teilen der Literatur über Forensik wird angegeben, dass dies auch noch für heutige Betriebssysteme gilt, es wird jedoch sowohl von Brian Carrier, dem Autor des in der Computerforensik häufig genutzten SleuthKits, als auch von Steve Bunting, einem erfahrenen Ermittler, Ausbilder und Autor einiger Bücher über Forensik, ausdrücklich verneint.[4][5]
Drive-Slack
Der wesentlich interessantere Teil des File-Slack ist der Drive-Slack. Hierbei handelt es sich um Sektoren innerhalb des letzten Clusters einer Datei, die nicht beschrieben und somit auch nicht überschrieben wurden. In diesen Bereichen lassen sich mit geeigneten Werkzeugen Klartextdaten aus Fragmenten von ehemals auf der Partition vorhandenen Dateien auslesen, somit erhalten diese Bereiche in einer forensischen Untersuchung eine besondere Aufmerksamkeit.
MFT-Slack
Aufgrund einiger Besonderheiten des Microsoft-Dateisystems NTFS, in dem für jeden FILE-Record mindestens 1024 Byte reserviert werden, aber eine variable (üblicherweise kleinere) Anzahl davon genutzt wird, kann in den verbleibenden Bytes noch ausreichend Platz bleiben, um den Inhalt der zugehörigen Datei gleich mit zu speichern, sofern diese klein genug ist. Wenn die Datei dahingehend verändert wird, dass ihr Inhalt jetzt doch in normalen Clustern gespeichert wird (z. B. weil die Datei vergrößert wird und damit über den verfügbaren Raum hinaus wächst), kann ihr ehemals direkt im FILE-Record gespeicherter Inhalt ggf. im MFT-Slack des jetzt wieder nur mit Metadaten ausgestatteten (und damit vermutlich nicht vollständig befüllten) FILE-Record gefunden und ausgewertet werden.
Partition-Slack
Partition-Slack ist auch ein Versatz, der jedoch nicht beim Speichern von Dateien, sondern beim Anlegen von Partitionen auf Festplatten entsteht. Partition-Slack bezeichnet den Bereich vom Ende einer Partition auf einem physikalischen Datenträger bis zum Beginn der nächsten Partition oder dem Ende des physikalischen Datenträgers. Wenn auf dem Datenträger vorher bereits andere Dateisysteme angelegt waren, dann können in diesen Bereichen unter günstigen Umständen Überreste alter Dateien gefunden werden, die in der forensischen Analyse von Bedeutung sein können.
Belege
- Brian Carrier: File System Forensic Analysis, Addison-Wesley (2005), S. 188.
- Brian Carrier: File System Forensic Analysis, Addison-Wesley (2005), S. 187/188.
- Alexander Geschonnek: Computer Forensik, 3. aktualisierte und erweiterte Auflage, dPunkt-Verlag (2008), S. 103–106
- Brian Carrier: File System Forensic Analysis, Addison-Wesley (2005), S. 188 oben.
- Steve Bunting: EnCE The official EnCase Certified Examiner Study Guide, 2nd Edition, Wiley Publishing Inc. (2008), S. 65.