{"id":"CVE-2026-80184","aliases":["DEBIAN-CVE-2026-80184","EUVD-2026-66121","GHSA-x764-fvmq-4x2r","UBUNTU-CVE-2026-80184","USN-8854-1"],"status":"published","title":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms ...","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","severity":{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00601,"percentile":0.49219,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-863"],"published":"2026-08-25T21:29:29Z","modified":"2026-10-01T03:03:35Z","fixes":[{"ecosystem":"Debian:12","package":"keystone","fixed_in":["2:22.0.2-0+deb12u4"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"keystone","fixed_in":["2:27.0.0-3+deb13u5"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"keystone","fixed_in":["2:29.0.2-1"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:16.04:LTS","package":"keystone","fixed_in":["2:9.3.0-0ubuntu3.2+esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:18.04:LTS","package":"keystone","fixed_in":["2:13.0.4-0ubuntu1+esm1"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:20.04:LTS","package":"keystone","fixed_in":["2:17.0.1-0ubuntu2+esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:22.04:LTS","package":"keystone","fixed_in":["2:21.0.1-0ubuntu2.6"],"sources":["osv"]},{"ecosystem":"Ubuntu:24.04:LTS","package":"keystone","fixed_in":["2:25.0.0-0ubuntu1.6"],"sources":["osv"]},{"ecosystem":"Ubuntu:26.04:LTS","package":"keystone","fixed_in":["2:29.0.0-0ubuntu1.4"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:22.0.2-0+deb12u4"}]}],"versions":["2:22.0.0-2","2:22.0.2-0+deb12u1","2:22.0.2-0+deb12u2","2:22.0.2-0+deb12u3"]},{"source":"osv","ecosystem":"Debian:13","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:27.0.0-3+deb13u5"}]}],"versions":["2:27.0.0-3","2:27.0.0-3+deb13u1","2:27.0.0-3+deb13u3","2:27.0.0-3+deb13u4"]},{"source":"osv","ecosystem":"Debian:14","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:29.0.2-1"}]}],"versions":["2:27.0.0-3","2:28.0.0-1","2:28.0.0-2","2:28.0.0-3","2:28.0.0-4","2:28.0.0-5","2:28.0.0-6","2:28.0.0~rc1-1","2:28.0.0~rc1-2","2:28.0.0~rc1-4","2:29.0.0-1","2:29.0.0-2","2:29.0.0-3","2:29.0.0~rc1-1","2:29.0.0~rc1-2","2:29.0.1-1","2:29.0.1-2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:9.3.0-0ubuntu3.2+esm2"}]}],"versions":["2:8.0.0-0ubuntu1","2:9.0.0~b1-0ubuntu1","2:9.0.0~b2-0ubuntu1","2:9.0.0~b3-0ubuntu1","2:9.0.0~rc1-0ubuntu1","2:9.0.0-0ubuntu1","2:9.0.2-0ubuntu1","2:9.0.2-0ubuntu2","2:9.1.0-0ubuntu1","2:9.2.0-0ubuntu1","2:9.3.0-0ubuntu1","2:9.3.0-0ubuntu2","2:9.3.0-0ubuntu3","2:9.3.0-0ubuntu3.1","2:9.3.0-0ubuntu3.2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:13.0.4-0ubuntu1+esm1"}]}],"versions":["2:12.0.0-0ubuntu1","2:13.0.0~b1-0ubuntu1","2:13.0.0~b2-0ubuntu1","2:13.0.0~b3-0ubuntu1","2:13.0.0~rc1-0ubuntu1","2:13.0.0~rc2-0ubuntu1","2:13.0.0-0ubuntu1","2:13.0.1-0ubuntu1","2:13.0.2-0ubuntu1","2:13.0.2-0ubuntu3","2:13.0.4-0ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:17.0.1-0ubuntu2+esm2"}]}],"versions":["2:16.0.0-0ubuntu1","2:17.0.0~b1~git2019121613.db81fee63-0ubuntu1","2:17.0.0~b2~git2020020513.99733f172-0ubuntu1","2:17.0.0~b3~git2020032415.9f9040257-0ubuntu1","2:17.0.0~b3~git2020032415.9f9040257-0ubuntu2","2:17.0.0~b3~git2020041013.7bb6314e4-0ubuntu1","2:17.0.0-0ubuntu0.20.04.1","2:17.0.1-0ubuntu1","2:17.0.1-0ubuntu2","2:17.0.1-0ubuntu2+esm1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:21.0.1-0ubuntu2.6"}]}],"versions":["2:20.0.0-0ubuntu1","2:20.0.0+git2021120815.2ddf8f321-0ubuntu1","2:20.0.0+git2022011217.771c943ad-0ubuntu1","2:20.0.0+git2022030313.a3fc9e7c3-0ubuntu1","2:21.0.0-0ubuntu1","2:21.0.1-0ubuntu1","2:21.0.1-0ubuntu2","2:21.0.1-0ubuntu2.1","2:21.0.1-0ubuntu2.2","2:21.0.1-0ubuntu2.4"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:25.0.0-0ubuntu1.6"}]}],"versions":["2:24.0.0-0ubuntu1","2:24.0.0+git2024011916.adfa92b4-0ubuntu1","2:25.0.0~rc1-0ubuntu1","2:25.0.0-0ubuntu1","2:25.0.0-0ubuntu1.1","2:25.0.0-0ubuntu1.2","2:25.0.0-0ubuntu1.4"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:29.0.0-0ubuntu1.4"}]}],"versions":["2:28.0.0-0ubuntu1","2:28.0.0-0ubuntu2","2:28.0.0+git20260119.61.8a42793e7-0ubuntu1","2:29.0.0~rc1-0ubuntu1","2:29.0.0-0ubuntu1","2:29.0.0-0ubuntu1.2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:9.3.0-0ubuntu3.2+esm2"}]}],"versions":["2:8.0.0-0ubuntu1","2:9.0.0~b1-0ubuntu1","2:9.0.0~b2-0ubuntu1","2:9.0.0~b3-0ubuntu1","2:9.0.0~rc1-0ubuntu1","2:9.0.0-0ubuntu1","2:9.0.2-0ubuntu1","2:9.0.2-0ubuntu2","2:9.1.0-0ubuntu1","2:9.2.0-0ubuntu1","2:9.3.0-0ubuntu1","2:9.3.0-0ubuntu2","2:9.3.0-0ubuntu3","2:9.3.0-0ubuntu3.1","2:9.3.0-0ubuntu3.2"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:13.0.4-0ubuntu1+esm1"}]}],"versions":["2:12.0.0-0ubuntu1","2:13.0.0~b1-0ubuntu1","2:13.0.0~b2-0ubuntu1","2:13.0.0~b3-0ubuntu1","2:13.0.0~rc1-0ubuntu1","2:13.0.0~rc2-0ubuntu1","2:13.0.0-0ubuntu1","2:13.0.1-0ubuntu1","2:13.0.2-0ubuntu1","2:13.0.2-0ubuntu3","2:13.0.4-0ubuntu1"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:17.0.1-0ubuntu2+esm2"}]}],"versions":["2:16.0.0-0ubuntu1","2:17.0.0~b1~git2019121613.db81fee63-0ubuntu1","2:17.0.0~b2~git2020020513.99733f172-0ubuntu1","2:17.0.0~b3~git2020032415.9f9040257-0ubuntu1","2:17.0.0~b3~git2020032415.9f9040257-0ubuntu2","2:17.0.0~b3~git2020041013.7bb6314e4-0ubuntu1","2:17.0.0-0ubuntu0.20.04.1","2:17.0.1-0ubuntu1","2:17.0.1-0ubuntu2","2:17.0.1-0ubuntu2+esm1"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:21.0.1-0ubuntu2.6"}]}],"versions":["2:20.0.0-0ubuntu1","2:20.0.0+git2021120815.2ddf8f321-0ubuntu1","2:20.0.0+git2022011217.771c943ad-0ubuntu1","2:20.0.0+git2022030313.a3fc9e7c3-0ubuntu1","2:21.0.0-0ubuntu1","2:21.0.1-0ubuntu1","2:21.0.1-0ubuntu2","2:21.0.1-0ubuntu2.1","2:21.0.1-0ubuntu2.2","2:21.0.1-0ubuntu2.4"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:25.0.0-0ubuntu1.6"}]}],"versions":["2:24.0.0-0ubuntu1","2:24.0.0+git2024011916.adfa92b4-0ubuntu1","2:25.0.0~rc1-0ubuntu1","2:25.0.0-0ubuntu1","2:25.0.0-0ubuntu1.1","2:25.0.0-0ubuntu1.2","2:25.0.0-0ubuntu1.4"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2:29.0.0-0ubuntu1.4"}]}],"versions":["2:28.0.0-0ubuntu1","2:28.0.0-0ubuntu2","2:28.0.0+git20260119.61.8a42793e7-0ubuntu1","2:29.0.0~rc1-0ubuntu1","2:29.0.0-0ubuntu1","2:29.0.0-0ubuntu1.2"],"bundled":3}],"products":[{"vendor":"openstack","product":"keystone"}],"references":[{"url":"https://launchpad.net/bugs/2158538","tags":["issue-tracking","report"]},{"url":"https://security.openstack.org/ossa/OSSA-2026-037.html","tags":["vendor-advisory","advisory","report"]},{"url":"https://www.openwall.com/lists/oss-security/2026/08/25/5","tags":["vendor-advisory","mailing-list","advisory"]},{"url":"https://bugs.launchpad.net/keystone/+bug/2158538","tags":["exploit","evidence","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-80184","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-x764-fvmq-4x2r"},{"url":"https://opendev.org/openstack/keystone","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80184.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-80184","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-80184","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-80184","tags":["report"]},{"url":"https://www.openwall.com/lists/oss-security/2026/08/25/9","tags":["report"]},{"url":"https://review.opendev.org/c/openstack/keystone/+/1002304","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-8854-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-80182","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2026-80183","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-80184","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T21:29:29.471Z","modified":"2026-08-26T14:37:45.384Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T13:45:36.695039Z"}],"euvd":[{"id":"EUVD-2026-66121","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T21:29:29Z","modified":"2026-08-26T14:37:45Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","level":"high"}],"updated_at":"2026-11-02T18:01:31.267984Z"}],"ghsa":[{"id":"GHSA-x764-fvmq-4x2r","title":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms ...","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-26T00:30:54Z","modified":"2026-09-03T06:31:28Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"high"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T15:11:18.49317Z"}],"nvd":[{"id":"CVE-2026-80184","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T22:17:07.25Z","modified":"2026-09-03T18:11:49.487Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"high","assessor":"secondary"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T14:12:41.66469Z"}],"osv":[{"id":"CVE-2026-80184","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T21:29:29.471Z","modified":"2026-09-05T03:31:03.946977588Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T15:45:17.44708Z"},{"id":"DEBIAN-CVE-2026-80184","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T22:17:07.25Z","modified":"2026-10-01T03:03:35.280029629Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"high"}],"updated_at":"2026-11-02T15:46:04.001673Z"},{"id":"UBUNTU-CVE-2026-80184","description":"In OpenStack Keystone before 29.0.3, tokens obtained via delegated authentication mechanisms (OAuth1 access tokens, application credentials, trusts) could be submitted to the token-method authentication path for reauthentication to escape their intended project scope. When an application credential token was presented with no explicit scope, Keystone would issue a new token scoped to the credential owner's default project rather than the project for which the credential was issued, bypassing the intended project boundary. All Keystone deployments that permit delegated authentication through OAuth1 access tokens, application credentials, or trusts are affected.","status":"published","published":"2026-08-25T22:17:00Z","modified":"2026-09-30T18:25:00.886565506Z","cvss":[{"version":"4.0","score":7.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","level":"high"}],"updated_at":"2026-11-02T16:57:18.015985Z"},{"id":"USN-8854-1","title":"keystone vulnerabilities","description":"Grzegorz Grasza discovered that OpenStack Keystone did not consistently\nenforce restrictions for delegated authentication tokens. An authenticated\nattacker could possibly use this issue to create credentials or delegations\n that outlasted the delegated token. (CVE-2026-80182)\n\nIt was discovered that OpenStack Keystone incorrectly handled role\nassignment queries under certain circumstances. An authenticated attacker\ncould possibly use this issue to obtain sensitive information. This\nissue only affected Ubuntu 20.04 LTS, Ubuntu 22.04 LTS, Ubuntu 24.04\nLTS, and Ubuntu 26.04 LTS. (CVE-2026-80183)\n\nTim Shephard discovered that OpenStack Keystone did not properly\nrestrict reauthentication using delegated tokens. An authenticated\nattacker could possibly use this issue to escape their intended\nproject scope and obtain unauthorized access. (CVE-2026-80184)","status":"published","published":"2026-09-30T13:07:45Z","modified":"2026-10-01T00:27:45.290366825Z","updated_at":"2026-11-02T16:58:26.907654Z"}]}}
