{"id":"CVE-2026-111448","details":"Wheels 4.0.0 through 4.1.2 uses case-insensitive comparisons in path-containment checks on case-sensitive filesystems. Canonical-path checks for zip entries, package mappings, development assets/docs, guide images and image tags can accept paths through an existing symlink to a case-distinct sibling directory, allowing access outside the intended root, including limited file disclosure. Separately, the CLI database-dump output check can write outside the application root to an existing writable case-distinct sibling directory; that action requires the CLI POST, loopback and password gate. This is fixed in 4.2.0.","aliases":["GHSA-m63x-8m98-225v"],"modified":"2026-10-17T02:48:01.643592004Z","published":"2026-10-16T03:41:58.401Z","database_specific":{"cwe_ids":["CWE-178"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/111xxx/CVE-2026-111448.json","cna_assigner":"mitre"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/111xxx/CVE-2026-111448.json"},{"type":"ADVISORY","url":"https://github.com/wheels-dev/wheels/security/advisories/GHSA-m63x-8m98-225v"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-111448"},{"type":"PACKAGE","url":"https://github.com/wheels-dev/wheels"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/wheels-dev/wheels","events":[{"introduced":"3914c9080bb33276b1bdbde10a84323f4041200c"},{"fixed":"0e589def0922a3f0643cfd17c4ea5fdd8c41b9a6"}],"database_specific":{"extracted_events":[{"introduced":"4.0.0"},{"fixed":"4.2.0"},{"fixed":"4.1.2"}],"source":["AFFECTED_FIELD","DESCRIPTION"]}}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-111448.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"}]}