Zum Inhalt springen

Services, Wiki-Artikel, Blog-Beiträge und Glossar-Einträ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 geht über reaktive SIEM-Alerts hinaus: Hypothesen-basiertes Suchen nach versteckten Bedrohungen im Netz. Methodik: MITRE ATT&CK für Hypothesen, Datenquellen (EDR-Telemetrie, Windows Event Logs, DNS, NetFlow), Hunt-Techniken (Stacking, Clustering, TTP-basiert), Toolchain (Velociraptor, ELK, Jupyter Notebooks), typische Hunting-Szenarien (Living off the Land, Lateral Movement, Data Exfiltration). Messung des Hunting-Erfolgs.

Jan Hörnemann 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 sucht proaktiv nach Ang

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

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

Ergebnis guter Hunts:

  1. Angreifer gefunden → Incident Response einleiten
  2. Kein Angreifer → Neue SIEM-Regel erstellen (Hunt → Detection!)
  3. Blindspots identifiziert → Datenerfassung verbessern

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!

Muss aktiviert sein:

  • Process Command Line Logging (4688: vollständige Cmdline)
  • PowerShell Scriptblock Logging (Event 4104 in PS-Log)
  • PowerShell Module Logging
  • Sysmon: process creation, network connections, registry changes

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

Frage: Welche Werte sind selten? (Outlier = verdächtig!)

Beispiel: Parent Process von PowerShell

  • Normal: explorer.exe, cmd.exe, powershell.exe
  • Verdächtig: word.exe → powershell.exe (Macro-Ausführung!)
  • KRITISCH: svchost.exe → powershell.exe (kein legitimer Grund!)
// 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?

  • Beaconing: stabile Intervalle = C2!
  • Normal: unregelmässige Verbindungen
  • C2: alle 60 Sekunden (typischer Beacon-Interval)
-- DNS-Beaconing-Erkennung (Velociraptor):
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 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 = fast sicher Malware
  • PowerShell aus Skript-Verwaltung = möglicherweise legitim (prüfen!)

Hunt 2: Kerberoasting Detektion

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

// Verdächtige Service Ticket Requests:
// - Encryption Type RC4 (0x17): Veraltet, für 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

// Lange Subdomains (DNS-Tunnel-Indikator):
// Normal: www.google.com (kurz)
// Tunnel: aGVsbG8gd29ybGQ=.evil.com (Base64 in Subdomain!)
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 Endpoint-Visibility und Hunting
  • Agent auf Endpoints: artefaktbasierte Abfragen
  • VQL (Velociraptor Query Language)
  • Live Response: auf Verdachts-Maschine direkt abfragen
-- Beispiel: alle autostart entries auf allen Hosts:
SELECT * FROM Artifact.Windows.Sys.Users()

Microsoft Sentinel (Cloud-SIEM)

  • KQL: mächtige Query-Sprache
  • Hunting-Workbooks: strukturierte Hunt-Leitfaden
  • Notebooks: Jupyter für ML-basiertes Hunting
  • Bookmarks: interessante Findings speichern und verfolgen

Elastic Security (ELK Stack)

  • EQL (Event Query Language): sequenzielle Abfragen
  • Timelines: Events zusammenführen
  • Hunt Queries: Community-basiert
// EQL: PowerShell durch Office-Anwendung:
sequence by process.parent.entity_id
  [process where process.name == "winword.exe"]
  [process where process.name == "powershell.exe"]

Jupyter Notebooks

  • ML-unterstütztes Hunting
  • Pandas, Scikit-Learn für Anomalie-Erkennung
  • MSTIC: Microsoft Threat Intelligence Notebooks (GitHub)
  • Visualisierung: Matplotlib, Plotly

MITRE Caldera (Adversary Emulation)

  • Automatisierte Angreifer-Emulation nach ATT&CK
  • Hunt-Validierung: “Würden wir diesen Angriff erkennen?”
  • 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 9001AZAVBSI

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