CVE-2016-2140 OpenStack Nova host data access through resize/migration
Remote authenticated users can read arbitrary files via crafted qcow2 headers in OpenStack Compute when using raw storage with specific settings.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2016-2140?
CVE-2016-2140 is a medium-severity path traversal vulnerability in n/a, published on 12 Apr 2016. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
The libvirt driver in OpenStack Compute (Nova) before 2015.1.4 (kilo) and 12.0.x before 12.0.3 (liberty), when using raw storage and use_cow_images is set to false, allows remote authenticated users to read arbitrary files via a crafted qcow2 header in an ephemeral or root disk.
Weakness: CWE-200
Which versions are affected by CVE-2016-2140?
3 open source packages ship an affected version, including nova. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
nova PyPI | From 12.0.0 | 12.0.3 |
nova PyPI | From 12.0.0 | 12.0.3 |
nova PyPI | From 12.0.0 | 12.0.3 |
Linux distribution packages (37)
openstack-nova Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-api Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-cells Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-cert Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-common Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-compute Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-conductor Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-console Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-doc Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-network Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-novncproxy Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-objectstore Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-scheduler Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova-serialproxy Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
python-nova Red Hat:openstack:5::el6 | All versions | 0:2014.1.5-29.el6ost |
openstack-nova Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-api Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-cells Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-cert Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-common Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-compute Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-conductor Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-console Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-doc Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-network Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-novncproxy Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-objectstore Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-scheduler Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova-serialproxy Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
python-nova Red Hat:openstack:5::el7 | All versions | 0:2014.1.5-29.el7ost |
openstack-nova Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-api Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-cells Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-cert Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-common Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-compute Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
openstack-nova-conductor Red Hat:openstack:6::el7 | All versions | 0:2014.2.3-54.2.el7ost |
Products include Openstack Nova.
How do I fix CVE-2016-2140?
Upgrade nova to 12.0.3 or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2016-2140 being exploited?
There is no known exploitation of CVE-2016-2140 in the wild and no public exploit code.
Other vulnerabilities in n/a
- CVE-2017-7214 OpenStack Nova logs sensitive context from notification exceptions
- CVE-2017-17051 OpenStack Nova DoS by rebuilding the same instance with a new image multiple times
- CVE-2020-17376 OpenStack Nova Live migration fails to update persistent domain XML
- CVE-2017-18191 OpenStack Nova Denial of service attack on the compute host
- CVE-2015-3280 OpenStack Compute (nova) allows remote authenticated users to cause a denial of service
Sources
Also known as DEBIAN-CVE-2016-2140, GHSA-49jv-37hm-6gfp, PYSEC-2026-864, RHSA-2016:0363, RHSA-2016:0364, RHSA-2016:0365 and 2 more.