CVE-2020-17376 OpenStack Nova Live migration fails to update persistent domain XML
Attackers can access destination host devices via soft reboot after live migration, potentially reading or modifying data on shared paths.
- 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-2020-17376?
CVE-2020-17376 is a high-severity vulnerability in n/a, published on 26 Aug 2020. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
An issue was discovered in Guest.migrate in virt/libvirt/guest.py in OpenStack Nova before 19.3.1, 20.x before 20.3.1, and 21.0.0. By performing a soft reboot of an instance that has previously undergone live migration, a user may gain access to destination host devices that share the same paths as host devices previously referenced by the virtual machine on the source host. This can include block devices that map to different Cinder volumes at the destination than at the source. Only deployments allowing host-based connections (for instance, root and ephemeral devices) are affected.
Weakness: CWE-611
Which versions are affected by CVE-2020-17376?
7 open source packages ship an affected version, including nova. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
nova PyPI | All versions | None |
nova PyPI | All versions | None |
nova PyPI | All versions | 19.3.1, 20.3.1, 21.1.0 |
nova PyPI | All versions | 19.3.1 |
nova PyPI | All versions | 19.3.1 |
nova PyPI | From 20.0.0 | 20.3.1 |
1 more packages
nova PyPI | From 20.0.0 | 20.3.1 |
Linux distribution packages (33)
openstack-nova Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-api Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-cells Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-cert Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-common Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-compute Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-conductor Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-console Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-migration Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-network Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-novncproxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-placement-api Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-scheduler Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-serialproxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
python-nova Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
python-nova-tests Red Hat:openstack:10::el7 | All versions | 1:14.1.0-65.el7ost |
openstack-nova Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-api Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-cells Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-common Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-compute Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-conductor Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-console Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-migration Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-network Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-novncproxy Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-placement-api Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-scheduler Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-serialproxy Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
python-nova Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
python-nova-tests Red Hat:openstack:13::el7 | All versions | 1:17.0.13-24.el7ost |
Products include Openstack Nova.
How do I fix CVE-2020-17376?
Upgrade nova to a fixed version for your release line: 19.3.1, 20.3.1 or 21.1.0.
Is CVE-2020-17376 being exploited?
There is no known exploitation of CVE-2020-17376 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-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
- CVE-2015-3241 OpenStack Nova instance migration process does not stop when instance is deleted
Sources
Also known as DEBIAN-CVE-2020-17376, GHSA-c7w7-9c85-4qxv, PYSEC-2020-243, RHSA-2020:3702, RHSA-2020:3704, RHSA-2020:3706 and 3 more.