CVE-2024-40767 OpenStack Nova vulnerable to unauthorized access to potentially sensitive data
An authenticated user can read arbitrary server files by uploading crafted images with backing file paths in OpenStack Nova.
- 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-2024-40767?
CVE-2024-40767 is a medium-severity path traversal vulnerability in n/a, published on 24 Jul 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
In OpenStack Nova before 27.4.1, 28 before 28.2.1, and 29 before 29.1.1, by supplying a raw format image that is actually a crafted QCOW2 image with a backing file path or VMDK flat image with a descriptor file path, an authenticated user may convince systems to return a copy of the referenced file's contents from the server, resulting in unauthorized access to potentially sensitive data. All Nova deployments are affected. NOTE: this issue exists because of an incomplete fix for CVE-2022-47951 and CVE-2024-32498.
Weakness: CWE-552
Which versions are affected by CVE-2024-40767?
7 open source packages ship an affected version, including nova and Nova. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
nova PyPI | All versions to 27.4.0 | None |
nova PyPI | All versions to 27.4.0 | None |
nova PyPI | From 28.0.0 to 28.2.0 | None |
nova PyPI | From 29.0.0 to 29.1.0 | None |
Nova PyPI | All versions to 27.4.0 | None |
Nova PyPI | From 28.0.0 to 28.2.0 | None |
1 more packages
Nova PyPI | From 29.0.0 to 29.1.0 | None |
Linux distribution packages (33)
openstack-nova Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-api Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-common Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-compute Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-conductor Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-console Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-migration Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-novncproxy Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-scheduler Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-serialproxy Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
python3-nova Red Hat:openstack:16.1::el8 | All versions | 1:20.4.1-1.20221005193235.el8ost |
openstack-nova Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-api Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-common Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-compute Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-conductor Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-console Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-migration Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-novncproxy Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-scheduler Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-serialproxy Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova-spicehtml5proxy Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
python3-nova Red Hat:openstack:16.2::el8 | All versions | 1:20.6.2-2.20230814165229.el8ost |
openstack-nova Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-api Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-common Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-compute Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-conductor Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-migration Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-novncproxy Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-scheduler Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
openstack-nova-serialproxy Red Hat:openstack:17.1::el9 | All versions | 1:23.2.3-17.1.20231018130829.el9ost |
Products include Openstack Nova.
How do I fix CVE-2024-40767?
Upgrade to a fixed version.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2024-40767 being exploited?
There is no known exploitation of CVE-2024-40767 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 GHSA-rm86-h44c-2r2m, PYSEC-2026-1709, RHSA-2024:5083, RHSA-2024:5097, RHSA-2024:5113, UBUNTU-CVE-2024-40767 and 1 more.