CVE-2026-34601: xmldom: XML injection via unsafe CDATA serialization allows attacker-controlled markup insertion
xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) `DOMParser` and `XMLSerializer` module. In xmldom versions 0.6.0 and prior and @xmldom/xmldom prior to versions 0.8.12 and 0.9.9, xmldom/xmldom allows attacker-controlled strings containing the CDATA terminator ]]> to be inserted into a CDATASection node. During serialization, XMLSerializer emitted the CDATA content verbatim without rejecting or safely splitting the terminator. As a result, data intended to remain text-only became active XML markup in the serialized output, enabling XML structure injection and downstream business-logic manipulation. This issue has been patched in xmldom version 0.6.0 and @xmldom/xmldom versions 0.8.12 and 0.9.9.
Security readout for executives and security teams
Plain-English summary
A vulnerable xmldom XML serializer can let attacker-supplied text break out of a CDATA section and become real XML markup. This can corrupt or manipulate downstream XML-based business logic. The strongest known impact is integrity loss, not data theft or service outage.
Executive priority
Prioritize remediation for internet-facing or integration-heavy services where XML output changes business records, permissions, financial transactions, or partner messages. Treat as high urgency when untrusted input reaches XML serialization; otherwise schedule through normal dependency patching.
Technical view
The flaw is unsafe CDATA serialization. Inputs containing the CDATA terminator can be inserted into a CDATASection and emitted verbatim by XMLSerializer, allowing XML structure injection. Affected ranges are xmldom <= 0.6.0, @xmldom/xmldom < 0.8.12, and @xmldom/xmldom >= 0.9.0 < 0.9.9.
Likely exposure
Exposure is most likely in Node.js or JavaScript services that parse, build, or serialize XML using xmldom or @xmldom/xmldom, especially where user-controlled data is written into CDATA and later trusted by another XML consumer.
Exploitation context
The provided sources do not show active exploitation, and KEV is false. The CVSS vector indicates network reachability, low attack complexity, no privileges, and no user interaction, but practical impact depends on whether serialized XML drives trusted decisions downstream.
Researcher notes
This is CWE-91 XML injection through serialization, not parser entity expansion. The key research question is data flow: attacker-controlled CDATA content, xmldom serialization, and a downstream XML consumer that treats injected elements or attributes as authoritative.
Mitigation direction
Upgrade @xmldom/xmldom to 0.8.12, 0.9.9, or later as applicable.
Review vendor guidance for legacy xmldom because the bundle has inconsistent fixed-version wording.
Avoid placing untrusted strings into CDATA without validation or safe serialization controls.
Check downstream XML consumers for trust decisions based on serialized xmldom output.
Validation and detection
Inventory package-lock, yarn.lock, pnpm-lock, and SBOM entries for xmldom or @xmldom/xmldom.
Confirm running builds do not resolve to the affected version ranges.
Review code paths creating CDATASection nodes from user-controlled or partner-controlled input.
Trace serialized XML into business rules, signatures, imports, integrations, or authorization decisions.
Record whether vendor release notes or advisory status confirm remediation for your exact package line.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-91: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-91 · source CWE mapping
XML Injection (aka Blind XPath Injection)
XML Injection (aka Blind XPath Injection) represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.