Impact
Prometheus 3.0‑11.1 stores metric names and label values directly into chart tooltips, metric explorer results, and heatmap cell tooltips without escaping. The rendering in both the Mantine and old React UI uses innerHTML or dangerouslySetInnerHTML, allowing any HTML or JavaScript injected into a metric or label to be executed when a user views the graph. An attacker who can add or modify metric data via a compromised scrape target, remote write, or OTLP receiver endpoint can trigger arbitrary script execution in the browser of any user who hovers over or selects that metric, potentially exposing configuration information, deleting data, or terminating the Prometheus instance if administrative flags are enabled. The vulnerability is a classic stored XSS flaw (CWE‑79).
Affected Systems
All releases from Prometheus 3.0 to 3.5.1 and from 3.6.0 to 3.11.1 are impacted. Users running these versions should verify the exact build and plan to upgrade. The issue was resolved in 3.5.2 and 3.11.2.
Risk and Exploitability
The CVSS score is 5.3, indicating moderate severity. No EPSS data is available, and the flaw is not listed in the CISA KEV catalog, suggesting that while it is known, a public exploit is not yet in widespread use. Because the flaw relies on an attacker having the ability to influence metric data—in many deployments this requires control over a scrape target or remote write endpoint—the attack vector is primarily internal or requires compromised telemetry sources. Nevertheless, when such control is achieved, victims can run arbitrary JavaScript in the UI, which may lead to configuration theft, metric data tampering, or service disruption.
OpenCVE Enrichment
Github GHSA