CVE-2026-78689 in NGINX JavaScript
Zusammenfassung
von VulDB • 02.09.2026
Beschreibung
NGINX JavaScript (njs) weist eine Schwachstelle im Parser für die Namespace-Präfixliste des XML-Moduls auf, die über die Methode `xml.exclusiveC14n()` erreichbar ist. Ein nicht authentifizierter Remote-Angriff kann diese auslösen, wenn eine betroffene NGINX-Konfiguration eine extern gesteuerte Liste von XML-Namespace-Präfixen an diese Methode übergibt. Sowohl die njs-Engine als auch die QuickJS (qjs)-Engines sind betroffen. Eine speziell angefertigte Präfixliste führt zu einem Out-of-Bounds-Write jenseits des Endes einer Heap-Allokation. Bei der njs-Engine, welche verwendet wird, wenn die Direktive `js_engine` fehlt, werden benachbarte Objekte beschädigt und der NGINX-Worker stürzt ab. Bei der QuickJS-Engine führt derselbe Aufruf zusätzlich dazu, dass die Präfixliste bei jeder Ausführung ausgelesen (geleakt) wird, was zu einem Wachstum des Worker-Speichers über mehrere Anfragen hinweg führt. Die offizielle Referenzimplementierung `nginxinc/nginx-saml` ist während der SAML-Signaturprüfung betroffen. Sie liest `InclusiveNamespaces/@PrefixList` aus einer nicht vertrauenswürdigen SAML-Nachricht und übergibt sie an `xml.exclusiveC14n()`, bevor die Signatur überprüft wurde, sodass keine gültige SAML-Signatur erforderlich ist. Eine speziell angefertigte SAML-Antwort (Response), Assertion, LogoutRequest oder LogoutResponse reicht aus. Die Ausführung von Code wurde nicht demonstriert und kann für alle Plattformen nicht ausgeschlossen werden, da die Auswirkungen des Out-of-Bounds-Write von Bedingungen abhängen, die außerhalb der Kontrolle des Angreifers liegen.
Auswirkung
Diese Schwachstelle ermöglicht es Remote-Angriffern, einen Denial of Service (DoS) auf dem NGINX-System zu verursachen, entweder durch wiederholte Neustarts des Workers oder durch ein Wachstum des Worker-Speichers, bzw. möglicherweise die Ausführung von Code auszulösen. Es besteht keine Exposition der Control Plane; dies ist ausschließlich eine Schwachstelle in der Data Plane.
Hinweis: Softwareversionen, die das Ende des technischen Supports (End of Technical Support, EoTS) erreicht haben, werden nicht bewertet.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.