← Zurueck zu VPN & Security
🛡️

Wazuh SIEM Grundlagen

Open-Source Security-Plattform fuer Intrusion Detection, Log-Analyse und Compliance.

⏱️ 60 Minuten 📊 Fortgeschritten
🔍 Intrusion Detection
📊 Log Management
Compliance
🔓 Open Source
🤔 Was ist Wazuh? +

Wazuh ist eine Open-Source SIEM (Security Information and Event Management) und XDR (Extended Detection and Response) Plattform. Sie bietet Bedrohungserkennung, Integritaetsueberwachung, Schwachstellen-Scanning und Compliance-Reporting.

Hauptfunktionen

  • ✓ Intrusion Detection (HIDS)
  • ✓ Log-Daten-Analyse
  • ✓ File Integrity Monitoring
  • ✓ Vulnerability Detection
  • ✓ Security Configuration Assessment
  • ✓ Incident Response

Compliance-Standards

  • PCI DSS (Kreditkarten)
  • GDPR / DSGVO (Datenschutz)
  • HIPAA (Gesundheitswesen)
  • NIST 800-53
  • CIS Benchmarks
  • ISO 27001
💡

Architektur

  • Wazuh Server: Zentrale Analyse, Regeln, Alerts
  • Wazuh Indexer: Speichert Daten (OpenSearch-basiert)
  • Wazuh Dashboard: Web-UI fuer Visualisierung
  • Wazuh Agents: Auf jedem zu ueberwachenden System
💿 Installation (All-in-One) +

Wazuh auf einem einzelnen Server installieren (fuer kleine bis mittlere Umgebungen).

Systemanforderungen

  • CPU: 4 Cores (8+ empfohlen)
  • RAM: 8 GB (16+ empfohlen)
  • Storage: 50 GB+ (abhaengig von Log-Volumen)
  • OS: Ubuntu 22.04, Debian 12, RHEL 8/9, etc.
Schnell-Installation
bash

# Wazuh-Installationsskript herunterladen
curl -sO https://packages.wazuh.com/4.7/wazuh-install.sh

# Ausfuehrbar machen
chmod +x wazuh-install.sh

# All-in-One Installation starten
./wazuh-install.sh -a

# Am Ende werden Zugangsdaten angezeigt!
# Dashboard: https://SERVER-IP:443
# User: admin
# Passwort: [wird generiert und angezeigt]
Passwort aendern
bash

# Admin-Passwort aendern
/usr/share/wazuh-indexer/plugins/opensearch-security/tools/wazuh-passwords-tool.sh -u admin -p NeuesPasswort123!

# Dienste neu starten
systemctl restart wazuh-indexer
systemctl restart wazuh-dashboard
⚠️

Ressourcen beachten

Wazuh benoetigt signifikante Ressourcen, besonders der Indexer (OpenSearch). Fuer Produktion: Mindestens 8 GB RAM, besser 16 GB.

🖥️ Agent installieren +

Den Wazuh Agent auf zu ueberwachenden Systemen installieren.

Linux (Debian/Ubuntu)
bash

# Repository hinzufuegen
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --dearmor -o /usr/share/keyrings/wazuh.gpg

echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee /etc/apt/sources.list.d/wazuh.list

# Agent installieren
apt update
apt install -y wazuh-agent

# Manager-Adresse konfigurieren
# /var/ossec/etc/ossec.conf
# Zeile 
MANAGER_IP
anpassen # Oder per Variable bei Installation: WAZUH_MANAGER="192.168.1.100" apt install -y wazuh-agent # Agent aktivieren systemctl daemon-reload systemctl enable --now wazuh-agent
Windows (PowerShell als Admin)
bash

# Installer herunterladen
Invoke-WebRequest -Uri https://packages.wazuh.com/4.x/windows/wazuh-agent-4.7.0-1.msi -OutFile wazuh-agent.msi

# Installieren mit Manager-IP
msiexec.exe /i wazuh-agent.msi /q WAZUH_MANAGER="192.168.1.100" WAZUH_REGISTRATION_SERVER="192.168.1.100"

# Dienst starten
NET START WazuhSvc
Agent registrieren (auf dem Server)
bash

# Agent-Liste anzeigen
/var/ossec/bin/agent_control -l

# Agent manuell hinzufuegen
/var/ossec/bin/manage_agents

# Oder automatisch (Agent-Enrollment aktivieren):
# In /var/ossec/etc/ossec.conf auf dem Server:
# 
# no
# 1515
# yes
#  

Automatische Registrierung

Mit aktiviertem Enrollment registriert sich der Agent automatisch beim ersten Start. Die Agenten erscheinen dann im Dashboard unter "Agents".

📊 Dashboard nutzen +

Das Wazuh Dashboard fuer Ueberwachung und Analyse nutzen.

Security Events

Alle erkannten Sicherheitsereignisse, sortiert nach Schweregrad. Filter nach Agent, Regel, Zeitraum moeglich.

Integrity Monitoring

Aenderungen an ueberwachten Dateien und Verzeichnissen. Wer hat was wann geaendert?

Vulnerability Detection

Bekannte Schwachstellen in installierten Paketen. Basiert auf CVE-Datenbanken.

Security Configuration

Pruefung gegen CIS Benchmarks und andere Standards. Zeigt Abweichungen von Best Practices.

💡

Alert-Level

  • Level 12-15: Kritisch - Sofort reagieren
  • Level 7-11: Hoch - Bald pruefen
  • Level 4-6: Mittel - Beobachten
  • Level 0-3: Niedrig - Informativ
📜 Wichtige Erkennungsregeln +

Wazuh erkennt automatisch viele Bedrohungen durch eingebaute Regeln.

Kategorie Beispiele
Brute Force Mehrfache fehlgeschlagene Logins (SSH, Web, etc.)
Rootkit Versteckte Prozesse, manipulierte Systemdateien
Web Attacks SQL Injection, XSS, Directory Traversal
Privilege Escalation Sudo-Missbrauch, ungewoehnliche Root-Aktivitaet
Malware Bekannte Malware-Signaturen, verdaechtige Prozesse
Data Exfiltration Ungewoehnliche Datenuebertragungen
Eigene Regel erstellen (/var/ossec/etc/rules/local_rules.xml)
xml
    5715 !192.168.1.0/24 SSH login from external IP: $(srcip) authentication_success,    5715 root CRITICAL: Direct root SSH login detected! authentication_success,root_login,   
Regeln testen und aktivieren
bash

# Regel-Syntax pruefen
/var/ossec/bin/wazuh-logtest

# Manager neu starten nach Regelaenderung
systemctl restart wazuh-manager

# Regeln auflisten
/var/ossec/bin/wazuh-control info
🔔 Alerting einrichten +

Benachrichtigungen bei kritischen Ereignissen erhalten.

E-Mail Alerts (/var/ossec/etc/ossec.conf)
xml
  yes smtp.example.com wazuh@example.com admin@example.com 12    10  
Slack/Webhook Integration
bash

# Integration in /var/ossec/etc/ossec.conf
 slack https://hooks.slack.com/services/XXX/YYY/ZZZ 10 json 
# Oder generischer Webhook:
 custom-webhook https://your-server.com/wazuh-webhook 12 json  
💡

Weitere Integrationen

  • PagerDuty: Fuer On-Call Alerting
  • VirusTotal: Automatische Malware-Analyse
  • TheHive: Incident Response Platform
  • MISP: Threat Intelligence Sharing
📁 File Integrity Monitoring +

Kritische Dateien auf Aenderungen ueberwachen.

FIM konfigurieren (/var/ossec/etc/ossec.conf)
xml
   43200  /etc,/usr/bin,/usr/sbin /bin,/sbin  /etc/passwd /etc/shadow /etc/sudoers  /etc/mtab /etc/hosts.deny /etc/mail/statistics .log$|.swp$  C:\Windows\System32 C:\Windows\System32\drivers\etc\hosts  

Realtime vs. Scheduled

  • realtime="yes": Sofortige Erkennung (CPU-intensiver)
  • Scheduled: Periodische Scans nach frequency

Fuer kritische Dateien (passwd, shadow, sudoers) immer realtime verwenden!

🔧 Troubleshooting +
Status pruefen
bash

# Alle Wazuh-Dienste pruefen
systemctl status wazuh-manager
systemctl status wazuh-indexer
systemctl status wazuh-dashboard

# Agent-Status
/var/ossec/bin/agent_control -l

# Manager-Logs
tail -f /var/ossec/logs/ossec.log

# Dashboard-Logs
journalctl -u wazuh-dashboard -f

# Indexer-Logs
tail -f /var/log/wazuh-indexer/wazuh-indexer.log
Haeufige Probleme
bash

# Agent verbindet nicht?
# → Firewall pruefen (Port 1514, 1515)
# → Agent-Key pruefen
/var/ossec/bin/agent_control -i AGENT_ID

# Dashboard nicht erreichbar?
# → Zertifikate pruefen
openssl s_client -connect localhost:443

# Indexer-Probleme?
# → Heap Size pruefen (min 1GB)
grep "Xm" /etc/wazuh-indexer/jvm.options

# Speicher voll?
# → Alte Indizes loeschen
curl -XDELETE "https://localhost:9200/wazuh-alerts-*-2024.01*" -u admin:password --insecure
⚠️

Ressourcen-Probleme

Der Indexer (OpenSearch) braucht viel RAM. Bei Problemen:

  • Heap Size anpassen in /etc/wazuh-indexer/jvm.options
  • Alte Indizes regelmaessig loeschen oder archivieren
  • Index Lifecycle Management (ILM) einrichten

SIEM-Loesung gesucht?

Wir implementieren Wazuh fuer deine Infrastruktur - von der Installation bis zum Alerting.

Beratung anfragen →