
https://github.com/corelight/CVE-2021-38647 ohne den Ballast
https://github.com/corelight/CVE-2021-38647 ohne überflüssigen Ballast
Ein Zeek-Paket, das CVE-2021-38647 (auch bekannt als OMIGOD) Exploit-Versuche erkennt.
https://corelight.com/blog/detecting-cve-2021-38647-omigod
https://www.wiz.io/blog/omigod-critical-vulnerabilities-in-omi-azure
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-38647
Der Exploit besteht darin, einfach den Authorization-Header wegzulassen. tl;dr siehe Bild unten.
Exploit tl;dr
Installieren Sie es als Zeek-Paket in einer Live-Umgebung
zkg install corelight/CVE-2021-38647
ODER verwenden Sie die direkte URL.
zkg install https://github.com/corelight/CVE-2021-38647/
Verwenden Sie es gegen eine bereits vorhandene pcap-Datei
zeek -Cr scripts/__load__.zeek your.pcap
Dieses Paket läuft in geclusterten oder nicht geclusterten Umgebungen.
Konfigurierbare Optionen im omigod.zeek-Skript können wie unten beschrieben an Ihre Implementierungsanforderungen angepasst werden.
Die TCP-Ports sind auf die von OMI verwendeten Standardports gesetzt. Fügen Sie alle nicht standardmäßigen Ports zu folgendem Set hinzu.
option OMI_ports = set(1270/tcp, 5985/tcp, 5986/tcp);
Um die IR-Triage von EXPLOIT_REQUEST- und EXPLOIT_RESPONSE-Notices zu unterstützen, enthält das 'sub'-Feld die ersten 'bytes_of_data_in_notice' Bytes des Notices. Stellen Sie diesen Wert hoch ein, um die gesamte Nutzlast zu erfassen – der Standardwert von 10000 sollte ausreichen, um alle relevanten Daten zu erfassen.
option bytes_of_data_in_notice = 10000;
Um IR-Triage und -Jagd zu unterstützen, enthält ein separates Notice 'EXPLOIT_ATTEMPT' die Client-Header-Namen und -Werte im 'sub'-Feld des Notices.
option raise_seperate_notice_for_missing_auth_header = T;
Verwenden Sie User-Agent-Whitelisting sehr sparsam, um False Positives von Ihrem eigenen Scanner oder legitimen Systemen zu unterdrücken. Denken Sie daran, dass ein Angreifer diesen User-Agent einfach fälschen kann. Beispiel:
option user_agent_whitelist = /^Microsoft WinRM Client$/;