Skip to main content
← All vulnerabilities
CVE-2026-81869GHSA-P9F8-WVJ8-2FG8GO-2026-6616

OpenTelemetry-Go: UTF-8 replacement rune bypasses attribute length truncation

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.33.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

OpenTelemetry-Go is the Go implementation of OpenTelemetry. From version 1.10.0 until 1.33.0, the sdk/trace/span.go attribute truncation path can fail to enforce AttributeValueLengthLimit for string and string-slice attributes containing the valid Unicode replacement character U+FFFD. safeTruncateValidUTF8 treats the valid replacement rune as invalid UTF-8 and returns the original input, while strings.ToValidUTF8 leaves that valid rune unchanged, so a second safeTruncate attempt can also return the oversized value. An attacker who controls span attribute content can retain values longer than the configured limit, increasing per-span memory use and weakening denial-of-service protection in the instrumented process. This issue is fixed in version 1.33.0.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • open-telemetry opentelemetry-go

    From 1.10.0 · fixed in 1.33.0

  • go.opentelemetry.io/otel/sdkGo

    From 1.10.0 · fixed in 1.33.0

References 5

GitHub · open-telemetry/opentelemetry-go