Skip to main content
← All vulnerabilities
CVE-2026-81872GHSA-HJF4-FPHR-2H65GO-2026-6615

OpenTelemetry-Go: BatchProcessor can busy-spin when export buffer is full

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

Summary

OpenTelemetry-Go is the Go implementation of OpenTelemetry. Prior to version 0.21.0, the go.opentelemetry.io/otel/sdk/log BatchingProcessor can enter a tight CPU loop when attacker-driven log emission fills its asynchronous export buffer while the exporter is backpressured. NewBatchingProcessor wraps the exporter with newBufferExporter(exporter, 1), and the poll loop calls queue.TryDequeue and bufferExporter.EnqueueExport before immediately signaling pollTrigger whenever the queue remains at or above batchSize. Because a failed nonblocking EnqueueExport leaves the queue length unchanged, the processor repeatedly retries without waiting for its ticker, exhausting CPU and degrading or denying service in the embedding process. This issue is fixed in version 0.21.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

    fixed in 0.21.0

  • go.opentelemetry.io/otel/sdk/logGo

    fixed in 0.21.0

References 5

GitHub · open-telemetry/opentelemetry-go