CVE-2026-83607 json
xmldom: Element name injection via createElement() bypasses requireWellFormed
published 2mo ago modified 2mo ago also EUVD-2026-69217 , GHSA-w2rr-34g9-rvrj
- cvss
- 8.7
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 49%
- public exploits
- 0
- none known
Summary
xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) DOMParser and XMLSerializer module. Prior to @xmldom/xmldom versions 0.8.14 and 0.9.11, and in xmldom version 0.6.0 and earlier, Document.createElement(tagName) stores an unvalidated element name and XMLSerializer.serializeToString() emits that name verbatim. The requireWellFormed: true path did not validate the element qualified name or synthesized xmlns:PREFIX declaration, so attacker-controlled tag names could inject attributes, elements, or processing instructions into serialized XML or HTML and could cause cross-site scripting when browser-consumed. The unchecked values violate the XML QName constraint, and default serialization and creation-time createElement() behavior remain permissive. This issue is fixed in @xmldom/xmldom versions 0.8.14 and 0.9.11; no fixed version is available for xmldom.
Patch / fix
- npm @xmldom/xmldom 0.8.14, 0.9.11
- xmldom_project xmldom 0.8.14, 0.9.11
- node-xmldom Debian 14 0.9.11-1
debian advisories DEBIAN-CVE-2026-83607
- github.com/xmldom/xmldom@cba1321 commit
- github.com/xmldom/xmldom@d8212e6 commit
- github.com/xmldom/xmldom#1043 pull request
- github.com/xmldom/xmldom#1050 pull request
- github.com/xmldom/xmldom/releases/tag/0.8.14 release
- github.com/xmldom/xmldom/releases/tag/0.9.11 release
Is CVE-2026-83607 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-83607 updated cvss 8.1
xmldom: xmldom: Cross-site scripting via unvalidated element name injection
-
Red Hat Build of Podman Desktop rh-podman-desktop.gitaffected: workaround, no fix available “Sanitize or validate all untrusted element names before passing them to Document.createElement(), ensuring input strictly adheres to valid XML QName specifications prior to serialization.”
-
Red Hat Fuse 7 xmldom, xmldom-0.1.27.tgzaffected: workaround, no fix planned “Sanitize or validate all untrusted element names before passing them to Document.createElement(), ensuring input strictly adheres to valid XML QName specifications prior to serialization.”
-
Red Hat Developer Hub 1.9 rhdh/rhdh-hub-rhel9 1789554285fixed: vendor fix “Sanitize or validate all untrusted element names before passing them to Document.createElement(), ensuring input strictly adheres to valid XML QName specifications prior to serialization.” RHSA-2026:69248
-
Red Hat Developer Hub 1.9 rhdh/rhdh-rhel9-operator 1789552931, rhdh/rhdh-operator-bundle 1789558887 Red Hat Enterprise Linux 8 grafana, grafana-loki, grafana-mssql, grafana-mysql, grafana-selinux, grafana-graphite, +8 morenot affected: vulnerable code not present
-
Red Hat Enterprise Linux 9 grafana, grafana-selinux Red Hat Enterprise Linux 10 grafana Red Hat OpenShift AI (RHOAI) rhoai/odh-mlflow-rhel9not affected: component not present
-
Red Hat OpenShift Container Platform 4 openshift4/ose-consolenot affected: vulnerable code not in execute path
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2mo ago
Exploit prediction
0.61% chance of exploitation in the next 30 days, higher than 49% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/xmldom/xmldom/security/advisories/GHSA-w2rr-34g9-rvrj referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | @xmldom/xmldom | >=0.9.0, <0.9.11 >=0.7.0, <0.8.14 |
0.9.11 0.8.14 |
| npm | xmldom | <=0.6.0 |
no fix listed |
Affected products
- xmldom xmldom
- @xmldom xmldom
Classification
- Weakness
-
- CWE-91 XML Injection
References
-
github.com
/xmldom/xmldom/pull/1043
web
-
github.com
/xmldom/xmldom/pull/1050
web
-
github.com
/xmldom/xmldom/commit/cba1321218b069182695813fa7565653708e172e
web
-
github.com
/xmldom/xmldom/commit/d8212e632507eaf1d9f609657dd4c56abeb12d44
web
-
github.com
/xmldom/xmldom/security/advisories/GHSA-w2rr-34g9-rvrj
exploit, web, advisory
-
github.com
/xmldom/xmldom/releases/tag/0.8.14
web
-
github.com
/xmldom/xmldom/releases/tag/0.9.11
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-83607
advisory
-
github.com
/xmldom/xmldom
package
Sources
- CVE List CVE-2026-83607
- GitHub Advisory GHSA-w2rr-34g9-rvrj
- NVD CVE-2026-83607
- Maintainer advisory GHSA-w2rr-34g9-rvrj
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of xmldom/xmldom published their own advisory on GitHub. Reviewed sources take precedence over it.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.