ZeroHour

CVE-2026-54788

niche

Unauthenticated DoS in Datadog dd-trace-rs via unbounded tracestate parsing

CVSS 3.1
7.5 high
EPSS
<1%p45
Published
()
Modified
AI analysis

dd-trace-rs versions 0.1.0 until 0.3.3 contain an unbounded resource allocation flaw (CWE-770) in the W3C tracestate header parser (datadog-opentelemetry/src/propagation/tracecontext.rs), which collects every semicolon-separated key/value pair in the Datadog dd=... vendor entry into a HashMap without any limit on pair count or entry size. Because trace-context extraction is enabled by default, any remote unauthenticated attacker who can send requests to an instrumented network service can trigger the flaw simply by including an arbitrarily large dd=... entry in the tracestate header. Each crafted request forces excessive CPU and memory consumption, which an attacker can repeat to exhaust resources and cause denial of service, with no impact on confidentiality or integrity. Any Rust service instrumented with dd-trace-rs in the affected range that processes untrusted inbound traffic is exposed. There is no evidence of exploitation in the wild and no public proof-of-concept; EPSS estimates about a 0.6% probability of exploitation within 30 days.

What to do: Upgrade dd-trace-rs to 0.3.3 or later. As an interim mitigation, disable tracecontext propagation extraction in datadog-opentelemetry or cap/strip oversized W3C tracestate headers at your reverse proxy or load balancer. Inventory Rust services that link dd-trace-rs and confirm whether they process unauthenticated inbound requests with default propagation settings.

Affected
Datadog dd-trace-rs (datadog-opentelemetry tracecontext propagation)>= 0.1.0 and < 0.3.3 (fixed in 0.3.3)
Estimated exposure
nichelikely on the order of thousands of instrumented Rust services at most (estimate; no public install counts in the data) — dd-trace-rs is a niche Rust APM instrumentation library, so exposure is limited to the small subset of deployments that are both Rust services using Datadog APM and accept untrusted inbound traffic with default tracecontext extraction…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

dd-trace-rs provides Datadog application performance monitoring for Rust. From 0.1.0 until 0.3.3, datadog-opentelemetry/src/propagation/tracecontext.rs parses the W3C tracestate header and collects every semicolon-separated key and value pair in the Datadog dd=... vendor entry into a HashMap without enforcing a pair count or entry size limit. Because tracecontext extraction is enabled by default, a remote unauthenticated attacker can send an arbitrarily large dd=... entry and force excessive CPU and memory consumption for each request, causing denial of service in an instrumented network service. This vulnerability is fixed in 0.3.3.

Weakness
CWE-770
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

In the news

No ingested article mentions this CVE yet.