CVE-2026-8609
Grafana vulnerability analysis and mitigation

Overview

CVE-2026-8609 is a denial-of-service vulnerability in Grafana OSS caused by uncontrolled resource consumption (CWE-400) in the OAuth login route. An unauthenticated attacker can repeatedly call the OAuth login endpoint with unique values, triggering unbounded memory growth that eventually exhausts memory and crashes the Grafana instance. Affected versions include Grafana OSS 11.6.0–11.6.14, 12.2.0–12.2.8, 12.3.0–12.3.6, 12.4.0–12.4.3, and 13.0.0–13.0.1. The vulnerability was published on July 10, 2026, with patches released shortly after. It carries a CVSS v3.1 base score of 7.5 (High) per NVD, though the GitHub Advisory Database rates it 5.3 (Moderate) (GitHub Advisory, Grafana Advisory).

Technical details

The root cause is classified as CWE-400 (Uncontrolled Resource Consumption): Grafana's OAuth login route fails to bound or expire in-memory state associated with each unique OAuth request, allowing an attacker to continuously allocate memory without triggering cleanup. Because the attack requires no authentication, no session, and no user interaction, it is fully automatable from the network. Each request with a unique value (e.g., a unique state parameter or similar OAuth flow identifier) causes a new memory allocation that is never reclaimed, leading to progressive memory exhaustion. No public proof-of-concept code has been identified at this time (GitHub Advisory, Grafana Advisory).

Impact

Successful exploitation results in a complete denial of service for the affected Grafana instance — the process crashes due to memory exhaustion, making dashboards, alerting, and data visualization unavailable to all users. There is no confidentiality or integrity impact, as the attack only affects availability. Organizations relying on Grafana for operational monitoring or alerting may experience blind spots during an attack, potentially masking concurrent malicious activity on monitored infrastructure (GitHub Advisory, Grafana Advisory).

Exploitation steps

  1. Reconnaissance: Identify internet-facing Grafana instances with OAuth authentication enabled using tools like Shodan or Censys, targeting versions in the affected ranges (11.6.0–11.6.14, 12.2.0–12.2.8, 12.3.0–12.3.6, 12.4.0–12.4.3, 13.0.0–13.0.1).
  2. Identify OAuth login endpoint: Locate the Grafana OAuth login route (typically /login/<provider> or /login/oauth), which is accessible without authentication.
  3. Craft unique requests: Automate HTTP requests to the OAuth login route, each with a unique parameter value (e.g., a unique state nonce or redirect parameter) to ensure each request allocates a new, distinct memory entry.
  4. Flood the endpoint: Send a high volume of such requests in rapid succession using tools like curl in a loop, ab (Apache Bench), or a custom script, causing continuous unbounded memory allocation on the Grafana server.
  5. Achieve denial of service: As memory is exhausted, the Grafana process becomes unresponsive and eventually crashes, denying service to all legitimate users (GitHub Advisory, Grafana Advisory).

Indicators of compromise

  • Network: High volume of HTTP requests to Grafana's OAuth login route (e.g., /login/<provider>) from one or more source IPs, each with unique query parameters or state values; unusual spike in inbound traffic to Grafana's listening port.
  • Logs: Grafana access logs showing a large number of requests to the OAuth login endpoint in a short time window with varied parameter values; Grafana application logs showing out-of-memory errors or panic messages prior to crash.
  • Process/System: Rapid growth in Grafana process memory consumption visible via system monitoring tools (e.g., top, htop, Prometheus node exporter); Grafana process termination with OOM (Out of Memory) kill signals in system logs (/var/log/syslog or journalctl).
  • Availability: Sudden unavailability of the Grafana web interface; automated health checks or uptime monitors reporting Grafana as down.

Mitigation and workarounds

Grafana has released patched versions addressing this vulnerability: 11.6.15, 12.2.9, 12.3.7, 12.4.4, and 13.0.2. Upgrading to the appropriate patched release is the primary recommended remediation (Grafana Advisory). As interim workarounds, administrators should implement rate limiting on the OAuth login endpoint at the reverse proxy or WAF layer to restrict the frequency of requests per client IP. Additionally, monitoring Grafana memory usage for unexpected growth patterns and setting memory limits (e.g., via container resource constraints or systemd MemoryMax) can help contain the impact of an attack before a patch can be applied.

Additional resources


SourceThis report was generated using AI

Related Grafana vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-55689HIGH8.1
  • Grafana logoGrafana
  • commercial-grafana-12.4
NoYesJul 09, 2026
CVE-2026-8609HIGH7.5
  • Grafana logoGrafana
  • grafana-fips-11.6
NoYesJul 10, 2026
CVE-2026-33382HIGH7.5
  • Grafana logoGrafana
  • grafana-fips-12.2
NoYesJul 10, 2026
CVE-2026-8595MEDIUM5.4
  • Grafana logoGrafana
  • grafana
NoYesJul 10, 2026
CVE-2026-21723MEDIUM5.3
  • Grafana logoGrafana
  • cpe:2.3:a:grafana:grafana
NoNoJul 23, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management