3.8 KiB
Gezielte Sicherheitsmeldungen aus Wazuh
notify.py läuft auf einem nativen Wazuh-All-in-one-Server mit Python 3.9+.
Es liest den lokalen Indexer mit TLS-Prüfung und dem vorhandenen lokalen
Admin-Zertifikat; private Schlüssel werden nicht kopiert oder ausgegeben.
Die Software verändert keine Indexer-Daten und führt keine Inhalte aus Logs aus.
kev.py ist die gemeinsame Kataloglogik aus ../docker-security/scan.py.
Meldungsauswahl
- Aktuelle High-/Critical-OS-Schwachstellen in CISA KEV, nur bei aktiven Agents.
- Andere High-/Critical-OS-Funde erst nach einer konkreten, versionierten und
befristeten Prüfung in
approved_findingsder privaten Konfiguration. - Neue/geänderte Image-Befunde mit positiver KEV-Zuordnung. Das ist ein Hinweis auf bekannte Ausnutzung andernorts, kein Nachweis eines Angriffs auf den Host.
- Positive ClamAV- und VirusTotal-Regeln sowie hoch eingestufte Meldungen mit
den Gruppen
malware,yaraodercompromised. Normale Logins, Paketupdates, SCA-Ergebnisse und generische Rootcheck-Muster werden nicht weitergeleitet. - Anhaltende unvollständige Image-Scans und Ausfälle der zentralen Prüfung.
Schwachstellen müssen standardmäßig eine Stunde lang im aktuellen Inventar bestehen bleiben, damit automatische Updates und Inventarsynchronisation eine Chance haben. Positive Malware-Erkennungen werden bei der nächsten Prüfung verarbeitet. Der Timer prüft alle fünf Minuten. Gleiche Befunde bleiben nach Zustellung still; Versionsänderungen werden erneut beobachtet. Behebungen und Erholungen sind still. Ein erneuter tatsächlicher Befund kann neu melden. Vorübergehend getrennte Agents werden nicht als behoben behandelt.
Bekannte Fehlzuordnungen werden ausgeschlossen: die Telnet-Server-Lücke im reinen Client, Linux-Kernel-Lücken in Headerpaketen oder inaktiven Kerneln und die Windows-spezifische Next.js-Lücke auf diesen Linux-Hosts.
Private Konfiguration auf dem Manager
/opt/wazuh-actionable/notify.pyundkev.py: Code, root, Modus 700./etc/wazuh-actionable/config.json: Dashboard-URL, Schonfrist und geprüfte zusätzliche Befunde; root, Modus 600./etc/wazuh-actionable/discord-webhook: Webhook als einzelne Zeile; root, 600./var/lib/wazuh-actionable/: privater Katalog, Zustand, Deduplizierung und Zustellungsstatus. Keine Rohlogs oder privaten Schlüssel in Discord.wazuh-actionable.service/.timer: zentrale Prüfung; ein fehlgeschlagener Versand wird nicht als zugestellt markiert und später erneut versucht.
Prüfen ohne Versand und ohne Aktualisierung des Benachrichtigungszustands:
python3 /opt/wazuh-actionable/notify.py --dry-run
systemctl status wazuh-actionable.timer
journalctl -u wazuh-actionable.service -n 20 --no-pager
--dry-run darf den öffentlichen KEV-Cache aktualisieren und stellt nur
lesende Indexer-Abfragen. Der Webhook kommt nie ins Repository. Discord-Mentions
sind deaktiviert. Keine regelmäßigen Erfolgsmeldungen oder täglichen Zusammenfassungen.
Grenzen
KEV ist keine vollständige Liste ausnutzbarer Lücken. Auch ein KEV-Treffer kann weitere Bedingungen haben, die geprüft werden müssen. Neue High-/Critical-Lücken außerhalb KEV werden nicht automatisch als konkrete Gefahr eingestuft; das Wazuh-Inventar bleibt ihre vollständige Prüfliste. Die Auswahl ersetzt keine Anwendungsanalyse. ClamAV, YARA oder zusätzliche Anwendungslogs werden hier nicht installiert; ihre Meldungen können nur verarbeitet werden, wenn die entsprechenden Erkennungen bereits eingerichtet sind. Ein fehlender Angriffstreffer beweist keine Abwesenheit eines Angriffs.
Für Image-Erholungen und aktuelle Scan-Gesundheit werden die aktuellen Docker-Security-Regeln 110800–110806 und der entsprechende Scanner benötigt. Ein Blick in die historische Alert-Liste allein beweist keine aktuelle Betroffenheit.