Activity log for bug #1677723

Date Who What changed Old value New value Message
2017-03-30 19:58:03 Boris Bobrov bug added bug
2017-03-30 20:45:56 Jeremy Stanley description Keystone stable/ocata. Federation is used with the following mapping: http://paste.openstack.org/show/ou0GTGp9fTQIzcHtixUU/ . As you can see, all users get a _member_ role, which has almost no permissions, and this role is granted for the newly-created project. User admin@Default, with role admin in project admin@Default wants to do something for project "Dev project for unpriveledged@corp.mail.ru". admin@Default assigns themselves role admin on the project (openstack role assign --user admin --user-domain Default --project-id <id for Dev project for unprivileged@> admin) At this point, if federated user "unpriveledged@corp.mail.ru" gets a new token by going through federation and then scopes the token, they get a token with role admin. Here is an example of such token: http://paste.openstack.org/show/7vncdFywNmi6WZ9S7KXX/. In horizon it means they can see and do everything admin can do. There is no record about unprivileged user having role admin in the database. This assignment is not displayed in `openstack role assignment list`. The assignment only gets effective when a scoped token is requested. Workaround for the issue is to remove role admin from admin@Default on project "Dev project for unpriveledged@". Unprivileged user immediately loses admin privileges; the token is still valid, but there is no role "admin" in GET /v3/auth/tokens . This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. Keystone stable/ocata. Federation is used with the following mapping: http://paste.openstack.org/show/ou0GTGp9fTQIzcHtixUU/ . As you can see, all users get a _member_ role, which has almost no permissions, and this role is granted for the newly-created project. User admin@Default, with role admin in project admin@Default wants to do something for project "Dev project for unpriveledged@corp.mail.ru". admin@Default assigns themselves role admin on the project (openstack role assign --user admin --user-domain Default --project-id <id for Dev project for unprivileged@> admin) At this point, if federated user "unpriveledged@corp.mail.ru" gets a new token by going through federation and then scopes the token, they get a token with role admin. Here is an example of such token: http://paste.openstack.org/show/7vncdFywNmi6WZ9S7KXX/. In horizon it means they can see and do everything admin can do. There is no record about unprivileged user having role admin in the database. This assignment is not displayed in `openstack role assignment list`. The assignment only gets effective when a scoped token is requested. Workaround for the issue is to remove role admin from admin@Default on project "Dev project for unpriveledged@". Unprivileged user immediately loses admin privileges; the token is still valid, but there is no role "admin" in GET /v3/auth/tokens .
2017-03-30 20:46:08 Jeremy Stanley bug task added ossa
2017-03-30 20:46:33 Jeremy Stanley ossa: status New Incomplete
2017-03-30 20:46:50 Jeremy Stanley bug added subscriber Keystone Core security contacts
2017-03-31 07:15:28 Boris Bobrov attachment added 1677723.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4851124/+files/1677723.patch
2017-03-31 08:01:01 Boris Bobrov attachment added 0001-Expose-issue-with-federated-user-getting-wrong-role.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4851160/+files/0001-Expose-issue-with-federated-user-getting-wrong-role.patch
2017-03-31 08:01:25 Boris Bobrov attachment added 0002-Do-not-fetch-group-assignments-without-groups.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4851161/+files/0002-Do-not-fetch-group-assignments-without-groups.patch
2017-03-31 08:05:52 Boris Bobrov attachment added 0001-Do-not-fetch-group-assignments-without-groups.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4851162/+files/0001-Do-not-fetch-group-assignments-without-groups.patch
2017-04-06 01:43:42 Tristan Cacqueray ossa: assignee Tristan Cacqueray (tristan-cacqueray)
2017-04-06 01:43:49 Tristan Cacqueray ossa: status Incomplete In Progress
2017-04-06 09:35:20 Tristan Cacqueray summary federated user gets wrong role federated user gets wrong role (CVE-2017-2673)
2017-04-06 09:35:28 Tristan Cacqueray cve linked 2017-2673
2017-04-06 10:20:43 Tristan Cacqueray attachment added cve-2017-2673-stable-ocata.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4856067/+files/cve-2017-2673-stable-ocata.patch
2017-04-06 12:55:14 Lance Bragstad keystone: status New Confirmed
2017-04-06 12:55:23 Lance Bragstad keystone: importance Undecided Critical
2017-04-06 12:55:41 Lance Bragstad keystone: assignee Boris Bobrov (bbobrov)
2017-04-06 12:55:47 Lance Bragstad keystone: milestone pike-1
2017-04-07 00:53:23 Tristan Cacqueray ossa: status In Progress Fix Committed
2017-04-07 00:53:26 Tristan Cacqueray ossa: importance Undecided Critical
2017-04-12 00:11:19 Tristan Cacqueray bug added subscriber Dmitry Mescheryakov
2017-04-12 03:35:31 Tristan Cacqueray bug added subscriber Tim Suter
2017-04-16 21:30:22 Boris Bobrov attachment added 0001-Do-not-fetch-group-assignments-without-groups.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863263/+files/0001-Do-not-fetch-group-assignments-without-groups.patch
2017-04-17 16:09:32 Boris Bobrov attachment added cve-2017-2673-master.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863653/+files/cve-2017-2673-master.patch
2017-04-17 16:09:50 Boris Bobrov attachment added cve-2017-2673-stable-ocata.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863654/+files/cve-2017-2673-stable-ocata.patch
2017-04-17 16:10:07 Boris Bobrov attachment added cve-2017-2673-stable-newton.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863655/+files/cve-2017-2673-stable-newton.patch
2017-04-17 16:10:38 Boris Bobrov attachment added cve-2017-2673-stable-mitaka.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863656/+files/cve-2017-2673-stable-mitaka.patch
2017-04-17 16:25:09 Boris Bobrov attachment removed cve-2017-2673-stable-mitaka.patch https://bugs.launchpad.net/keystone/+bug/1677723/+attachment/4863656/+files/cve-2017-2673-stable-mitaka.patch
2017-04-25 14:07:46 Lance Bragstad bug added subscriber Samuel de Medeiros Queiroz
2017-04-25 15:00:37 Tristan Cacqueray description This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. Keystone stable/ocata. Federation is used with the following mapping: http://paste.openstack.org/show/ou0GTGp9fTQIzcHtixUU/ . As you can see, all users get a _member_ role, which has almost no permissions, and this role is granted for the newly-created project. User admin@Default, with role admin in project admin@Default wants to do something for project "Dev project for unpriveledged@corp.mail.ru". admin@Default assigns themselves role admin on the project (openstack role assign --user admin --user-domain Default --project-id <id for Dev project for unprivileged@> admin) At this point, if federated user "unpriveledged@corp.mail.ru" gets a new token by going through federation and then scopes the token, they get a token with role admin. Here is an example of such token: http://paste.openstack.org/show/7vncdFywNmi6WZ9S7KXX/. In horizon it means they can see and do everything admin can do. There is no record about unprivileged user having role admin in the database. This assignment is not displayed in `openstack role assignment list`. The assignment only gets effective when a scoped token is requested. Workaround for the issue is to remove role admin from admin@Default on project "Dev project for unpriveledged@". Unprivileged user immediately loses admin privileges; the token is still valid, but there is no role "admin" in GET /v3/auth/tokens . Keystone stable/ocata. Federation is used with the following mapping: http://paste.openstack.org/show/ou0GTGp9fTQIzcHtixUU/ . As you can see, all users get a _member_ role, which has almost no permissions, and this role is granted for the newly-created project. User admin@Default, with role admin in project admin@Default wants to do something for project "Dev project for unpriveledged@corp.mail.ru". admin@Default assigns themselves role admin on the project (openstack role assign --user admin --user-domain Default --project-id <id for Dev project for unprivileged@> admin) At this point, if federated user "unpriveledged@corp.mail.ru" gets a new token by going through federation and then scopes the token, they get a token with role admin. Here is an example of such token: http://paste.openstack.org/show/7vncdFywNmi6WZ9S7KXX/. In horizon it means they can see and do everything admin can do. There is no record about unprivileged user having role admin in the database. This assignment is not displayed in `openstack role assignment list`. The assignment only gets effective when a scoped token is requested. Workaround for the issue is to remove role admin from admin@Default on project "Dev project for unpriveledged@". Unprivileged user immediately loses admin privileges; the token is still valid, but there is no role "admin" in GET /v3/auth/tokens .
2017-04-25 15:00:59 Tristan Cacqueray information type Private Security Public
2017-04-25 15:31:38 Tristan Cacqueray summary federated user gets wrong role (CVE-2017-2673) [OSSA-2017-004] federated user gets wrong role (CVE-2017-2673)
2017-04-25 15:32:50 OpenStack Infra ossa: status Fix Committed Fix Released
2017-04-25 16:40:18 OpenStack Infra keystone: status Confirmed Fix Released
2017-04-25 18:17:58 OpenStack Infra tags federation federation in-stable-ocata
2017-04-25 18:18:08 OpenStack Infra tags federation in-stable-ocata federation in-stable-newton in-stable-ocata