Bug 2526830 (CVE-2026-83613)

Summary: CVE-2026-83613 xmldom: @xmldom/xmldom: xmldom: Denial of Service due to quadratic-time attribute processing
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: abarbaro, akhatavk, alizardo, aos-team-art-private, asdas, cdrage, dpaolell, gmalinko, janstey, jchui, jdelft, jhe, jupierce, ktsao, lchilton, lgarciaa, mbiarnes, nboldt, oaljalju, pdelbell, ppalepu, ppostler, prdhamdh, psrna, rhel-process-autobot, rstepani, rushinde, sfeifer, sghai, sidsharm, suppawar, vlaad, watson-tool-maintainers
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
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).
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2527254, 2527256, 2527260, 2527266, 2527269, 2527275    
Bug Blocks:    

Description OSIDB Bzimport 2026-09-01 15:04:22 UTC
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.