ironic — security advisory
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.
- Products
- ironic
- Affected versions
- 1:10.0.0-0ubuntu1, 1:10.1.0-0ubuntu1, 1:10.1.1-0ubuntu1, 1:10.1.1-0ubuntu2, 1:13.0.1-0ubuntu1, 1:14.0.0-0ubuntu1, 1:14.0.0~b1~git2019121713.76597ca93-0ubuntu1, 1:14.0.0~b1~git2019121713.76597ca93-0ubuntu2, 1:14.0.1~git2020032415.de2d907fc-0ubuntu1, 1:14.0.1~git2020041013.af9e6ba90-0ubuntu2, 1:15.0.0-0ubuntu0.20.04.1, 1:18.2.0+git2021120910.cdc3b9538-0ubuntu1, 1:18.2.0-0ubuntu1, 1:19.0.0+git2022011216.7beadee46-0ubuntu1, 1:20.0.0+git2022030313.4e6a3d52e-0ubuntu1, 1:20.1.0-0ubuntu1, 1:20.1.0-0ubuntu1.1, 1:20.1.0-0ubuntu1.2, 1:20.1.0-0ubuntu1.3, 1:23.0.0-0ubuntu3, 1:23.1.0+git2024011916.a374a0c1-0ubuntu1, 1:24.1.0-0ubuntu1, 1:24.1.1-0ubuntu1, 1:24.1.1-0ubuntu1.2, 1:24.1.1-0ubuntu1.3, 1:29.0.0-0ubuntu1, 1:30.0.0+git2025070713.577833d78-0ubuntu1, 1:30.0.0+git2025070713.577833d78-0ubuntu2, 1:32.0.0-0ubuntu1, 1:32.0.0-0ubuntu1.1, 1:34.0.0-0ubuntu1, 1:35.0.0-0ubuntu1, 1:35.0.0-0ubuntu2, 1:35.0.0-0ubuntu2.1, 1:35.0.0-0ubuntu3, 1:38.0.0+git20260818.101.f8e78b0-0ubuntu1, 1:38.0.0+git2026091517.26c022f13-0ubuntu1, 1:39.0.0-0ubuntu1, 1:4.2.0-0ubuntu1, 1:4.3.0-0ubuntu1, 1:5.1.0-0ubuntu1, 1:5.1.2-0ubuntu1, 1:9.1.0-0ubuntu2, 1:9.2.0-0ubuntu1
- Fixed versions
- Not specified
- CVEs
- CVE-2025-44021
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 01:28 UTC · Revision 1
Source evidence
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.
osv:UBUNTU-CVE-2025-44021
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
ironic
Fixed versions: Not specified
Complete source record
{
"id": "6f6d5b362fd164eafeaf8bfa3a38b3a24a2c0b083d2ce36f18150603b86b6b57",
"url": "https://osv.dev/vulnerability/UBUNTU-CVE-2025-44021",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "UBUNTU-CVE-2025-44021",
"summary": "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.",
"evidence": "osv:UBUNTU-CVE-2025-44021",
"products": [
{
"name": {
"value": "ironic",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:4.2.0-0ubuntu1",
"evidence": "/affected/0/versions"
},
{
"value": "1:4.3.0-0ubuntu1",
"evidence": "/affected/0/versions"
},
{
"value": "1:5.1.0-0ubuntu1",
"evidence": "/affected/0/versions"
},
{
"value": "1:5.1.2-0ubuntu1",
"evidence": "/affected/0/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:9.1.0-0ubuntu2",
"evidence": "/affected/1/versions"
},
{
"value": "1:9.2.0-0ubuntu1",
"evidence": "/affected/1/versions"
},
{
"value": "1:10.0.0-0ubuntu1",
"evidence": "/affected/1/versions"
},
{
"value": "1:10.1.0-0ubuntu1",
"evidence": "/affected/1/versions"
},
{
"value": "1:10.1.1-0ubuntu1",
"evidence": "/affected/1/versions"
},
{
"value": "1:10.1.1-0ubuntu2",
"evidence": "/affected/1/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:13.0.1-0ubuntu1",
"evidence": "/affected/2/versions"
},
{
"value": "1:14.0.0~b1~git2019121713.76597ca93-0ubuntu1",
"evidence": "/affected/2/versions"
},
{
"value": "1:14.0.0~b1~git2019121713.76597ca93-0ubuntu2",
"evidence": "/affected/2/versions"
},
{
"value": "1:14.0.0-0ubuntu1",
"evidence": "/affected/2/versions"
},
{
"value": "1:14.0.1~git2020032415.de2d907fc-0ubuntu1",
"evidence": "/affected/2/versions"
},
{
"value": "1:14.0.1~git2020041013.af9e6ba90-0ubuntu2",
"evidence": "/affected/2/versions"
},
{
"value": "1:15.0.0-0ubuntu0.20.04.1",
"evidence": "/affected/2/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:18.2.0-0ubuntu1",
"evidence": "/affected/3/versions"
},
{
"value": "1:18.2.0+git2021120910.cdc3b9538-0ubuntu1",
"evidence": "/affected/3/versions"
},
{
"value": "1:19.0.0+git2022011216.7beadee46-0ubuntu1",
"evidence": "/affected/3/versions"
},
{
"value": "1:20.0.0+git2022030313.4e6a3d52e-0ubuntu1",
"evidence": "/affected/3/versions"
},
{
"value": "1:20.1.0-0ubuntu1",
"evidence": "/affected/3/versions"
},
{
"value": "1:20.1.0-0ubuntu1.1",
"evidence": "/affected/3/versions"
},
{
"value": "1:20.1.0-0ubuntu1.2",
"evidence": "/affected/3/versions"
},
{
"value": "1:20.1.0-0ubuntu1.3",
"evidence": "/affected/3/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:23.0.0-0ubuntu3",
"evidence": "/affected/4/versions"
},
{
"value": "1:23.1.0+git2024011916.a374a0c1-0ubuntu1",
"evidence": "/affected/4/versions"
},
{
"value": "1:24.1.0-0ubuntu1",
"evidence": "/affected/4/versions"
},
{
"value": "1:24.1.1-0ubuntu1",
"evidence": "/affected/4/versions"
},
{
"value": "1:24.1.1-0ubuntu1.2",
"evidence": "/affected/4/versions"
},
{
"value": "1:24.1.1-0ubuntu1.3",
"evidence": "/affected/4/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/5/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:29.0.0-0ubuntu1",
"evidence": "/affected/5/versions"
},
{
"value": "1:30.0.0+git2025070713.577833d78-0ubuntu1",
"evidence": "/affected/5/versions"
},
{
"value": "1:30.0.0+git2025070713.577833d78-0ubuntu2",
"evidence": "/affected/5/versions"
},
{
"value": "1:32.0.0-0ubuntu1",
"evidence": "/affected/5/versions"
},
{
"value": "1:32.0.0-0ubuntu1.1",
"evidence": "/affected/5/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/6/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:35.0.0-0ubuntu2",
"evidence": "/affected/6/versions"
},
{
"value": "1:35.0.0-0ubuntu3",
"evidence": "/affected/6/versions"
},
{
"value": "1:38.0.0+git20260818.101.f8e78b0-0ubuntu1",
"evidence": "/affected/6/versions"
},
{
"value": "1:38.0.0+git2026091517.26c022f13-0ubuntu1",
"evidence": "/affected/6/versions"
},
{
"value": "1:39.0.0-0ubuntu1",
"evidence": "/affected/6/versions"
}
]
},
{
"name": {
"value": "ironic",
"evidence": "/affected/7/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:32.0.0-0ubuntu1",
"evidence": "/affected/7/versions"
},
{
"value": "1:34.0.0-0ubuntu1",
"evidence": "/affected/7/versions"
},
{
"value": "1:35.0.0-0ubuntu1",
"evidence": "/affected/7/versions"
},
{
"value": "1:35.0.0-0ubuntu2",
"evidence": "/affected/7/versions"
},
{
"value": "1:35.0.0-0ubuntu2.1",
"evidence": "/affected/7/versions"
}
]
}
],
"severity": "low",
"structured": {
"id": "UBUNTU-CVE-2025-44021",
"aliases": [
"UBUNTU-CVE-2025-44021"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N"
},
{
"type": "Ubuntu",
"score": "medium"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=xenial",
"ecosystem": "Ubuntu:16.04:LTS"
},
"versions": [
"1:4.2.0-0ubuntu1",
"1:4.3.0-0ubuntu1",
"1:5.1.0-0ubuntu1",
"1:5.1.2-0ubuntu1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:5.1.2-0ubuntu1"
},
{
"binary_name": "ironic-common",
"binary_version": "1:5.1.2-0ubuntu1"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:5.1.2-0ubuntu1"
},
{
"binary_name": "python-ironic",
"binary_version": "1:5.1.2-0ubuntu1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=bionic",
"ecosystem": "Ubuntu:18.04:LTS"
},
"versions": [
"1:9.1.0-0ubuntu2",
"1:9.2.0-0ubuntu1",
"1:10.0.0-0ubuntu1",
"1:10.1.0-0ubuntu1",
"1:10.1.1-0ubuntu1",
"1:10.1.1-0ubuntu2"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:10.1.1-0ubuntu2"
},
{
"binary_name": "ironic-common",
"binary_version": "1:10.1.1-0ubuntu2"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:10.1.1-0ubuntu2"
},
{
"binary_name": "python-ironic",
"binary_version": "1:10.1.1-0ubuntu2"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=focal",
"ecosystem": "Ubuntu:20.04:LTS"
},
"versions": [
"1:13.0.1-0ubuntu1",
"1:14.0.0~b1~git2019121713.76597ca93-0ubuntu1",
"1:14.0.0~b1~git2019121713.76597ca93-0ubuntu2",
"1:14.0.0-0ubuntu1",
"1:14.0.1~git2020032415.de2d907fc-0ubuntu1",
"1:14.0.1~git2020041013.af9e6ba90-0ubuntu2",
"1:15.0.0-0ubuntu0.20.04.1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:15.0.0-0ubuntu0.20.04.1"
},
{
"binary_name": "ironic-common",
"binary_version": "1:15.0.0-0ubuntu0.20.04.1"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:15.0.0-0ubuntu0.20.04.1"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:15.0.0-0ubuntu0.20.04.1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=jammy",
"ecosystem": "Ubuntu:22.04:LTS"
},
"versions": [
"1:18.2.0-0ubuntu1",
"1:18.2.0+git2021120910.cdc3b9538-0ubuntu1",
"1:19.0.0+git2022011216.7beadee46-0ubuntu1",
"1:20.0.0+git2022030313.4e6a3d52e-0ubuntu1",
"1:20.1.0-0ubuntu1",
"1:20.1.0-0ubuntu1.1",
"1:20.1.0-0ubuntu1.2",
"1:20.1.0-0ubuntu1.3"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:20.1.0-0ubuntu1.3"
},
{
"binary_name": "ironic-common",
"binary_version": "1:20.1.0-0ubuntu1.3"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:20.1.0-0ubuntu1.3"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:20.1.0-0ubuntu1.3"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=noble",
"ecosystem": "Ubuntu:24.04:LTS"
},
"versions": [
"1:23.0.0-0ubuntu3",
"1:23.1.0+git2024011916.a374a0c1-0ubuntu1",
"1:24.1.0-0ubuntu1",
"1:24.1.1-0ubuntu1",
"1:24.1.1-0ubuntu1.2",
"1:24.1.1-0ubuntu1.3"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:24.1.1-0ubuntu1.3"
},
{
"binary_name": "ironic-common",
"binary_version": "1:24.1.1-0ubuntu1.3"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:24.1.1-0ubuntu1.3"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:24.1.1-0ubuntu1.3"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=questing",
"ecosystem": "Ubuntu:25.10"
},
"versions": [
"1:29.0.0-0ubuntu1",
"1:30.0.0+git2025070713.577833d78-0ubuntu1",
"1:30.0.0+git2025070713.577833d78-0ubuntu2",
"1:32.0.0-0ubuntu1",
"1:32.0.0-0ubuntu1.1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:32.0.0-0ubuntu1.1"
},
{
"binary_name": "ironic-common",
"binary_version": "1:32.0.0-0ubuntu1.1"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:32.0.0-0ubuntu1.1"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:32.0.0-0ubuntu1.1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=stonking",
"ecosystem": "Ubuntu:26.10"
},
"versions": [
"1:35.0.0-0ubuntu2",
"1:35.0.0-0ubuntu3",
"1:38.0.0+git20260818.101.f8e78b0-0ubuntu1",
"1:38.0.0+git2026091517.26c022f13-0ubuntu1",
"1:39.0.0-0ubuntu1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:39.0.0-0ubuntu1"
},
{
"binary_name": "ironic-common",
"binary_version": "1:39.0.0-0ubuntu1"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:39.0.0-0ubuntu1"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:39.0.0-0ubuntu1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ironic",
"purl": "pkg:deb/ubuntu/ironic?arch=source&distro=resolute",
"ecosystem": "Ubuntu:26.04:LTS"
},
"versions": [
"1:32.0.0-0ubuntu1",
"1:34.0.0-0ubuntu1",
"1:35.0.0-0ubuntu1",
"1:35.0.0-0ubuntu2",
"1:35.0.0-0ubuntu2.1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-44021.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "ironic-api",
"binary_version": "1:35.0.0-0ubuntu2.1"
},
{
"binary_name": "ironic-common",
"binary_version": "1:35.0.0-0ubuntu2.1"
},
{
"binary_name": "ironic-conductor",
"binary_version": "1:35.0.0-0ubuntu2.1"
},
{
"binary_name": "python3-ironic",
"binary_version": "1:35.0.0-0ubuntu2.1"
}
]
}
}
],
"modified": "2026-10-17T12:56:51.658545291Z",
"provider": "osv",
"upstream": [
"CVE-2025-44021"
],
"references": [
"https://ubuntu.com/security/CVE-2025-44021",
"https://www.cve.org/CVERecord?id=CVE-2025-44021",
"https://bugs.launchpad.net/ironic/+bug/2107847",
"https://security.openstack.org/ossa/OSSA-2025-001.html",
"https://www.openwall.com/lists/oss-security/2025/05/08/1"
]
},
"related_cves": [
{
"value": "CVE-2025-44021",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 356473,
"published_at": "2025-05-08T17:16:00+00:00"
}