CVE-2026-80183

keystone: OpenStack Keystone: Information disclosure via improper handling of domain IDs in role assignment listings

Published Aug 26, 2026 CVSS 4.0 · 7.1 High EPSS < 1% KEV · Not listed
Description
In OpenStack Keystone before 29.0.3, any authenticated user holding role:reader on any project can list every project-scoped role assignment under any domain by passing a domain ID as scope.project.id with include_subtree to the GET /v3/role_assignments endpoint. The domain's project record has domain_id=null, causing the policy domain_id check to pass for any caller. With include_names, the response discloses the names and home-domain IDs of every user, group, project, and role involved. The literal "default" domain ID works against any deployment created with keystone-manage bootstrap. An attacker can harvest domain IDs from the response and repeat the query to map role assignments across the entire cloud. This is caused by misuse of "None" in 

list_role_assignments_for_tree.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4767-1 keystone security update
Debian DSA Debian DSA DSA-6480-1 keystone security update
History
Type Values Removed Values Added
Title keystone: OpenStack Keystone: Information disclosure via improper handling of domain IDs in role assignment listings
Weaknesses CWE-639
References
Metrics threat_severity

None

cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

threat_severity

Moderate

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description In OpenStack Keystone before 29.0.3, any authenticated user holding role:reader on any project can list every project-scoped role assignment under any domain by passing a domain ID as scope.project.id with include_subtree to the GET /v3/role_assignments endpoint. The domain's project record has domain_id=null, causing the policy domain_id check to pass for any caller. With include_names, the response discloses the names and home-domain IDs of every user, group, project, and role involved. The literal "default" domain ID works against any deployment created with keystone-manage bootstrap. An attacker can harvest domain IDs from the response and repeat the query to map role assignments across the entire cloud. This is caused by misuse of "None" in  list_role_assignments_for_tree.
First Time appeared Openstack
Openstack keystone
Weaknesses CWE-843
CPEs cpe:2.3:a:openstack:keystone:*:*:*:*:*:*:*:*
Vendors & Products Openstack
Openstack keystone
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:L/SI:N/SA:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
Aug 27, 2026, 2:08 PM
Reserved
Aug 25, 2026, 9:24 PM
Status
Awaiting Analysis
Published
Aug 27, 2026, 1:18 AM
Modified
Sep 9, 2026, 4:03 PM
Severity
Moderate
Public date
Aug 26, 2026, 11:16 PM