Podatności xmldom
10 znanych podatności CVE w xmldom, przetłumaczonych i ocenionych.
- CVE-2026-83611Średnie
xmldom to moduł DOMParser i XMLSerializer w czystym JavaScript. Przed wersjami @xmldom/xmldom 0.8.15 i 0.9.12 oraz w xmldom 0.6.0 i wcześniejszych, DOMParser.parseFromString() może po cichu zaakceptować tag zamykający taki jak </a\njunk>, zamknąć element i odrzucić końcową treść. W wersjach 0.9.x walidator tagów końcowych w lib/sax.js dziedziczy flagę multiline z reg(), co pozwala pierwszej linii spełnić zakotwiczoną produkcję XML ETag; starsze linie nie mają równoważnej walidacji. Ta różnica w parserze może ominąć bramkę poprawności przed zaufaniem, chociaż nie wstrzykuje odrzuconej treści; onError w 0.9.x i errorHandler w 0.8.x to odpowiednie interfejsy raportowania. Problem naprawiono w @xmldom/xmldom 0.8.15 i 0.9.12; brak poprawki dla xmldom.
- CVE-2026-83610Średnie
xmldom to moduł DOMParser i XMLSerializer w czystym JavaScript. Przed wersjami @xmldom/xmldom 0.8.15 i 0.9.12 oraz w xmldom 0.6.0 i wcześniejszych, Document.createEntityReference(name) akceptuje nieprawidłową nazwę, a serializer ENTITY_REFERENCE_NODE emituje wynikową nodeName bezpośrednio w formie &name;. Bezpośrednia serializacja węzła lub fragmentu za pomocą XMLSerializer.serializeToString() z requireWellFormed: true może złamać granicę encji i wyprodukować kontrolowany przez atakującego markup XML po ponownym parsowaniu. Parser zwykle nie tworzy tych węzłów, a wstawianie jako dziecko elementu jest odrzucane, więc wykorzystanie wymaga, aby aplikacja utworzyła i bezpośrednio zserializowała EntityReference. Problem naprawiono w @xmldom/xmldom 0.8.15 i 0.9.12; brak poprawki dla xmldom.
- CVE-2026-83609Wysokie
W bibliotece xmldom w wersjach od 0.9.0 do 0.9.11 walidator QName_exact używa flagi multiline, przez co akceptuje nieprawidłowe nazwy XML zawierające znaki nowej linii. Może to prowadzić do wstrzyknięcia znaczników podczas serializacji.
- CVE-2026-83608Wysokie
W bibliotece xmldom przed wersjami 0.8.15 i 0.9.12 oraz w wersji 0.6.0 i starszych, nazwa DocumentType.name nie jest walidowana i może zawierać znaki > lub białe, co pozwala na przerwanie deklaracji DOCTYPE i wstrzyknięcie dodatkowych znaczników.
- CVE-2026-83607Wysokie
W bibliotece xmldom przed wersjami 0.8.14 i 0.9.11 oraz w wersji 0.6.0 i starszych, nazwa elementu w createElement nie jest walidowana, a XMLSerializer emituje ją bez zmian. Może to prowadzić do wstrzyknięcia atrybutów, elementów lub instrukcji przetwarzania do serializowanego XML/HTML.
- CVE-2026-83606Wysokie
W bibliotece xmldom od wersji 0.9.0-beta.9 do 0.9.11, wyrażenie używane do parsowania instrukcji przetwarzania może powodować kwadratowe cofanie się (backtracking) przy długich ciągach białych znaków, gdy brakuje zamykającego ?>. Może to zablokować pętlę zdarzeń Node.js.
- CVE-2026-83605Wysokie
W bibliotece xmldom przed wersjami 0.8.14 i 0.9.11 oraz w wersji 0.6.0 i starszych, metoda Element.setAttribute() nie waliduje nazwy atrybutu, a XMLSerializer emituje ją bez zmian. Może to prowadzić do wstrzyknięcia dodatkowych atrybutów, w tym obsługi zdarzeń.
- CVE-2026-41674Wysokie
Podatność w @xmldom/xmldom przed wersjami 0.9.10 i 0.8.13 oraz xmldom w wersji 0.6.0 i wcześniejszych. Pakiet serializuje pola DocumentType (internalSubset, publicId, systemId) bez odpowiedniego escapingu, co może prowadzić do przedwczesnego zakończenia deklaracji DOCTYPE i wstrzyknięcia dowolnego znacznika.
- CVE-2026-41672Wysokie
Podatność w bibliotece xmldom pozwala atakującemu na wstrzyknięcie dowolnych węzłów XML do serializowanego wyjścia poprzez kontrolowaną treść komentarza. Brak walidacji sekwencji zamykających komentarz umożliwia przedwczesne zakończenie komentarza i wstawienie złośliwego kodu XML.
- CVE-2026-34601Wysokie
W bibliotece xmldom (wersje 0.6.0 i starsze) oraz @xmldom/xmldom (przed 0.8.12 i 0.9.9) stwierdzono podatność polegającą na możliwości wstawienia przez atakującego ciągu zawierającego terminator CDATA ]]> do węzła CDATASection. Podczas serializacji XMLSerializer emitował zawartość CDATA dosłownie, bez odrzucania lub bezpiecznego dzielenia terminatora, co umożliwiało wstrzyknięcie struktury XML i manipulację logiką biznesową. Podatność została załatana w wersjach 0.6.0 (xmldom) oraz 0.8.12 i 0.9.9 (@xmldom/xmldom).
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

