Skip to main content

Grafana Alloy CVE-2026-75889

| EUVDEUVD-2026-67162 HIGH
Files or Directories Accessible to External Parties (CWE-552)
2026-08-27 GRAFANA GHSA-6vgr-r2fg-p38q
7.7
CVSS 3.1 · Vendor: GRAFANA
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Obtain ServiceMonitor write RBAC in watched namespace
  2. Delivery
    Craft ServiceMonitor with bearerTokenFile=/var/run/secrets/kubernetes.io/serviceaccount/token
  3. Exploit
    Point scrape target to attacker-controlled server
  4. Install
    Alloy reconciles and reads token file
  5. C2
    Alloy sends token as Bearer header to attacker server
  6. Execute
    Capture Kubernetes service account token
  7. Impact
    Authenticate to cluster API as Alloy service account

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling File access restriction
MITRE ATT&CK

2 techniques across 1 tactic: Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a Kubernetes RBAC binding that grants the attacker create or update rights on ServiceMonitor custom resources (monitoring.coreos.com/servicemonitors) in at least one namespace actively watched by Alloy's prometheus.operator.servicemonitors component. This permission level is equivalent to a developer or namespace-admin role in many clusters, not an anonymous or unauthenticated position. The prometheus.operator.servicemonitors Alloy component must be explicitly configured and running - Alloy deployments that do not use this component are not affected. The attacker must also be able to specify or control a scrape endpoint (the target host in the ServiceMonitor) that they can observe incoming HTTP requests on, which requires either an internet-reachable server or an in-cluster service they control. Exploitation is bounded by: (1) the requirement for valid Kubernetes cluster credentials and namespace access, excluding purely external threat actors; (2) the need for ServiceMonitor write access specifically, which is not automatically granted with general namespace access; (3) the sensitivity of the stolen material being capped by Alloy's own service account RBAC rights, which vary by deployment.

Impact

The CVSS 3.1 vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N is well-calibrated for this vulnerability. The Scope:Changed flag is the most important signal: the exploitable namespace boundary is breached because the stolen service account token operates at the cluster level. Real-world risk is strongly conditioned on Alloy's own RBAC footprint - in many Grafana stack deployments Alloy holds cluster-wide read or even write rights, which makes the stolen token far more dangerous than the PR:L prerequisite implies. EPSS data is not available in the provided intelligence, so exploitation probability cannot be quantified numerically. No CISA KEV listing and no public POC are present, indicating no confirmed widespread exploitation at time of analysis; however, the attack surface is entirely accessible to any developer-level Kubernetes user granted ServiceMonitor write access, which is common in multi-tenant clusters with GitOps workflows. The primary limiting factor is that this vulnerability sits in a Kubernetes-native deployment context rather than being internet-facing in the traditional sense: a would-be attacker must already have Kubernetes API access and namespace-level RBAC rights, which meaningfully narrows the threat actor pool. Teams running Alloy with tightly scoped RBAC and namespace isolation face lower residual risk than those granting broad ServiceMonitor permissions to application developers.

Exploit ScenarioDerived

An attacker with ServiceMonitor write access in a namespace watched by Alloy deploys a ServiceMonitor resource whose bearerTokenFile field points to /var/run/secrets/kubernetes.io/serviceaccount/token, with the scrape endpoint (targets field) set to an internet-accessible server the attacker controls. On Alloy's next reconciliation cycle - which occurs automatically - Alloy reads the service account token file and issues an HTTP scrape request to the attacker's server with Authorization: Bearer <token>, delivering Alloy's Kubernetes identity directly. The attacker then uses that token with kubectl or the Kubernetes REST API to impersonate Alloy's service account and interact with the Kubernetes API at whatever permission level Alloy holds, potentially reading secrets across all namespaces if Alloy has cluster-read RBAC.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 27, 2026

Grafana Alloy's prometheus.operator.servicemonitors component exposes an arbitrary local file read path that leads to credential theft and potential Kubernetes privilege escalation. Any Kubernetes user with ServiceMonitor create or modify rights in a namespace watched by Alloy can point the bearerTokenFile field at any file accessible to the Alloy process - most critically Alloy's own projected Kubernetes service account token - and receive that file's contents exfiltrated via HTTP Bearer token to an attacker-controlled scrape endpoint. The CVSS 7.7 Scope:Changed rating correctly reflects that successful exploitation transcends the compromised namespace, potentially granting the attacker cluster-level API access commensurate with Alloy's own RBAC permissions. No public exploit has been identified at time of analysis.

RemediationAI

Apply the patched version of Grafana Alloy identified in the vendor security advisory at https://grafana.com/security/security-advisories/cve-2026-75889 - the exact fix version is not independently confirmed from the available intelligence and must be retrieved from that advisory. Until a patch is applied, the most direct compensating control is to audit and restrict Kubernetes RBAC permissions for ServiceMonitor create and modify verbs to only fully trusted principals (e.g., cluster administrators or CI/CD service accounts under change control), removing developer-level write access to ServiceMonitor resources in any namespace watched by Alloy. A secondary control is to restrict Alloy's own service account permissions to the minimum required for your observability use case, reducing the value of any stolen token. Additionally, consider mounting Alloy with a read-only root filesystem and explicitly bounding its projected service account token audience using Kubernetes boundServiceAccountTokenVolume with a short TTL, so any exfiltrated token expires rapidly. Note that restricting ServiceMonitor write access may impact GitOps or developer self-service observability workflows and should be coordinated with platform teams.

Affected VersionsENISA

Alloy 1.0.0 ≤1.18.1

Affected Packages

euvd alloy no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Grafana Alloy (cpe:2.3:a:grafana:alloy:*:*:*:*:*:*:*:*) is Grafana's supported distribution of a unified telemetry collector, combining Prometheus and OpenTelemetry collection with native Kubernetes operator integration. The prometheus.operator.servicemonitors component watches Kubernetes ServiceMonitor custom resources (CRDs, part of the Prometheus Operator ecosystem) to dynamically generate scrape configurations. The ServiceMonitor spec includes a bearerTokenFile field intended to reference a mounted secret or token for authenticating scrape requests. Alloy does not validate or sandbox this path - it will read any file path the field contains, provided that path is accessible to the Alloy process's filesystem and permissions. The file contents are then transmitted as an HTTP Authorization: Bearer header to whatever scrape endpoint the same ServiceMonitor specifies, which an attacker controls. This is effectively an unauthenticated Server-Side File Read (CWE not formally assigned in the advisory) chained with credential exfiltration. Kubernetes projected service account tokens, typically mounted at /var/run/secrets/kubernetes.io/serviceaccount/token, are a high-value target because they carry the identity and RBAC rights of the Alloy service account, which commonly holds broad cluster-read or cluster-admin permissions needed for service discovery.

Know when Grafana gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GRAFANA) PRIMARY 7.7 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 7.7 HIGH

PR:L for required ServiceMonitor RBAC write access; S:C because stolen token extends impact to cluster scope beyond the compromised namespace.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
SUSE HIGH

Primary rating from Vendor (GRAFANA).

CVSS VectorVendor: GRAFANA

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

DescriptionCVE.org

Grafana Alloy’s prometheus.operator.servicemonitors component allows a user who can create or modify ServiceMonitor resources in a watched namespace to specify an arbitrary local file through bearerTokenFile. Alloy reads the file and sends its contents as a bearer token to an attacker-controlled scrape endpoint. This may disclose files accessible to the Alloy process, including its projected Kubernetes service account token, potentially granting the attacker Alloy’s Kubernetes permissions. Exploitation requires ServiceMonitor write access and lower privileges than Alloy’s service account.

Executive ViewAI

Why It Matters

Grafana Alloy deployments in Kubernetes environments face credential theft risk through the prometheus.operator.servicemonitors component, potentially compromising cluster-level administrative access. The vulnerability affects organizations that permit non-administrator Kubernetes users to create or modify ServiceMonitors. Without current vendor patch availability, organizations must immediately implement stricter access controls to reduce cluster compromise risk.

Business Impact: High
Compensating Controls

Restrict RBAC permissions to limit ServiceMonitor creation and modification to cluster administrators only. Enable Kubernetes audit logging to detect suspicious ServiceMonitor activity. Implement AppArmor or SELinux policies to restrict Alloy process file system access. Monitor network egress from Alloy pods for suspicious HTTP authentication token leakage. Review all existing Alloy RBAC grants and remove unnecessary cluster-level permissions. Deploy Alloy instances in isolated namespaces with minimal required permissions.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Medium
widely adopted in Kubernetes-native Grafana observability stacks
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2024-9264 CRITICAL POC
9.4 Oct 18

The SQL Expressions experimental feature of Grafana allows for the evaluation of `duckdb` queries containing user input.

CVE-2023-34111 CRITICAL POC
9.8 Jun 06

The `Release PR Merged` workflow in the github repo taosdata/grafanaplugin is subject to a command injection vulnerabili

CVE-2022-26148 CRITICAL POC
9.8 Mar 21

An issue was discovered in Grafana through 7.3.4, when integrated with Zabbix. Rated critical severity (CVSS 9.8), this

CVE-2020-27846 CRITICAL POC
9.8 Dec 21

A signature verification vulnerability exists in crewjam/saml. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2018-15727 CRITICAL POC
9.8 Aug 29

Grafana 2.x, 3.x, and 4.x before 4.6.4 and 5.x before 5.2.3 allows authentication bypass because an attacker can generat

CVE-2026-63087 CRITICAL POC
9.3 Jul 16

Authentication bypass in Grafana OnCall through 1.16.11 lets unauthenticated remote attackers mint a valid PluginAuthTok

CVE-2023-36649 CRITICAL POC
9.1 Dec 12

Insertion of sensitive information in the centralized (Grafana) logging system in ProLion CryptoSpike 3.0.15P2 allows re

CVE-2025-4123 HIGH POC
7.6 May 22

A cross-site scripting (XSS) vulnerability exists in Grafana caused by combining a client path traversal and open redire

CVE-2020-13379 HIGH POC
8.2 Jun 03

The avatar feature in Grafana 3.0.1 through 7.0.1 has an SSRF Incorrect Access Control issue. Rated high severity (CVSS

CVE-2023-1387 HIGH POC
7.5 Apr 26

Grafana is an open-source platform for monitoring and observability. Rated high severity (CVSS 7.5), this vulnerability

CVE-2022-32276 HIGH POC
7.5 Jun 17

Grafana 8.4.3 allows unauthenticated access via (for example) a /dashboard/snapshot/*?orgId=0 URI. Rated high severity (

CVE-2022-32275 HIGH POC
7.5 Jun 06

Grafana 8.4.3 allows reading files via (for example) a /dashboard/snapshot/%7B%7Bconstructor.constructor'/.. Rated high

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Module for Basesystem 15 SP7 Affected
SUSE Linux Enterprise Server 15 SP7 Affected
SUSE Linux Enterprise Server 16.0 Affected
SUSE Linux Enterprise Server 16.1 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy