
Proof-of-Concept-Tool zur Erkennung von IngressNightmare (CVE-2025-1974) mittels (nicht-intrusiver) aktiver Methoden.
Dieses Tool bietet eine nicht-intrusive Erkennungsfähigkeit für die IngressNightmare-Schwachstellenkette (CVE-2025-1974), die den Ingress NGINX Controller betrifft. Es nutzt speziell den Injektionsvektor der auth-url-Annotation (CVE-2025-24514), um das Vorhandensein dieser kritischen Schwachstelle zu überprüfen, ohne beliebigen Code auszuführen.
Die IngressNightmare-Schwachstellenkette ermöglicht es Angreifern, beliebige NGINX-Konfigurationsdirektiven über verschiedene Ingress-Annotationsfelder zu injizieren. Wenn diese bösartigen Ingress-Ressourcen vom Admission-Controller verarbeitet werden, werden die injizierten Direktiven während der NGINX-Konfigurationsvalidierungsphase (nginx -t) ausgewertet.
Dieser PoC nutzt gezielt die Schwachstelle der auth-url-Annotation aus, indem die error_log-Direktive mit einem Syslog-Server injiziert wird, der auf eine vom Angreifer kontrollierte Domain verweist. Während der Konfigurationsvalidierung wird NGINX:
Diese DNS-Auflösungsaktivität liefert ein zuverlässiges Signal dafür, dass das Ziel verwundbar ist, ohne dass Codeausführung oder Dienstunterbrechung erforderlich ist.
Richten Sie einen DNS-Callback-Listener mit Burp Collaborator, interactsh oder einem beliebigen DNS-Überwachungsdienst ein.
Führen Sie das Erkennungstool aus:
$ python3 detect.py -t https://target-admission-controller:443 -c w00tw00t.lf4v7uehamhtt4hufhstpla09rfi38rx.oastify.com
Wenn das Ziel verwundbar ist, werden Sie DNS-Auflösungsversuche für Ihre DNS-Callback-Domain beobachten:

Das Tool erstellt ein speziell geformtes AdmissionReview-Objekt, das eine Ingress-Ressource mit der folgenden Injektions-Payload enthält:
nginx.ingress.kubernetes.io/auth-url: "http://example.com/#;\n resolver 8.8.8.8;\n error_log syslog:server=unique-id.oastify.com:80 debug;\n #"
Diese Payload:
#), um die URL zu beendenerror_log-Direktive mit Syslog hinzu, das auf die DNS-Callback-Domain verweistWenn diese von einem verwundbaren Admission-Controller verarbeitet wird, führt dies zu einer ausgehenden DNS-Abfrage, die das Vorhandensein der Schwachstelle bestätigt.
Dieses Tool erkennt nur das Vorhandensein der Schwachstelle und versucht nicht, sie für eine beliebige Codeausführung auszunutzen.