<?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/"><channel><title>Dd-Trace-Js (&lt; 5.100.0) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/dd-trace-js--5.100.0/</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>Wed, 15 Jul 2026 22:59:58 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/dd-trace-js--5.100.0/feed.xml" rel="self" type="application/rss+xml"/><item><title>Datadog dd-trace-js W3C Baggage Header Denial of Service Vulnerability</title><link>https://feed.craftedsignal.io/briefs/2026-07-dd-trace-js-dos/</link><pubDate>Wed, 15 Jul 2026 22:59:58 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-07-dd-trace-js-dos/</guid><description>The Datadog `dd-trace-js` library, specifically versions older than 5.100.0, is vulnerable to a Denial of Service (DoS) attack where improper parsing of W3C baggage HTTP headers allows a remote, unauthenticated attacker to send requests with an arbitrarily large number of comma-separated key-value pairs, leading to unbounded CPU and memory consumption and enabling a remote DoS against any HTTP service instrumented with the affected library where baggage propagation is enabled.</description><content:encoded><![CDATA[<p>A high-severity Denial of Service (DoS) vulnerability, tracked as CVE-2026-50272, affects Datadog's <code>dd-trace-js</code> library in versions prior to 5.100.0. This flaw stems from the library's improper parsing of W3C baggage HTTP headers. While limits (<code>DD_TRACE_BAGGAGE_MAX_ITEMS</code> and <code>DD_TRACE_BAGGAGE_MAX_BYTES</code>) are enforced during baggage injection, they are not applied during extraction. This allows a remote, unauthenticated attacker to craft and send HTTP requests containing an arbitrarily large number of comma-separated key-value pairs or a single very large value within the <code>baggage</code> header. When a vulnerable service receives such a request, the <code>dd-trace-js</code> tracer attempts to allocate a hash-map entry for each pair, leading to unbounded consumption of CPU and memory resources, ultimately resulting in a Denial of Service. The baggage propagation style, which enables this vulnerability, is often enabled by default in affected tracers, making internet-facing services instrumented with these versions particularly susceptible.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li><strong>Attacker crafts malicious HTTP request</strong>: A remote, unauthenticated attacker constructs an HTTP request targeting an internet-facing service instrumented with <code>dd-trace-js</code>.</li>
<li><strong>Injects oversized W3C baggage header</strong>: The attacker inserts a W3C <code>baggage</code> HTTP header into the request, containing an exceptionally large number of comma-separated key-value pairs or a single, extremely long value.</li>
<li><strong>Request sent to vulnerable service</strong>: The malicious HTTP request is transmitted to the target service.</li>
<li><strong>Vulnerable <code>dd-trace-js</code> receives request</strong>: The service, running a vulnerable version of <code>dd-trace-js</code> (prior to 5.100.0) with baggage propagation enabled by default, receives the request.</li>
<li><strong>Improper header parsing occurs</strong>: The <code>dd-trace-js</code> library attempts to extract the baggage items from the oversized header without enforcing any item-count or byte-size limits on the extraction path.</li>
<li><strong>Resource exhaustion</strong>: The library continuously allocates hash-map entries for each perceived key-value pair, leading to unbounded consumption of CPU and memory resources.</li>
<li><strong>Denial of Service</strong>: The target service becomes unresponsive or crashes due to resource exhaustion, resulting in a Denial of Service for legitimate users.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of CVE-2026-50272 leads to a Denial of Service (DoS) against HTTP services that are instrumented with vulnerable versions of the <code>dd-trace-js</code> library (prior to 5.100.0). Attackers can trigger this by sending a crafted HTTP request with an oversized W3C baggage header, causing the tracer to consume unbounded CPU and memory resources. This resource exhaustion can crash the targeted service, making it unavailable to legitimate users. Any internet-facing service utilizing the affected library with the baggage propagation style enabled (which is often the default configuration) is at risk, potentially leading to significant service disruption and operational downtime.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade the <code>dd-trace-js</code> library to version <code>5.100.0</code> or later immediately to patch CVE-2026-50272.</li>
<li>If immediate upgrade is not feasible, disable <code>baggage</code> extraction by modifying <code>DD_TRACE_PROPAGATION_STYLE</code> or <code>DD_TRACE_PROPAGATION_STYLE_EXTRACT</code> to remove <code>baggage</code>.</li>
<li>Implement upstream proxy or web server configurations to cap the maximum HTTP request header size. For example, configure Apache <code>LimitRequestFieldSize</code>, Nginx <code>large_client_header_buffers</code>, or Envoy <code>max_request_headers_kb</code>.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>denial-of-service</category><category>vulnerability</category><category>javascript</category><category>nodejs</category><category>datadog</category></item></channel></rss>