CVE-2025-44021
OpenStack Ironic fails to restrict paths used for file:// image URLs
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.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
2.8
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.
- Record
CVE-2025-44021- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Weakness
- CWE-22
- Updated
- 2026-11-02
EUVDEUVD-2025-14023
2.8
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.
- Record
EUVD-2025-14023- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-q3m2-crgq-5p3q
2.8
OpenStack Ironic fails to restrict paths used for file:// image URLs
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.
- Record
GHSA-q3m2-crgq-5p3q- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Weakness
- CWE-22
- Updated
- 2026-11-02
NVD
2.8
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.
- Record
CVE-2025-44021- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Weakness
- CWE-22
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2025-44021
2.8
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.
- Record
DEBIAN-CVE-2025-44021- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Updated
- 2026-11-02
OSVGHSA-q3m2-crgq-5p3q
2.8
OpenStack Ironic fails to restrict paths used for file:// image URLs
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.
- Record
GHSA-q3m2-crgq-5p3q- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Weakness
- CWE-22
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2025-44021
2.8
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.
- Record
UBUNTU-CVE-2025-44021- CVSS 3.1
- 2.8 Low
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N - Updated
- 2026-11-02
OSV No score
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.
- Record
CVE-2025-44021- Updated
- 2026-11-02
OSVPYSEC-2025-38 No score
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.
- Record
PYSEC-2025-38- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
ironicPyPI |
before 24.1.3 | 24.1.3 |
ironicPyPI |
25.0.0 up to 26.1.1 | 26.1.1 |
ironicPyPI |
27.0.0 up to 29.0.1 | 29.0.1 |
ironicDebian:12 |
before 1:21.1.0-3+deb12u1, plus listed versions 1:21.1.0-3 |
1:21.1.0-3+deb12u1 |
ironicDebian:13 |
before 1:29.0.0-6 | 1:29.0.0-6 |
ironicDebian:14 |
before 1:29.0.0-6 | 1:29.0.0-6 |
ironicPyPI |
before 24.1.3, plus listed versions 0.010.1.1010.1.710.1.810.1.9 Show 45 moreShow less11.1.111.1.211.1.311.1.412.0.012.1.012.1.112.1.212.1.312.1.412.1.512.1.612.2.013.0.013.0.113.0.213.0.313.0.413.0.513.0.613.0.714.0.015.0.015.0.115.0.215.1.015.2.016.0.016.0.116.0.216.0.316.0.416.0.516.1.016.2.017.0.017.0.117.0.217.0.317.0.417.1.018.0.018.1.018.2.018.2.1 |
24.1.3 |
ironicPyPI |
25.0.0 up to 26.1.1, plus listed versions 26.0.026.1.0 |
26.1.1 |
ironicPyPI |
27.0.0 up to 29.0.1, plus listed versions 28.0.029.0.0 |
29.0.1 |
ironicPyPI |
before 24.1.3, 25.0.0 up to 26.1.1, 27.0.0 up to 29.0.1, plus listed versions 0.010.1.1010.1.710.1.810.1.9 Show 45 moreShow less11.1.111.1.211.1.311.1.412.0.012.1.012.1.112.1.212.1.312.1.412.1.512.1.612.2.013.0.013.0.113.0.213.0.313.0.413.0.513.0.613.0.714.0.015.0.015.0.115.0.215.1.015.2.016.0.016.0.116.0.216.0.316.0.416.0.516.1.016.2.017.0.017.0.117.0.217.0.317.0.417.1.018.0.018.1.018.2.018.2.1 |
24.1.326.1.129.0.1 |
Show 8 moreShow less
| Package | Affected | Fixed |
|---|---|---|
ironicUbuntu:16.04:LTS |
All versions, plus listed versions 1:4.2.0-0ubuntu11:4.3.0-0ubuntu11:5.1.0-0ubuntu11:5.1.2-0ubuntu1 |
None known |
ironicUbuntu:18.04:LTS |
All versions, plus listed versions 1:9.1.0-0ubuntu21:9.2.0-0ubuntu11:10.0.0-0ubuntu11:10.1.0-0ubuntu11:10.1.1-0ubuntu11:10.1.1-0ubuntu2 |
None known |
ironicUbuntu:20.04:LTS |
All versions, plus listed versions 1:13.0.1-0ubuntu11:14.0.0~b1~git2019121713.76597ca93-0ubuntu11:14.0.0~b1~git2019121713.76597ca93-0ubuntu21:14.0.0-0ubuntu11:14.0.1~git2020032415.de2d907fc-0ubuntu11:14.0.1~git2020041013.af9e6ba90-0ubuntu21:15.0.0-0ubuntu0.20.04.1 |
None known |
ironicUbuntu:22.04:LTS |
All versions, plus listed versions 1:18.2.0-0ubuntu11:18.2.0+git2021120910.cdc3b9538-0ubuntu11:19.0.0+git2022011216.7beadee46-0ubuntu11:20.0.0+git2022030313.4e6a3d52e-0ubuntu11:20.1.0-0ubuntu11:20.1.0-0ubuntu1.11:20.1.0-0ubuntu1.21:20.1.0-0ubuntu1.3 |
None known |
ironicUbuntu:24.04:LTS |
All versions, plus listed versions 1:23.0.0-0ubuntu31:23.1.0+git2024011916.a374a0c1-0ubuntu11:24.1.0-0ubuntu11:24.1.1-0ubuntu11:24.1.1-0ubuntu1.21:24.1.1-0ubuntu1.3 |
None known |
ironicUbuntu:25.10 |
All versions, plus listed versions 1:29.0.0-0ubuntu11:30.0.0+git2025070713.577833d78-0ubuntu11:30.0.0+git2025070713.577833d78-0ubuntu21:32.0.0-0ubuntu11:32.0.0-0ubuntu1.1 |
None known |
ironicUbuntu:26.10 |
All versions, plus listed versions 1:35.0.0-0ubuntu21:35.0.0-0ubuntu31:38.0.0+git20260818.101.f8e78b0-0ubuntu11:38.0.0+git2026091517.26c022f13-0ubuntu11:39.0.0-0ubuntu1 |
None known |
ironicUbuntu:26.04:LTS |
All versions, plus listed versions 1:32.0.0-0ubuntu11:34.0.0-0ubuntu11:35.0.0-0ubuntu11:35.0.0-0ubuntu21:35.0.0-0ubuntu2.1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-44021 is a low vulnerability (CVSS 2.8) in Openstack Ironic, published May 8, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.19%, the 8th percentile. Fixed in ironic 24.1.3.
References
bugs.launchpad.net/ironic/+bug/2107847
security.openstack.org/ossa/OSSA-2025-001.html
openwall.com/lists/oss-security/2025/05/08/1
nvd.nist.gov/vuln/detail/CVE-2025-44021
github.com/openstack/ironic/commit/10590b36f541130f6a5d7a49da0f095ff8390cce
github.com/pypa/advisory-database/tree/main/vulns/ironic/PYSEC-2025-38.yaml
Left out here: 74 versions. The JSON record has them.