Interaktive Lösung zur Probeklausur
Betriebssystem Forensik - SoSe 2025
Willkommen zu dieser interaktiven Aufbereitung der Probeklausur. Nutzen Sie die Navigation, um zu den Aufgaben zu springen, oder scrollen Sie durch die Seite. Testen Sie Ihr Wissen und vertiefen Sie die Lösungswege durch detaillierte ErklÀrungen und visuelle Hilfsmittel.
Aufgabe 1: Dual-Choice-Quiz
Testen Sie Ihr Wissen mit diesen 10 Dual-Choice-Fragen. Klicken Sie auf "Wahr" oder "Falsch", um Ihre Antwort zu geben und die korrekte Lösung samt ErklÀrung anzuzeigen. Jede richtige Antwort gibt einen Punkt.
Aufgabe 2: Master Boot Record (MBR)
Diese Aufgabe behandelt den Aufbau und die Funktion des Master Boot Records, einer fundamentalen Struktur fĂŒr die Organisation von DatentrĂ€gern.
i) Aufbau und Funktion des MBR
Der Master Boot Record (MBR) ist der 512 Byte groĂe erste Sektor eines partitionierten DatentrĂ€gers. Er ist entscheidend fĂŒr den Systemstart und die Organisation der Partitionen. Seine Struktur lĂ€sst sich visuell wie folgt darstellen:
ii) Begrenzung der primÀren Partitionen und deren Umgehung
Auf einem MBR-partitionierten DatentrĂ€ger können maximal vier primĂ€re Partitionen eingerichtet werden. Diese BeschrĂ€nkung ergibt sich direkt aus der fixen GröĂe der Partitionstabelle im MBR, die nur Platz fĂŒr vier 16-Byte-EintrĂ€ge bietet.
Um diese EinschrÀnkung zu umgehen, wird eine erweiterte Partition verwendet.
- Eine erweiterte Partition ist eine spezielle Art von primĂ€rer Partition, die als Container fĂŒr weitere Partitionen dient.
- Innerhalb der erweiterten Partition können beliebig viele logische Partitionen erstellt werden.
- Diese logischen Partitionen sind ĂŒber eine verkettete Liste von Extended Boot Records (EBRs) miteinander verbunden, wobei jeder EBR eine logische Partition beschreibt und auf den nĂ€chsten EBR verweist.
Aufgabe 3: FAT-Dateisystem
Diese Aufgabe befasst sich mit dem FAT-Dateisystem, seiner Funktionsweise und der Analyse eines Dateisystem-Images.
i) Aufgabe der File Allocation Table (FAT)
Die File Allocation Table (FAT) ist das HerzstĂŒck eines FAT-Dateisystems. Sie ist eine Tabelle, die den gesamten Datenbereich des Volumes in Cluster (die kleinste logische Speichereinheit) einteilt. Ihre Hauptaufgabe ist es, den Belegungsstatus jedes Clusters zu verwalten. FĂŒr jeden Cluster gibt es einen Eintrag in der FAT, der angibt, ob der Cluster frei, belegt, defekt oder der letzte Cluster einer Datei ist. Sie fungiert als eine "Karte" des Dateisystems.
ii) Funktionsweise einer FAT-Chain
Wenn eine Datei gespeichert wird, deren GröĂe mehr als einen Cluster beansprucht, werden die Cluster in einer sogenannten FAT-Chain (Cluster-Kette) miteinander verknĂŒpft. So funktioniert es:
FAT[2] -> Cluster 5
FAT[5] -> Cluster 9
FAT[9] -> EOF
iii) Informationen und Verwendung des FSINFO-Blocks (FAT32)
Der FSINFO-Block existiert nur in FAT32-Dateisystemen und dient der Leistungsoptimierung. Da die FAT bei FAT32 sehr groĂ sein kann, wĂŒrde ein Scan nach freien Clustern viel Zeit kosten. Der FSINFO-Block speichert daher zwei wichtige Hinweise:
- Anzahl der freien Cluster: Eine ungefĂ€hre ZĂ€hlung der verfĂŒgbaren Cluster.
- NĂ€chster freier Cluster: Ein Hinweis, wo die Suche nach einem freien Cluster beginnen sollte.
Dies beschleunigt das Anlegen neuer Dateien erheblich. Aus forensischer Sicht ist zu beachten, dass diese Informationen nicht immer exakt sein mĂŒssen.
iv) Analyse des Images `fat.dd`
Die folgenden Analysen basieren auf diesem `fsstat`-Output:
FILE SYSTEM INFORMATION
File System Type: FAT16
Total Range: 0-61439
* Reserved: 0-0
** Boot Sector: 0
* FAT 0: 1-60
* FAT 1: 61-120
* Data Area: 121-61439
** Root Directory: 121-152
** Cluster Area: 153-61436
** Non-clustered: 61437-61439
METADATA INFORMATION
Range: 2-981110
Root Directory: 2
CONTENT INFORMATION
Sector Size: 512
Cluster Size: 2048
Total Cluster Range: 2-15322
...
(a) Layout und Sektoren des Wurzelverzeichnisses
Das Wurzelverzeichnis (Root Directory) belegt laut Output die Sektoren 121 bis 152.
(b) `dd`-Befehl zum Extrahieren von FAT 1
Um die zweite FAT-Kopie (FAT 1), die bei Sektor 61 beginnt und 60 Sektoren lang ist, zu extrahieren, lautet der `dd`-Befehl:
dd if=fat.dd of=fat1.bin bs=512 skip=61 count=60
(c) Sektoren von Cluster 4 und 104 (Interaktiver Rechner)
Zuerst berechnen wir die Sektoren pro Cluster: 2048 Bytes / 512 Bytes = 4 Sektoren/Cluster. Der Clusterbereich beginnt bei Sektor 153 und die ClusterzÀhlung bei 2. Die Formel lautet: Startsektor = 153 + (Cluster-Nr - 2) * 4
.
(d) Fragmentierte Dateien und Anzahl der Dateien/Verzeichnisse
Die Ausgabe von `fsstat` zeigt mehrere mit `EOF` endende Cluster-Ketten. Das bedeutet, es gibt mehrere allozierte Dateien/Verzeichnisse. Ob eine *einzelne* Datei davon fragmentiert ist, lĂ€sst sich allein aus diesem Output nicht sicher sagen, da jede Zeile eine komplette, nicht fragmentierte Datei sein könnte. Um die genaue Anzahl der Dateien und Verzeichnisse zu bestimmen, mĂŒsste der Inhalt des Wurzelverzeichnisses (Sektoren 121-152) analysiert werden, z.B. mit `fls`. Der gegebene Output reicht dafĂŒr nicht aus.
Aufgabe 4: NTFS-Dateisystem
Diese Aufgabe widmet sich spezifischen Aspekten des NTFS-Dateisystems, von Metadateien bis hin zum Löschvorgang.
i) ErlÀuterung des `fls` Ausschnitts
r/r 8-128-2: $BadClus
r/r 8-128-1: $BadClus:$Bad
Dieser `fls`-Output zeigt EintrÀge, die sich auf die NTFS-Metadatei $BadClus
beziehen.
- $BadClus: Eine Systemdatei, die eine Liste aller als defekt markierten Cluster auf dem Volume enthÀlt. Das Dateisystem meidet diese Cluster, um Datenkorruption zu verhindern.
- 8-128-2: Steht fĂŒr MFT-Eintrag 8 (Standard fĂŒr $BadClus), Attributtyp 128 (Attribut fĂŒr $DATA) und Instanz 2.
- $BadClus:$Bad: Der Teil nach dem Doppelpunkt (
$Bad
) ist ein benannter Datenstrom (Alternate Data Stream, ADS). In diesem Fall speichert der ADS die eigentlichen Daten ĂŒber die fehlerhaften Cluster.
Forensisch deutet ein umfangreicher $BadClus
-Eintrag auf mögliche physische SchÀden des DatentrÀgers hin.
ii) Organisation von Verzeichnissen in NTFS
Verzeichnisse in NTFS sind intern als Dateien organisiert, die einen Index aller enthaltenen Dateien und Unterverzeichnisse fĂŒhren. Dieser Index ist als B-Baum strukturiert, um ein schnelles Suchen zu ermöglichen. Zwei Attribute sind hierbei zentral:
$INDEX_ROOT
Dieses Attribut ist resident (direkt im MFT-Eintrag des Verzeichnisses gespeichert) und enthĂ€lt die Wurzel des B-Baums. FĂŒr kleine Verzeichnisse, deren gesamter Inhalt hier hineinpasst, ist dies das einzige benötigte Index-Attribut.
$INDEX_ALLOCATION
Wenn das Verzeichnis wÀchst, werden die weiteren IndexeintrÀge (die Knoten des B-Baums) in dieses nicht-residente Attribut ausgelagert. Es verweist auf externe Cluster, die die restlichen Index-Daten enthalten.
iii) Der Löschvorgang aus forensischer Sicht
Wenn eine Datei in NTFS gelöscht wird, werden die Daten nicht sofort physikalisch entfernt. Es handelt sich um eine "logische" Löschung, die Spuren hinterlĂ€sst, welche fĂŒr die Forensik entscheidend sind:
- MFT-Eintrag wird markiert: Im MFT-Eintrag der Datei wird ein Flag (z.B. "in use") auf "nicht in Gebrauch" gesetzt. Der Eintrag selbst mit allen Metadaten (Dateiname, Zeitstempel, Cluster-Verweise) bleibt aber vorerst erhalten.
- Cluster werden freigegeben: In der
$Bitmap
-Metadatei werden die Bits, die den von der Datei genutzten Clustern entsprechen, von '1' (belegt) auf '0' (frei) gesetzt. Die Cluster sind nun fĂŒr neue Daten verfĂŒgbar. - Verzeichniseintrag wird entfernt: Der Verweis auf die Datei im Index des ĂŒbergeordneten Verzeichnisses (
$INDEX_ROOT
/$INDEX_ALLOCATION
) wird als gelöscht markiert.
Forensische Relevanz: Die eigentlichen Dateidaten bleiben in den Clustern erhalten, bis sie ĂŒberschrieben werden. Solange dies nicht geschehen ist, kann die Datei mithilfe von "File Carving" oder durch Analyse des "gelöschten" MFT-Eintrags wiederhergestellt werden.
Aufgabe 5: Secure Boot
Diese Aufgabe behandelt das Sicherheitskonzept Secure Boot und die damit verbundenen fundamentalen Begriffe der Informationssicherheit.
i) Secure Boot auf mobilen GerÀten
Secure Boot ist ein Mechanismus, der sicherstellt, dass beim Start eines GerĂ€ts nur vom Hersteller signierte und vertrauenswĂŒrdige Software geladen wird. Dies verhindert das AusfĂŒhren von manipulierter Firmware oder bösartigen Betriebssystemen (Rootkits). Der Prozess bildet eine "Chain of Trust":
ii) Root of Trust und Chain of Trust
- Root of Trust (RoT): Die absolut vertrauenswĂŒrdige Quelle in einem System, die nicht kompromittiert werden kann. Sie ist typischerweise in Hardware implementiert (z.B. ein SchlĂŒssel im Prozessor). Der RoT ist der Anfangs- und Ankerpunkt jeder SicherheitsĂŒberprĂŒfung.
- Chain of Trust (Vertrauenskette): Eine hierarchische Abfolge von Verifizierungen. Sie beginnt beim RoT. Jedes "Glied" der Kette (jede Softwarekomponente) ist dafĂŒr verantwortlich, die IntegritĂ€t und AuthentizitĂ€t des nĂ€chsten Glieds zu ĂŒberprĂŒfen, bevor es ausgefĂŒhrt wird. Wenn ein Glied bricht (eine Signatur ungĂŒltig ist), wird die gesamte Kette unterbrochen.
iii) IntegritÀt, AuthentizitÀt und Nichtabstreitbarkeit
Diese drei Begriffe sind SĂ€ulen der Informationssicherheit mit unterschiedlichen Zielen:
Begriff | Ziel | Beispiel |
---|---|---|
IntegritĂ€t | Schutz vor unbemerkter VerĂ€nderung von Daten. | Ein Hashwert (z.B. SHA-256) einer Datei. Ăndert sich ein Bit, Ă€ndert sich der Hashwert. |
AuthentizitÀt | Sicherstellung, dass die Herkunft von Daten oder die IdentitÀt eines Nutzers echt ist. | Eine digitale Signatur, die beweist, dass eine E-Mail wirklich vom angegebenen Absender stammt. |
Nichtabstreitbarkeit | Verhindert, dass jemand eine getÀtigte Aktion spÀter leugnen kann. | Eine rechtlich bindende digitale Unterschrift unter einem Vertrag. |