Wazuh vs. Falco: Security Monitoring für moderne Infrastrukturen
Sicherheit in Self-Hosting- und DevOps-Umgebungen bedeutet mehr als Firewalls und Updates. Wazuh und Falco sind zwei führende Open-Source-Tools für Security Monitoring – aber sie lösen unterschiedliche Probleme. Dieser Vergleich hilft dir zu verstehen, welches Tool (oder ob beide) in dein Security-Setup gehört.
Das Problem: Angriffe erkennen, nicht nur verhindern
Präventive Maßnahmen wie Firewalls und Patches sind wichtig, reichen aber nicht aus. Statistisch dauert es nach einem Angriff durchschnittlich 197 Tage, bis er erkannt wird. Security Monitoring (auch: Detection & Response) schließt diese Lücke:
- Erkennung von anomalem Verhalten in Echtzeit
- Korrelation von Events über mehrere Systeme
- Alarmierung und Incident-Response-Workflows
- Compliance-Logging (SOC 2, ISO 27001, PCI DSS)
Wazuh: Das SIEM für alle Schichten
Wazuh ist eine Open-Source-Security-Plattform (früher als Fork von OSSEC bekannt), die 2015 als eigenständiges Projekt wurde und heute ein vollständiges SIEM-System darstellt.
Wie Wazuh funktioniert
Wazuh besteht aus drei Hauptkomponenten:
1. Wazuh Agent — Läuft auf jedem zu überwachenden System (Linux, Windows, macOS, Container) und sammelt:
- Systemlogs (syslog, auth.log, Windows Event Log)
- File Integrity Monitoring (FIM) – Änderungen an Dateien und Verzeichnissen
- Vulnerability Assessment – installierte Pakete vs. CVE-Datenbank
- Compliance-Checks (CIS Benchmarks, PCI DSS, HIPAA)
2. Wazuh Manager — Aggregiert alle Agent-Daten, analysiert sie mit Regelwerken und generiert Alerts.
3. Wazuh Dashboard — Kibana-basierte Web-UI mit Dashboards für alle Security-Bereiche.
Kernfeatures von Wazuh
- Log-Analyse: Regelbasierte Analyse aller Systemlogs
- Intrusion Detection (IDS): Erkennt Brute-Force, Rootkits, Privilegieneskalation
- File Integrity Monitoring: Änderungen an
/etc/passwd,/bin/, Webroot etc. - Vulnerability Detection: Automatischer Abgleich mit NVD/CVE-Datenbanken
- Cloud-Monitoring: AWS, Azure, GCP – API-basierte Überwachung
- Threat Intelligence: Integration mit VirusTotal, AlienVault OTX, MISP
- Active Response: Automatisches Blockieren von IPs, Account-Sperren
- SIEM-Funktionalität: Korrelation, Case Management, Compliance-Reports
Wazuh in der Praxis
# docker-compose.yml für Wazuh Stack
services:
wazuh.manager:
image: wazuh/wazuh-manager:4.7.0
ports:
- "1514:1514/udp"
- "55000:55000"
volumes:
- wazuh_api_configuration:/var/ossec/api/configuration
- wazuh_etc:/var/ossec/etc
wazuh.indexer:
image: wazuh/wazuh-indexer:4.7.0
# OpenSearch-basiert
wazuh.dashboard:
image: wazuh/wazuh-dashboard:4.7.0
ports:
- "443:5601"
Systemanforderungen: Manager benötigt mindestens 8 GB RAM für produktive Deployments, besser 16 GB bei größeren Infrastrukturen.
Falco: Runtime-Security für Container und Kubernetes
Falco wurde von Sysdig entwickelt und 2018 als CNCF-Sandbox-Projekt eingebracht (heute CNCF Incubating). Es ist spezialisiert auf Runtime-Security in Container-Umgebungen.
Wie Falco funktioniert
Falco nutzt den Linux-Kernel direkt über einen eBPF-Probe (oder alternativ einen Kernel-Modul) und überwacht alle Syscalls in Echtzeit:
Application → Syscall → eBPF-Probe → Falco Engine → Rules → Alert
Es erkennt Anomalien direkt an der Kernel-Ebene – bevor sie Logs hinterlassen können. Das macht es besonders schwer zu umgehen.
Kernfeatures von Falco
- Syscall-basierte Überwachung: Alle
read,write,exec,open-Calls werden analysiert - Kubernetes-native: Direkte K8s-API-Integration für Pod-/Namespace-Kontext
- Regelsprache: Ausdrucksstarke Regeln in YAML
- Low Overhead: eBPF-basiert, ~3-5% CPU-Overhead auch unter Last
- Echtzeit-Alerts: Alerting in Millisekunden statt Sekunden
- Falcosidekick: Output-Router für Slack, PagerDuty, Elasticsearch, Webhook
Falco-Regeln Beispiel
# Erkennt Shell-Ausführung in Containern
- rule: Terminal shell in container
desc: Detects shell spawning in a container
condition: >
spawned_process and container
and shell_procs and proc.tty != 0
output: >
Shell spawned in container (user=%user.name container=%container.name
shell=%proc.name parent=%proc.pname cmdline=%proc.cmdline)
priority: WARNING
# Erkennt Schreiben in /etc in Containern
- rule: Write below etc in container
desc: Writing to /etc in a running container is suspicious
condition: >
open_write and container and fd.directory=/etc
output: >
File opened for writing below /etc (command=%proc.cmdline
file=%fd.name container=%container.name)
priority: ERROR
Falco im Kubernetes-Cluster
# Installation via Helm
helm repo add falcosecurity https://falcosecurity.github.io/charts
helm install falco falcosecurity/falco \
--namespace falco --create-namespace \
--set falcosidekick.enabled=true \
--set falcosidekick.config.slack.webhookurl="https://hooks.slack.com/..."
Direkter Vergleich: Wazuh vs. Falco
| Kriterium | Wazuh | Falco |
|---|---|---|
| Fokus | Ganzheitliches SIEM | Container/K8s Runtime-Security |
| Datenquelle | Logs, FIM, Netzwerk | Kernel Syscalls (eBPF) |
| Betriebssystem | Linux, Windows, macOS | Linux (eBPF/Modul) |
| Container-Support | Agent in Container | Nativ (K8s-aware) |
| Kubernetes-Integration | Begrenzt | Exzellent |
| Log-Analyse | Stark (zentral) | Schwach (kein SIEM) |
| Vulnerability Scanning | Ja (CVE-Abgleich) | Nein |
| File Integrity | Ja (FIM) | Begrenzt (via Regeln) |
| Compliance | Ja (CIS, PCI, HIPAA) | Nein nativ |
| Echtzeit-Erkennung | Sekunden bis Minuten | Millisekunden |
| Ressourcenbedarf | Hoch (Manager: 8+ GB RAM) | Gering (~3-5% CPU) |
| UI/Dashboard | Vollständig (Kibana-basiert) | Falcosidekick (extern) |
| Open Source | Ja (AGPLv3) | Ja (Apache 2.0) |
| Lernkurve | Steil | Mittel |
Wann du Wazuh wählen solltest
Wazuh ist ideal wenn:
- Du ein umfassendes SIEM für heterogene Infrastruktur brauchst (VMs, physische Server, Cloud, Windows)
- Compliance-Anforderungen (SOC 2, ISO 27001, PCI DSS) bestehen
- Du Log-Zentralisierung und -Korrelation benötigst
- Vulnerability Management in einem Tool gewünscht ist
- Dein Team bereits mit Kibana/OpenSearch-Dashboards vertraut ist
- Du Active Response (automatische IP-Blockierung) nutzen willst
Wann du Falco wählen solltest
Falco ist ideal wenn:
- Du einen Kubernetes-Cluster betreibst und Container-Runtime-Security brauchst
- Echtzeit-Erkennung von Container-Ausbrüchen und Privilegien-Eskalation wichtig ist
- Du minimalen Overhead auf den Cluster-Nodes haben musst
- Dein Fokus auf Cloud-native Security liegt (kein Windows, keine Legacy-Server)
- Du Alerts direkt in Slack/PagerDuty/Prometheus routen willst
Die Kombination: Wazuh + Falco
In produktiven Kubernetes-Umgebungen ergänzen sich beide Tools ideal:
- Falco für Kubernetes-Node- und Pod-Ebene (Syscall-basiert)
- Wazuh für alle anderen Systeme (Logs, VMs, Windows, Netzwerk-Geräte)
- Falco-Alerts → Wazuh via Syslog-Integration → Zentrale Korrelation
Diese Kombination deckt die komplette Security-Monitoring-Stack ab.
Alternativen im Überblick
| Tool | Positionierung |
|---|---|
| Tetragon (Isovalent) | eBPF-basiert wie Falco, aber mit Policy-Enforcement |
| Suricata | Netzwerk-IDS (ergänzt beide) |
| OSSEC | Wazuh-Vorläufer, weniger Features |
| Elastic SIEM | SIEM mit Elastic Stack (kostspielig für größere Datenmengen) |
| Crowdstrike Falcon | Commercial, umfassend aber teuer |
Fazit: Komplementäre Tools, kein echter Wettbewerb
Wazuh und Falco konkurrieren nicht direkt – sie ergänzen sich. Für die meisten Self-Hoster und DevOps-Teams gilt:
- Primär Kubernetes? → Mit Falco anfangen, dann Wazuh für die restliche Infrastruktur
- Gemischte Infrastruktur (VMs + Container)? → Wazuh als Basis, Falco für K8s
- Nur VMs/Bare Metal? → Wazuh reicht vollständig aus
- Compliance-Fokus? → Wazuh ist unverzichtbar
Kurzempfehlung:
- 🟢 Self-Hoster mit VMs/Bare Metal → Wazuh
- 🟢 Kubernetes-first Umgebung → Falco
- 🟢 Produktionscluster mit Compliance → Wazuh + Falco
Weiterführende Artikel
- CrowdSec vs. Fail2ban – Modernes Intrusion Prevention für Self-Hoster im Vergleich
- Authelia vs. Authentik – SSO und 2FA selbst hosten – welche Lösung ist sicherer?
- Keycloak vs. Authentik – Identity Provider für Self-Hosting: Vergleich der beliebtesten Lösungen