{"id":"CVE-2026-54421","aliases":["GHSA-j4cw-mcg2-2q78","PYSEC-2026-3852"],"title":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","summary":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","severity":"medium","cvss":6.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","vendor":"ironic","product":"ironic","ecosystem":"pip","affected":["ironic >= 17.0.0, < 29.0.6","ironic >= 30.0.0, < 32.0.2","ironic >= 33.0.0, < 35.0.2","ironic >= 36.0.0, < 37.0.1"],"patched":["ironic 29.0.6","ironic 32.0.2","ironic 35.0.2","ironic 37.0.1"],"published":"2026-06-14","updated":"2026-09-10","sourceUpdated":"2026-09-10T12:25:40.898686358Z","source":"OSV","sourceUrl":"https://osv.dev/vulnerability/GHSA-j4cw-mcg2-2q78","references":[{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54421"},{"url":"https://github.com/openstack/ironic/commit/dd2df520fe0ae019cb247a8295542abc2d4b46dd"},{"url":"https://bugs.launchpad.net/ironic/+bug/2155049"},{"url":"https://github.com/openstack/ironic"},{"url":"https://review.opendev.org/c/openstack/ironic/+/990430"},{"url":"https://security.openstack.org/ossa/OSSA-2026-023.html"},{"url":"http://www.openwall.com/lists/oss-security/2026/06/16/10"},{"url":"https://pypi.org/project/ironic"},{"url":"https://github.com/advisories/GHSA-j4cw-mcg2-2q78"}],"tags":["osv","pip"],"epss":0.00469,"epssPercentile":0.37965,"ingestedAt":"2026-08-26T19:27:01.371Z","slug":"CVE-2026-54421","body":"## Overview\n\nIn OpenStack Ironic through 35.0.1, when applying a PATCH to update fields in volume properties the user is authorized for, Ironic can return unredacted sensitive information (such as iSCSI credentials). The PATCH outcome is a security issue; the POST outcome is not a security issue.\n\n## Affected packages\n\n- `ironic >= 17.0.0, < 29.0.6`\n- `ironic >= 30.0.0, < 32.0.2`\n- `ironic >= 33.0.0, < 35.0.2`\n- `ironic >= 36.0.0, < 37.0.1`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `ironic 29.0.6`\n- `ironic 32.0.2`\n- `ironic 35.0.2`\n- `ironic 37.0.1`","depth":"sunlit","depthScore":37,"depthScoreParts":{"impact":37.4,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}