Register for the AI for Security Summit: Join Figma, Perplexity & Wiz

CVE-2026-61709
Grafana vulnerability analysis and mitigation

Overview

CVE-2026-61709 is an authorization bypass vulnerability in OpenFGA, an open-source authorization and permission engine, where the ListUsers API incorrectly returns users who should have been excluded from access. The flaw affects all OpenFGA versions up to and including 1.18.0 (Go module, Docker image, and Helm chart ≤ 0.3.9) and was originally reported by researcher @5ud0er, published to the GitHub Advisory Database on July 16, 2026, and disclosed publicly on September 16, 2026. It carries a CVSS v3.1 base score of 5.3 (Medium) (Github Advisory, OpenFGA Advisory).

Technical details

The root cause is classified as CWE-281 (Improper Preservation of Permissions) and CWE-863 (Incorrect Authorization). In pkg/server/commands/listusers/list_users_rpc.go, the expandIntersection function tallied concrete tuples and type-bound public wildcards (user:*) across intersection operands without first checking whether a given user appeared in the excludedUsersMap. This means a user explicitly excluded via a but not clause (e.g., (org_member but not banned) and active) could still satisfy the intersection count if they held a concrete tuple through another operand, causing ListUsers to return them as authorized. Exploitation requires an authenticated, low-privileged attacker who can query the ListUsers API against a store whose authorization model uses the specific intersection-plus-exclusion-plus-wildcard pattern described above (OpenFGA Advisory, Fix Commit).

Impact

Successful exploitation allows an authenticated attacker to enumerate user accounts that should be inaccessible according to the enforced authorization policy, resulting in a high confidentiality impact. Applications that rely on ListUsers results to drive access-control decisions (e.g., populating share dialogs or enforcing row-level security) may incorrectly grant excluded users access to protected resources. There is no integrity or availability impact; the vulnerability is limited to information disclosure and potential unauthorized access to resources gated by the flawed API response (Github Advisory).

Exploitability

No public proof-of-concept exploit code exists and no in-the-wild exploitation has been observed as of the disclosure date. The EPSS score is 0.0, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog. Exploitation is constrained by high attack complexity — the attacker must identify a store using the precise authorization model pattern (intersection with but not exclusion over a type-bound wildcard) and possess at least low-level authenticated access to the OpenFGA API (Github Advisory, Feedly).

Exploitation steps

  1. Reconnaissance: Identify an OpenFGA deployment running version ≤ 1.18.0 and obtain low-privileged API credentials (e.g., a valid API token or client credentials).
  2. Model inspection: Query the OpenFGA ReadAuthorizationModel API to inspect the store's authorization model and identify relations defined as intersections containing a but not exclusion whose base operand is granted via a type-bound public wildcard (e.g., viewer: (org_member but not banned) and active).
  3. Tuple verification: Confirm that the target store has a user:* wildcard tuple for the base relation and that at least one concrete user tuple exists for another intersection operand (e.g., user:eve has active on document:1).
  4. Trigger the bug: Call the ListUsers API for the affected object and relation (e.g., ListUsers for document:1 with relation viewer). Due to the missing exclusion check in expandIntersection, the API returns the excluded user (e.g., user:eve) alongside legitimately authorized users.
  5. Leverage results: Use the returned user list to identify accounts that should be blocked, then attempt to interact with protected resources as or on behalf of those accounts, or use the information for further targeted attacks (OpenFGA Advisory, Fix Commit).

Indicators of compromise

  • Network: Unusual or repeated ListUsers API calls from low-privileged accounts targeting objects with complex intersection-based authorization models; API calls from unexpected source IPs querying multiple stores or objects in rapid succession.
  • Logs: OpenFGA access logs showing ListUsers requests for relations that include but not exclusion patterns, particularly where the response includes users known to be in a blocked/banned relation; audit log entries showing a banned or excluded user being returned in ListUsers results.
  • Application: Downstream application logs showing access grants to users who should be excluded (e.g., a banned user appearing in a share list or being granted resource access based on ListUsers output).

Mitigation and workarounds

Upgrade OpenFGA to version 1.18.1 or later (Go module github.com/openfga/openfga, Docker image openfga/openfga:1.18.1, Helm chart 0.3.10). The fix adds an explicit check in expandIntersection to skip any user already present in excludedUsersMap before evaluating intersection satisfaction. No configuration-based workaround is available; the only remediation is upgrading. Additionally, review any application logic that consumes ListUsers results for access-control enforcement and add downstream filtering of excluded users as a defense-in-depth measure until the upgrade is applied (OpenFGA Advisory, v1.18.1 Release).

Community reactions

The vulnerability was responsibly disclosed by researcher @5ud0er, who was credited by the OpenFGA project for the detailed report. The OpenFGA maintainers published the advisory and patch promptly. No significant broader media coverage or notable community commentary beyond the official advisory has been identified.

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

RHEL / CentOS

Affected

RHEL 10

grafana.src

Affected

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-15815HIGH8.8
  • Grafana logoGrafana
  • cpe:2.3:a:grafana:grafana
NoYesSep 17, 2026
CVE-2026-92596HIGH8.7
  • Grafana logoGrafana
  • node-nodemailer
NoYesSep 16, 2026
CVE-2026-76154HIGH7.3
  • Grafana logoGrafana
  • cpe:2.3:a:grafana:grafana
NoNoSep 17, 2026
CVE-2026-81872MEDIUM6.3
  • Grafana logoGrafana
  • grafana
NoNoSep 16, 2026
CVE-2026-81871MEDIUM6.3
  • Grafana logoGrafana
  • harbor-registry
NoYesSep 16, 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