{"id":"GHSA-9v62-qx4c-44x5","summary":"OpenStack Ironic allows file overwrite via directory traversal during deployment with a crafted ISO image","details":"OpenStack Ironic through before 35.0.2 allows file overwrite via directory traversal during deployment with a crafted ISO image.","aliases":["CVE-2026-48681","PYSEC-2026-3470"],"modified":"2026-07-23T15:11:43.749298597Z","published":"2026-06-04T06:30:25Z","database_specific":{"cwe_ids":["CWE-23"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2026-07-14T19:50:43Z","nvd_published_at":"2026-06-04T04:17:15Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-48681"},{"type":"WEB","url":"https://bugs.launchpad.net/ironic/+bug/2148333"},{"type":"PACKAGE","url":"https://github.com/openstack/ironic"},{"type":"WEB","url":"https://www.openwall.com/lists/oss-security/2026/06/03/12"},{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2026/06/03/12"}],"affected":[{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/ironic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.0.0"},{"fixed":"26.1.7"}]}],"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"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-9v62-qx4c-44x5/GHSA-9v62-qx4c-44x5.json"}},{"package":{"name":"ironic","ecosystem":"PyPI","purl":"pkg:pypi/ironic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"27.0.0"},{"fixed":"29.0.6"}]}],"versions":["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-9v62-qx4c-44x5/GHSA-9v62-qx4c-44x5.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-9v62-qx4c-44x5/GHSA-9v62-qx4c-44x5.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-9v62-qx4c-44x5/GHSA-9v62-qx4c-44x5.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N"}]}