Dieser Beitrag setzt die Artikelserie über die internen Mechanismen heutiger Datenwiederherstellungstools fort.
Data Carving ist ein Prozess, bei dem gelöschte oder beschädigte Dateien von einem Datenträger wiederhergestellt werden können. Es basiert auf der Tatsache, dass gelöschte Dateien oft nicht vollständig von einem Datenträger entfernt werden und daher noch Spuren auf dem Datenträger hinterlassen. Data Carving-Software durchsucht den Datenträger nach diesen Spuren und versucht, die gelöschten Dateien wiederherzustellen, indem sie die verbleibenden Fragmente der Datei identifiziert und zusammenfügt.
Die Software kann auch Dateien wiederherstellen, die durch Beschädigung des Datenträgers unzugänglich geworden sind. Data Carving ist besonders nützlich bei der Wiederherstellung von Dateien, die durch versehentliches Löschen oder Formatieren des Datenträgers verloren gegangen sind. Es ist jedoch wichtig zu beachten, dass nicht alle gelöschten Dateien wiederhergestellt werden können und dass die Qualität der wiederhergestellten Dateien variieren kann.
In „Wie Datenwiederherstellung funktioniert“ haben wir uns angesehen, wie Dateiwiederherstellungstools gelöschte Dateien mithilfe des Dateisystems wiederherstellen können. Aber was ist, wenn die Datei vor langer Zeit gelöscht wurde und ihr Dateisystemeintrag nicht mehr existiert? Oder was ist, wenn die Festplatte formatiert oder neu partitioniert wurde und das Dateisystem leer oder fehlt? Schließlich, was ist, wenn das Dateisystem von einem anderen Dateisystem überschrieben wurde (wie das von Linux oder Ubuntu, wenn Sie mit einem alternativen Betriebssystem experimentiert haben)? In diesem Fall werden herkömmliche Dateiwiederherstellungstools nichts wiederherstellen können.
Um in solchen Situationen Informationen wiederherzustellen, haben Hersteller von Datenwiederherstellungstools eine Reihe von sogenannten „Carving“-Algorithmen erfunden, die auf der Signatursuche basieren. Im Gegensatz zu herkömmlichen Dateiwiederherstellungsmethoden, die auf dem Dateisystem beruhen, funktioniert das Daten-Carving durch das Lesen der gesamten Oberfläche der Festplatte (oder das Scannen des gesamten Inhalts von Flash-basierten Medien). Während das Laufwerk gescannt wird, suchen Daten-Carving-Algorithmen nach charakteristischen Signaturen (daher der Name „Signatursuche“), die bekannte Dateiformate identifizieren. Dies ist sehr ähnlich zu dem, wie Antiviren-Tools arbeiten, indem sie Dateien scannen und nach Mustern von Code suchen, um Viren zu identifizieren.
Zum Beispiel beginnen ZIP-Dateien normalerweise mit „PK“, gefolgt von Binärdaten in einem vordefinierten Format. Durch die Analyse dieser Binärdaten kann ein Carving-Algorithmus feststellen, ob dieses „PK“ den Beginn einer ZIP-Datei kennzeichnet (wenn alle Zahlen übereinstimmen), oder ob es nur ein „PK“ ist, das in einem Dokument wie diesem eingegeben wurde.
Wenn die Signatur bestätigt wird, dass sie zur tatsächlichen Datei gehört, beginnt der Algorithmus mit der Analyse des Datei-Headers. Durch die Analyse des Datei-Headers kann das Datenwiederherstellungsprogramm die ursprüngliche Länge der Datei berechnen. Indem es die ursprüngliche Adresse der Datei auf der Festplatte und die Länge dieser Datei kennt, kann das Tool genau lernen, welche Sektoren von den Daten dieser Datei verwendet werden, sie lesen und die ursprüngliche Datei wieder zusammensetzen.
Datei-Carving: Probleme und Schwierigkeiten
Sehen Sie nicht ein Problem bei diesem Ansatz? Es gibt tatsächlich mindestens zwei. Erstens gibt es ohne das Dateisystem keine Möglichkeit, den ursprünglichen Namen der Datei zu entdecken. Wiederhergestellte Dateien werden als „image0001.jpg“ oder „document012.jpg“ gespeichert, anstatt einen richtigen Namen zu haben. Das andere Problem hat mit der Fragmentierung der Festplatte zu tun. Wenn eine Datei nicht in einem zusammenhängenden Block gespeichert wird (typisch für größere Dateien), kann das Datei-Carving die vollständige Datei nicht wiederherstellen.
Um dieses Problem zu lösen, kombinieren Entwickler Informationen, die aus dem Dateisystem gewonnen wurden, mit Daten, die mit Hilfe von Datei-Carving-Algorithmen entdeckt wurden. Dieser Ansatz bietet das Beste aus beiden Welten: zuverlässige Wiederherstellung mit Dateinamen und unabhängig vom Fragmentierungsgrad der Festplatte.