Zum Inhalt springen

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

↑↓NavigierenEnterÖffnenESCSchließen
Threat Hunting: Proaktiv nach Angreifern suchen - Cybersicherheit und digitaler Schutz
Threat Intelligence

Threat Hunting: Proaktiv nach Angreifern suchen

Threat Hunting Methodik: MITRE ATT&CK-Hypothesen, EDR-Telemetrie, NetFlow, Velociraptor und ELK für Living-off-the-Land- und Lateral-Movement-Szenarien.

Jan Hörnemann Chief Operating Officer · Prokurist
11 Min. Lesezeit
ISO 27001 Lead Auditor (PECB/TÜV) T.I.S.P. (TeleTrusT) ITIL 4 (PeopleCert) BSI IT-Grundschutz-Praktiker (DGI) Ext. ISB (TÜV) BSI CyberRisikoCheck CEH (EC-Council)

TL;DR

Threat Hunting geht davon aus, dass Angreifer bereits im Netzwerk sind und sucht proaktiv nach versteckten Bedrohungen, die SIEM-Alerting nicht erkennt. Hypothesen basieren auf MITRE-ATT&CK-Techniken und werden durch Analysen von Windows Event Logs, EDR-Telemetrie, DNS-Logs und NetFlow untersucht. Kernmethoden sind Stack Counting für Ausreisser-Erkennung, Frequency Analysis für C2-Beaconing und TTP-basiertes Hunting. Werkzeuge sind Velociraptor für Endpoint-Sichtbarkeit, Microsoft Sentinel mit KQL sowie Elastic SIEM mit EQL. Jeder Hunt ohne Fund sollte in eine automatische SIEM-Regel münden.

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

Inhaltsverzeichnis (6 Abschnitte)

Threat Hunting geht davon aus, dass Angreifer bereits im Netz sind - man weiss es nur noch nicht. Die Frage ist nicht "Wurden wir angegriffen?" sondern "Wo versteckt sich der Angreifer gerade?"

Threat Hunting vs. SIEM-Monitoring

Warum reaktives Monitoring nicht genügt

SIEM-Monitoring (reaktiv):

  • Wartet auf bekannte Angriffsmuster (Signaturen, Regeln)
  • Dwell Time: durchschnittlich 197 Tage bis zur Entdeckung (IBM 2024)
  • Erkennt: bekannte Angriffe, laute Angriffe
  • Blind für: neue Techniken, langsame/stille Angreifer

Problem: APT-Gruppe nutzt legitime Windows-Tools (Living off the Land) → Keine Signaturen → kein Alert! Angreifer kann Monate im Netz bleiben, Daten exfiltrieren.

Threat Hunting (proaktiv):

  • Analyst nimmt Hypothese: "Ich glaube, ein Angreifer verwendet PowerShell für Lateral Movement"
  • Sucht systematisch in Telemetrie-Daten nach Beweisen
  • Findet: auch dann, wenn kein Alert ausgelöst wurde

Ein erfolgreich abgeschlossener Hunt hat immer einen Wert - unabhängig vom Ergebnis: Ein gefundener Angreifer führt in die Incident Response. Kein gefundener Angreifer führt zur Erstellung einer neuen SIEM-Regel (Hunt → Detection). Identifizierte Blindspots führen zur Verbesserung der Datenerfassung.

Hunt Maturity Model (SQRRL)

LevelBeschreibung
Level 0Kein Hunting (nur reaktiv, Alert-basiert)
Level 1Minimal (seltene, ad-hoc Hunts)
Level 2Prozedural (reproduzierbare Hunt-Prozeduren)
Level 3Innovative (eigene Techniken, ML-unterstützt)
Level 4Leading (automatisierte Hunting-Pipelines)

Hypothesen-Entwicklung mit MITRE ATT&CK

MITRE ATT&CK Framework

  • 14 Taktiken (Phasen): Reconnaissance, Initial Access, Execution...
  • 200+ Techniken pro Taktik
  • Sub-Techniken: konkrete Implementierungen
  • Gruppen: welche APTs nutzen welche Techniken?

Hypothesen-Quellen

  1. MITRE ATT&CK: "Was würden Angreifer tun?"
  2. Threat Intelligence: "Was tun APTs in unserer Branche?"
  3. Aktuelle Reports: "Was wurde letzte Woche von Incident-Response-Teams gesehen?"
  4. Hunt-Ergebnisse: "Was haben wir beim letzten Hunt übersehen?"

Hypothesen-Beispiele

Hypothese 1: Kerberoasting

  • ATT&CK: T1558.003
  • "Angreifer fordert Kerberos-Service-Tickets für Offline-Cracking an"
  • Daten: Windows Security Event 4769 (Kerberos Service Ticket Request)

Hypothese 2: PowerShell-basierte Ausführung

  • ATT&CK: T1059.001
  • "Malware nutzt PowerShell für Downloader oder Lateral Movement"
  • Daten: Process Creation Events (Event 4688), PowerShell-Scriptblock-Logging

Hypothese 3: Living off the Land (LoLBins)

  • ATT&CK: T1218 (System Binary Proxy Execution)
  • "Angreifer missbraucht legitime Windows-Tools für böswillige Zwecke"
  • Verdächtige Prozesse: certutil.exe, regsvr32.exe, mshta.exe, wscript.exe

Hypothese 4: Datenexfiltration via DNS

  • ATT&CK: T1048.003
  • "Daten werden über DNS-Anfragen nach aussen geschleust"
  • Daten: DNS-Logs (sehr lange Subdomains, häufige TXT-Record-Anfragen)

Hypothesen-Qualität

Gut: "Angreifer nutzt certutil.exe um Payload herunterzuladen" - spezifisch, messbar, MITRE-referenziert

Schlecht: "Angreifer macht irgendwas böses" - zu breit, keine Suchanleitung

Datenquellen und Telemetrie

Windows Event Logs - kritische Events

Event-IDBedeutungHunting-Relevanz
4624Erfolgreicher Login (Anmeldungstyp beachten!)Type 3 = Network, Type 10 = Remote Interactive (RDP)
4625Fehlgeschlagener LoginBrute Force erkennen
4688Prozess erstelltCommand Line muss geloggt sein!
4689Prozess beendet-
4698Scheduled Task erstellthäufige Persistenz-Methode
4720Benutzer erstellt-
4732Benutzer zur Gruppe hinzugefügtPrivilegien-Eskalation!
4769Kerberos Service Ticket RequestKerberoasting!
7045Neuer Service installiertPersistence!

Folgende Einstellungen müssen aktiv sein: Process Command Line Logging (Event 4688 mit vollständiger Kommandozeile), PowerShell Scriptblock Logging (Event 4104), PowerShell Module Logging sowie Sysmon für Prozesserstellung, Netzwerkverbindungen und Registry-Änderungen.

EDR-Telemetrie

  • CrowdStrike Falcon, SentinelOne, Microsoft MDE
  • Sehr granular: jede Prozess-Erstellung, jede Netzwerkverbindung
  • API-Zugriff für Hunt-Queries
  • CrowdStrike: Events Data Dictionary (über 50 Event-Typen)

DNS-Logs

  • Welche Domains wurden aufgelöst?
  • Ungewöhnlich lange Subdomains = DNS-Exfiltration?
  • Anfragen an bekannte Malware-C2-Domains
  • Interne Systeme die externe DNS-Server nutzen (verdächtig!)

NetFlow / Network Traffic

  • Welche IP kommuniziert mit wem?
  • Datenvolumen: grosse Uploads nach aussen?
  • Beaconing: regelmäßige Verbindungen (C2-Kommunikation)
  • Ungewöhnliche Ports oder Protokolle

Proxy-Logs

  • HTTP/HTTPS-Anfragen (mit SSL-Inspection)
  • User Agent Strings (verdächtige oder unbekannte)
  • Anfragen an frisch registrierte Domains (< 30 Tage alt)

Hunt-Techniken

Stack Counting

Die Kernfrage lautet: Welche Werte kommen selten vor? Ausreisser sind verdächtig.

Beispiel: Parent Process von PowerShell. Normale Parent-Prozesse sind explorer.exe, cmd.exe oder powershell.exe selbst. Verdächtig ist word.exe → powershell.exe (typisch für Macro-Ausführung). Kritisch ist svchost.exe → powershell.exe, wofür es keinen legitimen Grund gibt.

// KQL (Kusto Query Language / Microsoft Sentinel):
DeviceProcessEvents
| where FileName =~ "powershell.exe"
| summarize count() by InitiatingProcessFileName
| order by count_ asc
// Kleinste count_ = seltenste Parent = verdächtigste!

Frequency Analysis

Wie oft verbindet sich Host X mit Domain Y? Stabiles Intervall ist ein Zeichen für C2-Beaconing (typisch: alle 60 Sekunden), während normale Verbindungen unregelmäßig sind.

-- DNS-Beaconing-Erkennung:
SELECT timestamp, DNS, count(*) as requests
FROM dns_logs
WHERE timestamp > now() - 24h
GROUP BY DNS
HAVING requests > 100  -- Häufige Anfragen an selbe Domain

Clustering

  • Ähnliche Aktivitäten gruppieren
  • Anomalien durch Ausreisser erkennen
  • ML-basiert: Isolationswald, DBSCAN
  • Einsatz: User Behavior Analytics (UEBA)

TTP-based Hunting

Gezielt nach einer bestimmten MITRE-Technik suchen. Beispiel: T1218.011 Rundll32 - "Angreifer nutzt rundll32.exe um DLL auszuführen":

// Sentinel: Verdächtige Rundll32-Ausführungen
DeviceProcessEvents
| where FileName =~ "rundll32.exe"
| where ProcessCommandLine has_any ("javascript:", "vbscript:", "http")
| project Timestamp, DeviceName, ProcessCommandLine

Hunt-Szenarien und Playbooks

Hunt 1: PowerShell Downloader

Hypothese: Angreifer lädt Payload mit PowerShell herunter

DeviceProcessEvents
| where FileName =~ "powershell.exe"
| where ProcessCommandLine has_any (
    "DownloadString", "DownloadFile", "IEX", "Invoke-Expression",
    "WebClient", "Net.WebClient", "Start-BitsTransfer",
    "bitsadmin", "certutil", "-enc", "-encoded"
)
| where InitiatingProcessFileName !in~ ("powershell.exe", "pwsh.exe")
| project Timestamp, DeviceName, AccountName, ProcessCommandLine

Triage: PowerShell aus Word ist fast sicher Malware. PowerShell aus einer Skript-Verwaltung ist möglicherweise legitim und muss geprüft werden.

Hunt 2: Kerberoasting Detektion

Hypothese: Angreifer fordert Service Tickets für Offline-Cracking an

// Verdächtige Service Ticket Requests:
// RC4-Verschlüsselung (0x17) ist veraltet und beim Cracking bevorzugt
// Viele Tickets von einem Host kurz hintereinander
SecurityEvent
| where EventID == 4769
| where TicketEncryptionType == "0x17"  // RC4 = verdächtig!
| where ServiceName !endswith "$"  // Nicht Maschinen-Accounts
| summarize count() by Account, ServiceName, Computer
| where count_ > 5  // Mehrere Tickets = Kerberoasting!

Hunt 3: DNS-Tunneling

Hypothese: Daten werden via DNS-Anfragen exfiltriert. Normale Subdomains sind kurz (www.google.com), DNS-Tunnel enthalten Base64-kodierte Nutzdaten in langen Subdomains (z.B. aGVsbG8gd29ybGQ=.evil.com).

DnsEvents
| where SubType == "LookupQuery"
| extend SubdomainLength = strlen(extract("^([^.]+)", 1, Name))
| where SubdomainLength > 40  // Verdächtig lange Subdomain
| summarize count() by ClientIP, Name
| order by count_ desc

Hunt 4: Lateral Movement via SMB

Hypothese: Angreifer bewegt sich per Pass-the-Hash über SMB

SecurityEvent
| where EventID == 4624
| where LogonType == 3  // Netzwerk-Login
| where AuthenticationPackageName == "NTLM"  // PtH nutzt NTLM!
| where TargetUserName != "ANONYMOUS LOGON"
| summarize count() by IpAddress, TargetUserName
| where count_ > 5  // Ein Quell-IP versucht viele Ziele

Toolchain für Threat Hunter

Velociraptor

Open-Source-Plattform für Endpoint-Sichtbarkeit und Hunting. Ein Agent auf den Endpoints ermöglicht artefaktbasierte Abfragen per VQL (Velociraptor Query Language) sowie Live Response direkt auf Verdachts-Maschinen. Beispiel: alle Autostart-Einträge auf allen Hosts abfragen mit SELECT * FROM Artifact.Windows.Sys.Users().

Microsoft Sentinel (Cloud-SIEM)

KQL als mächtige Query-Sprache, Hunting-Workbooks als strukturierte Hunt-Leitfaden, Jupyter Notebooks für ML-basiertes Hunting sowie Bookmarks zum Speichern und Verfolgen interessanter Findings.

Elastic Security (EQL Stack)

EQL (Event Query Language) ermöglicht sequenzielle Abfragen für Angriffsketten. Das folgende Beispiel erkennt PowerShell-Ausführungen, die direkt aus einer Office-Anwendung gestartet wurden:

sequence by process.parent.entity_id
  [process where process.name == "winword.exe"]
  [process where process.name == "powershell.exe"]

Timelines helfen beim Zusammenführen von Events; community-basierte Hunt Queries stehen öffentlich zur Verfügung.

Jupyter Notebooks

ML-unterstütztes Hunting mit Pandas und Scikit-Learn für Anomalie-Erkennung. Die MSTIC Microsoft Threat Intelligence Notebooks sind auf GitHub verfügbar. Visualisierungen werden mit Matplotlib oder Plotly erstellt.

MITRE Caldera (Adversary Emulation)

Automatisierte Angreifer-Emulation nach ATT&CK zur Hunt-Validierung: "Würden wir diesen Angriff erkennen?" Das Tool eignet sich auch für Red Team Automation.

Nächster Schritt

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

Kostenlos · 30 Minuten · Unverbindlich

Artikel teilen

Zertifiziert ISO 27001ISO 9001AZAV

Rufen Sie uns an

Mo-Fr, 8:00-17:00 Uhr - persönlich und unverbindlich.

0209 8830 6764
Jetzt anrufen