File Carving—Grundlagen und neue Techniken. - DFN-CERT · PDF...

39
15. DFN-CERT Workshop Sicherheit in vernetzten Systemen File Carving — Grundlagen und neue Techniken. Andreas Schuster Deutsche Telekom AG [email protected]

Transcript of File Carving—Grundlagen und neue Techniken. - DFN-CERT · PDF...

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

File Carving — Grundlagen und neue Techniken.

Andreas Schuster

Deutsche Telekom AG

[email protected]

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 2

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

File Carving — Grundlagen und neue Techniken.Agenda.

1. Einleitung

2. Probleme2.1 Eingebettete Dateien2.2 Fragmentierung2.3 Ressourcenverbrauch

3. Neue Techniken3.1 Zero Space Carving3.2 Gleitende Entropie3.3 Stützstellen in Dateiformaten

4. Zusammenfassung und Empfehlungen

5. Fragen & Antworten

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 3

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Einleitung.Einsatzszenarien.

� Alltag: Opas 70.Geburtstag. Nach Entnahme der Speicherkarte aus

der Digitalkamera ist diese leer.

� Digitale Forensik: Rekonstruktion gelöschter Dateien ist fester

Verarbeitungsschritt zwischen Datensicherung und Auswertung.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 4

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Einleitung.Wie wird eine Datei gelöscht?

� Datei := Nutzdaten + Metadaten

� NTFS: 8 Schritte, u.a.

� Eintrag im Verzeichnis löschen

� Eintrag in Master File Table als „unbenutzt“

markieren

� Cluster der Datei als „nicht zugeordnet“

markieren

� Details bei Brian Carrier „File System Forensic

Analysis“

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 5

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Einleitung.Rekonstruktion bei vorhandenen Metadaten.

� für eine gewisse, jedoch unbestimmte Zeit gilt:

� (fast) alle Metadaten sind verfügbar

� Nutzdaten sind verfügbar

� Rekonstruktion:

� Metadaten nennen Beginn und Länge der Datei

� Verkettung der Zuordnungseinheiten beachten

� Daten auf anderes auf anderes auf anderes auf anderes VolumeVolumeVolumeVolume übertragen

� ggf. Dateinamen ergänzen

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 6

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Einleitung.Rekonstruktion in Abwesenheit der Metadaten.

Erkennung des Dateianfangs

� über Signatur

� meist genügt es, den Beginn einer Zuordnungseinheit zu betrachten!

� Quelle für Signaturen: magic(5) für file(1)

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 7

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Einleitung.Rekonstruktion in Abwesenheit der Metadaten.

Erkennung des Dateiendes

� über Signatur des Dateiendes

� über Länge aus dem Dateikopf

� über Signatur eines neuen Dateianfangs

� benutzerdefinierte Maximallänge ist erreicht

� Ende des Datenstroms ist erreicht

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 8

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Dateilänge

Einleitung.Abbildung zwischen Datenstrom und rekonstruierter Datei.

m = 1

Michael Cohen (2007):

Mapping Function bildet

Zieldatei auf Datenstrom ab.

Das Problem des Carvings

besteht in der Bestimmung der

Funktion.

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Probleme.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 10

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Probleme.Eingebettete Dateien.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 11

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Probleme.Eingebettete Dateien.

In ein Microsoft Word-Dokument

ist ein Foto (JPEG) eingebettet.

MS WordMS WordMS WordMS Word----DokumentDokumentDokumentDokument

Foto (JPEG)Foto (JPEG)Foto (JPEG)Foto (JPEG)

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 12

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Probleme.Eingebettete Dateien.

Der erste Teil des Word-

Dokuments wird rekonstruiert, ist

aber nicht verarbeitbar.

Der Carver rekonstruiert nur das

eingebettete Foto.

Der zweite Teil wird gar nicht

erkannt.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 13

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Probleme.Fragmentierte Dateien.

Bei Fragmentierung der Zieldatei

ist die Mapping Function

unstetig.

Resultat:

� Einschluss

unerwünschter Daten

� Auslassung

erwünschter Daten

1111

2222

3333

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 14

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Probleme.Ressourcenbedarf.

Fragmentierung und eingebettete Dateien führen zu:

� fälschlich erkannten Dateien

� unvollständigen Dateien

Daten werden unnötig aus dem Datenstrom in Zieldateien kopiert, mitunter

mehrfach. Folgen:

� unnötig hoher Speicherbedarf!

� unnötig hoher Zeitbedarf. Schreibzugriffe sind langsam!

� … und noch mehr Zeit für Sichtung und Aussonderung der

unbrauchbaren Dateien.

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 16

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving : Idee.

auch bekannt als In-line carving, in-place carving.

Idee: unnötige Schreiboperationen vermeiden

� Carver liefert nur die Koordinaten im Datenstrom,

kopiert aber nicht mehr die Daten in die Zieldatei

� ein virtuelles Dateisystem (VFS) macht die rekonstruierte Datei bei

Bedarf sichtbar

nur Lesezugriff + Overhead für Positionsberechnungen des VFS

� Validierung

� Kopie (Schreibzugriff) erst im Erfolgsfall

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 17

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Voraussetzungen.

Benötigt werden:

� Linux

� FUSE (Filesystem im Userland)

http://fuse.sourceforge.net/

� libCarvPath und CarvFS

http://ocfa.sourceforge.net/

� Scalpel

http://www.digitalforensicssolutions.com/Scalpel/

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 18

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Beispiel (1).

Verkürzte Darstellung von http://chirashi.zensay.com/?p=7

Forensische Kopie mounten:

# carvfs /mnt/carvfs/ ewf usbdisk.E01/mnt/carvfs//f183a8e2b50834552f9302b08251d4db

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 19

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Beispiel (2).

Inhalt des Dateisystems:

cd /mnt/carvfs/f183a8e2b50834552f9302b08251d4db/

# ls -alrt

total 63616

-rw-rw-rw- 1 root root 2545 1970-01-01 04:00 README

-rw------- 1 root root 85 1970-01-01 04:00 ocfa.missin g

-r--r--r-- 1 root root 65135616 1970-01-01 04:00 CarvF S.crv

d--x--x--x 3 root root 0 1970-01-01 04:00 CarvFS

drwxr-xr-x 3 root root 0 1970-01-01 04:00 .

drwxr-xr-x 3 root root 4096 2007-06-19 13:28 ..

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 20

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Beispiel (3).

# scalpel -p -c ./scalpel.conf \/mnt/carvfs/f183a8e2b50834552f9302b08251d4db/CarvFS .crv

Image file pass 1/2.

Work queues allocation complete. Building carve lis ts...

Carve lists built. Workload:

gif with header "\x47\x49\x46\x38\x39\x61" and foot er "\x00\x3b" --> 146 files

jpg with header "\xff\xd8\xff\xe0\x00\x10" and foot er "\xff\xd9" --> 22 files

** PREVIEW MODE: GENERATING AUDIT LOG ONLY **

** NO CARVED FILES WILL BE WRITTEN **

Carving files from image.

Image file pass 2/2.

Scalpel is done, files carved = 168, elapsed = 3 se conds.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 21

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Beispiel (4).

Gefundene Dateien zugänglich machen:

# scalpelcp ./scalpel-output/ \

/mnt/carvfs/f183a8e2b50834552f9302b08251d4db/CarvFS /

Target=/mnt/carvfs/f183a8e2b50834552f9302b08251d4db /CarvFS

symlinked 168 filenames to zero-storage carvpaths

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 22

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Zero Space Carving: Beispiel (5).

Die Dateien sind nur Symlinks in das CarvFS:

# ls -alrt 00000003.gif

lrwxrwxrwx 1 root root 67 2007-06-19 13:44 00000003.gi f -> /mnt/carvfs/f183a8e2b50834552f9302b08251d4db/CarvFS /1206784:269.crv

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 23

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Gleitende Entropie: Idee.

Jayson Smith, Klayton Monroe und Andy Bair,

1. Preis in der DFRWS File Carving Challenge 2006.

Idee:

� Fragmentierung führt zu Einschlüssen in rekonstruierter Datei

� Erwünschte und unerwünschte Daten haben per Annahme

unterschiedliche Informationsdichte

� Gleitende Berechnung der Entropie verrät den Einschluss

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 24

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Gleitende Entropie: Beispiel (1).

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 25

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Gleitende Entropie: Beispiel (2).

Entropie

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 26

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Gleitende Entropie: Beispiel (3).

Entropie

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 27

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Gleitende Entropie: Beispiel (4).

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 28

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Stützstellen in Dateiformaten (1).

Michael Cohen

1. Preis in der DFRWS File Carving Challenge 2007.

Idee:

� Ableitung zusätzlicher Stützstellen der Mapping Function aus dem

Dateiformat

� auf Dateisystem abgestimmtes Fragmentierungsmodell

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 29

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Neue Techniken.Stützstellen in Dateiformaten (2).

Ausgangslage: Schaar möglicher

Mapping Functions

Gewinnung von

Randbedingungen aus dem

rekonstruierten Teil und ggf.

weiteren Fragmenten.

++++

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 30

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Offset in Zieldatei

Offset in Datenstrom

Neue Techniken.Stützstellen in Dateiformaten (3).

Aus den Randbedingungen

ergibt sich eine eindeutige

Lösung.

++++

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 31

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Stützstellen in Dateiformaten (4).

Beispiel: Adobe Portable Document Format (PDF)

Datei besteht aus Objekten:

objectnumber generation obj

Die Datei enthält Verweise, die den Offset der Objekte angeben:xref0 2260000000000 65535 f 0001038669 00000 n 0000000019 00000 n

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 32

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Stützstellen in Dateiformaten (5).

Fragmentierungsmodell:

� Datei beginnt mit Zuordnungseinheit

� Dateisystem komprimiert nicht

� Größe der Zuordnungseinheit sei 4096 Bytes

Randbedingung:

� an Offset 1038669 muss sich Objekt Nr. 1 befinden, also die Zeichenfolge 1 … obj

Suche nach allen als frei markierten Zuordnungseinheiten,

die an Offset 2381 (1038669 modulo 4096) diese Zeichenfolge enthalten.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 33

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Neue Techniken.Stützstellen in Dateiformaten (6).

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Zusammenfassung.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 35

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Zusammenfassung.Ausblick.

� Carver der nächsten Generation werden:

� weniger Speicherplatz benötigen

� weniger IO-Zeit benötigen

� sich auf Dateiformate spezialisieren

� Aber: zunächst werden nur populäre Dateiformate unterstützt werden!

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 36

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Zusammenfassung.Empfehlungen.

� Prävention:

� Speicherkarten vor neuer Verwendung vollständig löschen

bzw. formatieren

� Festplatten bedarfsweise defragmentieren

� Carver (-module) für den Individuellen Bedarf schreiben?

� Spezifikation eigener Datenformate:

� Blockgröße an typischen Clustergrößen ausrichten

� Blockheader mit Ordnungsummer, Timecode etc.

Carving – Grundlagen und neue TechnikenAndreas Schuster

13. Februar 2007, Seite 37

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Zusammenfassung.Empfehlungen.

� solide Carver mit einigen innovativen Ansätzen:

� scalpel

http://www.digitalforensicssolutions.com/Scalpel/

� foremost

http://foremost.sourceforge.net/

� eher innovative Verfahren: Einsendungen zum DFRWS:

� http://www.dfrws.org/2006/challenge/

� http://www.dfrws.org/2007/challenge/

� weitere Informationen: http://computer.forensikblog.de/

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Fragen & Antworten.

15. DFN-CERT Workshop

Sicherheit in vernetzten Systemen

Vielen Dank für Ihre Aufmerksamkeit!

Andreas Schuster

Deutsche Telekom AG

[email protected]