CVE-2026-83613
xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) DOMParser and XMLSerializer module. Prior to @xmldom/xmldom versions 0.8.15 and 0.9.12, and in xmldom version 0.6.0 and earlier, DOMHandler.startElement in lib/dom-parser.js inserts every parsed attribute through setAttributeNode, while NamedNodeMap.setNamedItem in lib/dom.js calls the linear getNamedItem or getNamedItemNS lookup for each insertion. A well-formed element with many distinct attributes therefore requires quadratic comparisons during DOMParser.parseFromString() and can stall a Node.js event loop before application validation. This issue is fixed in @xmldom/xmldom versions 0.8.15 and 0.9.12; no fixed version is available for xmldom.
Scoring
- Severity
- HIGH
- CVSS base score
- 8.7
- CVSS vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
- EPSS probability
- 0.34%
- CWE
- CWE-407
- Published
- 2026-09-01
- Last modified
- 2026-09-04
Affected products
- xmldom xmldom
- @xmldom xmldom
- @xmldom xmldom
Weakness type
Related vulnerabilities
- CVE-2026-87822 — t-digest 3.1 through 3.3 Denial of Service via NaN Centroid Means in MergingDigest.fromBytes
- CVE-2024-58382 — league/commonmark before 2.6.0 Denial of Service via Quadratic Complexity
- CVE-2023-54395 — PocketMine-MP before 4.12.5 Denial of Service via ModalFormResponsePacket
- CVE-2026-86435 — commonmark 1.5.0 before 2.8.4 Denial of Service via Footnote
- CVE-2026-86434 — commonmark 2.0.0 through 2.8.3 Denial of Service via Slug Collision
- CVE-2026-86433 — commonmark 1.5.0 before 2.8.4 Denial of Service via Attributes
- CVE-2026-86430 — league/commonmark before 2.9.1 Denial of Service via parsing
- CVE-2026-86429 — commonmark before 2.9.1 Denial of Service via SmartPunct and Attributes