Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| OpenStack | Ironic | 24 – < 24.1.3, 25 – < 26.1.1, 27 – < 29.0.1 | 24.1.3 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | ironic | 1:29.0.0-6 | — |
| Debian 13 | ironic | 1:29.0.0-6 | — |
| Debian 12 | ironic | 1:21.1.0-3+deb12u1 | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | ironic | No fix yet | — |
| Ubuntu 26.04 LTS | ironic | No fix yet | — |
| Ubuntu 25.10 | ironic | No fix yet | — |
| Ubuntu 24.04 LTS | ironic | No fix yet | — |
| Ubuntu 22.04 LTS | ironic | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 20.04 LTS | ironic | No fix yet | — |
| Ubuntu 18.04 LTS | ironic | No fix yet | — |
| Ubuntu 16.04 LTS | ironic | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | ironic | < 24.1.3 | 24.1.3 | GHSA-q3m2-crgq-5p3q |
| PyPI | ironic | >= 25.0.0, < 26.1.1 | 26.1.1 | GHSA-q3m2-crgq-5p3q |
| PyPI | ironic | >= 27.0.0, < 29.0.1 | 29.0.1 | GHSA-q3m2-crgq-5p3q |
| PyPI | ironic | < 24.1.3 · >= 25.0.0, < 26.1.1 · >= 27.0.0, < 29.0.1 | 24.1.3, 26.1.1, 29.0.1 | PYSEC-2025-38 |