<?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>Js-Yaml (&gt;= 3.0.0, &lt; 3.15.2) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/js-yaml--3.0.0--3.15.2/</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:50:18 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/js-yaml--3.0.0--3.15.2/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 Vulnerability in js-yaml via Empty Merge Source Exhaustion</title><link>https://feed.craftedsignal.io/briefs/2026-09-js-yaml-dos/</link><pubDate>Tue, 08 Sep 2026 21:50:18 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-09-js-yaml-dos/</guid><description>The js-yaml library fails to correctly account for empty mappings when enforcing maxTotalMergeKeys, allowing attackers to trigger excessive CPU consumption through specially crafted YAML documents.</description><content:encoded><![CDATA[<p>The js-yaml library (versions 3.x &lt; 3.15.2 and 4.x &lt; 4.3.2) is vulnerable to a denial-of-service (DoS) condition due to an incorrect implementation of merge key counting. The <code>maxTotalMergeKeys</code> configuration is intended to limit the computational complexity of parsing YAML documents; however, it does not count empty mappings towards this limit. An attacker can supply a YAML payload consisting of a large sequence of empty mappings that are repeatedly merged, resulting in an O(N*K) complexity increase. This allows for high CPU utilization using a relatively small file size, effectively bypassing configured protections. This vulnerability (CVE-2026-84375) is particularly impactful in applications that accept untrusted YAML input, as the parser consumes excessive cycles, potentially leading to resource exhaustion and service unavailability.</p>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in high CPU consumption, causing service degradation or total unavailability for applications parsing malicious YAML documents. This is a supply chain vulnerability affecting any JavaScript application that relies on the <code>js-yaml</code> library for processing user-supplied data, such as configuration files, user data imports, or API requests.</p>
<h2 id="recommendation">Recommendation</h2>
<ol>
<li>Upgrade <code>js-yaml</code> to versions 3.15.2 or 4.3.2 or later to include the fix that correctly counts empty merge-source mappings.</li>
<li>Perform a dependency audit of your projects using <code>npm list js-yaml</code> or <code>yarn why js-yaml</code> to identify vulnerable versions.</li>
<li>If immediate patching is not possible, implement strict file size limits and timeout configurations on any server-side service that triggers the <code>js-yaml</code> parser on untrusted input.</li>
<li>Ensure that the <code>maxTotalMergeKeys</code> configuration is enabled and set to a strict value appropriate for your application requirements.</li>
</ol>
]]></content:encoded><category domain="severity">low</category><category domain="type">advisory</category><category>vulnerability</category><category>denial-of-service</category><category>supply-chain</category></item></channel></rss>