Skip to main content

OpenFGA CVE-2026-61709

| EUVDEUVD-2026-80777 MEDIUM
Improper Preservation of Permissions (CWE-281)
2026-09-16 GitHub_M GHSA-g3pg-frfm-pr2m
5.3
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
5.3 MEDIUM
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
vuln.today AI
5.3 MEDIUM

AC:H for the specific intersection/wildcard/exclusion model shape, PR:L because the ListUsers API requires an authorized caller, C:H as excluded users become authorized while integrity/availability are unaffected by the query itself.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

3
Metadata Corrected
Sep 16, 2026 - 15:40 vuln.today
tag: Go added
Patch available
Sep 16, 2026 - 15:18 EUVD
Analysis Generated
Sep 16, 2026 - 14:49 vuln.today

DescriptionCVE.org

OpenFGA is an authorization and permission engine built for developers. Prior to 1.18.1, the ListUsers API could return a user that should have been excluded when an authorization relation used an intersection containing a base but not excluded operand, the base was granted through a type-bound public wildcard, and the excluded user also had a concrete tuple through another intersection operand. In pkg/server/commands/listusers/list_users_rpc.go, expandIntersection counted the concrete tuple and wildcard without first rejecting entries in excludedUsersMap. Applications that used ListUsers to enumerate or enforce access could therefore treat an excluded user as authorized. This issue is fixed in version 1.18.1.

AnalysisAI

OpenFGA releases prior to 1.18.1 can have their ListUsers API return a user who should have been excluded by the authorization model, causing applications that use ListUsers to enumerate or enforce access to treat an excluded subject as authorized. The flaw is triggered only by a specific combination: a relation expressed as an intersection containing an exclusion operand (for example 'viewer: (org_member but not banned) and active'), where the included base is granted through a type-bound public wildcard ('user:*') and the excluded user also holds a concrete tuple satisfying another intersection operand. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Exploitation requires all of the following simultaneously: an authorization model whose relation uses an intersection ('and') containing a 'but not' exclusion operand (e.g. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment This is a genuine but narrowly-scoped authorization-correctness flaw, not a broad critical issue. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Vendor-released patch: upgrade OpenFGA to version 1.18.1, which contains commit 171806c93b86bca29e0212ceb8b6ee9c48eb9ac3 adding the excludedUsersMap guard in expandIntersection. … Detailed patch versions, workarounds, and compensating controls in full report.

Threat intelligence, references, and detailed analysis are available after sign-in.

More in Go

View all
CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2016-5386 HIGH
8.1 Jul 19

The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and there

CVE-2025-68121 CRITICAL POC
10.0 Feb 05

Critical certificate validation bypass in Go crypto/tls during session resumption. If ClientCAs or RootCAs fields are mu

CVE-2019-14809 CRITICAL POC
9.8 Aug 13

net/url in Go before 1.11.13 and 1.12.x before 1.12.8 mishandles malformed hosts in URLs, leading to an authorization by

CVE-2026-90942 CRITICAL POC
9.3 Sep 14

Casdoor through 4.4.0 exposes its instance-wide built-in JWT signing private key unmasked through the /api/get-certs and

CVE-2018-7187 HIGH POC
8.8 Feb 16

The "go get" implementation in Go 1.9.4, when the -insecure command-line option is used, does not validate the import pa

CVE-2015-5739 CRITICAL
9.8 Oct 18

The net/http library in net/textproto/reader.go in Go before 1.4.3 does not properly parse HTTP header keys, which allow

CVE-2020-0601 HIGH POC
8.1 Jan 14

A spoofing vulnerability exists in the way Windows CryptoAPI (Crypt32.dll) validates Elliptic Curve Cryptography (ECC) c

CVE-2019-9634 HIGH POC
7.8 Mar 08

Go through 1.12 on Windows misuses certain LoadLibrary functionality, leading to DLL injection. Rated high severity (CVS

CVE-2018-6574 HIGH POC
7.8 Feb 07

Go before 1.8.7, Go 1.9.x before 1.9.4, and Go 1.10 pre-releases before Go 1.10rc2 allow "go get" remote command executi

CVE-2026-25679 HIGH POC
7.5 Mar 06

Denial of service in Go's net/url package allows remote unauthenticated attackers to crash applications via malformed UR

CVE-2025-61726 HIGH POC
7.5 Jan 28

The net/url package does not set a limit on the number of query parameters in a query. While the maximum size of query p

Share

CVE-2026-61709 vulnerability details – vuln.today

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