{"id":"CVE-2026-54421","aliases":["DEBIAN-CVE-2026-54421","EUVD-2026-36658","GHSA-j4cw-mcg2-2q78","PYSEC-2026-3852","UBUNTU-CVE-2026-54421"],"status":"published","title":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","description":"In OpenStack Ironic before 37.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.","severity":{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00291,"percentile":0.21889,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-212"],"published":"2026-06-14T03:49:37Z","modified":"2026-10-28T02:30:51Z","fixes":[{"ecosystem":"PyPI","package":"ironic","fixed_in":["29.0.6","32.0.2","35.0.2","37.0.1"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"ironic","fixed_in":["1:21.4.4-0+deb12u2"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"ironic","fixed_in":["1:29.0.5-0+deb13u3"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"ironic","fixed_in":["1:35.0.1-6"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.0.0"},{"fixed":"29.0.6"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"30.0.0"},{"fixed":"32.0.2"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"33.0.0"},{"fixed":"35.0.2"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"36.0.0"},{"fixed":"37.0.1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:21.4.4-0+deb12u2"}]}],"versions":["1:21.1.0-3","1:21.1.0-3+deb12u1","1:21.3.0-1","1:21.4.0-1","1:21.4.0-2","1:21.4.0-3","1:21.4.0-4","1:21.4.4-0+deb12u1"]},{"source":"osv","ecosystem":"Debian:13","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:29.0.5-0+deb13u3"}]}],"versions":["1:29.0.0-7","1:29.0.5-0+deb13u1","1:29.0.5-0+deb13u2"]},{"source":"osv","ecosystem":"Debian:14","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:35.0.1-6"}]}],"versions":["1:29.0.0-7","1:32.0.0-1","1:32.0.0-2","1:32.0.0-4","1:32.0.0-5","1:32.0.0-6","1:32.0.0-7","1:34.0.0-1","1:35.0.0-1","1:35.0.0-2","1:35.0.1-1","1:35.0.1-2","1:35.0.1-3","1:35.0.1-5"]},{"source":"osv","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.0.0"},{"fixed":"29.0.6"}]}],"versions":["17.0.0","17.0.1","17.0.2","17.0.3","17.0.4","17.1.0","18.0.0","18.1.0","18.2.0","18.2.1","18.2.2","18.3.0","19.0.0","20.0.0","20.1.0","20.1.1","20.1.2","20.1.3","20.2.0","21.0.0","21.1.0","21.1.1","21.1.2","21.2.0","21.3.0","21.4.0","21.4.1","21.4.2","21.4.3","21.4.4","22.0.0","22.1.0","23.0.0","23.0.1","23.0.2","23.0.3","23.0.4","23.0.5","23.1.0","24.0.0","24.1.0","24.1.1","24.1.2","24.1.3","24.1.4","24.1.5","25.0.0","26.0.0","26.1.0","26.1.1","26.1.2","26.1.3","26.1.4","26.1.5","26.1.6","27.0.0","28.0.0","29.0.0","29.0.1","29.0.2","29.0.3","29.0.4","29.0.5"]},{"source":"osv","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"30.0.0"},{"fixed":"32.0.2"}]}],"versions":["30.0.0","31.0.0","32.0.0","32.0.1"]},{"source":"osv","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"33.0.0"},{"fixed":"35.0.2"}]}],"versions":["33.0.0","34.0.0","35.0.0","35.0.1"]},{"source":"osv","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"36.0.0"},{"fixed":"37.0.1"}]}],"versions":["36.0.0","37.0.0"]},{"source":"osv","ecosystem":"PyPI","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.0.0"},{"fixed":"29.0.6"},{"introduced":"30.0.0"},{"fixed":"32.0.2"},{"introduced":"33.0.0"},{"fixed":"35.0.2"},{"introduced":"36.0.0"},{"fixed":"37.0.1"}]}],"versions":["17.0.0","17.0.1","17.0.2","17.0.3","17.0.4","17.1.0","18.0.0","18.1.0","18.2.0","18.2.1","18.2.2","18.3.0","19.0.0","20.0.0","20.1.0","20.1.1","20.1.2","20.1.3","20.2.0","21.0.0","21.1.0","21.1.1","21.1.2","21.2.0","21.3.0","21.4.0","21.4.1","21.4.2","21.4.3","21.4.4","22.0.0","22.1.0","23.0.0","23.0.1","23.0.2","23.0.3","23.0.4","23.0.5","23.1.0","24.0.0","24.1.0","24.1.1","24.1.2","24.1.3","24.1.4","24.1.5","25.0.0","26.0.0","26.1.0","26.1.1","26.1.2","26.1.3","26.1.4","26.1.5","26.1.6","27.0.0","28.0.0","29.0.0","29.0.1","29.0.2","29.0.3","29.0.4","29.0.5","30.0.0","31.0.0","32.0.0","32.0.1","33.0.0","34.0.0","35.0.0","35.0.1","36.0.0","37.0.0"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:4.2.0-0ubuntu1","1:4.3.0-0ubuntu1","1:5.1.0-0ubuntu1","1:5.1.2-0ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"ironic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"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"]}],"products":[{"vendor":"openstack","product":"ironic"}],"references":[{"url":"https://bugs.launchpad.net/ironic/+bug/2155049","tags":["web","report"]},{"url":"https://security.openstack.org/ossa/OSSA-2026-023.html","tags":["web"]},{"url":"http://www.openwall.com/lists/oss-security/2026/06/16/10","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54421","tags":["advisory"]},{"url":"https://github.com/openstack/ironic/commit/dd2df520fe0ae019cb247a8295542abc2d4b46dd","tags":["web"]},{"url":"https://review.opendev.org/c/openstack/ironic/+/990430","tags":["web"]},{"url":"https://github.com/advisories/GHSA-j4cw-mcg2-2q78","tags":["advisory"]},{"url":"https://opendev.org/openstack/ironic","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54421.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-54421","tags":["advisory"]},{"url":"https://github.com/openstack/ironic","tags":["package"]},{"url":"https://pypi.org/project/ironic","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2026-54421","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-54421","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-54421","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T03:49:37.996Z","modified":"2026-06-16T22:38:18.549Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-212"],"updated_at":"2026-11-02T13:37:58.613221Z"}],"euvd":[{"id":"EUVD-2026-36658","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T03:49:37Z","modified":"2026-06-16T22:38:18Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T18:20:39.851172Z"}],"ghsa":[{"id":"GHSA-j4cw-mcg2-2q78","title":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","description":"In 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.","status":"published","published":"2026-06-14T06:30:24Z","modified":"2026-08-25T16:34:55Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-212"],"updated_at":"2026-11-02T14:41:05.994358Z"}],"nvd":[{"id":"CVE-2026-54421","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T04:16:30.927Z","modified":"2026-07-23T10:10:00.17Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-212"],"updated_at":"2026-11-02T14:12:23.846948Z"}],"osv":[{"id":"CVE-2026-54421","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T03:49:37.996Z","modified":"2026-10-28T02:30:51.111372649Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-212"],"updated_at":"2026-11-02T15:45:10.818486Z"},{"id":"DEBIAN-CVE-2026-54421","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T04:16:30.927Z","modified":"2026-10-01T03:03:26.393125192Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:57.236551Z"},{"id":"GHSA-j4cw-mcg2-2q78","title":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","description":"In 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.","status":"published","published":"2026-06-14T06:30:24Z","modified":"2026-09-10T12:25:40.898686358Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-212"],"updated_at":"2026-11-02T15:46:49.977351Z"},{"id":"PYSEC-2026-3852","title":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","description":"In 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.","status":"published","published":"2026-09-10T09:44:49.987426Z","modified":"2026-09-10T12:15:03.995670523Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:52:57.255153Z"},{"id":"UBUNTU-CVE-2026-54421","description":"In OpenStack Ironic before 37.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.","status":"published","published":"2026-06-14T04:16:00Z","modified":"2026-10-17T12:59:05.424617877Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T16:56:41.382716Z"}]}}
