CVE-2026-83613
published 2026-09-01CVE-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…
PriorityP352high8.7CVSS 4.0
AVNACLATNPRNUINVCNVINVAHSCNSINSANEXCRXIRXARXMAVXMACXMATXMPRXMUIXMVCXMVIXMVAXMSCXMSIXMSAXSXAUXRXVXREXUX
EPSS
0.60%
48.2th percentile
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.
Affected
11 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| grafana | grafana | — | — |
| openshift4 | ose-console | — | — |
| rhdh | rhdh-hub-rhel9 | — | — |
| rhoai | odh-mlflow-rhel9 | — | — |
| xmldom | xmldom | <= 0.6.0 | — |
| xmldom | xmldom | — | — |
| xmldom | xmldom | — | — |
| xmldom | xmldom | — | — |
| xmldom | xmldom | 0 – 0.6.0 | — |
| xmldom | xmldom | >= 0.7.0 < 0.8.15 | 0.8.15 |
| xmldom | xmldom | >= 0.9.0 < 0.9.12 | 0.9.12 |
CVSS provenance
nvdv4.08.7HIGHCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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
vendor_redhat8.7HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
xmldom: Quadratic-time attribute deduplication
ghsa·2026-09-08
CVE-2026-83613 [HIGH] CWE-407 xmldom: Quadratic-time attribute deduplication
xmldom: Quadratic-time attribute deduplication
## Summary
xmldom builds the attribute collection of every parsed element by inserting attributes one at a
time into a DOM `NamedNodeMap`. Each insertion first performs a **linear scan of all
already-inserted attributes** to enforce the DOM uniqueness rule (no two attributes with the same
qualified name / namespace+local-name). Parsing an element that carries `M` distinct attributes
therefore costs `1 + 2 + … + M = O(M²)` comparisons.
Because the trigger is simply "one element with many attributes", the attack payload is a
**fully well-formed XML document**. No malformed markup, no error recovery, and no non-default
parser options are involved — parsing completes silently with zero `warning`/`error`/`fatalError`
events. An attacker who can
Red Hat
xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
vendor_redhat·2026-09-01·CVSS 8.7
CVE-2026-83613 [HIGH] CWE-606 xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
A flaw was found in xmldom, a JavaScript module for parsing XML (Extensible Markup Language) documents. A remote attacker could exploit this vulnerability by providing a specially crafted XML document containing an element with numerous distinct attributes. The way xmldom processes these attributes leads to a significant performance degradation, consuming excessive computational resources. This can cause the application using xmldom to become unresponsive, resulting in a Denial of Service (DoS).
Package: rh-podman-desktop.git (Red Hat Build of Podman Desktop) - Affected
Package: rhdh/rhdh-hub-rhel9 (Red Hat Developer Hub) - Affected
Package: grafana (Red Hat Enterprise Linux 10) - Affected
Pac
No detection rules found.
No public exploits indexed.
Bugzilla
CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 distinc
Bugzilla
CVE-2026-83613 crow-translate: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 crow-translate: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
CVE-2026-83613 crow-translate: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 distinc
Bugzilla
CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [epel-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 attr
Bugzilla
CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
CVE-2026-83613 jupyterlab: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 at
Bugzilla
CVE-2026-83613 onnxruntime: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 onnxruntime: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
CVE-2026-83613 onnxruntime: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 a
Bugzilla
CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
bugzilla·2026-09-02·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
CVE-2026-83613 kf6-breeze-icons: xmldom: Denial of Service due to quadratic-time attribute processing [fedora-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
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 disti
Bugzilla
CVE-2026-83613 xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
bugzilla·2026-09-01·CVSS 8.7
CVE-2026-83613 [HIGH] CVE-2026-83613 xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
CVE-2026-83613 xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
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
https://github.com/xmldom/xmldom/commit/2c548f200cfec991cd5846627ef8f03542309213https://github.com/xmldom/xmldom/commit/cfb09b5dbeb035fdfedc9f01e2bbaf226bf47cf3https://github.com/xmldom/xmldom/pull/1071https://github.com/xmldom/xmldom/pull/1072https://github.com/xmldom/xmldom/releases/tag/0.8.15https://github.com/xmldom/xmldom/releases/tag/0.9.12https://github.com/xmldom/xmldom/security/advisories/GHSA-8344-3jmq-59r6https://github.com/xmldom/xmldom/security/advisories/GHSA-27p8-2357-5qqv
2026-09-01
Published