Forensische Informatik - Exam
Aufgabe 1)
Stelle Dir vor, Du bist ein IT-Sicherheitsbeauftragter bei einem mittelgroßen Unternehmen. Es ist Deine Aufgabe, ein umfassendes Datensicherungskonzept für das Unternehmen zu entwickeln. Du musst verschiedene Techniken zur Datensicherung berücksichtigen, um sicherzustellen, dass die Daten des Unternehmens sowohl kurzfristig bei versehentlichen Löschungen als auch langfristig bei größeren Katastrophen geschützt sind. Schließlich musst Du die Vorteile und Nachteile jeder Technik bewerten, um die beste Kombination auszuwählen.
a)
Beschreibe detailliert, wie Du eine Kombination aus vollständigen Sicherungen, inkrementellen Sicherungen und differenziellen Sicherungen in Deinem Datensicherungskonzept integrieren würdest. Erkläre den Backup-Zeitplan und wie diese Techniken zusammenarbeiten können, um sowohl Effizienz als auch Zuverlässigkeit zu gewährleisten. Achte darauf, das Verhältnis von Speicherbedarf zu Wiederherstellungszeit zu berücksichtigen.
Lösung:
Integration von vollständigen, inkrementellen und differenziellen Sicherungen in ein Datensicherungskonzept
- Vollständige Sicherungen
Eine vollständige Sicherung (Full Backup) kopiert alle Daten des Unternehmens. Diese Art von Sicherung bildet die Basis für alle nachfolgenden Backups und sollte regelmäßig durchgeführt werden, um eine umfassende Datenwiederherstellung zu ermöglichen.
- Zeitplan: Wöchentlich (z.B. jeden Sonntag)
- Vorteile: Komplette Datenwiederherstellung aus einer einzigen Sicherung möglich
- Nachteile: Hoher Speicherbedarf und lange Sicherungsdauer
- Inkrementelle Sicherungen
Bei einer inkrementellen Sicherung (Incremental Backup) werden nur die Daten gesichert, die sich seit der letzten Sicherung (egal ob vollständig oder inkrementell) geändert haben. Dies spart Speicherplatz und verkürzt die Zeit für die Sicherung erheblich.
- Zeitplan: Täglich von Montag bis Samstag
- Vorteile: Geringer Speicherbedarf und kurze Sicherungszeiten
- Nachteile: Längere Wiederherstellungszeiten, da mehrere Sicherungen durchlaufen werden müssen
- Differenzielle Sicherungen
Eine differenzielle Sicherung (Differential Backup) kopiert alle seit der letzten vollständigen Sicherung geänderten Daten. Dies bietet eine Zwischenlösung zwischen vollständigen und inkrementellen Sicherungen.
- Zeitplan: Zweimal wöchentlich (z.B. Dienstag und Donnerstag)
- Vorteile: Schnellere Wiederherstellung als bei inkrementellen Sicherungen, da nur die letzte vollständige und die letzte differenzielle Sicherung benötigt wird
- Nachteile: Höherer Speicherbedarf als bei inkrementellen Sicherungen
Zusammenspiel dieser Sicherungstechniken
Der empfohlene Backup-Zeitplan könnte folgendermaßen aussehen:
- Sonntag: Vollständige Sicherung
- Montag: Inkrementelle Sicherung
- Dienstag: Differenzielle Sicherung
- Mittwoch: Inkrementelle Sicherung
- Donnerstag: Differenzielle Sicherung
- Freitag: Inkrementelle Sicherung
- Samstag: Inkrementelle Sicherung
Durch die Kombination dieser Techniken wird eine Balance zwischen Speicherbedarf und Wiederherstellungszeit erreicht. Inkrementelle Sicherungen minimieren den täglichen Speicherbedarf, während differenzielle Sicherungen die Wiederherstellungszeit verkürzen. Vollständige Sicherungen stellen sicher, dass regelmäßige Basislinien für die Datenwiederherstellung vorhanden sind.
b)
RAID-Systeme bieten verschiedene Konfigurationsmöglichkeiten für Datensicherung und -wiederherstellung. Angenommen, Du entscheidest Dich für RAID-5 für die primären Datenbanken des Unternehmens. Berechne für ein System mit 6 Festplatten der Größe 2TB die nutzbare Speicherkapazität. Diskutiere die Auswirkungen eines Festplattendefekts in einem RAID-5-System auf die Datensicherheit und die notwendige Vorgehensweise zur Wiederherstellung. Wie würdest Du RAID-5 mit anderen Sicherungstechniken kombinieren, um maximale Datensicherheit zu gewährleisten?
Lösung:
RAID-5 Konfiguration und Berechnung der nutzbaren Speicherkapazität
- Berechnung der nutzbaren Speicherkapazität
RAID-5 nutzt die Parität zur Datensicherung und verteilt diese Paritätsinformationen auf alle Festplatten des Systems. Es erlaubt den Datenzugriff, auch wenn eine Festplatte ausfällt:
Bei einem RAID-5-System mit 6 Festplatten der Größe 2TB ergibt sich die nutzbare Speicherkapazität wie folgt:
- Gesamtzahl der Festplatten: 6
- Anzahl der Festplatten, die für Daten verwendet werden: 6 - 1 (eine Festplatte wird für die Paritätsinformationen verwendet)
- Nutze Speicher pro Festplatte: 2TB
- Gesamtnutzbarer Speicher: (6 - 1) * 2TB = 5 * 2TB = 10TB
- Auswirkungen eines Festplattendefekts auf ein RAID-5-System
Im Falle eines Festplattendefekts in einem RAID-5-System bleiben die Daten aufgrund der Paritätsinformationen weiterhin zugänglich. Die Auswirkungen umfassen:
- Der Betrieb und die Datenzugänglichkeit werden aufrechterhalten, obwohl die Leistung leicht beeinträchtigt sein kann.
- Es ist erforderlich, die defekte Festplatte so schnell wie möglich durch eine neue Festplatte zu ersetzen, um die Redundanz wiederherzustellen.
- Notwendige Wiederherstellungsvorgehensweise nach einem Festplattendefekt
So gehst Du vor, wenn eine Festplatte ausfallen sollte:
- Defekte Festplatte identifizieren und entfernen.
- Neue Festplatte installieren.
- Der RAID-Controller startet automatisch den Wiederherstellungsprozess (Rebuild), bei dem die Paritätsinformationen genutzt werden, um die Daten auf der neuen Festplatte wiederherzustellen.
- Überwachung des Wiederherstellungsprozesses bis zur Fertigstellung, um sicherzustellen, dass das RAID-Array vollständig wiederhergestellt ist.
- Kombinieren von RAID-5 mit anderen Sicherungstechniken
Um maximale Datensicherheit zu gewährleisten, ist es wichtig, RAID-5 mit zusätzlichen Sicherungstechniken zu kombinieren:
- Vollständige Sicherungen: Führe regelmäßig vollständige Sicherungen durch, um eine umfassende Datenwiederherstellung zu ermöglichen, falls es zu einem schwerwiegenden Systemausfall kommt. Diese Sicherungen könnten wöchentlich durchgeführt werden.
- Inkrementelle Sicherungen: Ergänze die vollständigen Sicherungen durch tägliche inkrementelle Sicherungen, um Datenverluste zwischen den vollständigen Sicherungen zu minimieren und den Speicherbedarf zu reduzieren.
- Differenzielle Sicherungen: Diese können zwei- oder dreimal wöchentlich durchgeführt werden, um eine Zwischenlösung zwischen vollständigen und inkrementellen Sicherungen zu bieten und die Wiederherstellungszeit zu optimieren.
- Offsite-Backups: Stelle sicher, dass einige Sicherungen an einem externen Standort (Offsite) gespeichert werden, um die Daten vor physischen Katastrophen wie Bränden oder Einbrüchen zu schützen.
Durch diese Kombination aus RAID-5 und anderen Sicherungstechniken stellst Du sicher, dass die Daten des Unternehmens sowohl kurzfristig als auch langfristig geschützt sind und bei minimaler Wiederherstellungszeit und maximaler Effizienz gesichert werden.
Aufgabe 2)
Du bist beauftragt, die Integrität und Sicherheit der Daten in einem IT-System sicherzustellen. Das System enthält sensible Informationen und ist anfällig für Manipulationsversuche. Um die Daten vor unbefugten Änderungen zu schützen und gleichzeitig die Authentizität sicherzustellen, sollen verschiedene technologische Maßnahmen implementiert werden.
a)
(a) Erläutere den Einsatz von Hashing zur Sicherstellung der Datenintegrität und gehe dabei ausführlich auf das Verfahren SHA-256 ein. Erkläre auch, warum Hashing eine Einwegfunktion ist und wie dies zur Sicherheit beiträgt.
Lösung:
(a) Erläutere den Einsatz von Hashing zur Sicherstellung der Datenintegrität und gehe dabei ausführlich auf das Verfahren SHA-256 ein. Erkläre auch, warum Hashing eine Einwegfunktion ist und wie dies zur Sicherheit beiträgt.
- Hashing und Datenintegrität:Hashing ist eine kryptografische Methode, um die Integrität von Daten sicherzustellen. Beim Hashing wird ein beliebig großer Datenblock (z.B. eine Datei oder Nachricht) mittels eines Hash-Algorithmus in eine feste Länge codiert. Dies erzeugt einen sogenannten Hashwert oder Digest, der eine Art Fingerabdruck der ursprünglichen Daten darstellt. Einmal erzeugt, hilft der Hashwert dabei zu überprüfen, ob die Daten unverändert geblieben sind. Das bedeutet, wenn dieselben Daten erneut durch den gleichen Hash-Algorithmus laufen, entsteht derselbe Hashwert. Wird auch nur ein einziges Bit der Daten verändert, führt dies zu einem völlig anderen Hashwert. Dies ermöglicht eine schnelle und effiziente Verifikation der Datenintegrität, ohne die gesamten Daten erneut durch das System schicken zu müssen.
- Das Verfahren SHA-256:SHA-256 steht für „Secure Hash Algorithm 256-bit“ und ist Teil der SHA-2 (Secure Hash Algorithm 2) Familie, die von der National Security Agency (NSA) entwickelt wurde. SHA-256 erzeugt einen 256-Bit-Hashwert (32 Bytes). Dieser Algorithmus wird insbesondere in Bereichen eingesetzt, wo hohe Sicherheit erforderlich ist, wie zum Beispiel im Bereich der digitalen Signaturen, Zertifikate und bei der Blockchain-Technologie.Einige wesentliche Eigenschaften des SHA-256 sind:
- Kollisionsresistenz: Es ist extrem unwahrscheinlich, dass zwei unterschiedliche Dateneingaben denselben Hashwert erzeugen.
- Vorbildresistenz: Aufgrund der kryptografischen Stärke von SHA-256 ist es praktisch unmöglich, die ursprünglichen Daten aus dem Hashwert zu rekonstruieren.
- Effizienz: SHA-256 ist darauf ausgelegt, effizient auf verschiedenen Plattformen und Geräten zu arbeiten.
- Einwegfunktion und Sicherheitsvorteil:Eine Einwegfunktion ist eine Funktion, die leicht zu berechnen, aber sehr schwer, praktisch unmöglich, umzukehren ist. Das bedeutet, dass man aus dem Hashwert die ursprünglichen Daten nicht wiederherstellen kann. Dies trägt erheblich zur Sicherheit bei, da selbst wenn jemand den Hashwert kennt, es praktisch unmöglich ist, daraus die ursprünglichen Informationen abzuleiten.Der Einsatz von Hashing sorgt dafür, dass eine Manipulation der Daten sofort erkannt wird, da jeder kleine Eingriff zu einem völlig anderen Hashwert führt. Dies ist insbesondere wichtig für sensible und vertrauliche Daten, da jede unautorisierte Änderung sofort auffällt und somit Schutz vor Manipulationsversuchen bietet.
b)
(b) Beschreibe, wie digitale Signaturen funktionieren. Erkläre detailliert, wie die Kombination von Hashing und Verschlüsselung bei der Erstellung und Prüfung einer digitalen Signatur verwendet wird. Gehe auf den Prozess der Schlüsselgenerierung, Signierung und Verifizierung ein.
Lösung:
(b) Beschreibe, wie digitale Signaturen funktionieren. Erkläre detailliert, wie die Kombination von Hashing und Verschlüsselung bei der Erstellung und Prüfung einer digitalen Signatur verwendet wird. Gehe auf den Prozess der Schlüsselgenerierung, Signierung und Verifizierung ein.
- Funktion von digitalen Signaturen:Digitale Signaturen sind kryptografische Werkzeuge, die verwendet werden, um die Authentizität und Integrität einer Nachricht, Datei oder eines Dokuments sicherzustellen. Eine digitale Signatur fungiert ähnlich wie eine handschriftliche Unterschrift, bietet jedoch ein höheres Maß an Sicherheit. Sie bestätigt, dass eine Nachricht von einer bestimmten Person stammt und dass diese Nachricht seit der Signierung nicht verändert wurde.
- Kombination von Hashing und Verschlüsselung:Die Erstellung und Prüfung einer digitalen Signatur basiert auf der Kombination von Hashing und Verschlüsselung. Die grundlegenden Schritte sind wie folgt:
- Hashing: Zuerst wird die zu signierende Nachricht oder das Dokument durch einen Hash-Algorithmus (z.B. SHA-256) geführt, um eine kompakte, fixierte Länge – den sogenannten Hashwert – zu erzeugen.
- Verschlüsselung: Dieser Hashwert wird dann mit dem privaten Schlüssel des Absenders verschlüsselt, wodurch die digitale Signatur erstellt wird. Da der private Schlüssel sicher und geheim gehalten wird, kann nur der Besitzer dieses Schlüssels diese Signatur erzeugen.
- Prozess der Schlüsselgenerierung, Signierung und Verifizierung:Der gesamte Prozess kann in drei Hauptphasen gegliedert werden: Schlüsselgenerierung, Signierung und Verifizierung.
- Schlüsselgenerierung: In diesem Schritt erzeugt der Absender ein Schlüsselpaar, bestehend aus einem privaten Schlüssel und einem öffentlichen Schlüssel. Der private Schlüssel wird verwendet, um digitale Signaturen zu erstellen, während der öffentliche Schlüssel verwendet wird, um Signaturen zu verifizieren.
- Signierung: Wenn der Absender eine Nachricht signieren möchte, wird wie folgt vorgegangen:
- Die Nachricht wird durch einen Hash-Algorithmus geführt, um den Hashwert zu erzeugen.
- Der Hashwert wird mit dem privaten Schlüssel des Absenders verschlüsselt, um die digitale Signatur zu erzeugen.
- Die digitale Signatur wird zusammen mit der Originalnachricht an den Empfänger gesendet.
- Verifizierung: Um die Echtheit und Integrität der erhaltenen Nachricht zu überprüfen, führt der Empfänger folgende Schritte aus:
- Der Empfänger entschlüsselt die digitale Signatur mit dem öffentlichen Schlüssel des Absenders, um den ursprünglichen Hashwert wiederherzustellen.
- Die erhaltene Nachricht wird durch denselben Hash-Algorithmus geführt, um einen neuen Hashwert zu erzeugen.
- Der empfangene (und entschlüsselte) Hashwert wird mit dem neu berechneten Hashwert verglichen. Wenn beide identisch sind, ist die Nachricht authentisch und unverändert. Wenn sie unterschiedlich sind, deutet dies auf eine Manipulation hin.
- Nutzen in Bezug auf Sicherheit:Durch den Einsatz von digitalen Signaturen kann sichergestellt werden, dass nur der Besitzer des privaten Schlüssels Nachrichten in seinem Namen signieren kann. Zudem ermöglicht die Verwendung eines öffentlichen Schlüssels jedem, der Zugriff auf ihn hat, die Signaturen zu überprüfen, was die Authentizität der Nachrichten gewährleistet. Dies stellt sicher, dass Nachrichten nicht verändert werden können, ohne dass dies bemerkt wird, und stärkt somit die Integrität und Sicherheit der Daten im IT-System.
c)
(c) Diskutiere die Rolle von Audit-Trails in der Datenintegritätssicherung. Beschreibe, wie ein Audit-Trail implementiert werden könnte und welche Informationen aufgezeichnet werden sollten. Erläutere auch, wie diese Informationen zur Nachverfolgbarkeit und Aufdeckung von Manipulationsversuchen genutzt werden können.
Lösung:
(c) Diskutiere die Rolle von Audit-Trails in der Datenintegritätssicherung. Beschreibe, wie ein Audit-Trail implementiert werden könnte und welche Informationen aufgezeichnet werden sollten. Erläutere auch, wie diese Informationen zur Nachverfolgbarkeit und Aufdeckung von Manipulationsversuchen genutzt werden können.
- Rolle von Audit-Trails in der Datenintegritätssicherung:Audit-Trails sind systematische Aufzeichnungen von Aktivitäten und Änderungen an Daten innerhalb eines IT-Systems. Sie spielen eine zentrale Rolle bei der Sicherstellung der Datenintegrität, indem sie Transparenz ermöglichen und eine Rückverfolgbarkeit sämtlicher Interaktionen mit dem System bieten. Durch Audit-Trails können verdächtige Aktivitäten identifiziert, nachvollzogen und untersucht werden. Dies ist besonders wichtig in Umgebungen, in denen sensible Informationen verarbeitet werden und Manipulationsversuche eine hohe Gefahr darstellen.
- Implementierung eines Audit-Trails:Ein Audit-Trail kann durch folgende Schritte implementiert werden:
- Definieren der zu verfolgenden Aktivitäten: Bestimme, welche Interaktionen und Transaktionen im System aufgezeichnet werden sollen. Dies kann das Anmelden von Benutzern, das Ändern von Daten, das Löschen von Informationen und andere kritische Operationen umfassen.
- Erstellen einer Datenbank zur Speicherung der Audit-Daten: Implementiere eine robuste und manipulationssichere Datenbank, in der die Audit-Daten sicher gespeichert werden. Diese Datenbank sollte regelmäßig gesichert und durch Zugriffskontrollen geschützt werden.
- Automatisiertes Logging: Entwickle Mechanismen, die die definierten Aktivitäten automatisch protokollieren. Dies kann durch das Hinzufügen von Logik zu den bestehenden Anwendungskomponenten oder durch den Einsatz spezieller Logging-Tools erreicht werden.
- Aufzuzeichnende Informationen:Ein umfassender Audit-Trail sollte folgende Informationen enthalten:
- Zeitstempel: Das genaue Datum und die Uhrzeit jeder aufgezeichneten Aktivität.
- Benutzeridentifikation: Die Identität des Benutzers, der die Aktion durchgeführt hat.
- Art der Aktion: Eine Beschreibung der durchgeführten Aktion (z.B. Erstellung, Änderung, Löschung).
- Betroffene Daten: Die spezifischen Daten oder Datenbereiche, die durch die Aktion betroffen sind.
- Vorherige und nachfolgende Werte: Die Werte der Daten vor und nach der durchgeführten Aktion (falls zutreffend).
- Systeminformationen: Details über das verwendete System oder die Anwendung, von der aus die Aktion ausgeführt wurde.
- Nutzung der Informationen zur Nachverfolgbarkeit und Aufdeckung von Manipulationsversuchen:Die in einem Audit-Trail aufgezeichneten Informationen sind essenziell für die Nachverfolgbarkeit und die Aufdeckung von Manipulationsversuchen. Hier sind einige Beispiele, wie diese Informationen genutzt werden können:
- Überwachung und Alerts: Echtzeitüberwachung der Aktivitäten im System und Konfiguration von Benachrichtigungen bei ungewöhnlichen oder verdächtigen Aktionen, um schnell auf potenzielle Bedrohungen reagieren zu können.
- Forensische Analyse: Bei einem Verdacht oder nach einem Sicherheitsvorfall können die Audit-Daten analysiert werden, um die genaue Abfolge der Ereignisse zu rekonstruieren und den Ursprung des Vorfalls zu identifizieren.
- Compliance-Berichte: Erstellung von Berichten für Compliance-Zwecke, um zu demonstrieren, dass alle notwendigen Maßnahmen zur Sicherstellung der Datenintegrität und -sicherheit getroffen wurden.
- Zugangskontrollen: Identifizierung und Überprüfung von Benutzeraktivitäten zur Sicherstellung, dass nur autorisierte Personen auf bestimmte Daten zugreifen und Änderungen vornehmen können.
- Schulung und Sensibilisierung: Verwendung der Audit-Trail-Daten zur Schulung von Mitarbeitern und zur Sensibilisierung für sichere Verhaltensweisen im Umgang mit sensiblen Daten.
Aufgabe 3)
Im Rahmen einer forensischen Untersuchung wurde ein Computer beschlagnahmt, der im Verdacht steht, für illegale Aktivitäten genutzt worden zu sein. Der Computer enthält sowohl eine interne Festplatte als auch ein USB-Laufwerk. Die Aufgabe umfasst die Durchführung einer vollständigen forensischen Analyse der Speichergeräte, einschließlich der Sicherung von Daten, der Wiederherstellung gelöschter Dateien und der Analyse von Speicher- und Netzwerkschnittstellen.
a)
1. Disk-Imaging
Erkläre den Prozess des Disk-Imaging und erstelle ein Skript in Python, das ein bitweises Abbild der internen Festplatte und des USB-Laufwerks erstellt. Nutze dafür die Best Practices der Disk-Imaging-Methoden. Beschreibe, warum ein bitweises Abbild in der forensischen Informatik notwendig ist.
import osdef create_disk_image(device, output_file): os.system(f'dd if={device} of={output_file} bs=4M conv=noerror,sync status=progress')# Create disk images for the internal drive and USB drivecreate_disk_image('/dev/sda', 'internal_drive_image.dd')create_disk_image('/dev/sdb', 'usb_drive_image.dd')
Lösung:
Disk-Imaging, auch als Festplattenabbildung bekannt, ist ein Prozess, bei dem eine exakte Kopie (Abbild) des gesamten Inhalts einer Festplatte erstellt wird. Dieses Verfahren wird häufig in der digitalen Forensik genutzt, um Beweismaterial zu sichern, ohne die Originalfestplatte zu verändern. Ein bitweises Abbild beinhaltet sämtliche Daten auf dem Datenträger, einschließlich aller gelöschten Dateien, Systembereiche und versteckten Informationen. Dieses Vorgehen ist notwendig, um sicherzustellen, dass alle potenziellen Beweismittel erfasst und analysiert werden können.
Ein bitweises Abbild ist in der forensischen Informatik notwendig, weil:
- Integrität der Beweise: Es stellt sicher, dass alle Daten, einschließlich der versteckten und gelöschten Dateien, erfasst werden.
- Reproduzierbarkeit: Es bietet die Möglichkeit, das Abbild in einer sicheren Umgebung zu analysieren, ohne die Originaldaten zu verändern.
- Vollständigkeit: Ein bitweises Abbild schließt sämtliche Daten ein, die auf dem physikalischen Datenträger vorhanden sind.
Der folgende Python-Code verwendet das Unix-„dd“-Kommando, um ein bitweises Abbild zu erstellen:
import osdef create_disk_image(device, output_file): os.system(f'dd if={{device}} of={{output_file}} bs=4M conv=noerror,sync status=progress')# Erstelle Abbild für die interne Festplatte und das USB-Laufwerkcreate_disk_image('/dev/sda', 'internal_drive_image.dd')create_disk_image('/dev/sdb', 'usb_drive_image.dd')
Erklärung des Codes:
- Zeile 1: Importiert das Modul „os“, um Betriebssystembefehle auszuführen.
- Zeile 2: Definiert eine Funktion „create_disk_image“, die zwei Parameter verwendet: „device“ (das zu sichernde Laufwerk) und „output_file“ (der Name der Zieldatei).
- Zeile 3: Führt das „dd“-Kommando mit den angegebenen Parametern aus: „if“ steht für Eingabedatei (das Gerät), „of“ für Ausgabedatei (das Abbild), „bs“ legt die Blockgröße fest, „conv=noerror,sync“ sorgt dafür, dass bei Fehlern die Erstellung fortgesetzt und die Daten synchronisiert werden, und „status=progress“ zeigt den Fortschritt an.
- Zeile 6: Ruft die Funktion auf, um ein Abbild der internen Festplatte zu erstellen.
- Zeile 7: Ruft die Funktion auf, um ein Abbild des USB-Laufwerks zu erstellen.
Mit diesem Skript kannst Du eine genaue Kopie der Speichergeräte erstellen und diese dann für die weitere forensische Analyse verwenden.
b)
2. Datenwiederherstellung
Beschreibe, wie Du mit Hilfe von Scalpel und PhotoRec gelöschte oder beschädigte Dateien von den erstellten Disk-Images wiederherstellst. Was sind die Unterschiede zwischen diesen beiden Tools und welche Vor- und Nachteile bieten sie in einem forensischen Kontext?
Lösung:
In der digitalen Forensik ist die Wiederherstellung gelöschter oder beschädigter Dateien ein wichtiger Schritt. Dabei helfen Tools wie Scalpel und PhotoRec. Im Folgenden wird erläutert, wie Du diese Tools verwenden kannst und welche Unterschiede sie aufweisen.
Scalpel:
Scalpel ist ein schnelles Dateiwiederherstellungsprogramm, das Dateifragmente basierend auf spezifischen Header- und Footer-Signaturen sucht und extrahiert. Es ist besonders nützlich, wenn Du weißt, welche Dateitypen Du wiederherstellen möchtest.
Nutzung von Scalpel:Scalpel durchsucht das Disk-Image nach den in der Konfigurationsdatei angegebenen Dateitypen und speichert die gefundenen Dateien im angegebenen Output-Verzeichnis.
PhotoRec:
PhotoRec ist ein Datenwiederherstellungstool, das speziell für die Wiederherstellung von Dateien aus beschädigten Dateisystemen oder physischen Geräten entwickelt wurde. Es durchsucht den freien Speicherplatz nach Dateien, unabhängig vom Dateisystem.
Nutzung von PhotoRec:PhotoRec speichert die wiederhergestellten Dateien im angegebenen Zielverzeichnis.
Unterschiede zwischen Scalpel und PhotoRec:
- Scalpel:
- Erfordert eine Konfigurationsdatei mit den zu suchenden Dateisignaturen.
- Ist sehr schnell und effizient für spezifische Dateitypen.
- Geeignet, wenn die Dateisignaturen bekannt sind und die Wiederherstellung zielgerichtet erfolgen soll.
- Nachteil: Begrenzter Einsatz, wenn die Signatur nicht konfiguriert ist oder unbekannte Dateitypen wiederhergestellt werden müssen.
- PhotoRec:
- Erfordert keine vorherige Konfiguration von Dateitypen.
- Kann Dateien von beschädigten Dateisystemen oder Geräten unabhängig vom Dateisystem wiederherstellen.
- Geeignet für eine allgemeine und umfassende Dateiwiederherstellung.
- Nachteil: Kann langsamer sein und bringt möglicherweise eine größere Menge irrelevanter Daten mit sich.
Vor- und Nachteile im forensischen Kontext:
- Scalpel - Vorteile: Schnell, zielgerichtet, konfigurierbar.
- Scalpel - Nachteile: Begrenzte Wiederherstellungsmöglichkeiten ohne genaue Konfiguration.
- PhotoRec - Vorteile: Breite Wiederherstellungsmöglichkeiten, keine vorherige Konfiguration erforderlich.
- PhotoRec - Nachteile: Langsamer, kann eine größere Datenmenge wiederherstellen, darunter auch irrelevante Dateien.
In der Praxis könnten beide Tools in Kombination verwendet werden, um sicherzustellen, dass sowohl spezifische als auch allgemeine Dateitypen erfolgreich wiederhergestellt werden.
c)
3. Speicheranalyse
Angenommen, der Computer war während der Beschlagnahmung eingeschaltet. Führe mit Volatility eine Analyse des flüchtigen Speichers (RAM) durch und identifiziere mögliche bösartige Prozesse. Beschreibe den genauen Ablauf und interpretiere die Ergebnisse.
Lösung:
Bei der Analyse des flüchtigen Speichers (RAM) mit Volatility handelt es sich um eine wichtige Maßnahme in der digitalen Forensik. Volatility ist ein Framework zur Analyse von Speicherauszügen und kann verwendet werden, um Einblicke in laufende Prozesse, Netzwerkverbindungen, DLLs und vieles mehr zu erhalten.
Schritte zur Durchführung der RAM-Analyse mit Volatility:
- 1. Speicherauszug erstellen: Zuerst musst Du einen Speicherauszug (Memory Dump) des Computers erstellen. Dies kann mithilfe von Tools wie „FTK Imager“, „DumpIt“ oder „WinDD“ erfolgen. Beispiel mit „DumpIt“:
./DumpIt.exe
- Dies erstellt eine .raw-Datei, die den gesamten Inhalt des RAM speichert.
- 2. Installiere Volatility: Lade Volatility herunter und installiere es von der offiziellen Website (Volatility Foundation).
- 3. Identifiziere das Profil: Bevor Du mit der Analyse beginnst, musst Du das Profil des Speicherauszugs bestimmen. Dies wird durch das Betriebssystem des Zielrechners bestimmt. Mit dem folgenden Befehl identifizierst Du das Profil:
vol.py -f /Pfad/zum/memory.dmp imageinfo
- Der Befehl gibt verschiedene Informationen über das Betriebssystem und die Architektur zurück, darunter auch das Profil, das Du für die weitere Analyse verwenden solltest.
- 4. Analyse der Prozesse: Identifiziere die laufenden Prozesse innerhalb des RAM-Abbilds, um verdächtige Aktivitäten zu erkennen:
vol.py -f /Pfad/zum/memory.dmp --profile=Profil pslist
- Der Befehl „pslist“ listet alle laufenden Prozesse auf. Achte auf Prozesse, die unbekannt sind oder ungewöhnliche Namen haben.
- Zusätzlich kannst Du die Befehle „psscan“ (um auch versteckte oder beendete Prozesse zu finden) und „pstree“ (um die Prozesshierarchie anzuzeigen) verwenden:
vol.py -f /Pfad/zum/memory.dmp --profile=Profil psscan
vol.py -f /Pfad/zum/memory.dmp --profile=Profil pstree
- 5. Anomalien und bösartige Prozesse identifizieren: Nutze spezialisierte Plugins, um tiefergehende Analysen durchzuführen, zum Beispiel „malfind“ zur Erkennung von Malware:
vol.py -f /Pfad/zum/memory.dmp --profile=Profil malfind
- Dieser Befehl kann verdächtige Speicherstapelungen und mögliche bösartige Prozesse identifizieren, indem er nach Mustern sucht, die typisch für Malware sind.
- 6. Analyse der Netzwerkverbindungen: Überprüfe bestehende Netzwerkverbindungen, die möglicherweise auf bösartige Aktivitäten hinweisen:
vol.py -f /Pfad/zum/memory.dmp --profile=Profil netscan
- Dieser Befehl zeigt alle aktiven und kürzlich geschlossenen Netzwerksockets und -verbindungen an. Untersuche ungewöhnliche IP-Adressen oder Verbindungen.
- 7. Browsersitzungen prüfen: Analysiere Browsersitzungen, um herauszufinden, welche Webseiten besucht wurden:
vol.py -f /Pfad/zum/memory.dmp --profile=Profil iehistory
- Dieser Befehl kann Informationen über die Browserhistorie des Internet Explorers extrahieren.
- 8. Ergebnisse interpretieren: Bei der Interpretation der Ergebnisse suchst Du nach ungewöhnlichen Prozessen, unbekannten Netzwerkverbindungen und verdächtigen Aktivitäten. Vergleiche die Prozesslisten und Netzwerkverbindungen mit bekannten guten und bösen Indikatoren (indicators of compromise).
Beispiel einer Interpretation:
- Wenn Du einen unbekannten Prozess mit ungewöhnlich hohem Speicherverbrauch findest, könnte dies ein Indiz für Malware sein.
- Netzwerkverbindungen zu IP-Adressen, die in verdächtigen Regionen liegen oder zu anonymen Hosting-Anbietern führen, könnten ebenfalls auf bösartige Aktivitäten hindeuten.
- Unbekannte DLLs oder verdächtige Speicheranomalien könnten ebenfalls Hinweise auf bösartigen Code sein.
Mit diesen Schritten und Werkzeugen kannst Du eine umfassende Analyse des flüchtigen Speichers durchführen und potenziell bösartige Aktivitäten auf dem beschlagnahmten Computer identifizieren.
d)
4. Netzwerkanalyse
Analysiere mit Wireshark den Netzwerkverkehr, der während der Beschlagnahmung aufgezeichnet wurde. Identifiziere und erkläre mindestens zwei Anomalien oder verdächtige Aktivitäten. Nutze spezifische Filter und Methoden, um die relevanten Informationen zu extrahieren.
Lösung:
Die Netzwerkanalyse mit Wireshark ist ein wesentlicher Bestandteil der digitalen Forensik, um verdächtige Aktivitäten im Netzwerkverkehr zu identifizieren. Wireshark ist ein leistungsfähiges Tool zur Erfassung und Analyse von Netzwerkpaketen. Im Folgenden werden die Schritte zur Analyse des Netzwerkverkehrs beschrieben und wie man Anomalien oder verdächtige Aktivitäten identifiziert und erklärt.
Schritte zur Durchführung der Netzwerkanalyse mit Wireshark:
- 1. Erfassung des Netzwerkverkehrs: Für die Analyse benötigst Du eine PCAP-Datei (Packet Capture File), die den während der Beschlagnahmung aufgezeichneten Netzwerkverkehr enthält.
- 2. Öffnen der PCAP-Datei: Öffne Wireshark und lade die PCAP-Datei:
File > Open > Select the .pcap file
- 3. Grundlegende Ansicht: Nach dem Öffnen der Datei siehst Du die Pakete, die während der Erfassung aufgezeichnet wurden. Hier werden die Zeitstempel, Quell- und Ziel-IP-Adressen, Protokolle und andere grundlegenden Details angezeigt.
- 4. Filter setzen: Um relevante Informationen zu extrahieren, benutze spezifische Filter. Zum Beispiel:
- HTTP-Verkehr:
http
- DNS-Verkehr:
dns
- TCP-Verbindungen zu einer bestimmten IP-Adresse:
ip.addr == 192.168.0.1
- Verbindungen zu einem bestimmten Port:
tcp.port == 80
- 5. Anomalien und verdächtige Aktivitäten identifizieren: Suche nach folgenden Indikatoren:
A. Ungewöhnliche IP-Adressen oder Domänen:Nutze den DNS-Filter, um zu überprüfen, ob ungewöhnliche oder verdächtige Domänen abgefragt wurden.
dns
- Beispiel: Eine DNS-Anfrage zu einer unbekannten oder verdächtigen Domäne kann auf bösartige Aktivitäten hinweisen.
B. Große Mengen an Datenübertragung oder Port-Scanning:Überprüfe den Datenverkehr auf ungewöhnliche Datenmengen oder Port-Scanning-Aktivitäten.
ip.addr == [Deine IP-Adresse] && tcp.flags == 0x02
- Beispiel: Wenn ein Host eine große Menge an Daten überträgt oder viele verschiedene Ports nacheinander versucht zu verbinden, kann dies ein Zeichen für Datenexfiltration oder Netzwerk-Scanning sein.
- 6. Untersuche spezifische Protokolle: Analysiere spezifische Protokolle wie HTTP, DNS, FTP etc., um verdächtige Aktivitäten zu identifizieren.
- HTTP-Verkehr analysieren:
http
- Lade die HTTP-Anfragen und -Antworten, um verdächtige URLs, Files oder ungewöhnliches Verhalten zu entdecken.
- 7. Paketfolge analysieren: Untersuche die Paketfolge und überprüfe, ob es unerwartete oder ungewöhnliche Reaktionen gibt, die auf bösartige Aktivitäten hinweisen könnten.
Beispiel für zwei Anomalien oder verdächtige Aktivitäten:
- Anomalie 1: DNS-Anfragen an unbekannte Domänen
- Filtere den DNS-Verkehr:
dns
- Untersuche die aufgezeichneten DNS-Anfragen. Eine domäne wie „randomstring.xyz“ könnte verdächtig sein.
- Eine unbekannte oder verdächtige Domäne könnte auf Command-and-Control (C2) Server oder Datenexfiltration hinweisen.
- Anomalie 2: Große Datenübertragungen an externe IP-Adressen
- Filtere den HTTP- oder TCP-Verkehr:
http oder tcp
- Untersuche die Paketgrößen und die Datenübertragungshäufigkeit. Eine ungewöhnlich große Datenübertragung könnte ein Indiz für die Exfiltration von Daten sein.
- Beispielsweise könnte eine kontinuierliche Übertragung großer Datenmengen an eine bestimmte externe IP-Adresse ohne legitimen Grund auf bösartige Aktivitäten hindeuten.
Durch die Analyse dieser Anomalien und verdächtigen Aktivitäten kannst Du Hinweise auf mögliche Sicherheitsverletzungen oder bösartige Aktivitäten erhalten und entsprechende Maßnahmen zur weiteren Untersuchung und Prävention einleiten.
Aufgabe 4)
Protokollierung und Dokumentation von BeweisenDie Dokumentation von Beweisen ist in der Forensik entscheidend für die Nachvollziehbarkeit und Glaubwürdigkeit der Ermittlungen. Ein ordnungsgemäßer Umgang mit Beweismitteln ist von großer Bedeutung, um sicherzustellen, dass alle ergriffenen Maßnahmen rechtskonform sind und die Beweismittel ihre Integrität behalten.
- Beweismittel müssen ordnungsgemäß dokumentiert werden. Dazu gehören Datenträger, Protokolle und Logs.
- Jede Veränderung und jedes Handeln an den Beweismitteln muss in der Chain of Custody protokolliert werden, um eine klare Kette der Aufbewahrung und Bearbeitung zu sichern.
- Digitale Signaturen und Hash-Funktionen wie SHA-256 und MD5 sollten verwendet werden, um die Integrität der Beweismittel zu sichern.
- Alle Prozeduren müssen den rechtlichen Vorschriften und Standards wie ISO/IEC 27037 entsprechen.
- Die Methoden und Tools, die zur Gewinnung und Analyse der Beweismittel verwendet wurden, müssen klar beschrieben werden.
- Die Dokumentation sollte so aufbereitet werden, dass sie auch für Dritte verständlich ist, beispielsweise für das Gericht oder Anwälte.
- Die Dokumentationsprozesse sollten regelmäßig überprüft und auditiert werden.
a)
Subexercise 1:Angenommen, Du bist ein forensischer Analyst und musst einen E-Mail-Server untersuchen, der verdächtigt wird, kompromittiert worden zu sein. Beschreibe detailliert, wie Du die Beweisaufnahme und die anschließende Dokumentation durchführen würdest. In Deiner Beschreibung sollten folgende Punkte enthalten sein:
- Vorbereitung und Werkzeugauswahl.
- Protokollierung der einzelnen Schritte und Handlungen (Chain of Custody).
- Verwendung von Hash-Funktionen zur Sicherung der Integrität der Daten.
- Berücksichtigung rechtlicher Vorschriften.
Lösung:
Subexercise 1: Detaillierte Vorgehensweise zur Beweisaufnahme und Dokumentation bei einem kompromittierten E-Mail-Server
Als forensischer Analyst, der einen möglicherweise kompromittierten E-Mail-Server untersucht, ist es von größter Bedeutung, systematisch vorzugehen, um die Integrität der Beweismittel sicherzustellen. Hier ist eine detaillierte Beschreibung des gesamten Prozesses:
1. Vorbereitung und Werkzeugauswahl
- Zuerst wird eine Liste der notwendigen Werkzeuge und Software erstellt. Dies umfasst:
- Laptops mit forensischer Software wie EnCase, FTK (Forensic Toolkit) oder X-Ways.
- Schreibgeschützte Adapter, um jegliche Datenänderungen zu verhindern.
- Tools zur Erstellung von Hash-Werten wie HashCalc oder md5deep.
- Externe Festplatten für die sichere Speicherung der Datenkopien.
- Anschließend wird die richtige Arbeitsumgebung sichergestellt – dies beinhaltet einen sauberen, sicheren Raum, in dem der Server und die dazugehörigen Geräte untersucht werden können.
2. Protokollierung der einzelnen Schritte und Handlungen (Chain of Custody)
- Bevor etwas in der Untersuchung passiert, beginnen wir mit der Dokumentation:
- Notiere das Datum, die Uhrzeit und den Ort der Untersuchung.
- Fotografiere die Umgebung und den Server, um einen visuellen Beweis für den Ausgangszustand zu haben.
- Dokumentiere die Seriennummern und Modellinformationen des Servers und aller relevanten Geräte.
- Entferne vorsichtig den Server aus seinem Einsatzort und transportiere ihn in den bereits vorbereiteten Raum unter Verwendung der entsprechenden Schutz- und Transportvorrichtungen.
3. Nutzung von Hash-Funktionen zur Sicherung der Integrität der Daten
- Erstelle bitgenaue Kopien (Images) der Datenträger:
- Nehme die Festplatten des Servers und erstelle mit forensischen Tools wie dd oder FTK Imager ein Image der Daten.
- Verwende dabei schreibgeschützte Adapter, um sicherzustellen, dass keine Veränderungen an den Originaldaten vorgenommen werden.
- Berechne die Hash-Werte (z. B. SHA-256 und MD5) der Originaldaten und notiere sie.
- Erstelle ebenfalls Hash-Werte der erstellten Images, um deren Integrität zu bestätigen.
- Vergleiche die Hash-Werte der Originaldaten und der Images, um sicherzustellen, dass keine Veränderungen oder Fehler in der Kopie aufgetreten sind.
4. Berücksichtigung rechtlicher Vorschriften
- Stelle sicher, dass alle Schritte in Übereinstimmung mit den rechtlichen Vorschriften und Standards wie ISO/IEC 27037 durchgeführt werden:
- Dokumentiere jeden Schritt sorgfältig in einem Protokoll, das die Chain of Custody beschreibt.
- Verwende die vorgeschriebenen Methoden und Werkzeuge, die in den relevanten Standards und Guidelines empfohlen werden.
- Die Untersuchung und die Erstellung der Berichte müssen so erfolgen, dass sie in einem Gericht anerkannt werden:
- Stelle sicher, dass alle Berichte und Dokumentationen klar und verständlich für Dritte sind, einschließlich der Betrachtung durch das Gericht oder die Anwälte.
- Ein abschließender Bericht sollte eine Zusammenfassung der Untersuchung, die verwendeten Tools und Methoden, die Ergebnisse und jegliche Empfehlungen enthalten.
- Regelmäßige Überprüfung und Audits der Dokumentationsprozesse:
- Einführung von Prozessen, um regelmäßig bestehende Untersuchungsmethoden zu überprüfen und sicherzustellen, dass sie aktuellen rechtlichen Anforderungen entsprechen.
- Durchführung regelmäßiger Audits, um die Genauigkeit und Vollständigkeit der Dokumentation sicherzustellen.
b)
Subexercise 2:Du hast ein verdächtiges Gerät in einem digitalen Forensik-Labor erhalten. Nach der ersten Untersuchung hast Du festgestellt, dass die erhaltenen Beweismittel potentiell manipuliert wurden. Erkläre ausführlich, welche Maßnahmen Du ergreifen würdest, um die Integrität der Beweise zu prüfen und sicherzustellen, dass alle Aktionen und Änderungen lückenlos dokumentiert sind. Achte darauf, die Bedeutung der digitalen Signaturen und Hash-Werte in Deiner Antwort zu erläutern. Zusätzlich, skizziere ein kurzes Audit-Protokoll, welches aufzeigt, wie die Dokumentationsprozesse überprüft werden sollten.
Lösung:
Subexercise 2: Maßnahmen zur Prüfung der Integrität von Beweismitteln und Erstellung eines Audit-Protokolls
1. Ersten Schritte und Maßnahmen zur Integritätsprüfung
- Dokumentation des Erhalts: Zunächst wird der Erhalt des Geräts dokumentiert. Datum, Uhrzeit, Ort des Erhalts und der Zustand des Geräts werden notiert. Fotos des Geräts werden gemacht, um den Ausgangszustand festzuhalten.
- Chain of Custody: Jedes Handeln am Beweismittel wird in der Chain of Custody protokolliert, um eine klare Kette der Aufbewahrung und Bearbeitung zu gewährleisten.
2. Prüfung auf Manipulation
- Erstellung von Hash-Werten: Vor jeglicher Untersuchung wird ein Hash-Wert des gesamten Geräts oder der relevanten Dateien erstellt, z. B. mit SHA-256 und MD5. Diese Hash-Werte dienen als Ausgangsreferenz, um festzustellen, ob die Daten verändert wurden.
- Vergleich mit bestehenden Hash-Werten: Falls möglich, werden die neu erstellten Hash-Werte mit vorher erstellten Hash-Werten verglichen (falls vorhanden). Diese könnten aus früheren Untersuchungen oder vom Gerätehersteller stammen.
- Analyse der Metadaten: Überprüfe die Metadaten der Dateien nach ungewöhnlichen Veränderungen, wie z. B. geänderten Zeitstempeln oder Zugriffsinformationen.
3. Sicherstellung der Integrität während der Untersuchung
- Erstellung von bitgenauen Kopien: Bevor mit der eigentlichen Untersuchung begonnen wird, werden bitgenaue Kopien der Datenträger erstellt, um sicherzustellen, dass das Original nicht weiter verändert wird. Diese Kopien werden ebenfalls mit Hash-Funktionen verifiziert.
- Verwendung von schreibgeschützten Adaptern: Bei der Erstellung von Kopien und der anschließenden Analyse werden schreibgeschützte Adapter verwendet, um jegliche Änderungen zu verhindern.
4. Bedeutung der digitalen Signaturen und Hash-Werte
- Hash-Funktionen: Hash-Funktionen wie SHA-256 und MD5 sind kryptografische Algorithmen, die einen eindeutigen Wert (Hash) für eine Datenmenge erzeugen. Die Integrität der Daten kann überprüft werden, indem der Hash-Wert vor und nach der Untersuchung verglichen wird. Jeder Unterschied würde auf eine Änderung der Daten hinweisen.
- Digitale Signaturen: Digitale Signaturen werden verwendet, um die Authentizität und Integrität von Daten zu gewährleisten. Sie basieren auf asymmetrischer Kryptografie, bei der ein öffentlicher und ein privater Schlüssel verwendet werden. Eine digitale Signatur kann die Quelle der Daten bestätigen und sicherstellen, dass die Daten seit der Signatur nicht verändert wurden.
5. Erstellung eines Audit-Protokolls für die Dokumentationsprozesse
Ein regelmäßiges Audit der Dokumentationsprozesse stellt sicher, dass alle Schritte korrekten Standards entsprechen und nachvollziehbar sind. Hier ist ein Beispiel für ein Audit-Protokoll:
- Audit-Bericht Nr.: 001
- Datum: 15. Oktober 2023
- Prüfer: Max Mustermann
- 1. Überprüfung der Chain of Custody:
- Stimmen die Einträge der Chain of Custody mit den tatsächlichen Handlungen und Zeitstempeln überein?
- Wurden alle Änderungen an den Beweismitteln korrekt dokumentiert?
- 2. Überprüfung der Hash-Werte:
- Wurden vor und nach jeder Untersuchung Hash-Werte erstellt und dokumentiert?
- Entsprechen die Hash-Werte den erwarteten Werten ohne Anzeichen von Veränderungen?
- 3. Prüfung der verwendeten Tools und Methoden:
- Entsprechen die verwendeten Tools den geltenden Standards (z. B. ISO/IEC 27037)?
- Sind die eingesetzten Methoden und Prozeduren ordnungsgemäß dokumentiert und wiederholbar?
- 4. Verständlichkeit der Dokumentation:
- Sind die Dokumentationen klar und verständlich genug für Dritte?
- Erfüllen die Berichte die Anforderungen für eine Präsentation vor Gericht?
- 5. Überprüfung der regelmäßigen Audits:
- Wurde der Dokumentationsprozess regelmäßig überprüft und aktualisiert?
- Gibt es Protokolle über vergangene Audits und deren Ergebnisse?