1. Überblick & Zielsetzung

Das SIEM Add-on ist eine eigenständige Applikation, die auf demselben RKE2-Kubernetes-Cluster wie das Self-Help Service Portal betrieben wird. Es ersetzt Microsoft Sentinel (das bisherige Azure-basierte SIEM) vollständig durch eine On-Premises-Lösung auf Basis von Elasticsearch.

ZielBeschreibung
Zentrale Log-AggregationAlle sicherheitsrelevanten Logs aus On-Premises- und Cloud-Quellen an einem Ort
Echtzeit-ErkennungAnomalien, Bedrohungen und Policy-Verstöße in Echtzeit erkennen
Automatisierte ReaktionSOAR-Fähigkeiten für automatische Eindämmung und Ticket-Erstellung
Compliance-NachweisAuditierbare Log-Aufbewahrung gemäß BaFin/BAIT und DSGVO
Portal-IntegrationBidirektionale Synchronisation mit dem Self-Help Portal (Tickets, Incidents)
Sentinel-AblösungVollständiger Ersatz von Microsoft Sentinel ohne Funktionsverlust

1.1 Architekturprinzipien

PrinzipUmsetzung
On-Premises FirstAlle SIEM-Daten verbleiben im eigenen Rechenzentrum
Eigenständige ApplikationUnabhängig deploybar, eigener Namespace, eigene APIs
Portal-Integration via RESTBidirektionale Anbindung über definierte REST-APIs
Shared InfrastructureNutzt denselben RKE2-Cluster und kann Elasticsearch mit dem Portal teilen
Open-Source-basiertKein Vendor-Lock-in, alle Kernkomponenten sind Open Source
DSGVO-konformPseudonymisierung, Zugriffskontrolle und Löschkonzept für personenbezogene Daten

2. High-Level Architektur

SIEM Add-on Architektur
  ┌─── Log-Quellen ────────────────────────────────────────────────┐
  │                                                                 │
  │  Kubernetes            On-Premises             Cloud (M365)     │
  │  ──────────            ──────────              ────────────     │
  │  • K8s Audit Logs      • Active Directory      • Exchange Logs  │
  │  • Pod Logs            • Windows Event Logs    • SharePoint     │
  │  • Ingress Logs        • Firewall Logs         • Entra ID Logs  │
  │  • Portal App Logs     • DNS / DHCP Logs       • Teams Audit    │
  │  • API Gateway Logs    • Mail Gateway Logs                      │
  │  • Vault Audit Logs    • Endpoint Logs                          │
  │                        • CyberArk/PAM Logs                      │
  └────────────────────────────┬────────────────────────────────────┘
                               ▼
  ┌────────────────────────────────────────────────────────────────┐
  │              FLUENT BIT (Log Collection Layer)                  │
  │  DaemonSet (K8s) │ Syslog Receiver │ HTTP/REST Receiver        │
  │  Parser → Filter → Enrichment → Routing → Output              │
  └────────────────────────────┬───────────────────────────────────┘
                               ▼
  ┌────────────────────────────────────────────────────────────────┐
  │              ELASTICSEARCH CLUSTER (SIEM Data Store)           │
  │  Hot Tier (30 Tage, SSD) │ Warm Tier (90 Tage, HDD)          │
  │  Cold Tier (1 Jahr, MinIO/S3 Snapshots)                        │
  └────────────────────────────┬───────────────────────────────────┘
                               ▼
  ┌────────────────────────────────────────────────────────────────┐
  │         ALERT & CORRELATION ENGINE (Node.js / Python)          │
  │  Sigma Rules │ Correlation Engine │ MITRE ATT&CK Mapper        │
  │  Threat Intel │ SOAR Engine │ Anomaly Detection (ML)            │
  └────────────────────────────┬───────────────────────────────────┘
                               ▼
  ┌────────────────────────────────────────────────────────────────┐
  │              SOC DASHBOARD (React / Next.js)                    │
  │  Incident Mgmt │ Alert Dashboard │ Threat Hunting │ Forensik   │
  └────────────────────────────┬───────────────────────────────────┘
                               ▼
  ┌────────────────────────────────────────────────────────────────┐
  │         PORTAL INTEGRATION (REST API, bidirektional)           │
  │  SIEM → Portal: Security-Tickets, Incident-Sync, Alerts       │
  │  Portal → SIEM: User-Events, Admin-Actions, AI-Audit-Logs     │
  └────────────────────────────────────────────────────────────────┘

2.1 Komponentenübersicht

KomponenteTechnologieZweck
Log CollectorFluent Bit (DaemonSet)Log-Sammlung von allen K8s-Nodes
Syslog ReceiverFluent Bit (Deployment)Empfang von Syslog-Daten (Non-K8s-Quellen)
Cloud PollerNode.js ServiceGraph API Polling für M365-Logs
Data StoreElasticsearch 8 ClusterIndizierung, Suche, Aggregation
Alert EngineNode.js / PythonSigma-Transpiler, Korrelation, Alerting
SOAR EngineNode.jsPlaybook-Ausführung, Auto-Containment
Threat Intel ServicePythonFeed-Integration, IoC-Management
SOC DashboardReact (Next.js)Visualisierung, Incident Management
Forensic ServiceNode.js / PythonEvidence Collection, Investigation
API GatewayKong / Traefik (shared)REST-API-Exposition für Portal-Integration

2.2 Kubernetes Deployment

Namespace: hafs-siem

Alle SIEM-Komponenten laufen im eigenen Kubernetes-Namespace. Geschätzter Ressourcenbedarf: 12–16 vCPU, 48–64 GB RAM, 2 TB SSD (Hot) + 5 TB HDD (Warm) + MinIO (Cold).

Deployment-TypServices
DaemonSetsfluent-bit (alle Worker Nodes)
Deployments (HA)siem-alert-engine (2R), siem-correlation-svc (2R), siem-soar-engine (2R), siem-dashboard (2R), siem-api (2R), siem-syslog-receiver (2R)
Deployments (Single)siem-threat-intel-svc, siem-forensic-svc, siem-cloud-poller
StatefulSetselasticsearch-siem-hot (3 Nodes, SSD), elasticsearch-siem-warm (2 Nodes, HDD)
CronJobssigma-rule-sync (stündlich), threat-intel-update (4h), ilm-rollover (täglich), cold-tier-snapshot (täglich), compliance-report (wöchentlich)

3. Log-Quellen & Collection

Das SIEM erfasst alle sicherheitsrelevanten Log-Quellen aus Kubernetes, On-Premises-Infrastruktur und der Microsoft 365 Cloud.

Log-QuelleProtokoll / MethodeEPSPriorität
Kubernetes Audit LogsFluent Bit DaemonSet (Datei)~50Hoch
Portal Application LogsFluent Bit DaemonSet (stdout)~100Hoch
Active DirectorySyslog (WinLogBeat → Fluent Bit)~150Kritisch
Firewall LogsSyslog (UDP/TCP 514)~500Kritisch
Windows Event LogsSyslog (WinLogBeat → Fluent Bit)~300Hoch
DNS LogsSyslog (UDP/TCP 514)~400Mittel
Network Flow LogsNetFlow/sFlow → Fluent Bit~1000Mittel
CyberArk/PAM LogsSyslog (CEF-Format)~30Kritisch
HashiCorp Vault AuditFluent Bit DaemonSet (Datei)~20Kritisch
M365 / Entra ID LogsGraph API Polling (5 Min)~50Hoch
Exchange Online LogsGraph API Polling (5 Min)~80Hoch
~3.200
Events pro Sekunde (gesamt)
~15 GB
Log-Volumen pro Tag
14+
Log-Quellen integriert

3.1 Fluent Bit Pipeline

Fluent Bit Log Collection Pipeline
  ┌─── Input Plugins ──────────────────────────────────────────┐
  │  [tail]    → /var/log/containers/*.log (K8s Pods)          │
  │  [systemd] → journald (Node-Level Logs)                    │
  │  [syslog]  → TCP/UDP 514 (Firewall, AD, DNS, DHCP)        │
  │  [syslog]  → TCP 6514 TLS (Mail Gateway, Endpoints)       │
  │  [http]    → HTTP 8888 (Webhooks, Custom Sources)          │
  └─────────────────────────────┬──────────────────────────────┘
                                ▼
  ┌─── Processing Pipeline ────────────────────────────────────┐
  │  Parser:     JSON, Syslog RFC 5424, CEF, Regex (Legacy)    │
  │  Filter:     K8s-Metadata, ECS-Normalisierung, Noise-      │
  │              Reduction, PII-Pseudonymisierung, Throttle     │
  │  Enrichment: GeoIP, Asset-Lookup, Threat-Intel-Lookup      │
  └─────────────────────────────┬──────────────────────────────┘
                                ▼
  ┌─── Output ─────────────────────────────────────────────────┐
  │  [es]   → Elasticsearch (siem-logs-YYYY.MM.DD)             │
  │  [nats] → NATS / RabbitMQ (Echtzeit-Alerts-Pipeline)      │
  │  [file] → /backup/ (Fallback bei ES-Ausfall)               │
  └─────────────────────────────────────────────────────────────┘

3.2 Daten-Normalisierung (Elastic Common Schema)

Alle Logs werden auf das Elastic Common Schema (ECS) normalisiert, um einheitliche Korrelation und Suche zu ermöglichen.

ECS-FeldBeschreibungBeispiel
@timestampZeitstempel des Events2026-02-10T14:30:00.000Z
event.categoryEvent-Kategorieauthentication, network, process
event.actionDurchgeführte Aktionuser-login-success, firewall-deny
event.severitySchweregrad (0–100)75
source.ipQuell-IP-Adresse10.20.1.15
user.nameBenutzernamem.mueller
mitre.tacticMITRE ATT&CK Taktikinitial-access
mitre.techniqueMITRE ATT&CK TechnikT1078 (Valid Accounts)

4. Elasticsearch – SIEM Data Store

4.1 Cluster-Konfiguration

ParameterWertBeschreibung
Cluster-TypShared oder DediziertKann den Portal-ES-Cluster mitnutzen oder eigenen betreiben
Hot Nodes3 Nodes, SSDAktuelle Daten (30 Tage), schnelle Suche
Warm Nodes2 Nodes, HDDÄltere Daten (31–90 Tage), langsamere Suche
Cold TierMinIO SnapshotsArchiv (91 Tage–1 Jahr), Restore on Demand
Shard-Strategie1 Primary + 1 ReplicaBalance zwischen Performance und Redundanz
Index-Patternsiem-logs-YYYY.MM.DDTägliches Rollover für effizientes ILM

4.2 Index Lifecycle Management (ILM)

Index Lifecycle Management
  Hot Phase (0–30 Tage)
  ┌────────────────────────────────────────────────────────┐
  │  SSD-backed Nodes, 1 Primary + 1 Replica Shard         │
  │  Rollover bei 50 GB oder 1 Tag, Force Merge             │
  │  Volle Suchgeschwindigkeit, Echtzeit-Indexierung        │
  └──────────────────────┬─────────────────────────────────┘
                         ▼  Nach 30 Tagen
  Warm Phase (31–90 Tage)
  ┌────────────────────────────────────────────────────────┐
  │  HDD-backed Nodes, Shrink auf 1 Shard, Read-Only       │
  │  Langsamere Suche, aber vollständig querybar            │
  └──────────────────────┬─────────────────────────────────┘
                         ▼  Nach 90 Tagen
  Cold Phase (91 Tage–1 Jahr)
  ┌────────────────────────────────────────────────────────┐
  │  Snapshot → MinIO (S3-kompatibel), Index entfernt       │
  │  Searchable Snapshot (optional), Restore on Demand      │
  └──────────────────────┬─────────────────────────────────┘
                         ▼  Nach 1 Jahr
  Delete Phase (> 1 Jahr, konfigurierbar)
  ┌────────────────────────────────────────────────────────┐
  │  Löschung nach 1 Jahr (Standard)                        │
  │  Ausnahme: BaFin/BAIT-relevante Logs → 5–10 Jahre     │
  │  Security-Incident-Logs → bis Case Closed                │
  └────────────────────────────────────────────────────────┘

4.3 Speicher-Kalkulation

TierDauerVolumen/TagGesamt
Hot30 Tage~15 GB/Tag~450 GB
Warm60 Tage~10 GB (komprimiert)~600 GB
Cold275 Tage~5 GB (komprimiert)~1,4 TB
Gesamt (1 Jahr)365 Tage~2,5 TB
portal.hafs.de/siem/logs?index=security-*
Log Search — SIEM
KQL Lucene 💾 Query speichern
source.ip: "10.0.0.*" AND event.action: "authentication_failure" AND @timestamp >= now-1h
▶ Suchen Index: security-* ▾ Zeitraum: Letzte Stunde ▾ 342 Treffer in 0.12s
11:42:03.221WARNauth_failure src=10.0.0.45 user=admin dst=DC01 method=NTLM reason="invalid_password"
11:41:58.103WARNauth_failure src=10.0.0.45 user=admin dst=DC01 method=NTLM reason="invalid_password"
11:41:52.887WARNauth_failure src=10.0.0.45 user=admin dst=DC02 method=NTLM reason="invalid_password"
11:41:47.445ERRORauth_failure src=10.0.0.45 user=svc_backup dst=DC01 method=Kerberos reason="account_locked"
11:41:42.201WARNauth_failure src=10.0.0.45 user=admin dst=DC01 method=NTLM reason="invalid_password"
11:41:38.112INFOauth_failure src=10.0.0.88 user=j.fischer dst=EX01 method=OAuth reason="token_expired"
★ AI-Analyse
Verdächtig: 47 fehlgeschlagene Anmeldeversuche von 10.0.0.45 innerhalb von 5 Minuten. Ziel: Domain Controller. Pattern deutet auf Brute-Force-Angriff hin (MITRE: T1110.001).
⚠ Incident erstellen IP blockieren
SIEM Log-Suche mit KQL-Query, Echtzeit-Ergebnissen und AI-Anomalie-Erkennung

5. Alert & Correlation Engine

5.1 Sigma Rules Integration

Das SIEM Add-on unterstützt Sigma Rules als primäres Detection-Format. Ein Transpiler konvertiert Sigma-YAML-Regeln automatisch in Elasticsearch Query DSL.

Sigma Rules Pipeline
  Sigma Rule (YAML)
       │
       ▼
  ┌──────────────────┐
  │ Sigma Transpiler │
  │ (sigmac / pySigma)│
  │                  │
  │ YAML → ES Query  │
  │ DSL              │
  └────────┬─────────┘
           │
           ├──► Elasticsearch Watcher (Scheduled Query, 1–5 min)
           ├──► Elasticsearch Alerting Plugin
           └──► Alert Engine (Custom, komplexe Korrelation)

  Sigma-Quellen:
  • SigmaHQ Community Rules (~3.000 Regeln)
  • HAFS Custom Rules (~200+ eigene Regeln)
  • CERT-Bund / BSI Advisories (konvertiert)
  • Branchenspezifische Finance-Regeln

5.2 Sigma Rule Beispiel

# Impossible Travel Detection title: Impossible Travel - Portal Access id: hafs-custom-001 status: stable description: | Login von zwei verschiedenen Geo-Locations innerhalb unmöglicher Reisezeit erkannt author: HAFS Security Team logsource: category: authentication product: portal detection: selection: event.action: user-login-success condition: selection # Korrelation: 2 Logins desselben Users, # Distanz > 500km, Zeitdifferenz < (Distanz / 900 km/h) level: high tags: - attack.initial_access - attack.t1078

5.3 Detection Rules – HAFS Custom

RegelTriggerMITREAktion
Impossible TravelLogin von 2 Geo-Locations in unmöglicher ReisezeitT1078Security-Ticket (P2), MFA erzwingen
Mass Permission Request> 10 Berechtigungsanfragen in 1hT1098Security-Ticket (P2), Requests pausieren
Off-Hours Admin ActivityAdmin-Aktion außerhalb GeschäftszeitenT1078.002Security-Ticket (P3), Manager benachrichtigen
Portal AI AbusePrompt Injection, > 50 Anfragen/h, Jailbreak-VersucheT1059Security-Ticket (P2), User-Sperre
Bulk Data ExportExport von > 1000 Datensätzen pro SessionT1567Security-Ticket (P3), DLP-Check
Brute Force Detection> 5 fehlgeschlagene Logins in 5 MinutenT1110Auto-Block (15 min), Security-Ticket (P2)
Lateral MovementAuth an > 5 Systemen in 10 minT1021Security-Ticket (P1), Account-Review
Privilege EscalationBerechtigung erhöht ohne Access RequestT1078.002Security-Ticket (P1), Revert
DNS TunnelingDNS-Queries > 100 Zeichen oder hohe FrequenzT1071.004Security-Ticket (P2), DNS-Block
Unauthorized CertificateVault-Zertifikat außerhalb definierter ServicesT1552.004Security-Ticket (P1), Zertifikat widerrufen

5.4 Correlation Engine

Die Correlation Engine erkennt mehrstufige Angriffe durch Verknüpfung mehrerer Events:

KorrelationsregelEventsZeitfensterSeverity
Account Compromise ChainFailed Logins → Successful Login → Privilege Escalation30 minCritical
Insider Threat PatternOff-Hours Login → Bulk Data Access → External Email2hCritical
Malware PropagationEndpoint Alert → Lateral Movement → Multi-Host Alerts1hCritical
Data ExfiltrationLarge Query → Data Export → External Transfer1hCritical
Phishing CampaignMultiple Users klicken gleichen Link → Credential Theft4hHigh
Supply Chain AttackNew Binary Deployed → Unusual Network Connections24hHigh
portal.hafs.de/siem/alerts
Security Alerts
Alle (23) Critical (2) High (5) Medium (11) 💾 Export
SeverityAlertSourceMITRECountLast SeenStatus
CRITICAL Brute-Force Attack – DC01 10.0.0.45 T1110.001 342 vor 2 min Open
CRITICAL Lateral Movement Detected 10.0.0.45 T1021.002 12 vor 5 min Investigating
HIGH Suspicious PowerShell Execution WS-0142 T1059.001 3 vor 12 min Triaged
HIGH Unusual Outbound Traffic – Port 4444 10.0.1.22 T1571 87 vor 18 min Open
MEDIUM Failed Login – Service Account svc_backup T1078.002 5 vor 23 min Resolved
SIEM Alert-Übersicht mit Severity-Stufen, MITRE ATT&CK-Mapping und Event-Counts

6. MITRE ATT&CK Mapping

MITRE ATT&CK Coverage Map
  Initial Access           Execution             Persistence
  T1078 Valid Accounts ██  T1059 Cmd&Script  ██  T1098 Account Man. ██
  T1133 External Svc   ██  T1204 User Exec   ██  T1136 Create Acct  ██
  T1566 Phishing       ██  T1203 Exploitation █░  T1053 Sched Task   █░

  Privilege Escalation     Defense Evasion       Credential Access
  T1078 Valid Accounts ██  T1070 Indicator Rm ██  T1110 Brute Force  ██
  T1068 Exploitation   ██  T1036 Masquerading █░  T1003 OS Cred Dump █░
  T1548 Abuse Elev.    █░  T1562 Impair Def.  ██  T1552 Unsec. Cred  ██

  Lateral Movement         Collection            Exfiltration
  T1021 Remote Svc     ██  T1530 Cloud Storage██  T1567 Exfil Web Svc██
                           T1213 Data from IS ██  T1071 App Layer    ██

  Legende: ██ Vollständig   █░ Teilweise   ░░ Geplant

Jeder erkannte Incident wird automatisch einer oder mehreren MITRE ATT&CK Taktiken und Techniken zugeordnet. Diese Zuordnung erscheint im SOC Dashboard und im Portal-Ticket.

Feld im IncidentBeschreibungBeispiel
mitre.tacticATT&CK Taktik(en)["initial-access", "credential-access"]
mitre.techniqueATT&CK Technik-ID(s)["T1078", "T1110"]
mitre.sub_techniqueSub-Technik (falls zutreffend)["T1078.002"]
mitre.confidenceZuordnungs-Konfidenz0.85
portal.hafs.de/siem/mitre-heatmap
MITRE ATT&CK Coverage Heatmap
Letzte 30 Tage 💾 PDF Export
Enterprise ATT&CK v14 · Detections: 47/201 Techniken abgedeckt (23.4%)
Keine Daten 1–5 6–20 21–50 51–100 100+
TaktikTechnik 1Technik 2Technik 3Technik 4Technik 5
Initial AccessT1566 Phishing (142)T1078 Valid Accts (38)T1190 Exploit (4)T1133 RDPT1199 Trust
ExecutionT1059 PowerShell (67)T1204 User Exec (12)T1047 WMI (3)T1053 TaskT1569 Svc
PersistenceT1136 Acct Create (15)T1053 Sched Task (2)T1547 BootT1546 EventT1556 Auth
Credential AccessT1110 Brute Force (347)T1003 OS Cred (29)T1558 Kerberos (8)T1552 UnsecT1539 Cookie
Lateral MovementT1021 Remote Svc (42)T1570 Lateral Tool (5)T1550 Alt AuthT1563 RDPT1080 Shared
ExfiltrationT1048 Alt Proto (11)T1567 Web Svc (2)T1041 C2T1052 PhysT1537 Cloud
MITRE ATT&CK Heatmap: Farbcodierte Technik-Matrix mit Detection-Coverage und Event-Counts

7. Threat Intelligence

Threat Intelligence Integration
  ┌─── Externe Feeds ──────────────────────────────────────────┐
  │  CERT-Bund (BSI)  │  MISP (Open Source)  │  Abuse.ch       │
  │  Advisories        │  IoC-Sharing          │  URLhaus,       │
  │  Warnmeldungen     │  TI Platform          │  MalwareBazaar  │
  └────────────────────────────┬────────────────────────────────┘
                               ▼
  ┌─── Threat Intel Service (Python) ──────────────────────────┐
  │  STIX/TAXII-Client (Feed-Ingestion)                         │
  │  IoC-Normalisierung (IP, Domain, Hash, URL, Email)          │
  │  Deduplication & Scoring, Expiration Management (TTL)       │
  └────────────────────────────┬────────────────────────────────┘
                               ▼
  ┌─── Interne Quellen ────────────────────────────────────────┐
  │  Eigene IoCs aus HAFS-Incidents                             │
  │  Blocklists aus Firewall-Analysen                           │
  │  Branchenspezifische Finance-Sector-Feeds (FS-ISAC)        │
  └─────────────────────────────────────────────────────────────┘

  Verwendung:
  • Echtzeit-Matching in Fluent Bit Pipeline (bekannte Bad-IPs)
  • Enrichment in Elasticsearch (threat.indicator.* Felder)
  • Alert-Priorisierung (IoC-Match → höhere Severity)
  • SOC Dashboard: Threat Intel Overlay auf Incidents

7.1 IoC-Typen

IoC-TypQuelleAktualisierungNutzung
IP-AdressenCERT-Bund, MISP, Abuse.chAlle 4hFirewall-Enrichment, Alert-Korrelation
DomainsCERT-Bund, URLhausAlle 4hDNS-Log-Matching, Proxy-Enrichment
File HashesMalwareBazaar, MISPAlle 4hEndpoint-Log-Matching
URLsURLhaus, CERT-BundAlle 4hProxy-Log-Matching, Mail-Gateway
E-Mail-AdressenMISP, InternTäglichPhishing-Detection
CVE-ReferenzenCERT-Bund, NVDTäglichVulnerability-Korrelation
portal.hafs.de/siem/threat-intel
Threat Intelligence Feed
● 3 Feeds Active Last Sync: vor 5 min
1.247
Active IoCs
3
Matches (24h)
12
Neue IoCs (24h)
AKTIVE IoC-MATCHES
TypIndikatorSourceThreatConfidenceMatch
IP 185.220.101.45 AlienVault OTX APT28 C2 Server 95% Outbound Traffic detected
Hash a3f2b…e91d MISP Cobalt Strike Beacon 98% Found on WS-0142
Domain evil-update.net AbuseIPDB Phishing Infrastructure 72% DNS-Query blockiert
Threat Intelligence Feed mit IoC-Matching, Confidence-Scores und aktiven Treffern

8. SOAR – Automatisierte Reaktion

Die SOAR Engine (Security Orchestration, Automation & Response) führt bei erkannten Alerts automatisch YAML-basierte Playbooks aus:

SOAR Engine – Playbook-Architektur
  Alert/Incident
       │
       ▼
  ┌──────────────────┐
  │ Playbook Router  │
  │ Severity + Type  │──► Playbook-Auswahl
  └────────┬─────────┘
           │
           ├──► Auto-Enrichment Playbook
           │    GeoIP, User-Profil, Asset-Info, Threat-Intel,
           │    Historische Incidents des Users
           │
           ├──► Auto-Containment Playbook (bei Critical)
           │    Account-Sperre, Session Termination,
           │    Netzwerk-Isolation, DNS-Sinkhole
           │
           ├──► Auto-Ticket Playbook
           │    Security-Ticket im Portal erstellen,
           │    Severity-Mapping, SLA-Timer starten
           │
           ├──► Auto-Notification Playbook
           │    Teams an SOC-Channel, E-Mail an Security-Officer,
           │    PagerDuty (P1 außerhalb Geschäftszeiten)
           │
           └──► Investigation Playbook
                Log-Aggregation, Timeline, Affected Assets,
                IOC-Extraktion aus Incident

  Konfiguration: YAML-basiert, Git-versioniert
  Ausführung: Event-driven via NATS/RabbitMQ
  Audit: Jede Playbook-Ausführung wird protokolliert

8.1 Playbook-Severity-Mapping

SIEM SeverityPortal PriorityAuto-ActionsReaktionszeit
Critical (90–100)P1Auto-Containment + Auto-Ticket + PagerDuty< 15 min
High (70–89)P2Auto-Ticket + Teams-Alert + Auto-Enrichment< 30 min
Medium (40–69)P3Auto-Ticket + E-Mail-Notification< 4h
Low (1–39)P4Logging + wöchentlicher Summary-ReportNächster Arbeitstag
Informational (0)Nur Logging, kein Ticket
portal.hafs.de/siem/incidents/SEC-2026-0042
SEC-2026-0042 · Suspected Lateral Movement
CRITICAL Investigating ⚠ Eskalieren
Timeline Evidence Affected Assets SOAR Actions
11:42
Brute-Force Alert: 342 auth failures
Source: 10.0.0.45 → DC01 · MITRE: T1110.001
11:44
SOAR: IP automatisch blockiert
Firewall-Regel erstellt · Playbook: Brute-Force-Response
11:45
Lateral Movement detected
SMB-Sessions von 10.0.0.45 zu 3 weiteren Hosts · T1021.002
11:47
AI-Korrelation: Cobalt Strike IoC
Hash-Match auf WS-0142 · TI-Source: MISP (98% Confidence)
11:50
SOAR: Host-Isolation ausgeführt
WS-0142 vom Netzwerk isoliert · EDR-Scan gestartet
11:42:03ALERT342x auth_failure from 10.0.0.45 in 300s (threshold: 10)
11:45:12ALERTSMB lateral movement: 10.0.0.45 → 10.0.0.88, .91, .103
11:47:01ALERTTI match: cobalt_strike_beacon hash=a3f2b...e91d on WS-0142
INCIDENT SUMMARY
🕑 Dauer: 18 min
💻 Assets: 4 betroffen
👤 Accounts: 2 kompromittiert
MITRE MAPPING
T1110.001 T1021.002 T1059.001 T1571
SOAR PLAYBOOK
IP blockieren
Abgeschlossen 11:44
Host isolieren
Abgeschlossen 11:50
3
EDR Full Scan
Läuft…
4
Forensik-Image
Wartend
Security Incident Workspace mit Timeline, Log-Evidence und SOAR-Playbook-Fortschritt

9. SOC Dashboard

Das SOC Dashboard ist eine React-basierte Webanwendung (Next.js), die denselben Tech-Stack wie das Hauptportal verwendet. Es kann als eigenständige Ansicht oder als integrierter Bereich im Portal aufgerufen werden.

SOC Dashboard – Übersicht
  ┌─── Übersicht ──────────────────────────────────────────────┐
  │                                                             │
  │  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
  │  │ Open     │  │ Critical │  │ EPS      │  │ Security │   │
  │  │ Incidents│  │ Alerts   │  │ (Events/ │  │ Score    │   │
  │  │   12     │  │    3     │  │  Sekunde)│  │  78/100  │   │
  │  │          │  │          │  │  3.247   │  │          │   │
  │  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
  └─────────────────────────────────────────────────────────────┘

  ┌─── Incident Management ────────────────────────────────────┐
  │                                                             │
  │  ID             │ Type              │ Severity │ Status     │
  │  ───────────────┼───────────────────┼──────────┼──────────  │
  │  SEC-2026-0042  │ Anomalous Login   │ Critical │ Investing. │
  │  SEC-2026-0041  │ Brute Force       │ High     │ Contained  │
  │  SEC-2026-0040  │ Policy Violation  │ Medium   │ Open       │
  │  SEC-2026-0039  │ Bulk Export       │ Medium   │ Resolved   │
  └─────────────────────────────────────────────────────────────┘

  ┌─── MITRE ATT&CK Heatmap ──────────────────────────────────┐
  │  Tactic            │ Hits (30d) │ Top Technique             │
  │  ──────────────────┼────────────┼───────────────────────    │
  │  Initial Access    │    15      │ T1078 Valid Accounts      │
  │  Credential Access │    22      │ T1110 Brute Force         │
  │  Execution         │     8      │ T1059 Command & Script    │
  │  Lateral Movement  │     3      │ T1021 Remote Services     │
  └─────────────────────────────────────────────────────────────┘

  ┌─── Threat Intel ───────────────────────────────────────────┐
  │  Aktive IoCs: 45.230 │ Matches (24h): 12 │ Feeds: 5       │
  └─────────────────────────────────────────────────────────────┘

9.1 Security Incident Workspace

Für jeden Incident bietet das Dashboard einen dedizierten Workspace mit folgenden Bereichen:

portal.hafs.de/siem/dashboard
SOC Dashboard — Live
● All Systems Monitored 🔔 SK
12.4K
EPS (Events/sec)
Normal
2
Critical Alerts
+2 heute
5
High Alerts
78
Security Score
AKTIVE INCIDENTS
CRIT Lateral Movement
vor 18 min
CRIT Brute-Force DC01
vor 22 min
HIGH Suspicious PowerShell
vor 1h
TOP ALERT SOURCES (24H)
Auth Failure
342
Firewall Block
178
PowerShell
67
DNS Anomaly
34
SOC Dashboard mit Echtzeit-EPS, Security Score, aktiven Incidents und Alert-Verteilung

10. Portal-Integration

Die Integration zwischen SIEM Add-on und Self-Help Portal erfolgt über bidirektionale REST-APIs und asynchrone Event-Kommunikation via NATS/RabbitMQ.

10.1 SIEM → Portal (Outbound)

API-EndpunktFunktion
POST /api/v1/ticketsSecurity-Ticket erstellen bei Alert/Incident
PUT /api/v1/tickets/{id}/statusTicket-Status synchronisieren (Contained, Resolved)
POST /api/v1/tickets/{id}/commentsEnrichment-Daten als Ticket-Kommentar anfügen
POST /api/v1/notificationsSicherheitsbenachrichtigungen an User/Teams senden
POST /api/v1/security/incidentsIncident-Objekt mit MITRE-Mapping im Portal anlegen

10.2 Portal → SIEM (Inbound)

API-EndpunktFunktion
POST /api/v1/siem/eventsPortal-Events an SIEM senden (Login, Admin-Action)
GET /api/v1/siem/incidents/{id}Incident-Details aus SIEM abrufen
GET /api/v1/siem/alerts?severity=criticalAktive Alerts für Security-Dashboard im Portal
POST /api/v1/siem/searchLog-Suche aus dem Portal heraus (eingeschränkt)
GET /api/v1/siem/kpisSOC-KPIs für das Portal-Dashboard

10.3 Event-Mapping SIEM → Portal

Event im SIEMAutomatische Portal-Aktion
Critical AlertSecurity-Ticket (P1) erstellen, On-Call benachrichtigen
Anomale Login-AktivitätSecurity-Ticket (P2), Account-Review triggern
Malware DetectionSecurity-Ticket (P1), Isolierung empfehlen
Brute Force AttemptAuto-Block + Security-Ticket (P2)
Data Exfiltration AlertSecurity-Ticket (P1), DLP-Team + CISO benachrichtigen
Phishing Campaign DetectedMass-Notification, KB-Artikel aktualisieren

11. SOC-KPIs & Reporting

< 15 min
MTTD (Mean Time to Detect)
< 30 min
MTTR (Mean Time to Respond)
< 2h
MTTC (Mean Time to Contain)
> 70%
MITRE ATT&CK Coverage

11.1 KPI-Übersicht

KPIBeschreibungZiel
MTTDDurchschnittliche Zeit von Angriffsbeginn bis Erkennung< 15 min
MTTRDurchschnittliche Zeit bis zur ersten Reaktion< 30 min
MTTCDurchschnittliche Zeit bis zur Eindämmung< 2h
MTTREDurchschnittliche Zeit bis zur vollständigen Behebung< 24h
False Positive RateAnteil der Fehlalarme an allen Alerts< 20%
Auto-Resolution RateAnteil der automatisch gelösten Incidents> 30%
Coverage ScoreMITRE ATT&CK Abdeckungsgrad> 70%
Log Ingestion RateEvents pro Sekunde (EPS)> 3.000
Rule EffectivenessAnteil der Regeln mit mindestens 1 True Positive> 60%

11.2 Compliance-Reporting

ReportFrequenzEmpfängerInhalt
SOC Daily SummaryTäglichSOC-TeamAlerts, Incidents, offene Tickets
Security Weekly ReportWöchentlichCISO, IT-LeitungKPIs, Trends, Top-Threats
BAIT Compliance ReportMonatlichCompliance, BaFinLog-Retention-Nachweis, Incident-Statistik
ISMS Audit ReportQuartalsweiseISMS-BeauftragterControl-Effectiveness, Incident-Response-Metriken
Management Security ReportMonatlichGeschäftsführungExecutive Summary, Risk Posture, Top-5-Risiken

12. Forensik-Unterstützung

12.1 Evidence Collection

Automatische Beweissicherung

Bei Incident-Erstellung werden automatisch alle relevanten Logs sichergestellt: User-Logs (24h vor/nach Alert), System-Logs, Network Flows, DNS-Queries, Auth-Events und ein Elasticsearch-Index-Snapshot. Speicherung in dediziertem MinIO-Bucket mit SHA-256 Hash-Integrität.

12.2 Chain of Custody

Jeder Zugriff auf forensische Daten wird lückenlos protokolliert:

Format: Append-Only Log in PostgreSQL (Audit-Tabelle), unveränderlich mit Hash-Chain (Blockchain-ähnlich).

12.3 Forensik-Prozess

PhaseBeschreibungTooling
IdentificationIncident wird als forensisch relevant klassifiziertSOC Dashboard, Alert Engine
PreservationAutomatische Evidence Collection und Hash-SicherungForensic Service, MinIO
CollectionGezielte Datensammlung auf Basis der InvestigationES-Queries, Timeline Builder
ExaminationAnalyse der gesammelten DatenInvestigation Workspace, AI-Enrichment
AnalysisZusammenführung, AngriffsrekonstruktionTimeline, Network Graph, MITRE Mapping
ReportingForensik-Bericht erstellen (intern oder für Behörden)Report Generator (PDF/STIX)

13. Compliance & Datenschutz

13.1 BaFin/BAIT-Anforderungen

BAIT-AnforderungSIEM-Umsetzung
Protokollierung sicherheitsrelevanter EreignisseAlle Log-Quellen werden zentral erfasst und korreliert
AufbewahrungsfristenHot: 30 Tage, Warm: 90 Tage, Cold: 1 Jahr (konfigurierbar bis 10 Jahre)
NachvollziehbarkeitVollständige Audit-Trails für alle SIEM-Aktionen
Anomalie-ErkennungSigma Rules + Correlation Engine + ML-basierte Anomalie-Detection
Incident-Response-FähigkeitSOAR-Playbooks, < 30 min Reaktionszeit
Regelmäßige ÜberprüfungQuartalsweise Rule-Effectiveness-Reviews, KPI-Reporting

13.2 DSGVO-konformes Log-Handling

DSGVO-konformes Log-Handling
  ┌─── Pseudonymisierung ──────────────────────────────────────┐
  │  Fluent Bit Lua-Filter:                                     │
  │  • Benutzernamen → HMAC-SHA256(username, daily-salt)        │
  │  • E-Mail-Adressen → Pseudonymisiert                        │
  │  • IP-Adressen → Letztes Oktett maskiert                   │
  │                                                             │
  │  Ausnahme: Bei Security-Incident wird Klartext in           │
  │  separatem, zugriffsbeschränktem Index gespeichert           │
  │  (nur SOC-Team + CISO mit 4-Augen-Prinzip)                  │
  └─────────────────────────────────────────────────────────────┘

  ┌─── Zugriffskontrolle ─────────────────────────────────────┐
  │  Elasticsearch Security (X-Pack / Search Guard):           │
  │  • Document-Level Security (DLS)                           │
  │  • Field-Level Security (FLS)                              │
  │  • Rollen: soc-analyst, soc-lead, ciso, auditor            │
  └─────────────────────────────────────────────────────────────┘

  ┌─── Löschkonzept ──────────────────────────────────────────┐
  │  • ILM-Policies löschen Daten automatisch nach Ablauf      │
  │  • Löschnachweis wird in Audit-Log protokolliert            │
  │  • Forensik-Daten erst nach Case-Close + Frist gelöscht     │
  └─────────────────────────────────────────────────────────────┘

  ┌─── Rechtsgrundlage ──────────────────────────────────────┐
  │  • Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse)   │
  │  • § 26 BDSG (Beschäftigtendatenschutz)                   │
  │  • BaFin/BAIT als regulatorische Verpflichtung            │
  │  • Betriebsrat-Vereinbarung über Log-Verarbeitung         │
  └──────────────────────────────────────────────────────────┘