Every CVE Search/ Get API key

CVE-2020-12691

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

8.8 HighFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

4.92%Up 3.5 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 8.8

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.

Record
CVE-2020-12691
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
6.5 MediumAV:N/AC:L/Au:S/C:P/I:P/A:P
Weakness
CWE-863
Updated
2026-11-02
CVE List No score

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.

Record
CVE-2020-12691
Updated
2026-11-02
EUVDEUVD-2020-0097 No score

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.

Record
EUVD-2020-0097
Updated
2026-11-03
GitHub AdvisoriesGHSA-4427-7f3w-mqv6 8.7

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

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.

Record
GHSA-4427-7f3w-mqv6
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-311, CWE-863
Updated
2026-11-02
OSV 8.8

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.

Record
CVE-2020-12691
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2020-12691 8.8

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.

Record
DEBIAN-CVE-2020-12691
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 8 moreShow less
OSVGHSA-4427-7f3w-mqv6 8.7

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

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.

Record
GHSA-4427-7f3w-mqv6
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-311, CWE-863
Updated
2026-11-02
OSVRHSA-2020:2732 8.8

Red Hat Security Advisory: openstack-keystone security update

Record
RHSA-2020:2732
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2020:3096 8.8

Red Hat Security Advisory: openstack-keystone security update

Record
RHSA-2020:3096
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2020:3102 8.8

Red Hat Security Advisory: openstack-keystone security update

Record
RHSA-2020:3102
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2020:3105 8.8

Red Hat Security Advisory: openstack-keystone security update

Record
RHSA-2020:3105
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2020-12691 8.8

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.

Record
UBUNTU-CVE-2020-12691
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVPYSEC-2020-55 No score

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.

Record
PYSEC-2020-55
Updated
2026-11-02
OSVUSN-4480-1 No score

keystone vulnerabilities

It was discovered that OpenStack Keystone incorrectly handled EC2 credentials. An authenticated attacker with a limited scope could possibly create EC2 credentials with escalated permissions. (CVE-2020-12689, CVE-2020-12691)

It was discovered that OpenStack Keystone incorrectly handled the list of roles provided with OAuth1 access tokens. An authenticated user could possibly end up with more role assignments than intended. (CVE-2020-12690)

It was discovered that OpenStack Keystone incorrectly handled EC2 signature TTL checks. A remote attacker could possibly use this issue to reuse Authorization headers. (CVE-2020-12692)

Record
USN-4480-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
keystone
PyPI
before 15.0.1
15.0.1
keystone
PyPI
16.0.0 to 16.0.0
16.0.1
keystone
Debian:12
before 2:17.0.0~rc2-1
2:17.0.0~rc2-1
keystone
Debian:13
before 2:17.0.0~rc2-1
2:17.0.0~rc2-1
keystone
Debian:14
before 2:17.0.0~rc2-1
2:17.0.0~rc2-1
keystone
Debian:10
From an advisory covering 4 CVEs
before 2:14.2.0-0+deb10u1, plus listed versions
2:14.0.1-2
2:14.2.0-0+deb10u1
keystone
PyPI
before 15.0.1, plus listed versions
12.0.212.0.313.0.213.0.313.0.4
Show 7 moreShow less
14.0.014.0.114.1.014.2.015.0.015.0.0.0rc115.0.0.0rc2
15.0.1
keystone
PyPI
16.0.0 up to 16.0.1
16.0.1
openstack-keystone
Red Hat:openstack:13::el7
From an advisory covering 3 CVEs
before 1:13.0.4-3.el7ost
1:13.0.4-3.el7ost
python-keystone
Red Hat:openstack:13::el7
From an advisory covering 3 CVEs
before 1:13.0.4-3.el7ost
1:13.0.4-3.el7ost
Show 10 moreShow less
Affected packages
PackageAffectedFixed
openstack-keystone
Red Hat:openstack:10::el7
From an advisory covering 2 CVEs
before 1:10.0.3-8.el7ost
1:10.0.3-8.el7ost
python-keystone
Red Hat:openstack:10::el7
From an advisory covering 2 CVEs
before 1:10.0.3-8.el7ost
1:10.0.3-8.el7ost
python-keystone-tests
Red Hat:openstack:10::el7
From an advisory covering 2 CVEs
before 1:10.0.3-8.el7ost
1:10.0.3-8.el7ost
openstack-keystone
Red Hat:openstack:15::el8
From an advisory covering 4 CVEs
before 1:15.0.1-0.20200512110437.95b2bbe.el8ost
1:15.0.1-0.20200512110437.95b2bbe.el8ost
python3-keystone
Red Hat:openstack:15::el8
From an advisory covering 4 CVEs
before 1:15.0.1-0.20200512110437.95b2bbe.el8ost
1:15.0.1-0.20200512110437.95b2bbe.el8ost
openstack-keystone
Red Hat:openstack:16::el8
From an advisory covering 4 CVEs
before 1:16.0.1-0.20200511063421.40cbb7b.el8ost
1:16.0.1-0.20200511063421.40cbb7b.el8ost
python3-keystone
Red Hat:openstack:16::el8
From an advisory covering 4 CVEs
before 1:16.0.1-0.20200511063421.40cbb7b.el8ost
1:16.0.1-0.20200511063421.40cbb7b.el8ost
keystone
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
2:8.0.0-0ubuntu12:9.0.0~b1-0ubuntu12:9.0.0~b2-0ubuntu12:9.0.0~b3-0ubuntu12:9.0.0~rc1-0ubuntu1
Show 11 moreShow less
2:9.0.0-0ubuntu12:9.0.2-0ubuntu12:9.0.2-0ubuntu22:9.1.0-0ubuntu12:9.2.0-0ubuntu12:9.3.0-0ubuntu12:9.3.0-0ubuntu22:9.3.0-0ubuntu32:9.3.0-0ubuntu3.12:9.3.0-0ubuntu3.22:9.3.0-0ubuntu3.2+esm2
None known
keystone
Ubuntu:18.04:LTS
before 2:13.0.4-0ubuntu1, plus listed versions
2:12.0.0-0ubuntu12:13.0.0~b1-0ubuntu12:13.0.0~b2-0ubuntu12:13.0.0~b3-0ubuntu12:13.0.0~rc1-0ubuntu1
Show 5 moreShow less
2:13.0.0~rc2-0ubuntu12:13.0.0-0ubuntu12:13.0.1-0ubuntu12:13.0.2-0ubuntu12:13.0.2-0ubuntu3
2:13.0.4-0ubuntu1
keystone
Ubuntu:18.04:LTS
From an advisory covering 4 CVEs
before 2:13.0.4-0ubuntu1, plus listed versions
2:12.0.0-0ubuntu12:13.0.0~b1-0ubuntu12:13.0.0~b2-0ubuntu12:13.0.0~b3-0ubuntu12:13.0.0~rc1-0ubuntu1
Show 5 moreShow less
2:13.0.0~rc2-0ubuntu12:13.0.0-0ubuntu12:13.0.1-0ubuntu12:13.0.2-0ubuntu12:13.0.2-0ubuntu3
2:13.0.4-0ubuntu1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2020-12691 is a high vulnerability (CVSS 8.8) in Openstack Keystone, published May 6, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.92%, the 92nd percentile. Fixed in keystone 15.0.1.

References

Show 43 moreShow less
MoveEnter Open