Executive brief
The OpenTelemetry Operator for Kubernetes contains a vulnerability that allows users with permission to create or update monitoring configurations to steal sensitive system credentials. By pointing a configuration field to internal system files, an attacker can force the system to send its own security tokens or certificates to a server they control. This could allow an attacker to impersonate the monitoring service and gain broader access to the Kubernetes cluster.
Technical details
A vulnerability in the OpenTelemetry Operator's TargetAllocator component (cmd/otel-allocator) allows for arbitrary local file read and exfiltration. The TargetAllocator watches ServiceMonitor resources and converts them into Prometheus scrape configurations, preserving the 'bearerTokenFile' field. An attacker with permissions to create or update ServiceMonitors can set this field to a sensitive path, such as the Kubernetes service account token. When the OpenTelemetry Collector performs a scrape, it reads the file from its own filesystem and sends the contents as a Bearer token to an attacker-controlled endpoint. This is a CWE-200 (Exposure of Sensitive Information) issue. A fix is available in version 0.152.0 which introduces the 'DenyFSAccessThroughSMs' guard to drop configurations referencing arbitrary local files.
Affected products
- OpenTelemetry opentelemetry-operator < 0.152.0
Timeline
- 2026-06-10: advisory: GitHub Advisory published
- 2026-06-10: patched: Fix released in version 0.152.0