CVE-2026-83617 xmldom: requireWellFormed element/attribute name validation is bypassable via an embedded line terminator
Attackers can bypass XML well-formedness checks to inject markup, potentially leading to code execution or security bypasses in applications using xmldom.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-83617?
CVE-2026-83617 is a high-severity vulnerability in @xmldom xmldom, published on 1 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) DOMParser and XMLSerializer module. From 0.9.11 until 0.9.12, the requireWellFormed: true element and attribute name checks use the anchored QName_exact expression produced by reg() in lib/grammar.js, which inherits the multiline flag. A name with a valid first line followed by U+000A, U+000D, U+2028, or U+2029 and breakout markup therefore passes validation and is emitted verbatim in element start and end tags or attribute names. This bypasses the strict-serialization checks introduced for the earlier element-name and attribute-name injection advisories, while the default serialization path remains outside the strict guarantee. This issue is fixed in @xmldom/xmldom version 0.9.12.
Which versions are affected by CVE-2026-83617?
2 open source packages ship an affected version, including @xmldom/xmldom.
| Package | Affected | Fixed in |
|---|---|---|
@xmldom/xmldom npm | From 0.9.11 | 0.9.12 |
@xmldom/xmldom npm | From 0.9.11 | 0.9.12 |
How do I fix CVE-2026-83617?
Upgrade @xmldom/xmldom to 0.9.12 or later.
Is CVE-2026-83617 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-83617 exists.
Sources
Also known as DEBIAN-CVE-2026-83617, GHSA-jxjr-3g7g-3944, ROOT-APP-NPM-CVE-2026-83617, UBUNTU-CVE-2026-83617.