Document targeted security notifications and private configuration

This commit is contained in:
2026-10-04 14:39:41 +02:00
parent 13efdb2ad4
commit af7d9e6612
+69
View File
@@ -0,0 +1,69 @@
# 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_findings` der 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`, `yara` oder `compromised`. 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.py` und `kev.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:
```bash
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.