DFIR - Digital Forensics and Incident Response
Digital Forensics and Incident Response (DFIR) kombiniert digitale Forensik (Beweise sichern und analysieren) mit Incident Response (Vorfälle eindämmen und beheben). DFIR-Teams sichern nach Cyberangriffen Beweise gerichtsfest, rekonstruieren den Angriffspfad (Attack Timeline), identifizieren den initialen Angriffsvektor und unterstützen bei der Strafverfolgung. Kerndisziplinen: Memory Forensics, Disk Forensics, Network Forensics, Malware Analysis.
Digital Forensics and Incident Response (DFIR) ist die Feuerwehr und gleichzeitig die Kriminaltechnik der Cybersecurity. DFIR-Teams werden nach Sicherheitsvorfällen gerufen um zwei parallele Aufgaben zu erfüllen: den Vorfall zu stoppen und Beweise zu sichern, die möglicherweise vor Gericht standhalten müssen.
DFIR-Phasen
SANS PICERL Modell:
Preparation (Vorbereitung):
→ Incident Response Plan dokumentiert und getestet
→ DFIR-Tools verfügbar und getestet (Forensik-Werkzeugkoffer)
→ Log-Retention: mind. 12 Monate (NIS2-Anforderung!)
→ Evidence Chain-of-Custody-Formulare bereit
→ Behörden-Kontakte bekannt (BSI, LfDI, Polizei)
→ IR-Retainer mit DFIR-Dienstleister vorab vereinbart?
Identification (Erkennung):
→ Anomalie erkannt: SIEM-Alert, EDR-Alert, Nutzer-Meldung
→ Initiale Triage: False Positive oder echter Incident?
→ Scope: welche Systeme betroffen?
→ Schwere: erheblicher Vorfall? (NIS2-Meldepflicht-Trigger!)
Containment (Eindämmung):
→ Bevor forensische Beweise gesichert sind: KEIN Neustart!
→ Short-term Containment: Netzwerkisolation, Account-Deaktivierung
→ Long-term Containment: Rebuild paralleler Systeme
→ WICHTIG: Beweissicherung VOR Containment wo möglich
Eradication (Bereinigung):
→ Schadsoftware entfernen
→ Backdoors schließen
→ Initalen Angriffsvektor beheben (Schwachstelle patchen!)
→ Alle kompromittierten Credentials rotieren
Recovery (Wiederherstellung):
→ Systeme aus verifizierten Backups wiederherstellen
→ Monitoring intensivieren (Reinfection erkennen!)
→ Schritt-für-Schritt Wiederinbetriebnahme
Lessons Learned (Nachbereitung):
→ IR-Bericht erstellen (intern + ggf. für Behörden)
→ Root Cause Analysis
→ Maßnahmenplan: wie verhindern wir Wiederholung?
→ Detection Rules basierend auf TTPs des Angreifers
Forensische Beweissicherung
Chain of Custody - gerichtsfeste Beweissicherung:
Grundprinzip: Beweise sichern ohne zu verändern!
→ Originaldatenträger: niemals direkt analysieren
→ Write Blocker: physischer oder softwarebasierter Schreibschutz
→ Forensische Kopie (Bit-für-Bit-Kopie = forensisches Image)
→ Hash-Verifizierung: SHA-256 des Originals = SHA-256 der Kopie
ISO/IEC 27037 - Standard für digitale Beweise:
→ Identifizierung: was sind die relevanten Beweis-Quellen?
→ Sicherstellung: physisch sichern (Zugang verwehren)
→ Erfassung: forensische Kopien erstellen
→ Bewahrung: Integrität über Zeit sichern
Memory Forensics (RAM-Analyse) - zeitkritisch!:
→ RAM ist flüchtig: Neustart = Verlust aller RAM-Daten!
→ Memory enthält: laufende Prozesse, Passwörter im Klartext,
Kryptographie-Schlüssel, Netzwerkverbindungen, injizierter Code
→ ZUERST RAM-Dump, DANN andere Schritte!
Tools:
Velociraptor: Enterprise-IR-Platform (kostenfrei), RAM + Disk + Artifacts
Magnet RAM Capture: kostenfreies RAM-Capture (Windows)
WinPmem: Open Source RAM-Dump (Windows)
LiME (Linux Memory Extractor): Kernel-Modul für Linux-RAM
RAM-Dump Kommando (Velociraptor):
velociraptor.exe artifacts collect Windows.Memory.Acquisition
--args OutputPath=C:\evidence\ram.aff4
Analyse mit Volatility 3:
python3 vol.py -f ram.aff4 windows.pslist # Prozessliste
python3 vol.py -f ram.aff4 windows.netscan # Netzwerkverbindungen
python3 vol.py -f ram.aff4 windows.cmdline # Kommandozeilen-History
python3 vol.py -f ram.aff4 windows.malfind # Injizierter Code
Disk Forensics:
Write Blocker:
→ Hardware: Tableau, CRU Wiebetech (Standard bei Strafverfolgung)
→ Software: Arsenal Image Mounter, dc3dd, FTK Imager mit Write-Block
Forensisches Image erstellen:
dd if=/dev/sda bs=512 | tee disk.img | sha256sum > disk.sha256
# Oder professionell:
ewfacquire /dev/sda -t evidence -C "Case-2026-001" -D "Server-DC01"
Analyse-Tools:
→ Autopsy (Open Source): GUI für Disk-Forensik, Windows + Linux
→ FTK (Forensic Toolkit): kommerziell, Marktstandard
→ X-Ways Forensics: effizient für große Mengen
→ Plaso: Log2Timeline für Supertimeline (alle Events in Zeitlinie)
Malware-Analyse im DFIR-Kontext
Triage-Analyse (schnell, Surface):
Statische Analyse:
→ Datei-Hash gegen VirusTotal prüfen:
sha256sum malware.exe | cut -d' ' -f1
curl -X POST "https://www.virustotal.com/vtapi/v2/file/report" \
-d "apikey=<KEY>&resource=<SHA256>"
→ Strings extrahieren: strings -n 8 malware.exe
→ Imports analysieren: dumpbin /imports malware.exe (Windows)
→ Suspicious: CreateRemoteThread, VirtualAllocEx, WriteProcessMemory
→ YARA-Scan: bekannte Muster finden
Dynamische Analyse (Sandbox):
→ Cuckoo Sandbox (selbst-gehostet): malware in isolierter VM
→ ANY.RUN (online, kostenlos): interaktive Malware-Analyse
→ Hybrid Analysis (kostenlos): automatisierte Verhaltensanalyse
→ Joe Sandbox (kommerziell): tiefste Analyse
IOC-Extraktion für SIEM:
→ IP-Adressen und Domains aus Netzwerkverbindungen
→ Datei-Hashes der Malware-Komponenten
→ Registry-Keys die angelegt werden
→ Mutex-Namen (Eindeutige Identifier der Malware)
→ User Agents des C2-Beacons
Incident Timeline rekonstruieren:
Ziel: Attack-Timeline von Initial Access bis Discovery
Windows Event Log Analyse:
→ 4624: Logon erfolgreich (wer hat sich wann angemeldet?)
→ 4625: Logon fehlgeschlagen (Brute Force?)
→ 4648: Logon mit expliziten Credentials (Pass-the-Hash?)
→ 4688: Prozessstart (welche Programme wurden ausgeführt?)
→ 4698: Geplante Task erstellt (Persistence!)
→ 7045: Service installiert (Malware als Service!)
→ 4776: NTLM-Authentifizierung
Windows Artefakte:
→ Prefetch: welche Programmes wurden ausgeführt? (C:\Windows\Prefetch)
→ ShimCache: Programm-Ausführungshistorie (Registry)
→ Amcache.hve: detaillierte Programmausführungsinfos
→ MFT (Master File Table): alle Dateioperationen mit Zeitstempeln
→ Browser History, Downloads, Cache
→ Shellbags: Ordner die geöffnet wurden (Lateral Movement-Indikator)
→ SRUM (System Resource Usage Monitor): Programm-CPU/Netzwerk-Nutzung
Supertimeline mit Plaso:
log2timeline.py --storage-file evidence.plaso /mnt/evidence/
psort.py -z UTC evidence.plaso "date > '2026-02-01 00:00:00'"
# → Alle Events chronologisch aus allen Quellen
Threat Intelligence Integration
IOCs aus DFIR-Analyse in Threat Intel integrieren:
Was sind IOCs (Indicators of Compromise)?
→ File Hashes: SHA256 der Malware (nur gut für bekannte Malware!)
→ IP-Adressen: C2-Server, Download-Server
→ Domains: C2-Domains, Phishing-Domains
→ URLs: Payload-Download-URLs
→ E-Mail-Adressen: Absender von Spear-Phishing
→ Mutex-Namen: eindeutige Identifikatoren der Malware
→ Registry-Keys: Persistence-Mechanismen
→ YARA-Rules: Byte-Pattern der Malware
IOC-Qualität:
→ Pyramid of Pain (David Bianco):
Lowest Pain für Angreifer: Hash (leicht zu ändern!)
→ IP → Domain → Network Artifacts → Tools → TTPs (Highest Pain!)
→ TTPs (Tactics, Techniques, Procedures) = wertvollerete IOCs als Hashes
MISP (Malware Information Sharing Platform):
→ Open-Source IOC-Sharing Platform
→ AWARE7 teilt IOCs über MISP-Community
→ Eigene MISP-Instanz für interne IOC-Verwaltung
misp.github.io - kostenlos, DSGVO-konform
STIX/TAXII (Standard für Threat Intelligence Sharing):
→ STIX 2.1: JSON-Format für strukturierte Threat Intel
→ TAXII 2.1: Transport-Protokoll für STIX-Feeds
→ Integration: SIEM, TIP, Firewalls
Threat Intel in SIEM deployen:
# Microsoft Sentinel - Threat Intelligence Workbook
# Automatisches IOC-Matching gegen alle Logs:
ThreatIntelligenceIndicator
| join (SecurityEvent) on $left.NetworkIP == $right.IpAddress
| where TimeGenerated > ago(24h)
| project TimeGenerated, Computer, IPAddress, ThreatType, Description