# CVE-2025-44021: OpenStack Ironic fails to restrict paths used for file:// image URLs

Source: https://junglewise.ai/threats/cve-2025-44021-openstack-ironic-fails-to-restrict-paths-used-for-file-image-urls  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2025-05-08  
License: CC BY 4.0 with a link back

CVE-2025-44021 · Severity: low · CVSS 3.1 · Published 2025-05-08

OpenStack Ironic before 29.0.1 can write unintended files to a target node disk during image handling (if a deployment was performed via the API). A malicious project assigned as a node owner can provide a path to any local file (readable by ironic-conductor), which may then be written to the target node disk. This is difficult to exploit in practice, because a node deployed in this manner should never reach the ACTIVE state, but it still represents a danger in environments running with non-default, insecure configurations such as with automated cleaning disabled. The fixed versions are 24.1.3, 26.1.1, and 29.0.1.

Technologies: [ironic (PyPI)](https://junglewise.ai/threats/technologies/pypi-ironic). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2025-44021 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2025-44021 being exploited in the wild.

**How severe is CVE-2025-44021?** Low severity, with a CVSS score of 3.1, published 8 May 2025.

**Which products and versions are affected?** ironic (PyPI) ECOSYSTEM:introduced=0,fixed=24.1.3, ECOSYSTEM:introduced=0,fixed=24.1.3,introduced=25.0.0,fixed=26.1.1,introduced=27.0.0,fixed=29.0.1.

**Is there a fix for CVE-2025-44021?** Yes. ironic (PyPI): upgrade to 24.1.3, 29.0.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**Am I affected by CVE-2025-44021?** Check whether you run ironic (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- ironic (PyPI): upgrade to 24.1.3, 29.0.1 or later

  ```sh
  pip install "ironic>=29.0.1"
  ```


## Affected products

- ironic (PyPI) ECOSYSTEM:introduced=0,fixed=24.1.3, ECOSYSTEM:introduced=0,fixed=24.1.3,introduced=25.0.0,fixed=26.1.1,introduced=27.0.0,fixed=29.0.1

## Identifiers

- CVE-2025-44021
- GHSA-q3m2-crgq-5p3q
- PYSEC-2025-38

## Related threats

- [PYSEC-2026-1468 - OpenStack Ironic fails to verify checksums of supplied image_source URLs](https://junglewise.ai/threats/cve-2024-47211-openstack-ironic-fails-to-verify-checksums-of-supplied-image)
- [PYSEC-2026-646 - OpenStack Ironic Exposure of Sensitive Information to an Unauthorized Actor](https://junglewise.ai/threats/cve-2016-4985-openstack-ironic-exposure-of-sensitive-information-to-an)
- [OpenStack Ironic sensitive information disclosure in volume target PATCH response](https://junglewise.ai/threats/cve-2026-54421-openstack-ironic-sensitive-information-disclosure-in-volume)
- [OpenStack Ironic denial of service via crafted JSON in API endpoints](https://junglewise.ai/threats/cve-2026-50589-openstack-ironic-denial-of-service-via-crafted-json-in-api)
- [OpenStack Ironic directory traversal in ISO image extraction](https://junglewise.ai/threats/cve-2026-48681-openstack-ironic-directory-traversal-in-iso-image-extraction)
