CVE-2017-18191 OpenStack Nova Denial of service attack on the compute host
An attacker can cause a denial of service on the compute host by corrupting the LUKS header of an encrypted volume during detach and reattach operations.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2017-18191?
CVE-2017-18191 is a high-severity denial of service vulnerability in Redhat Openstack, published on 19 Feb 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
An issue was discovered in OpenStack Nova 15.x through 15.1.0 and 16.x through 16.1.1. By detaching and reattaching an encrypted volume, an attacker may access the underlying raw volume and corrupt the LUKS header, resulting in a denial of service attack on the compute host. (The same code error also results in data loss, but that is not a vulnerability because the user loses their own data.) All Nova setups supporting encrypted volumes are affected.
Which versions are affected by CVE-2017-18191?
5 open source packages ship an affected version, including nova. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
nova PyPI | From 15.0.0 | 15.1.1, 16.1.2 |
nova PyPI | From 15.0.0 | 15.1.1 |
nova PyPI | From 15.0.0 | 15.1.1 |
nova PyPI | From 16.0.0 | 16.1.2 |
nova PyPI | From 16.0.0 | 16.1.2 |
Linux distribution packages (35)
openstack-nova Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-api Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-cells Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-cert Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-common Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-compute Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-conductor Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-console Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-migration Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-network Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-novncproxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-placement-api Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-scheduler Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-serialproxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
python-nova Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
python-nova-tests Red Hat:openstack:10::el7 | All versions | 1:14.1.0-26.el7ost |
openstack-nova Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-api Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-cells Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-common Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-compute Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-conductor Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-console Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-migration Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-network Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-novncproxy Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-placement-api Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-scheduler Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-serialproxy Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
python-nova Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
python-nova-tests Red Hat:openstack:12::el7 | All versions | 1:16.1.4-6.el7ost |
openstack-nova Red Hat:openstack:9::el7 | All versions | 1:13.1.4-24.el7ost |
openstack-nova-api Red Hat:openstack:9::el7 | All versions | 1:13.1.4-24.el7ost |
Products include Openstack Nova, Redhat Openstack.
How do I fix CVE-2017-18191?
Upgrade nova to a fixed version for your release line: 15.1.1 or 16.1.2.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2017-18191 being exploited?
There is no known exploitation of CVE-2017-18191 in the wild and no public exploit code.
Other vulnerabilities in Redhat Openstack
- 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-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-2017-18191, GHSA-ffmh-r67w-m88f, PYSEC-2026-689, RHSA-2018:2332, RHSA-2018:2714, RHSA-2018:2855 and 2 more.