xmldom: Attribute name injection via setAttribute() bypasses requireWellFormed
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Partial Red Hat: 1 fixed, 2 without a fix
Attack profile from CVSS 4.0 · CNA. Fix status from CNA, GitHub and Red Hat.
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, Element.setAttribute() calls the private _createAttribute(name) path without validating the attribute name, while Document.createAttribute(name) validates against QName. XMLSerializer.serializeToString() emits attribute names verbatim, and requireWellFormed: true did not validate them, so a crafted name can terminate the intended attribute and inject additional attributes, including event handlers, into browser-consumed output; synthesized xmlns:PREFIX declarations expose the same unchecked-name boundary. This issue is fixed in @xmldom/xmldom versions 0.8.14 and 0.9.11; no fixed version is available for xmldom.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| xmldom | xmldom | up to 0.6.0 | — | No fix listed | CNA |
| xmldom | xmldom | 0.7.0 to before 0.8.14; 0.9.0 to before 0.9.11 | 0.8.14, 0.9.11 | Patch available | CNA |
| — | @xmldom/xmldom (npm) | 0.9.0 to before 0.9.11 | 0.9.11 | Patch available | GHSA-4w3w-2rp5-g8jm |
| — | @xmldom/xmldom (npm) | 0.7.0 to before 0.8.14 | 0.8.14 | Patch available | GHSA-4w3w-2rp5-g8jm |
| — | xmldom (npm) | up to 0.6.0 | — | No fix listed | GHSA-4w3w-2rp5-g8jm |
- xmldom Vendorxmldom Affected up to 0.6.0 Fixed in — No fix listed CNA
- xmldom Vendorxmldom Affected 0.7.0 to before 0.8.14; 0.9.0 to before 0.9.11 Fixed in 0.8.14, 0.9.11 Patch available CNA
- @xmldom/xmldom (npm) Vendor— Affected 0.9.0 to before 0.9.11 Fixed in 0.9.11 Patch available GHSA-4w3w-2rp5-g8jm
- @xmldom/xmldom (npm) Vendor— Affected 0.7.0 to before 0.8.14 Fixed in 0.8.14 Patch available GHSA-4w3w-2rp5-g8jm
- xmldom (npm) Vendor— Affected up to 0.6.0 Fixed in — No fix listed GHSA-4w3w-2rp5-g8jm
Remediation
- Fix · CNA xmldom (@xmldom) Fixed in 0.8.14, 0.9.11
- Fix · GHSA-4w3w-2rp5-g8jm @xmldom/xmldom (npm) Fixed in 0.9.11 Advisory →
- Fix · GHSA-4w3w-2rp5-g8jm @xmldom/xmldom (npm) Fixed in 0.8.14 Advisory →
Red Hat 1 advisory
- RHSA-2026:69248 Released 2026-09-21 · Red Hat rating ImportantRed Hat Developer Hub 1.9.9 release.
- Red Hat Developer Hub 1.9 registry.redhat.io/rhdh/rhdh-hub-rhel9, registry.redhat.io/rhdh/rhdh-rhel9-operator
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Build of Podman Desktop | Affected | No fix yet |
| Red Hat Fuse 7 | Affected | No fix planned: Will not fix |
| Red Hat Developer Hub 1.9 | Fixed | RHSA-2026:69248 |
Not affected: 6 products
- Red Hat Developer Hub 1.9
- Red Hat Enterprise Linux 10
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift Container Platform 4
Timeline
- 2026-10-02 Threatist record created from CVE-2026-83605
- 2026-10-03 Alias added: GHSA-4w3w-2rp5-g8jm
References
Other 8
- https://github.com/xmldom/xmldom/security/advisories/GHSA-4w3w-2rp5-g8jm
- https://github.com/xmldom/xmldom/pull/1043
- https://github.com/xmldom/xmldom/pull/1050
- https://github.com/xmldom/xmldom/commit/cba1321218b069182695813fa7565653708e172e
- https://github.com/xmldom/xmldom/commit/d8212e632507eaf1d9f609657dd4c56abeb12d44
- https://github.com/xmldom/xmldom/releases/tag/0.8.14
- https://github.com/xmldom/xmldom/releases/tag/0.9.11
- https://github.com/xmldom/xmldom
More xmldom vulnerabilities
- TI-2022-18728 xmldom allows multiple root nodes in a DOM CVSS 3.1CRITICAL 9.8
- TI-2026-57717 xmldom: requireWellFormed DocType publicId/systemId validation is bypassable via an embedded line terminator CVSS 4.0HIGH 8.7
- TI-2026-57716 xmldom: requireWellFormed element/attribute name validation is bypassable via an embedded line terminator CVSS 4.0HIGH 8.7
- TI-2026-57715 xmldom: Processing Instruction Target Injection Bypasses requireWellFormed CVSS 4.0HIGH 8.7
- TI-2026-57714 xmldom: Quadratic-memory consumption CVSS 4.0HIGH 8.7
- TI-2026-57712 xmldom: Quadratic-time attribute deduplication CVSS 4.0HIGH 8.7
Sources
- CVE-2026-83605 · CVE Program
- CVE-2026-83605 · NVD
- FIRST EPSS
- GHSA-4w3w-2rp5-g8jm · GitHub Advisory Database · CC BY 4.0
- CVE-2026-83605 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences