Security Logging und Log-Management
Systematische Aufzeichnung sicherheitsrelevanter Ereignisse in IT-Systemen. Grundlage für Angriffserkennung, Forensik und Compliance-Nachweis. Ohne Logging ist Incident Response blind - Angreifer können unerkannt agieren.
Security Logging ist die Aufzeichnung sicherheitsrelevanter Ereignisse - Logins, Dateiänderungen, Netzwerkverbindungen, Fehler, Admin-Aktionen. Log-Management umfasst Sammlung, Normalisierung, Speicherung, Analyse und Aufbewahrung dieser Logs.
Warum Logging entscheidend ist
Ohne Logging:
- Ein Angreifer verweilt 194 Tage unentdeckt (IBM 2024 Durchschnitt)
- Nach einem Vorfall: keine forensische Spur, keine Haftungsdokumentation
- Compliance-Nachweis unmöglich (DSGVO Art. 5, NIS2 Art. 21)
Was muss geloggt werden?
Must-Have Logquellen
Active Directory / Entra ID:
Event ID 4624: Erfolgreicher Login
Event ID 4625: Fehlgeschlagener Login
Event ID 4720: Neues Benutzerkonto erstellt
Event ID 4728: Mitglied zu privilegierter Gruppe hinzugefügt
Event ID 4769: Kerberos-Service-Ticket (Kerberoasting-Erkennung)
Event ID 7045: Neuer Dienst installiert
Netzwerk (Firewall/Proxy):
Alle ausgehenden Verbindungen zu neuen/unbekannten Domains
Verbindungsversuche zu blockierten IPs
Port-Scans und Verbindungsanomalien
DNS-Anfragen (für C2-Erkennung)
Endpoint (EDR/Windows):
Prozess-Starts (welche Elternprozesse? Verdächtige Kombinationen?)
PowerShell-Scriptblock-Logging (Inhalt jedes PS-Scripts)
Registry-Änderungen in Autostart-Keys
Datei-Erstellung in temp-Verzeichnissen
Cloud (Azure AD, AWS CloudTrail):
Alle API-Calls in AWS/Azure
Admin-Aktivitäten
Konfigurationsänderungen
Zugriff auf sensitive Ressourcen (S3 Buckets, Key Vault)
Log-Management-Architektur
Log-Quellen Log-Aggregation Analyse
─────────── ────────────── ───────
Firewall ──────────→ Log-Shipper (Beats) → SIEM (Elastic/Splunk/Sentinel)
AD ──────────→ Syslog/WEF → Korrelations-Regeln
EDR ──────────→ API → Dashboards
Cloud ──────────→ Event Hub/Kinesis → Alerting
Log-Shipper Optionen
- Elastic Beats (Filebeat, Winlogbeat, Metricbeat) - Open Source
- Fluentd / Fluent Bit - Cloud-native, Kubernetes
- Splunk Universal Forwarder - für Splunk-Umgebungen
- Windows Event Forwarding (WEF) - nativ, Windows zu Windows
Aufbewahrungsfristen
| Compliance | Mindest-Aufbewahrung |
|---|---|
| DSGVO Art. 5 (Rechenschaft) | Solange Verarbeitung stattfindet |
| BSI IT-Grundschutz DER.1 | 6-12 Monate (empfohlen) |
| NIS2 Art. 21 | Keine explizite Frist, aber “nachweisbar” |
| PCI DSS 10.7 | 12 Monate (mindestens 3 Monate sofort verfügbar) |
| SOC2 | 90 Tage sofort verfügbar |
| GoBD (Steuerlogs) | 10 Jahre |
Praxis-Empfehlung: 90 Tage hot (schnell durchsuchbar), 1 Jahr warm, 7-10 Jahre cold (Compliance).
Was NICHT geloggt werden darf
- Passwörter (klar: nie)
- Vollständige Kreditkartennummern (PCI DSS)
- Personenbezogene Daten ohne Erforderlichkeit (DSGVO)
- Session-Tokens (Angreifer könnte Session übernehmen wenn Logs gestohlen)
Pseudonymisierung von User-Daten in Logs wenn möglich (IP-Hashing, User-ID statt Name).
Windows PowerShell-Logging einrichten
PowerShell ist das beliebteste Angriffswerkzeug im Windows-Umfeld. Vollständiges Logging ist essentiell:
# Via GPO: Computer Configuration → Admin Templates → Windows Components → PowerShell
# Script Block Logging (Inhalt jedes ausgeführten Scripts)
# Registry:
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" `
-Name "EnableScriptBlockLogging" -Value 1
# Module Logging (welche Module geladen wurden)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ModuleLogging" `
-Name "EnableModuleLogging" -Value 1
# Transcription (Komplettes Sitzungsprotokoll)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\Transcription" `
-Name "EnableTranscripting" -Value 1
Event ID 4104: Script Block Logging - zeigt vollständigen PowerShell-Code inkl. obfuskierter Angriffe nach De-Obfuskation.
SIEM-Integration: Logs allein reichen nicht
Logs ohne Korrelation sind Datengräber. SIEM-Regeln verwandeln Logs in Erkenntnisse:
Alert: "Possible Kerberoasting"
Regel: Event ID 4769 (TGS-Request) mit Rc4-Encryption
mehr als 20 mal in 2 Minuten
vom selben Account
→ Sofort-Alert an SOC-Analyst
Günstigster Einstieg: Microsoft Sentinel (für M365-Umgebungen inklusive, oder ab ~1$/GB), Elastic Security SIEM (Open Source), Wazuh (Open Source, selbstgehostet).