Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-83606— xmldom PI grammar regex ReDoS: quadratic backtracking on unterminated processing instructions

Quick assessment

Affected
xmldom xmldom
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

xmldom 是一个纯 JavaScript 实现的模块,遵循 W3C 标准(XML DOM Level 2 Core),提供 DOMParser 和 XMLSerializer 功能。在 0.9.0-beta.9 到 0.9.11 版本中,lib/grammar.js 中的处理指令(processing-instruction)生成部分,其贪婪的 S+ 分隔符和懒惰的 Char*? 数据组,在缺少必需的关闭标记 时,会对较长的空白结尾部分进行反复重新划分。由于 parsePI 和 parseProcessingI

CVSS 8.7 · High

Possible ATT&CK Techniques 1 AI

T1499 · Endpoint Denial of Service
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-83606

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
xmldom PI grammar regex ReDoS: quadratic backtracking on unterminated processing instructions
Source: CVE Program / CVE List V5
Vulnerability Description
xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) DOMParser and XMLSerializer module. From 0.9.0-beta.9 until 0.9.11, the processing-instruction production in lib/grammar.js lets the greedy S+ separator and lazy Char*? data group repeatedly repartition a long whitespace tail when the required closing ?> is absent. Both parsePI and parseProcessingInstruction apply the expression to the entire remaining source, causing quadratic backtracking during DOMParser.parseFromString() under default options and allowing a small unauthenticated XML input to stall the Node.js event loop. This issue is fixed in @xmldom/xmldom version 0.9.11.
Source: CVE Program / CVE List V5
CVSS Information
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
Source: CVE Program / CVE List V5
Vulnerability Type
未加控制的资源消耗(资源穷尽)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
xmldom xmldom >= 0.9.0-beta.9, < 0.9.11 -
@xmldom xmldom >= 0.9.0-beta.9, < 0.9.11 -

II. Public POCs for CVE-2026-83606

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-83606

登录查看更多情报信息。

Patches & Fixes for CVE-2026-83606 (2)

Vendor Advisories for CVE-2026-83606 (1)

Vendor Pages for CVE-2026-83606 (1)

Same Patch Batch · xmldom · 2026-09-01 · 15 CVEs total

CVE-2026-83605 8.7 HIGH xmldom: Attribute name injection via setAttribute() bypasses requireWellFormed
CVE-2026-83607 8.7 HIGH xmldom: Element name injection via createElement() bypasses requireWellFormed
CVE-2026-83609 8.7 HIGH xmldom: Creation-time XML Name/QName validation is bypassable via an embedded line termina
CVE-2026-83613 8.7 HIGH xmldom: Quadratic-time attribute deduplication
CVE-2026-83612 8.7 HIGH xmldom: HTML raw-text closing-tag case mismatch causes output amplification
CVE-2026-83614 8.7 HIGH xmldom: Quadratic-time parsing via the malformed-input recovery path — `parseElementStartP
CVE-2026-83608 8.7 HIGH xmldom: DocType `name` Injection Bypasses requireWellFormed
CVE-2026-83617 8.7 HIGH xmldom: requireWellFormed element/attribute name validation is bypassable via an embedded
CVE-2026-83615 8.7 HIGH xmldom: Quadratic-memory consumption
CVE-2026-83619 8.7 HIGH xmldom: End-tag Whitespace-Trim Regex ReDoS — quadratic backtracking in the 0.8.x end-tag
CVE-2026-83618 8.7 HIGH xmldom: requireWellFormed DocType publicId/systemId validation is bypassable via an embedd
CVE-2026-83616 8.7 HIGH xmldom: Processing Instruction Target Injection Bypasses requireWellFormed
CVE-2026-83611 6.9 MEDIUM xmldom: Parser silently accepts a not-well-formed end tag whose name is followed by a line
CVE-2026-83610 6.3 MEDIUM xmldom: XML fragment injection via invalid EntityReference.nodeName during requireWellForm

IV. Related Vulnerabilities

V. Comments for CVE-2026-83606

No comments yet


Leave a comment