Inhalt. Allgemeines zu Dateisystemen. Linux-Dateisysteme am Beispiel von ext2/ext3. Microsoft-Dateisysteme FAT NTFS



Ähnliche Dokumente
Computerforensik. Wintersemester 2010/2011

Computerforensik. Wintersemester 2011/2012

GJU IT-forensics course

Digitale Forensik Schulung Bundespolizeiakademie März 2009

6.2 FAT32 Dateisystem

Jeder Datenträger besitzt einen I-Node-Array. Jede Datei auf dem Datenträger hat einen I-Node-Eintrag.

Computerforensik. Wintersemester 2010/2011

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen

Das NTFS von WINDOWS NT (1)

Zugriff auf die Modul-EEPROMs

Digital Forensics. Slackspace DI Robert Jankovics DI Martin Mulazzani

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1

OPERATIONEN AUF EINER DATENBANK

Olga Perevalova Universität Hamburg

5.2 Analyse des File Slack

So funktioniert die NetWorker 7.5 Eigenschaft zum Sichern umbenannter Verzeichnisse ( Backup renamed Directories )

KURZANLEITUNG CLOUD OBJECT STORAGE

Computerforensik. Wintersemester 2010/2011

Schrittweise Anleitung zur Installation von Zertifikaten der Bayerischen Versorgungskammer im Mozilla Firefox ab Version 2.0

Partitionieren und Formatieren

Übersicht. UNIX-Dateisystem (ext2) Super-User unter Linux werden MSDOS: FAT16 und FAT32

Sicherer Datenaustausch mit EurOwiG AG

Verwendung von SD-Speicherkarten über den SPI-Bus

Installation der SAS Foundation Software auf Windows

Ablaufbeschreibung Einrichtung EBICS in ProfiCash

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.

Leitfaden zum Sichern einer Festplatte als Image mit der System Rescue CD

Festplattenverschlüsselung

Kap. 8: Dateisysteme (E3 EXT2 Dateisystem) 1

Grundlagen der Informatik (BSc) Übung Nr. 5

Master-Boot-Record sichern

Bayerische Versorgungskammer

Studienbrief 7 Analyse des NTFS-Dateisystems Seite 113

Daten am USB Stick mit TrueCrypt schützen

Übersicht. Boot Prozess, Arten von Festplatten, Standards

SJ OFFICE - Update 3.0

Ontrack EasyRecovery 11 Neue Funktionen. S.M.A.R.T.-Analysefunktion Wiederherstellung von VMware VMDK-Images Datenlöschfunktion

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Dokumentation IBIS Monitor

Dateipfad bei Word einrichten

Folgeanleitung für Fachlehrer

Eine Anleitung, wie Sie Mozilla Thunderbird 2 installieren und konfigurieren können. Installation Erstkonfiguration... 4

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

Anleitung zur Einrichtung einer ODBC Verbindung zu den Übungsdatenbanken

2. Darstellung von Information im Computer

Dateisystem 1, Suchpfad, Befehlstypen

Dateisystem 1, Suchpfad, Befehlstypen

GDPdU Export. Modulbeschreibung. GDPdU Export. Software-Lösungen. Stand: Seite 1

Stand: Adressnummern ändern Modulbeschreibung

Zahlensysteme Seite -1- Zahlensysteme

Herbert Penke GFAhnen 8.0 unter Windows Vista

Speicherung einer. Kurznachricht auf der SIM-Karte. Gliederung. Einführung. Auswertung anhand eines Beispiels. Überlange Kurznachrichten

2. Negative Dualzahlen darstellen

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Updatehinweise für die Version forma 5.5.5

Ändern eines Kontotyps

Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden?

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Installationshinweise Linux Edubuntu 7.10 bei Verwendung des PC-Wächter

Macrium Reflect Freeware-Tutorial:

AUTOMATISCHE -ARCHIVIERUNG. 10/07/28 BMD Systemhaus GmbH, Steyr Vervielfältigung bedarf der ausdrücklichen Genehmigung durch BMD!

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

Professionelle Seminare im Bereich MS-Office

Dateisystem: Einführung

Dateisystem: Einführung

Version 0.3. Installation von MinGW und Eclipse CDT

How to install ubuntu by crypted file system

How-To Guide 002. Wie stelle ich den virtuellen Speicher von Windows ein?

Leitfaden zur Anlage einer Nachforderung. Nachforderung Seite 1 von 11 RWE IT GmbH

Möglichkeiten des Parallelbetriebs der VR-NetWorld Software Parallelbetrieb VR-NetWorld Software 4.4x und Version 5.0 ab der 2. Beta!

Folgeanleitung für Klassenlehrer

Anti-Forensik. Sascha Preuth Lehrgebiet Datennetze. FH AACHEN UNIVERSITY OF APPLIED SCIENCES Anti-Forensik- Sascha Preuth 1

Outlook Vorlagen/Templates

OP-LOG

RO-Serie CAN-Übertragungsprotokoll

Anleitung für das Content Management System

Benutzerhandbuch. DNS Server Administrationstool. Für den Server: dns.firestorm.ch V

DER WING COMMANDER CD³² GUIDE

Artikel Schnittstelle über CSV

IntelliRestore Seedload und Notfallwiederherstellung

Datensicherung und Wiederherstellung

Erstellen einer digitalen Signatur für Adobe-Formulare

Wissensdatenbankeintrag zur Classic Line Version CL 4.4 und SNC >= 5.2 WDB Artikel:

Windows 7 - Whoami. Whoami liefert Informationen wie z.b. die SID, Anmelde-ID eines Users, sowie Gruppenzuordnungen, Berechtigungen und Attribute.

OUTLOOK-DATEN SICHERN

Bedienungsanleitung CAD-KAS Reklamationserfassung. Einen neuen Datensatz anlegen. Klicken Sie auf das + Symbol, um einen neuen Datensatz anzulegen.

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

ACDSee Pro 2. ACDSee Pro 2 Tutorials: Übertragung von Fotos (+ Datenbank) auf einen anderen Computer. Über Metadaten und die Datenbank

Neuerungen in den SK-Programmen Version 3.1 Stand: Juni 2004

STRG + A = STRG + C = STRG + X = STRG + V = STRG + Alt + Entf = STRG + S =

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

bizsoft Rechner (Server) Wechsel

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Sichern auf den zentralen TSM-Servern unter Windows. Sichern auf den zentralen TSM-Servern unter Windows

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

Kurzanleitung Verwendung von USB-Sticks

Übersicht. Festplattenanalyse. Dateisystemanalyse. Tools. Festplatten und Partitionen NTFS

Dokumentenverwaltung. Copyright 2012 cobra computer s brainware GmbH

Nur in schwarz angezeigten Verzeichnissen kann gespeichert werden!

Transkript:

Inhalt Allgemeines zu Dateisystemen Linux-Dateisysteme am Beispiel von ext2/ext3 Microsoft-Dateisysteme FAT NTFS Harald Baier Computerforensik h_da WS 2009/2010 101

Grundlegendes zu NTFS (1/2) NTFS = New Technologies File System Standard-Dateisystem von Microsoft ab Windows NT/2000 Verbreitetstes Dateisystem auf Endanwender-Rechnern Design-Prinzipien für NTFS: Zuverlässigkeit Sicherheit Unterstützung für große Speichermedien Skalierbarkeit Deutlich komplexer als FATx Harald Baier Computerforensik h_da WS 2009/2010 102

Grundlegendes zu NTFS (2/2) Keine offizielle Spezifikation für NTFS veröffentlicht: Zahlreiche detaillierte inoffizielle Beschreibungen (z.b. Carrier) Immer bessere Unterstützung für UNIX / Linux (z.b. durch Debian-Paket ntfsprogs) Zentrales Paradigma: Everything is a file Jedes Byte eines NTFS-Dateisystems gehört zu einer Datei Auch Dateisystem- und Metadaten stehen in Dateien Organisation der HDD-Blöcke in Cluster Cluster 0 startet am Anfang des Laufwerks Am Anfang von Cluster 0 steht der Bootsektor Harald Baier Computerforensik h_da WS 2009/2010 103

Master File Table (MFT) MFT ist das Herzstück von NTFS: Besteht aus MFT-Einträgen: MFT-Record = MFT-Entry Jeder MFT-Record hat gleiche Größe Typischerweise 1 KByte Größe eines MFT-Records steht in Bootsektor Empfehlung von Microsoft: Am Anfang ist die MFT minimal Dann wächst die MFT dynamisch bei Bedarf Daher kann sie fragmentiert sein Records sind beginnend von 0 durchnummeriert Harald Baier Computerforensik h_da WS 2009/2010 104

Zwei Bereiche eines MFT-Records MFT-Entry-Header: Größe: 42 Byte Strukturiert: 12 Felder: 'Signature' (FILE oder BAAD), Belegtstatus, Verwendete Bytes in MFT-Record,... MFT-Entry-Body: Größe: 982 Byte 'unstrukturiert', enthält MFT-Attribute Attribute speichern u.a. Folgendes: Metadaten wie Besitzer, Rechte, MAC-Zeiten, Inhaltsdaten, Dateinamen Unbenutzter Bereich Harald Baier Computerforensik h_da WS 2009/2010 105

Zwei Bereiche eines MFT-Attributs Attribute Header: Größe ist immer 16 Byte Struktur ist allgemein vorgegeben: Attributtyp (= type identifier) Attribute identifier: Eindeutig innerhalb des MFT-Eintrags Größe des Attributs Länge u. Offset des Attributnamens (beginnt mit '$') Attribute Body: Größe wird in Header festgelegt (Keine allgemein vorgegebene Struktur) Speicherung der Attributinhalte: Residentes Attribut: Inhaltsdaten in MFT-Record Nicht-residentes Attribut: MFT-Record enthält Adressen der Datencluster, in denen Attributinhalt gespeichert ist Harald Baier Computerforensik h_da WS 2009/2010 106

Cluster Runs für nicht-residente Attribute Cluster Run = Sequenz aufeinanderfolgender Cluster Speicherung nicht-residenter Attribute in Cluster Runs Jeder Cluster Run enthält folgende Information: Clusteradresse des ersten Clusters des Runs Anzahl der Cluster des Runs Beispiel für Cluster Runs eines Attributs: Start: 12, Length: 4 Start: 80, Length: 3 Start: 56, Length: 5 Harald Baier Computerforensik h_da WS 2009/2010 107

Zeitstempel in NTFS Vier Zeitstempel werden gespeichert: Creation Time: Datei wurde angelegt Modified Time: Letzter schreibender Zugriff MFT Modified Time: Letzte Änderung des MFT-Records Accessed Time: Letzter lesender Zugriff Zeitstempel werden in 64-Bit Integer-Werten gespeichert Anzahl der 0.1 μs seit 01. Januar 1601, 00:00 Uhr UTC Granularität aller Zeiten: Auf 0.1 μs = 100 ns genau Sinnvolles Referenzdatum? EPOCH = 116.444.736.000.000.000 Harald Baier Computerforensik h_da WS 2009/2010 108

Standardattribute (1/3) Type identifier 16: $STANDARD_INFORMATION Immer resident Enthält Besitzer, MAC-Zeitstempel, Flags (Hidden, System,...) Relevante Zeitstempel, da bei Zugriff jeweils aktualisiert Type identifier 48: $FILE_NAME Immer resident Enthält Dateinamen, Elternverzeichnis und MAC-Zeitstempel Weniger relevante Zeitstempel: Zeitpunkt der Dateierstellung Harald Baier Computerforensik h_da WS 2009/2010 109

Standardattribute (2/3) Type identifier 128: $DATA Enthält Inhalt der Datei Resident für 'kleine' Dateien (ca. 700 Bytes) Genau ein Standarddatenfeld: Hat keinen Namen (Anzeige im TSK: $Data) Dateigröße = Größe von $Data Weitere Datenfelder beachten: Alternate Data Streams: Mehrere $DATA-Attribute Weitere Datenattribute müssen Namen besitzen Beispiel: D:> echo Hello world > out.file:foo legt weiteres Datenfeld mit Namen $foo an Harald Baier Computerforensik h_da WS 2009/2010 110

Standardattribute (3/3) Type identifier 80: $SECURITY_DESCRIPTOR Legt Zugriffsrechte und weitere Sicherheitseigenschaften der Datei fest Type identifier 256: $LOGGED_UTILITY_STREAM Enthält Daten zur Entschlüsselung (z.b. für EFS): Verschlüsselten File Encryption Key (FEK) Type identifier 176: $BITMAP Belegtstatus der Datenblöcke (z.b. für MFT oder Verzeichnis) Harald Baier Computerforensik h_da WS 2009/2010 111

Weitere Attribute-Konzepte MFT-Basiseinträge: Relevant, falls ein MFT-Entry nicht alle Attribute speichert Erster MFT-Eintrag ist MFT-Basiseintrag der Datei MFT-Basiseintrag enthält Zuordnung Attributen --> Adressen des zugehörigen MFT-Eintrags in $ATTRIBUTE_LIST Sparse Attributes: Cluster, die nur Nullen speichern, werden nicht auf Datenträger geschrieben Speicherung in Sparse Runs: Kein Startcluster, nur Länge Beispiel: Start: 123, Length: 12 Start: -----, Length: 5 Harald Baier Computerforensik h_da WS 2009/2010 112

File System Metadata Files (1/3) File System Metadata Files = Metadateien: Dienen zur Speicherung von Dateisystemdaten Die ersten 16 MFT-Records sind dafür reserviert Oft beginnen die Benutzerdateien erst bei 64 Einfache Konsequenz aus Paradigma Everything is a file Namen der Metadateien beginnen mit '$' u. Großbuchstaben: Records der MFT: Record 0: $MFT (Eintrag für die MFT selbst) Record 1: $MFTMirr (Backup der ersten MFT-Entries) Harald Baier Computerforensik h_da WS 2009/2010 113

File System Metadata Files (2/3) Record 2: $LogFile Journal für Metadaten-Änderungen Record 3: $Volume Enthält Informationen über Label, Identifier und Version des Volumes Record 4: $AttrDef Werte der im Dateisystem verwendeten Type Identifier der Attribute Größe der Attribute Henne-Ei-Problem (z.b. wie soll man Attribut $DATA lesen, wenn man dessen Type identifier nicht kennt?) Harald Baier Computerforensik h_da WS 2009/2010 114

File System Metadata Files (3/3) Record 5: '.' Wurzelverzeichnis des Dateisystems Record 6: $Bitmap Belegtstatus der Cluster im Dateisystem Record 7: $Boot Bootsektor (beginnt immer ab Cluster 0) Record 9: $Secure Informationen über Sicherheitsstatus und Zugriffskontrollen der Dateien (Security Descriptors) Harald Baier Computerforensik h_da WS 2009/2010 115

Adressierung von MFT-Records Besteht aus zwei Anteilen: File number (Nummer des MFT-Records von oben): 48-Bit Feld Maximale Anzahl an MFT-Records: 2 4 8 (Großteil nicht alloziert) Sequence number: 16-Bit Feld Inkrementiert bei jeder neuen Belegung des Records File reference := Sequence number File number 64-Bit Wert Eindeutig für jede Generation einer Datei Beispiel 0002 0000 0000: 'Dritte' Generation der MFT Harald Baier Computerforensik h_da WS 2009/2010 116

Beispiel: Zugriff auf MFT-Record von $MFT mittels istat baier@watson $ istat /dev/sdb1 [REMOVED] $FILE_NAME Attribute Values: Flags: Hidden, System Name: $MFT [REMOVED] Attributes: Type: $STANDARD_INFORMATION (16-0) Name: N/A Resident size: 72 Type: $FILE_NAME (48-3) Name: N/A Resident size: 74 Type: $DATA (128-1) Name: $Data Non-Resident size: 262144 8533 8534 8535 8536 8537 8538 8539 8540 [REMOVED] Type: $BITMAP (176-5) Name: N/A Non-Resident size: 4104 8532 8018 Harald Baier Computerforensik h_da WS 2009/2010 117

Essentielle Daten des NTFS-Bootsektors ($Boot) Byte-Nr. (dez.) Beschreibung 11 12 Größe eines HDD-Blocks in Bytes 13 13 Größe eines Clusters in HDD-Blöcken 40 47 Größe des Dateisystems in HDD-Blöcken 48 55 Clusteradresse des ersten Clusters der MFT 64 64 Größe eines MFT-Records Berechnung hängt vom Vorzeichen ab 68 68 Größe der Index-Records in Clustern Harald Baier Computerforensik h_da WS 2009/2010 118

Beispiel: Bootsektor einer NTFS-Partition baier@watson $ xxd /dev/sdb1 less 0000000: eb52 904e 5446 5320 2020 2000 0208 0000.R.NTFS... 0000010: 0000 0000 00f8 0000 3f00 ff00 8000 0000...?... 0000020: 0000 0000 8000 0000 ff1f 0300 0000 0000... 0000030: 5521 0000 0000 0000 0200 0000 0000 0000 U!... 0000040: f600 0000 0100 0000 c60a dcee 3fdc ee24...?..$ 0000050: 0000 0000 fa33 c08e d0bc 007c fb68 c007...3....h.. 0000060: 1f1e 6866 00cb 8816 0e00 6681 3e03 004e..hf...f.>..N 0000070: 5446 5375 15b4 41bb aa55 cd13 720c 81fb TFSu..A..U..r... 0000080: 55aa 7506 f7c1 0100 7503 e9dd 001e 83ec U.u...u... 0000090: 1868 1a00 b448 8a16 0e00 8bf4 161f cd13.h...h... 00000a0: 9f83 c418 9e58 1f72 e13b 060b 0075 dba3...x.r.;...u.. Harald Baier Computerforensik h_da WS 2009/2010 119

Interpretation von Bytemustern im Bootsektor (1/2) Größe eines HDD-Blocks in Bytes (11-12, essentiell): Hexdump: Entspricht folgender Hex-Zahl: Entspricht folgender Dezimalzahl: Größe eines Clusters in HDD-Blöcken (13, essentiell): Hexdump: Entspricht folgender Hex-Zahl: Entspricht folgender Dezimalzahl: Harald Baier Computerforensik h_da WS 2009/2010 120

Interpretation von Bytemustern im Bootsektor (2/2) Adresse des ersten Clusters der MFT (48-55, essentiell): Hexdump: Entspricht folgender Hex-Zahl: Entspricht folgender Dezimalzahl: Größe eines MFT-Records (64, essentiell): Interpretation als signed int (mittels Zweierkomplement) Berechnung für positive u. negative Zahlen Hexdump: Entspricht vorzeichenbehafteter Zahl: Größe eines MFT-Records in Bytes: Harald Baier Computerforensik h_da WS 2009/2010 121

Zugriff auf Hexdump der MFT mittels dcat und icat baier@watson $ dcat /dev/sdb1 xxd less 0000000: 4649 4c45 3000 0300 f622 1000 0000 0000 FILE0..."... 0000010: 0100 0100 3800 0100 a001 0000 0004 0000...8... 0000020: 0000 0000 0000 0000 0600 0000 0000 0000... 0000030: 0200 0000 0000 0000 1000 0000 6000 0000...`... baier@watson $ icat /dev/sdb1 xxd less 0000000: 4649 4c45 3000 0300 f622 1000 0000 0000 FILE0..."... 0000010: 0100 0100 3800 0100 a001 0000 0004 0000...8... 0000020: 0000 0000 0000 0000 0600 0000 0000 0000... 0000030: 0200 0000 0000 0000 1000 0000 6000 0000...`... Harald Baier Computerforensik h_da WS 2009/2010 122

Zugriff auf MFT-Record von $Boot mittels istat baier@watson $ istat /dev/sdb1 [REMOVED] $FILE_NAME Attribute Values: Flags: Hidden, System Name: $Boot [REMOVED] Attributes: Type: $STANDARD_INFORMATION (16-0) Name: N/A Resident size: 48 Type: $FILE_NAME (48-2) Name: N/A Resident size: 76 Type: $SECURITY_DESCRIPTOR (80-3) Name: N/A Resident size: 116 Type: $DATA (128-1) Name: $Data Non-Resident size: 8192 0 1 Harald Baier Computerforensik h_da WS 2009/2010 123

Demo: Sicheres Löschen unter NTFS Beispieltool: shred (gängig unter Linux) Möglicher Aufruf: shred -uv file.txt Szenario: Datei anlegen Nummer des MFT-Records herausfinden Datencluster notieren Sicheres Löschen mit shred Auswirkungen auf MFT-Record und Datencluster beobachten Harald Baier Computerforensik h_da WS 2009/2010 124