CVE-2026-101019
ŚrednieCVSS 6.5Streszczenie
Moduł njs XML w NGINX JavaScript (njs) ujawnia atrybuty XML oparte na encjach w sposób niespójny z kanonizacją libxml2. W backendach njs i QuickJS getter $attr$Name może zwrócić undefined dla jawnie obecnego atrybutu zawierającego wewnętrzne odwołanie do encji, a getter $attrs może zwrócić wartość pochodzącą tylko z pierwszego atrybutu potomnego. Może to pozwolić nieuwierzytelnionemu atakującemu na pominięcie walidacji przy jednoczesnym pomyślnym zweryfikowaniu podpisu.
Ocena ryzyka
W podatnych konsumentach podpisanego XML atrybuty istotne dla bezpieczeństwa mogą wydawać się nieobecne lub obcięte, mimo że weryfikacja podpisu się powiedzie. W nginx-saml może to obejść kontrole wygaśnięcia, Destination i korelacji żądań, umożliwiając powtórzenie lub akceptację odpowiedzi poza jej zamierzonym kontekstem.
Rekomendacja
Zaktualizuj NGINX JavaScript (njs) do wersji zawierającej poprawkę oraz zweryfikuj konfigurację nginx-saml pod kątem używanego backendu. Do czasu wdrożenia poprawki rozważ dodatkowe kontrole walidacji odpowiedzi SAML po stronie aplikacji.
Inne podatności w NGINX JavaScript (njs)
Zobacz wszystkie- CVE-2026-101025Średnie
NGINX JavaScript (njs) ma podatność, w której wbudowany silnik njs wycieka kontekst parsera libxml2, gdy xml.parse() zawiedzie. Ścieżka błędu nie rejestrowała czyszczenia i kontekst nie był zwalniany przez cały czas życia procesu. Nieuwierzytelniony atakujący może wysyłać żądania z nieprawidłowym XML i powodować nieograniczony wzrost pamięci w długotrwałych procesach roboczych NGINX.
- CVE-2026-78689Wysokie
Podatność w module XML silnika NGINX JavaScript (njs) dotyczy parsera listy prefiksów przestrzeni nazw, osiągalnego przez metodę xml.exclusiveC14n(). Nieuwierzytelniony zdalny atakujący może wywołać zapis poza granicami alokacji sterty, gdy konfiguracja NGINX przekazuje zewnętrznie kontrolowaną listę prefiksów do tej metody. Dotyczy to zarówno silnika njs, jak i QuickJS (qjs).
Oryginalny opis (angielski, źródło NVD)
Description NGINX JavaScript (njs) has a vulnerability where the njs XML module exposes entity-backed XML attributes inconsistently with libxml2 canonicalization. In both the built-in njs and QuickJS backends during the canonicalization process, the $attr$Name getter may return undefined for an explicitly present attribute containing an internal entity reference. The $attrs getter may return a value derived only from the first attribute child. This may allow an unauthenticated attacker that invests significant effort in obtaining a genuinely signed document to skip validation while signature verification succeeds. An nginx-saml deployment is a confirmed affected consumer when run with the built-in njs backend. Impact In affected signed-XML consumers, an unauthenticated attacker can cause security-relevant attributes to appear absent or truncated while signature verification succeeds. In nginx-saml, this can bypass expiry, Destination, and request-correlation checks, enabling replay or acceptance of a response outside its intended context. It does not permit signature or identity forgery, or a direct availability impact. There is no control plane exposure; this is a data plane issue only. Note: Software versions which have reached End of Technical Support (EoTS) are not evaluated.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

