Description
An issue was discovered in OpenStack Keystone before 29.0.2. The Keystone application credential authentication plugin does not verify that the user supplied in the authentication request matches the owner of the application credential. An attacker can authenticate with their own application credential ID and secret while specifying a different user's name and domain in the request body. Keystone issues a token attributed to the victim user. The impersonated token is project-scoped and carries the intersection of the application credential's roles and the victim's actual roles on the project. This enables audit evasion, reading the victim's credentials, and acting as the victim within shared projects.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| OpenStack | Keystone | 14.0.0 – < 27.0.2, 28.0.0 – < 28.0.2, 29.0.0 – < 29.0.2 | 27.0.2 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | keystone | 2:29.0.1-2 | — |
| Debian 13 | keystone | 2:27.0.0-3+deb13u4 | — |
| Debian 12 | keystone | 2:22.0.2-0+deb12u3 | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.04 LTS | keystone | 2:29.0.0-0ubuntu1.2 | — |
| Ubuntu 25.10 | keystone | 2:28.0.0-0ubuntu1.3 | — |
| Ubuntu 24.04 LTS | keystone | 2:25.0.0-0ubuntu1.4 | — |
| Ubuntu 22.04 LTS | keystone | 2:21.0.1-0ubuntu2.4 | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 20.04 LTS | keystone | No fix yet | — |
| Ubuntu Pro 18.04 LTS | keystone | No fix yet | — |
| Ubuntu Pro 16.04 LTS | keystone | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | keystone | >= 14.0.0, < 27.0.2 | 27.0.2 | GHSA-8f8m-wrvr-wcvf |
| PyPI | keystone | >= 28.0.0, < 28.0.2 | 28.0.2 | GHSA-8f8m-wrvr-wcvf |
| PyPI | keystone | >= 29.0.0, < 29.0.2 | 29.0.2 | GHSA-8f8m-wrvr-wcvf |
| PyPI | keystone | >= 14.0.0, < 27.0.2 · >= 28.0.0, < 28.0.2 · >= 29.0.0, < 29.0.2 | 27.0.2, 28.0.2, 29.0.2 | PYSEC-2026-599 |