Vulnerability GHSA-mf5v-w3w3-f6cg

Medium Risk
MEDIUM RISK
CVSS Score: 5.3
Score Range: 4.0–6.9
Medium severity vulnerabilities (CVSS 4.0–6.9). Important issues that meaningfully reduce security confidence.
2 hours ago
November 13, 2026 at 04:43 PM UTC
OpenTelemetry Python API: Denial of service through quadratic-time traceparent parsing
0.1a0 and 0.2a0 and 0.3a0 and 0.4a0 and 0.4a1 and 0.5b0 and 0.6b0 and 0.7b0 and 0.7b1 and 0.8b0 and 0.9b0 and 0.10b0 and 0.11b0 and 0.12b0 and 0.13b0 and 0.14b0 and 0.15b0 and 0.16b0 and 0.16b1 and 0.17b0 and 1.0.0rc1 and 1.0.0 - 1.9.1 and 1.10a0 and 1.10.0 - 1.12.0rc1 and 1.12.0rc2 and 1.12.0 - 1.45.1
0.1a0 and 0.2a0 and 0.3a0 and 0.4a0 and 0.4a1 and 0.5b0 and 0.6b0 and 0.7b0 and 0.7b1 and 0.8b0 and 0.9b0 and 0.10b0 and 0.11b0 and 0.12b0 and 0.13b0 and 0.14b0 and 0.15b0 and 0.16b0 and 0.16b1 and 0.17b0 and 1.0.0rc1 and 1.0.0 - 1.9.1 and 1.10a0 and 1.10.0 - 1.12.0rc1 and 1.12.0rc2 and 1.12.0 - 1.45.1

Summary

OpenTelemetry Python API: Denial of service through quadratic-time traceparent parsing

Details

Summary

TraceContextTextMapPropagator.extract() in opentelemetry-api is vulnerable to regular expression denial of service (ReDoS) when processing a specially crafted traceparent value.

A malformed value containing a trace-context prefix followed by a long whitespace sequence and an embedded newline triggers quadratic-time regex backtracking. Applications that extract trace context from untrusted carriers accepting such strings can experience excessive CPU consumption and request-processing delays.

When extraction runs on an asynchronous server’s event-loop thread, a single malicious message can delay unrelated requests handled by that event loop.

Exposure conditions

Exploitation requires attacker-controlled input to reach the affected propagator through a carrier that preserves embedded newlines and permits a sufficiently large value.

Conforming HTTP header values cannot contain embedded newlines. However, OpenTelemetry carriers are not restricted to HTTP headers. JSON strings can contain escaped newlines that become newline characters after decoding.

MCP request metadata is one relevant integration path: applications may extract trace context from JSON params._meta. Exposure depends on the MCP SDK or instrumentation version, whether extraction invokes the W3C Trace Context propagator, and applicable message-size limits. HTTP header validation does not constrain a traceparent string carried inside a JSON body.

Authentication requirements depend on the application exposing the carrier.

Impact

The demonstrated impact is denial of service through excessive CPU consumption and blocked request processing. Repeated malicious messages may sustain service degradation.

This finding does not demonstrate data disclosure, data modification, or code execution.

Remediation

Upgrade opentelemetry-api to 1.45.2 or a later release containing the fix.

Version 1.45.2 rejects traceparent values longer than 512 characters before regex matching and removes the overlapping suffix and trailing-whitespace expressions.

Where upgrading is temporarily unavailable, reject oversized values and embedded CR/LF characters before passing untrusted trace-context values to the affected propagator.

Impacted packages

Timeline

Published
2 hours ago
November 13, 2026 at 04:43 PM UTC
Fixed (1.45.2)
15 days ago
October 29, 2026 at 05:29 PM UTC
Last Modified
2 hours ago
November 13, 2026 at 05:00 PM UTC