
We found a ReDoS in OpenTelemetry for Python: one oversized tracestate header can stall an asyncio server for seconds. Fixed in opentelemetry-api 1.45.1 (CVE-2026-114603). Technical writeup: https://t.co/1Jt8SQH8Yv
Signal is active with 1 mentions in latest observed window
Recommended action window: Monitor and triage in normal cycle
NVD description
OpenTelemetry Python provides the Python API and SDK for OpenTelemetry. Prior to 1.45.1, the opentelemetry-api function TraceState.from_header in opentelemetry/trace/span.py, reached through TraceContextTextMapPropagator.extract, parses inbound W3C tracestate headers with an unbounded optional-whitespace regular expression. A malformed header containing a long run of spaces or tabs without a following comma causes quadratic backtracking before the member-count limit is applied. Services using the default W3C Trace Context propagator can therefore spend excessive CPU time on one unauthenticated request when the HTTP server, parser, gateway, or custom carrier accepts a sufficiently large header. The processing can occupy a synchronous worker or delay unrelated requests on the same asynchronous event loop. The impact is limited to availability and does not expose or modify telemetry data or allow code execution. This issue is fixed in version 1.45.1.
Priority
LOW
Exploitation
NONE
PoC
NONE
Patch
NONE
Momentum
NONE

We found a ReDoS in OpenTelemetry for Python: one oversized tracestate header can stall an asyncio server for seconds. Fixed in opentelemetry-api 1.45.1 (CVE-2026-114603). Technical writeup: https://t.co/1Jt8SQH8Yv