NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
🐍
🐍 PyPI
Not in CISA KEV
HIGH severity

CVE-2020-12691 — keystone

HIGHFix: openstack/keystone@37e9907

CVE-2020-12691 is a high-severity (CVSS 8.8) CWE-863 vulnerability in keystone. A fix is available for keystone — see the affected versions and patch details below.

OpenStack Keystone V3 /credentials endpoint policy logic allows to change credentials owner or target project ID

Also known asGHSA-4427-7f3w-mqv6PYSEC-2020-55
Published
Updated
Affected
2 pkgs
Patched
2 / 2
Exploits
None indexed
Exploitation data as of Nov 10, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

EPSS Exploitation Probability

via FIRST.org ↗
4.9%probability of exploitation in next 30 days
Lower Risk0.00%
Lower risk than most CVEs92th percentile — riskier than 92% of all scored CVEsHighest risk
3.07%3.85%4.63%5.42%3.6%4.9%May 26Sep 26Nov 26

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

How urgent is this, really

Where this sits among everything scored

Real-World Exposure

2 pkgs affected
🐍keystone🐍keystone

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.

Description

An issue was discovered in OpenStack Keystone before 15.0.1, and 16.0.0. Any authenticated user can create an EC2 credential for themselves for a project that they have a specified role on, and then perform an update to the credential user and project, allowing them to masquerade as another user. This potentially allows a malicious user to act as the admin on a project another user has the admin role on, which can effectively grant that user global admin privileges.

Affected Packages

2 total 2 fixed
EcosystemPackageVulnerable rangeFix
🐍PyPIkeystoneall versions15.0.1pip install --upgrade 'keystone==15.0.1'
🐍PyPIkeystone≥ 16.0.0&&< 16.0.116.0.1pip install --upgrade 'keystone==16.0.1'

Affected Products

2 products · 3 configurations
OS
ubuntu linuxcanonical
1 version
18.04
Application
keystoneopenstack
< 15.0.1
1 version
16.0.0

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for keystone, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update keystone to 15.0.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2020-12691 is resolved across your whole dependency graph.

  3. Workarounds

    Put an independent control in front of the weakness: restrict the affected endpoint or interface to trusted networks, require an additional authentication factor or proxy-level check, and invalidate existing sessions and credentials in case the flaw has already been used.

Fixing This On Your OS

If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.

Red HatImportant

Red Hat Quay includes keystone-client, which is not vulnerable to this (server-side) vulnerability.

ProductFixed inAdvisory
Red Hat OpenStack Platform 10.0 (Newton)openstack-keystone-1:10.0.3-8.el7ostRHSA-2020:3096
Red Hat OpenStack Platform 13.0 (Queens)openstack-keystone-1:13.0.4-3.el7ostRHSA-2020:2732
Red Hat OpenStack Platform 15.0 (Stein)openstack-keystone-1:15.0.1-0.20200512110437.95b2bbe.el8ostRHSA-2020:3102
Red Hat OpenStack Platform 16.0 (Train)openstack-keystone-1:16.0.1-0.20200511063421.40cbb7b.el8ostRHSA-2020:3105

Frequently Asked Questions

An issue was discovered in OpenStack Keystone before 15.0.1, and 16.0.0. Any authenticated user can create an EC2 credential for themselves for a project that they have a specified role on, and then perform an update to the credential user and project, allowing them to masquerade as another user. This potentially allows a malicious user to act as the admin on a project another user has the admin role on, which can effectively grant that user global admin privileges.
O3 Security · Impact-Aware SCA

Is CVE-2020-12691 in your dependencies?

Find it across PyPI, including transitive dependencies.

CVE-2020-12691: keystone — Fixed in 15.0.1