{"id":"CVE-2026-40256","aliases":["GHSA-ffgh-3jrf-8wvh","PYSEC-2026-2315"],"url":"https://o3.security/vulnerability/CVE-2026-40256","summary":"Weblate: Prefix-Based Repository Boundary Check Bypass via Symlink/Junction Path Prefix Collision","details":"Weblate is a web based localization tool. In versions prior to 5.17, repository-boundary validation relies on string prefix checks on resolved absolute paths. In multiple code paths, the check uses startswith against the repository root path. This is not path-segment aware and can be bypassed when the external path shares the same string prefix as the repository path (for example, repo and repo_outside). This issue has been fixed in version 5.17.","published":"2026-04-15T18:36:44.975Z","modified":"2026-08-07T11:51:01.852039557Z","cvss":{"score":5,"severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N"},"epss":{"score":0.00324,"percentile":0.249,"asOf":"2026-08-08"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"weblate","fixedVersion":"5.17"}],"fix":{"url":"https://github.com/WeblateOrg/weblate/commit/e30dbcb33ae78e754ecef192d54f996b89cb4e15","label":"WeblateOrg/weblate@e30dbcb"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/40xxx/CVE-2026-40256.json"},{"type":"ADVISORY","url":"https://github.com/WeblateOrg/weblate/security/advisories/GHSA-ffgh-3jrf-8wvh"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-40256"},{"type":"FIX","url":"https://github.com/WeblateOrg/weblate/commit/e30dbcb33ae78e754ecef192d54f996b89cb4e15"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-07T11:51:01.852039557Z"}}