
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-29181 is a Denial of Service vulnerability in OpenTelemetry-Go (the Go implementation of OpenTelemetry) caused by inefficient multi-value baggage header extraction that allows unauthenticated remote attackers to amplify CPU usage and memory allocations. It affects go.opentelemetry.io/otel/baggage and go.opentelemetry.io/otel/propagation versions >= 1.36.0 and <= 1.40.0. The vulnerability was published on April 7, 2026, and is tracked under GHSA-mh2q-q3fh-2475. It carries a CVSS v3.1 base score of 7.5 (High) (Github Advisory, OTel Security Advisory).
The root cause (CWE-400: Uncontrolled Resource Consumption; CWE-770: Allocation of Resources Without Limits or Throttling) lies in the extractMultiBaggage function in propagation/baggage.go (line 58). This function iterates over all baggage: HTTP header field-values and parses each one independently via baggage.Parse, then aggregates members into a shared slice — repeating the full parsing work once per header line. The 8192-byte cap applies per individual header value, not across all values combined, so an attacker can send many baggage: header lines (bounded only by the server's total header byte limit, e.g., 1 MB in Go's default net/http) to multiply CPU and allocation work with no authentication required. A PoC harness demonstrates that 80 baggage values across 40 requests yields ~10.3 MB of allocations per request versus ~133 KB for a single-value baseline (OTel Security Advisory).
Successful exploitation causes a significant availability impact: an unauthenticated attacker can exhaust CPU and memory resources on any Go service using the affected OpenTelemetry propagation packages, leading to increased request latency and potential denial of service. There is no confidentiality or integrity impact — the vulnerability is purely an availability issue. Given the widespread use of OpenTelemetry in cloud-native and microservice environments, affected deployments could experience cascading service degradation under sustained attack (Github Advisory, OTel Security Advisory).
A proof-of-concept exploit is publicly available in the GitHub Security Advisory, including a PoC harness with concrete reproduction steps (unzip, make test) and specific attack parameters (80 baggage values, 40 requests) that demonstrate the amplification effect (OTel Security Advisory). No in-the-wild exploitation has been observed as of the time of publication. The vulnerability is not listed in the CISA KEV catalog. The EPSS score is approximately 0.04–0.077%, indicating a low near-term exploitation probability. No threat actor attribution is available.
go.opentelemetry.io/otel/propagation versions 1.36.0–1.40.0 and accepts inbound HTTP requests with baggage: header propagation enabled.baggage: header lines (e.g., 80 lines), each with a valid baggage value up to 8192 bytes. Each line is individually within the per-value parse limit but collectively far exceeds what a single comma-joined value would require.net/http configuration (1 MB max header bytes), this allows sending many such header lines per request.extractMultiBaggage to invoke baggage.Parse once per header line and aggregate members, resulting in ~10.3 MB of allocations per request (vs. ~133 KB baseline) and elevated latency (p95 ~7 ms vs. ~0 ms baseline).baggage: header lines (e.g., 10 or more separate baggage: headers per request); requests with total header sizes approaching the server's maximum (1 MB in default Go net/http).baggage: headers; Go runtime logs indicating high memory allocation rates or GC pressure correlated with specific request patterns.The fix is available in OpenTelemetry-Go version 1.41.0, released March 2, 2026. The patch (PR #7880, commit aa1894e) enforces W3C Baggage specification limits globally across all header values: a combined maximum of 8192 bytes and 64 members across all baggage: header lines, treating multi-value headers as a single budget rather than per-value. As a temporary workaround prior to upgrading, operators should implement rate limiting on HTTP requests and configure reverse proxies or load balancers to limit the number of baggage: header lines per request. Upgrading to v1.41.0 or later is the recommended remediation (OTel Release v1.41.0, Fix PR).
The vulnerability was reported by security researcher 1seal and remediated by XSAM (a contributor to the OpenTelemetry-Go project). The fix was reviewed and approved by multiple OpenTelemetry maintainers including MrAlias, dashpole, dmathieu, and pellared before being merged. CISA included the vulnerability in its weekly vulnerability bulletin (SB26-103) for the week of April 6, 2026 (CISA Bulletin). Coverage also appeared on security aggregation sites and AWS security change tracking, reflecting broad awareness in the cloud-native community.
Fix availability across major Linux distributions and their releases.
bookworm
golang-opentelemetry-otel
sid
golang-opentelemetry-otel
trixie
golang-opentelemetry-otel
devel
golang-opentelemetry-otel
jammy
golang-opentelemetry-otel
jammy (esm-apps)
golang-opentelemetry-otel
noble
golang-opentelemetry-otel
noble (esm-apps)
golang-opentelemetry-otel
resolute
golang-opentelemetry-otel
resolute (esm-apps)
golang-opentelemetry-otel
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."