{"id":"CVE-2026-82327","aliases":["AZL-98382","DEBIAN-CVE-2026-82327","EUVD-2026-67724","GHSA-f53h-vhp4-v9wx","OESA-2026-4509","UBUNTU-CVE-2026-82327"],"status":"published","title":"Libsolv: libsolv: out-of-bounds write in repo_write() via unvalidated directory id from vertical/paged .solv filelist data","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","severity":{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00163,"percentile":0.05521,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-129"],"published":"2026-08-28T14:21:04Z","modified":"2026-11-06T07:45:09Z","fixes":[{"ecosystem":"openEuler:22.03-LTS-SP4","package":"libsolv","fixed_in":["0.7.22-6.oe2203sp4"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.7.28-5"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.23-1","0.7.23-1+deb12u1","0.7.24-1","0.7.25-1","0.7.26-1","0.7.26-2","0.7.27-1","0.7.27-2","0.7.28-1","0.7.28-1.1~exp1","0.7.29-1","0.7.30-1","0.7.30-2","0.7.31-1","0.7.32-1","0.7.35-1","0.7.36-1","0.7.37-1","0.7.38-1","0.7.39-1","0.7.39-2","0.7.40-1"]},{"source":"osv","ecosystem":"Debian:13","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.32-1","0.7.35-1","0.7.36-1","0.7.37-1","0.7.38-1","0.7.39-1","0.7.39-2","0.7.40-1"]},{"source":"osv","ecosystem":"Debian:14","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.32-1","0.7.35-1","0.7.36-1","0.7.37-1","0.7.38-1","0.7.39-1","0.7.39-2","0.7.40-1"]},{"source":"osv","ecosystem":"openEuler:22.03-LTS-SP4","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.7.22-6.oe2203sp4"}]}]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.6.11-1","0.6.11-1build1","0.6.11-1.1","0.6.11-1.1ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.6.28-2build1","0.6.30-1build1","0.6.30-1ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.6.35-2ubuntu1","0.6.35-2ubuntu2","0.6.36-1","0.6.36-2"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.17-2","0.7.20-1","0.7.20-1build2","0.7.20-1ubuntu0.22.04.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.24-1","0.7.25-1","0.7.26-1","0.7.26-2","0.7.27-1","0.7.27-2","0.7.27-2build1","0.7.28-1","0.7.28-1build1","0.7.28-1build2"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.35-1build1","0.7.38-1","0.7.39-1","0.7.39-1build1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libsolv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.7.32-1","0.7.35-1","0.7.35-1build1"]}],"products":[{"vendor":"red hat","product":"red hat enterprise linux 10"},{"vendor":"red hat","product":"red hat enterprise linux 7"},{"vendor":"red hat","product":"red hat enterprise linux 8"},{"vendor":"red hat","product":"red hat enterprise linux 9"},{"vendor":"red hat","product":"red hat hardened images"},{"vendor":"red hat","product":"red hat openshift ai (rhoai)"},{"vendor":"red hat","product":"red hat openshift container platform 4"},{"vendor":"red hat","product":"red hat openshift container platform 5"},{"vendor":"red hat","product":"red hat satellite 6"},{"vendor":"red hat","product":"red hat update infrastructure 4 for cloud providers"}],"references":[{"url":"https://access.redhat.com/security/cve/CVE-2026-82327","tags":["vdb-entry","x_refsource_REDHAT","report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2525602","tags":["issue-tracking","x_refsource_REDHAT","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-82327","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-f53h-vhp4-v9wx"},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-82327","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-4509","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-82327","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-82327","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-82327","title":"Libsolv: libsolv: out-of-bounds write in repo_write() via unvalidated directory id from vertical/paged .solv filelist data","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T14:21:04.777Z","modified":"2026-11-06T07:45:09.962Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna"}],"cwes":["CWE-129"],"updated_at":"2026-11-06T08:57:32.08691Z"}],"euvd":[{"id":"EUVD-2026-67724","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T14:21:04Z","modified":"2026-11-06T07:45:09Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-06T09:04:28.113071Z"}],"ghsa":[{"id":"GHSA-f53h-vhp4-v9wx","title":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers...","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T18:31:31Z","modified":"2026-08-28T18:31:39Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-129"],"updated_at":"2026-11-02T15:11:07.541511Z"}],"nvd":[{"id":"CVE-2026-82327","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T16:18:34.067Z","modified":"2026-11-06T08:17:36.833Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium","assessor":"secondary"}],"cwes":["CWE-129"],"updated_at":"2026-11-06T11:59:57.113048Z"}],"osv":[{"id":"DEBIAN-CVE-2026-82327","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T16:18:34.067Z","modified":"2026-11-07T09:47:29.671887245Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-07T10:14:39.995311Z"},{"id":"OESA-2026-4509","title":"libsolv security update","description":"A free package dependency solver using a satisfiability algorithm. The library is based on two major, but independent, blocks:\r\n\r\nSecurity Fix(es):\n\nA flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file\u0026apos;s compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.(CVE-2026-82327)","status":"published","published":"2026-10-22T14:36:00Z","modified":"2026-10-22T14:45:07.179148534Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:52:47.981622Z"},{"id":"UBUNTU-CVE-2026-82327","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T16:18:00Z","modified":"2026-10-17T13:01:11.838378128Z","cvss":[{"version":"3.1","score":5.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T16:57:22.213888Z"},{"id":"AZL-98382","title":"CVE-2026-82327 affecting package libsolv 0.7.28-5","description":"A flaw was found in libsolv, a dependency-resolution library used by RPM-based package managers such as dnf and zypper to work with .solv repository cache files. When libsolv rewrites a .solv cache file, it reads directory-id values from the file's compressed filelist data without validating that they fall within the expected range. A corrupted or specially crafted .solv cache file (for example, one left in a torn state after an unclean system shutdown) can cause an out-of-bounds memory write when a tool such as dnf, yum, or zypper next processes it. Successful exploitation is expected to result in a crash of the affected tool (denial of service); it is not expected to allow arbitrary code execution because the out-of-bounds write always stores a fixed, non-attacker-controlled value.","status":"published","published":"2026-08-28T16:18:34Z","modified":"2026-11-05T05:40:51Z","updated_at":"2026-11-05T16:41:26.280152Z"}]}}
