<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>@Xmldom/Xmldom (&gt;= 0.9.0, &lt;= 0.9.11) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/@xmldom/xmldom--0.9.0--0.9.11/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Tue, 08 Sep 2026 21:52:54 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/@xmldom/xmldom--0.9.0--0.9.11/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Denial of Service via Quadratic Memory Consumption in xmldom</title><link>https://feed.craftedsignal.io/briefs/2026-09-xmldom-memory-exhaustion/</link><pubDate>Tue, 08 Sep 2026 21:52:54 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-09-xmldom-memory-exhaustion/</guid><description>The xmldom parser suffers from a quadratic memory complexity flaw during namespace processing, allowing unauthenticated attackers to trigger process OOM crashes using small, crafted XML payloads.</description><content:encoded><![CDATA[<p>The xmldom XML parser contains a vulnerability (CVE-2026-83615) stemming from inefficient namespace map handling during the parsing process. When the parser encounters an element that declares a namespace prefix, it performs a full copy of the current in-scope namespace map into a new object and retains this copy on the element while it remains open on the parse stack.</p>
<p>For deeply nested XML documents where each element declares a unique namespace, this mechanism leads to O(N²) memory consumption at the peak of the parse operation. Because this occurs during the initial parsing phase, it bypasses application-level security controls, such as schema validation or signature verification. An attacker can craft a small, highly compressible XML payload (less than 500 KB) that forces the parser to allocate gigabytes of heap memory, resulting in an unauthenticated denial-of-service (DoS) via OOM (Out-Of-Memory) process termination. This vulnerability affects multiple versions of both the legacy xmldom package and the current @xmldom/xmldom package.</p>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in a full loss of service for any application utilizing vulnerable versions of xmldom to process attacker-influenced XML. Because the payload is small and highly compressible, it is effective against services that accept compressed XML over transports such as HTTP redirects or POST requests. The flaw is particularly critical for web services and middleware that parse untrusted XML before reaching authorization or authentication logic.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Prioritize patching all instances of xmldom and @xmldom/xmldom in your environment. Upgrade to versions that implement prototype-based namespace inheritance instead of full map cloning. Due to the nature of this memory exhaustion, traditional pattern-based WAF signatures may struggle to identify the payload; monitor process memory usage (RSS) on application servers for sudden spikes during XML parsing.</p>
<ul>
<li>Upgrade <code>@xmldom/xmldom</code> to a version newer than 0.8.14 or 0.9.11.</li>
<li>Upgrade <code>xmldom</code> to a version newer than 0.6.0.</li>
<li>Monitor application server logs for OOM crash events or unexpected restarts coinciding with high-frequency XML parsing.</li>
<li>If immediate patching is not possible, implement input length and nesting depth validation before passing data to the DOMParser.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>denial-of-service</category><category>vulnerability</category><category>xml</category></item></channel></rss>