GPU VulnDB

Database/Control plane, storage & DevOps

Grafana Alloy: ServiceMonitor bearerTokenFile reads any file and ships it to an attacker scrape target

CVE-2026-75889Control plane, storage & DevOpscurated

Impact

A user who can create or modify ServiceMonitor resources in a namespace Alloy watches can set bearerTokenFile to an arbitrary path on the Alloy pod. Alloy reads that file and sends its contents as a bearer token to the scrape endpoint named in the same resource, which the attacker also controls, so any file readable by the Alloy process becomes exfiltratable. The advisory calls out the projected Kubernetes service account token specifically: on a GPU cluster the metrics agent is normally a DaemonSet with cluster-scoped read across every namespace, so a tenant who only has write access to their own namespace's ServiceMonitors ends up holding the collector's cluster-wide permissions. The CVSS vector's scope change reflects exactly that - the blast radius is the whole cluster, not the namespace the attacker started in.

Who can reach it

Any authenticated principal - human, CI job, or in-cluster controller - with create or update on ServiceMonitor CRs in a namespace Alloy is configured to watch, and outbound network reach from Alloy to an endpoint they control. No node access, no cluster-admin, and by construction the attacker holds fewer privileges than Alloy's own service account.

What to do

Upgrade Alloy to the fixed release named in Grafana's advisory - the NVD record here does not carry a version, so read the linked advisory before scheduling. Rollout is a DaemonSet or Deployment image bump and pod restart; no node drain and no GPU downtime. If you cannot upgrade immediately, remove or restrict ServiceMonitor write access in tenant namespaces, or narrow the namespaces Alloy watches. If you have reason to think this was exploited, rotate Alloy's service account token, since the projected token is the prize here and a leaked one stays valid on its own schedule.

References

Related entries

All Control plane, storage & DevOps entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.