{"id":"CVE-2026-85396","summary":"rubyzip before 3.4.0 Path Traversal in Zip::Entry#extract via Sibling-Directory Prefix","details":"rubyzip versions before 3.4.0 contain a path traversal vulnerability in Zip::Entry#extract that fails to properly validate extraction paths using prefix comparison without trailing separators. Attackers can craft archive entries with names like ../upload_backup/owned.sh to write files outside the intended extraction directory into sibling paths sharing the destination prefix.","modified":"2026-09-05T03:48:29.591751761Z","published":"2026-09-03T18:54:27.903Z","database_specific":{"cwe_ids":["CWE-22"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/85xxx/CVE-2026-85396.json","cna_assigner":"VulnCheck"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/85xxx/CVE-2026-85396.json"},{"type":"ADVISORY","url":"https://github.com/rubyzip/rubyzip/releases/tag/v3.4.0"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-85396"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/rubyzip-before-3.4.0-path-traversal-in-zip-entry-extract-via-sibling-directory-prefix"},{"type":"FIX","url":"https://github.com/rubyzip/rubyzip/commit/17edfbf4423b83211b075acc23a7d8640da63449"},{"type":"PACKAGE","url":"https://github.com/rubyzip/rubyzip"},{"type":"ARTICLE","url":"https://github.com/geo-chen/oss/blob/main/rubyzip.md"},{"type":"ARTICLE","url":"https://github.com/rubyzip/rubyzip/blob/v3.3.1/lib/zip/entry.rb"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/rubyzip/rubyzip","events":[{"introduced":"0"},{"fixed":"93f9e6f217029949b00c174a40b814f9a9c44bfa"},{"fixed":"17edfbf4423b83211b075acc23a7d8640da63449"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"3.4.0"}],"source":["DESCRIPTION","REFERENCES"]}}],"versions":["v3.3.1","v3.3.0","v3.2.2","v3.2.1","v3.2.0","v3.1.1","v3.1.0","v3.0.2","v3.0.1","v3.0.0","v3.0.0.rc2","v3.0.0.rc1","v3.0.0.alpha","v2.3.0","v2.2.0","v2.1.0","v2.0.0","v1.3.0","v1.2.4","v1.2.3","v1.2.2","v1.2.1","v1.2.0","v1.1.7","v1.1.6","v1.1.5","v1.1.4","v1.1.3","v1.1.2","v1.1.1","v1.1.0","v1.0.0","v1.0.0.beta1","0.9.9","0.9.7","0.9.5"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-85396.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N"}]}