Bug 1302607 - (CVE-2016-0757) CVE-2016-0757 openstack-glance: Glance image status manipulation through locations
CVE-2016-0757 openstack-glance: Glance image status manipulation through loca...
Status: CLOSED ERRATA
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
unspecified
All Linux
low Severity low
: ---
: ---
Assigned To: Red Hat Product Security
impact=low,public=20160204,reported=2...
: Security
Depends On: 1303233 1303234 1303235 1303236 1303237 1304726 1304727
Blocks: 1302609
  Show dependency treegraph
 
Reported: 2016-01-28 04:13 EST by Adam Mariš
Modified: 2016-04-26 10:32 EDT (History)
22 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
An authorization vulnerability in OpenStack Image service was discovered, which allowed image-status manipulation using locations. By removing the last location of an image, an authenticated user could change the status from 'active' to 'queue'. A malicious tenant could exploit this flaw to silently replace owned image data, regardless of its original creator or visibility settings. Only environments with show_multiple_locations set to true (not default) were affected.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-03-08 16:42:39 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Master/mitaka patch (15.79 KB, patch)
2016-01-29 04:38 EST, Adam Mariš
no flags Details | Diff
Stable/kilo patch (15.93 KB, patch)
2016-01-29 04:39 EST, Adam Mariš
no flags Details | Diff
Stable/liberty patch (15.92 KB, patch)
2016-01-29 04:39 EST, Adam Mariš
no flags Details | Diff

  None (edit)
Description Adam Mariš 2016-01-28 04:13:22 EST
A vulnerability in Glance was reported, allowing image status manipulation via locations. By removing the last location of an image, an authenticated user can change the image status to queue. This breaks the immutability promise as described in OSSA 2015-019 as the image gets transitioned from active to queued and new image data can be uploaded. Only setup with show_multiple_locations set to true (not default) are affected.

Affected versions are <=2015.1.2, >=11.0.0 and <= 11.0.1.
Comment 1 Adam Mariš 2016-01-28 04:17:37 EST
Acknowledgments:

Name: the Openstack project
Upstream: Erno Kuvaja (HPE)
Comment 2 Adam Mariš 2016-01-29 04:38 EST
Created attachment 1119384 [details]
Master/mitaka patch
Comment 3 Adam Mariš 2016-01-29 04:39 EST
Created attachment 1119385 [details]
Stable/kilo patch
Comment 4 Adam Mariš 2016-01-29 04:39 EST
Created attachment 1119386 [details]
Stable/liberty patch
Comment 5 Adam Mariš 2016-01-29 04:41:18 EST
The proposed fix prevents the removal of the last location of an image
so that an active image is always available. This action was previously
incorrectly allowed and the fix might break some users who are relying
on the false assumption that it would be OK to replace the data of
existing image in the special case that the multiple locations has been
configured.
Comment 7 hguemar 2016-02-02 10:09:36 EST
Taking care of backporting/rebuilding the packages
Comment 9 Tristan Cacqueray 2016-02-03 13:33:02 EST
Note that the impact description and note have changed slightly, here are the updated version:

Description:
Erno Kuvaja from HPE reported a vulnerability in Glance. By removing the last location of an image, an authenticated user may change the image status back to queued and may be able to upload new image data resulting in a broken Glance’s immutability promise. A malicious tenant may exploit this flaw to silently replace image data it owns, regardless of the original creator or the visibility settings. Only setups with show_multiple_locations enabled (not default) are affected.

Note:
The proposed fix prevents the removal of the last location of an image so that an active image is always available. This action was previously incorrectly allowed and the fix might break some users who are relying on the false assumption that it would be ok to replace the data of existing image in the special case that the multiple locations has been configured.
Comment 10 Martin Prpič 2016-02-04 03:35:35 EST
Unfortunately the proposed patch contained a couple of mistakes: The stable/kilo was missing an import and may fail with a NameError exception when trying to log an error. The master/mitaka patch python3 unit tests were not able to validate the new HTTPForbidden exceptions.

A new version of those patches are now available here:

https://review.openstack.org/#/c/275735/
https://review.openstack.org/#/c/275737/
Comment 12 Andrej Nemec 2016-02-04 08:23:24 EST
Created openstack-glance tracking bugs for this issue:

Affects: fedora-all [bug 1304727]
Comment 13 Andrej Nemec 2016-02-04 08:23:50 EST
Public via:

http://seclists.org/oss-sec/2016/q1/280
Comment 18 errata-xmlrpc 2016-02-29 00:10:01 EST
This issue has been addressed in the following products:

  OpenStack 6 for RHEL 7

Via RHSA-2016:0309 https://rhn.redhat.com/errata/RHSA-2016-0309.html
Comment 19 errata-xmlrpc 2016-03-03 14:31:37 EST
This issue has been addressed in the following products:

  Red Hat Enterprise Linux OpenStack Platform 7.0 (Kilo) for RHEL 7

Via RHSA-2016:0352 https://rhn.redhat.com/errata/RHSA-2016-0352.html
Comment 20 errata-xmlrpc 2016-03-03 14:47:02 EST
This issue has been addressed in the following products:

  Red Hat Enterprise Linux OpenStack Platform 5.0 (Icehouse) for RHEL 7

Via RHSA-2016:0354 https://rhn.redhat.com/errata/RHSA-2016-0354.html
Comment 21 errata-xmlrpc 2016-03-06 19:58:51 EST
This issue has been addressed in the following products:

  Red Hat Enterprise Linux OpenStack Platform 5.0 (Icehouse) for RHEL 6

Via RHSA-2016:0358 https://rhn.redhat.com/errata/RHSA-2016-0358.html

Note You need to log in before you can comment on or make changes to this bug.