OpenTelemetry Python provides the Python API and SDK for OpenTelemetry. Prior to 1.45.2, TraceContextTextMapPropagator.extract() in opentelemetry-api can perform quadratic-time regular-expression backtracking on a malformed traceparent value containing a trace-context prefix, a long whitespace sequence, and an embedded newline. Exploitation requires an attacker-controlled carrier that preserves embedded newlines and permits a sufficiently large value, because conforming HTTP header values cannot contain embedded newlines. JSON-based carriers, including applicable MCP request metadata integrations, can preserve the required newline depending on the SDK, instrumentation, and message-size limits. Parsing on an asynchronous server's event-loop thread can consume excessive CPU and delay unrelated requests, while the advisory does not establish disclosure, modification, or code execution. This issue is fixed in version 1.45.2.
{
"binaries": [
{
"binary_name": "python3-opentelemetry-api",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-configuration",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-common",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-grpc",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-http",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-prometheus",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-zipkin-json",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-exporter-zipkin-proto-http",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-opentracing-shim",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-propagator-b3",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-propagator-jaeger",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-proto",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-proto-json",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-sdk",
"binary_version": "1.44.0-2"
},
{
"binary_name": "python3-opentelemetry-semantic-conventions",
"binary_version": "1.44.0-2"
}
]
}
{
"binaries": [
{
"binary_name": "python3-opentelemetry-api",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-common",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-grpc",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-otlp-proto-http",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-prometheus",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-zipkin-json",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-exporter-zipkin-proto-http",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-opentracing-shim",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-propagator-b3",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-propagator-jaeger",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-proto",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-sdk",
"binary_version": "1.39.1-2"
},
{
"binary_name": "python3-opentelemetry-semantic-conventions",
"binary_version": "1.39.1-2"
}
]
}