{"id":"GHSA-j4cw-mcg2-2q78","summary":"OpenStack Ironic can return unredacted sensitive information when applying a PATCH to update fields in volume properties","details":"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.","aliases":["CVE-2026-54421","PYSEC-2026-3852"],"modified":"2026-09-10T12:25:40.898686358Z","published":"2026-06-14T06:30:24Z","database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2026-08-25T16:34:55Z","nvd_published_at":"2026-06-14T04:16:30Z","cwe_ids":["CWE-212"]},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54421"},{"type":"WEB","url":"https://github.com/openstack/ironic/commit/dd2df520fe0ae019cb247a8295542abc2d4b46dd"},{"type":"WEB","url":"https://bugs.launchpad.net/ironic/+bug/2155049"},{"type":"PACKAGE","url":"https://github.com/openstack/ironic"},{"type":"WEB","url":"https://review.opendev.org/c/openstack/ironic/+/990430"},{"type":"WEB","url":"https://security.openstack.org/ossa/OSSA-2026-023.html"},{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2026/06/16/10"}],"affected":[{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/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"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-j4cw-mcg2-2q78/GHSA-j4cw-mcg2-2q78.json"}},{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/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"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-j4cw-mcg2-2q78/GHSA-j4cw-mcg2-2q78.json"}},{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/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"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-j4cw-mcg2-2q78/GHSA-j4cw-mcg2-2q78.json"}},{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/ironic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"36.0.0"},{"fixed":"37.0.1"}]}],"versions":["36.0.0","37.0.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-j4cw-mcg2-2q78/GHSA-j4cw-mcg2-2q78.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N"}]}