Was sind Wazuh-Regeln?
Wazuh-Regeln sind das Herzstück des Wazuh Security Information and Event Management (SIEM) Systems. Sie definieren, wie das System Log-Einträge und Events analysiert, interpretiert und darauf reagiert. Jede Regel beschreibt ein spezifisches Muster oder Verhalten, das Wazuh in den gesammelten Daten erkennen soll.

Wie funktionieren Wazuh-Regeln?
Grundlegende Funktionsweise
- Dekodierung: Die gesammelten Logs werden durch Decoder in strukturierte Felder zerlegt (z.B. Quell-IP, Timestamp, Benutzer)
- Log-Sammlung: Wazuh-Agents sammeln Logs von verschiedenen Quellen (Systemlogs, Anwendungslogs, Sicherheitslogs)
- Regelabgleich: Die dekodierten Daten werden gegen die definierten Regeln geprüft
- Alerting: Wenn eine Regel zutrifft, generiert Wazuh einen Alert mit einer bestimmten Schweregrad-Stufe (0-15)
Regelstruktur
Eine Wazuh-Regel ist in XML geschrieben und enthält typischerweise:
- Rule ID: Eindeutige Kennung der Regel
- Level: Schweregrad (0-15)
- Beschreibung: Was die Regel erkennt
- Bedingungen: Match-Kriterien (Regex, Felder, etc.)
- Gruppen: Kategorisierung (z.B. authentication, web, malware)
Wichtige Dateien und Verzeichnisse
/var/ossec/ruleset/rules/: Standardregeln von Wazuh/var/ossec/etc/rules/local_rules.xml: Ihre eigenen benutzerdefinierten Regeln/var/ossec/etc/decoders/local_decoder.xml: Benutzerdefinierte Decoder
Wie erstellen Sie eigene Regeln?
Schritt 1: Logs analysieren
Zunächst müssen Sie verstehen, wie Ihre Logs aussehen. Prüfen Sie die Logs in
/var/ossec/logs/archives/archives.log:

Schritt 2: Decoder erstellen (falls nötig)
Wenn Wazuh Ihre Logs noch nicht richtig interpretiert, brauchen Sie einen Decoder. Beispiel für einen SSH-Login in /var/ossec/etc/decoders/local_decoder.xml:

Schritt 3: Regel erstellen
Erstellen Sie Ihre Regel in /var/ossec/etc/rules/local_rules.xml:

Schritt 4: Syntax testen
Bevor Sie die Regeln aktivieren, testen Sie die Syntax:

Fügen Sie einen Beispiel-Log ein und prüfen Sie, ob die Regel korrekt ausgelöst wird.
Schritt 5: Wazuh-Manager neu starten

Wichtige Regel-Komponenten
Level-System
- 0-3: Informativ, keine Aktion erforderlich
- 4-7: Niedrige Priorität, verdächtige Aktivität
- 8-11: Mittlere Priorität, wichtige Ereignisse
- 12-15: Hohe Priorität, kritische Sicherheitsvorfälle
Häufig verwendete Optionen
if_sid: Bezieht sich auf eine übergeordnete Regel

match: Einfacher String-Match

regex: Regulärer Ausdruck

frequency: Anzahl der Ereignisse

srcip/dstip: IP-Adressfilter

Praktisches Beispiel: Erkennung von Brute-Force-Angriffen
Hier ein vollständiges Beispiel für die Erkennung von Brute-Force-Angriffen auf einen Webserver:

Best Practices
- Starten Sie mit bestehenden Regeln: Wazuh hat bereits über 3000 vordefinierte Regeln – nutzen Sie diese als Basis
- Verwenden Sie IDs ab 100000: Vermeiden Sie Konflikte mit Standard-Regeln
- Testen Sie intensiv: Nutzen Sie wazuh-logtest ausgiebig vor dem Produktiveinsatz
- Dokumentieren Sie: Fügen Sie aussagekräftige Beschreibungen hinzu
- Vermeiden Sie zu allgemeine Regeln: Diese erzeugen zu viele False Positives
- Nutzen Sie Gruppen: Organisieren Sie Ihre Regeln logisch
- Backup: Sichern Sie Ihre local_rules.xml regelmäßig
Troubleshooting
Regel wird nicht ausgelöst:
- Prüfen Sie mit wazuh-logtest, ob der Decoder funktioniert
- Überprüfen Sie die if_sid-Verweise
- Kontrollieren Sie die Log-Quellen
Zu viele False Positives:
- Erhöhen Sie den Level
- Fügen Sie spezifischere Bedingungen hinzu
- Nutzen Sie Whitelists mit
<check_if_ignored>
Regel-Syntax-Fehler:
- Prüfen Sie
/var/ossec/logs/ossec.logauf Fehlermeldungen - Validieren Sie die XML-Syntax












