# CVE-2026-45686: OpenTelemetry eBPF Instrumentation: Memcached payload length overflow can crash OBI

> A remotely reachable integer overflow in the memcached parser allows attackers to crash the OpenTelemetry eBPF Instrumentation process, causing denial of service.

- **Severity:** High 7.5 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 2 Jun 2026
- **Updated:** 3 Jun 2026
- **Also known as:** GHSA-43g7-cwr8-q3jh, GO-2026-5107

## What is CVE-2026-45686?

CVE-2026-45686 is a high-severity vulnerability in open-telemetry opentelemetry-ebpf-instrumentation, published on 2 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

OpenTelemetry eBPF Instrumentation provides eBPF instrumentation based on the OpenTelemetry standard. From version 0.7.0 to before version 0.9.0, a remotely reachable integer overflow in OBI's memcached text protocol parser can crash the OBI process and cause denial of service. When parsing memcached storage commands such as set, add, replace, append, prepend, or cas, OBI accepts extremely large <bytes> values and adds the payload delimiter length without checking for overflow. A crafted request with <bytes> set to math.MaxInt or math.MaxInt-1 causes the computed payload length to wrap negative and triggers a runtime panic in LargeBufferReader.Peek. This issue has been patched in version 0.9.0.

Weakness: CWE-190 (Integer Overflow or Wraparound)

## Which versions are affected by CVE-2026-45686?

3 open source packages ship an affected version, including go.opentelemetry.io/obi. It affects 1 product.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `go.opentelemetry.io/obi` | Go | From 0.7.0 | 0.9.0 |
| `go.opentelemetry.io/obi` | Go | From 0.7.0 | 0.9.0 |
| `go.opentelemetry.io/obi` | Go | From 0.7.0 | 0.9.0 |

Products: Opentelemetry Ebpf Instrumentation.

## How do I fix CVE-2026-45686?

Upgrade go.opentelemetry.io/obi to 0.9.0 or later.

## Is CVE-2026-45686 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-45686 exists.

## Other vulnerabilities in open-telemetry opentelemetry-ebpf-instrumentation

- [CVE-2026-45678](https://insights.sbomify.com/CVE-2026-45678/): OpenTelemetry eBPF Instrumentation: Postgres BIND parsing can panic on malformed payloads (high 7.5)
- [CVE-2026-45685](https://insights.sbomify.com/CVE-2026-45685/): OpenTelemetry eBPF Instrumentation: MongoDB parser panics on malformed wire messages (high 7.5)
- [CVE-2026-45679](https://insights.sbomify.com/CVE-2026-45679/): OpenTelemetry eBPF Instrumentation: Redis error text is exported in span status messages (medium 6.5)
- [CVE-2026-45680](https://insights.sbomify.com/CVE-2026-45680/): OpenTelemetry eBPF Instrumentation: Unbounded BPF internal metrics replay can exhaust CPU (medium 5.9)
- [CVE-2026-45681](https://insights.sbomify.com/CVE-2026-45681/): OpenTelemetry eBPF Instrumentation: CPU-mismatch fallback uses 256-byte buffer with 8KB size (medium 5.9)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-45686 and fix it if it is affected.

What it is: CVE-2026-45686 is a high-severity vulnerability in open-telemetry opentelemetry-ebpf-instrumentation, published on 2 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-45686 exists.

Affected packages and fixed versions:
- go.opentelemetry.io/obi (Go): affected from 0.7.0; fixed in 0.9.0
- go.opentelemetry.io/obi (Go): affected from 0.7.0; fixed in 0.9.0
- go.opentelemetry.io/obi (Go): affected from 0.7.0; fixed in 0.9.0

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-45686/ (Markdown: https://insights.sbomify.com/CVE-2026-45686/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-45686
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-45686
- OSV: https://osv.dev/vulnerability/CVE-2026-45686

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-45686/
Summaries are generated and may contain mistakes; the official description above is the record.
