{"id":"CVE-2026-73509","summary":"OpenList: Authenticated users can rename files outside their base path via batch rename `src_name` traversal","details":"OpenList a file list program that supports multiple storage. Prior to 4.2.4, the authenticated /api/fs/batch_rename handler in server/handles/fsbatch.go authorizes only the source directory produced by user.JoinPath(req.SrcDir) and validates renameObject.NewName with checkRelativePath, but does not validate attacker-controlled renameObject.SrcName, supplied as src_name, before concatenating it with the authorized path and passing the result to fs.Rename. A user with rename permission can use traversal segments in src_name to make path normalization select a file outside the authorized directory and configured base path, resulting in cross-user file integrity loss, limited availability impact, and file-existence disclosure through success or error responses. This issue is fixed in version 4.2.4.","aliases":["GHSA-95cv-r8x4-vh75","GO-2026-6110"],"modified":"2026-08-18T15:11:01.965471770Z","published":"2026-08-13T14:31:05.426Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/73xxx/CVE-2026-73509.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-22"]},"references":[{"type":"WEB","url":"https://github.com/OpenListTeam/OpenList/releases/tag/v4.2.4"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/73xxx/CVE-2026-73509.json"},{"type":"ADVISORY","url":"https://github.com/OpenListTeam/OpenList/security/advisories/GHSA-95cv-r8x4-vh75"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73509"},{"type":"FIX","url":"https://github.com/OpenListTeam/OpenList/commit/651da18da4c647d96648d4bb64462baac1c37e04"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/openlistteam/openlist","events":[{"introduced":"0"},{"fixed":"651da18da4c647d96648d4bb64462baac1c37e04"},{"fixed":"84ecda35aae2bd0020474086e6ddfd3aa2340679"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0"},{"fixed":"4.2.4"}]}}],"versions":["v4.2.3","v4.2.2","v4.2.1","v4.2.0","beta","v4.1.10","v4.1.9","v4.1.8","v4.1.7","v4.1.6","v4.1.5","v4.1.4","v4.1.3","v4.1.2","v4.1.1","v4.1.0","v4.0.9","v4.0.8","v4.0.7","v4.0.5","v4.0.4","v4.0.3","v4.0.2","v4.0.1","v3.45.0","v3.44.0","v3.43.0","v3.42.0","v3.41.0","v3.40.0","v3.39.4","v3.39.3","v3.39.2","v3.39.1","v3.38.0","v3.37.4","v3.37.3","v3.37.2","v3.37.1","v3.36.0","v3.35.0","v3.34.0","v3.33.0","v3.32.0","v3.31.0","v3.30.0","v3.29.1","v3.29.0","v3.28.0","v3.27.0","v3.26.0","v3.25.1","v3.24.0","v3.23.0","v3.22.1","v3.22.0","v3.21.0","v3.20.1","v3.20.0","v3.19.0","v3.18.0","v3.17.0","v3.16.3","v3.16.2","v3.16.1","v3.16.0","v3.15.1","v3.15.0","v3.14.0","v3.13.2","v3.13.1","v3.12.2","v3.12.1","v3.12.0","v3.11.0","v3.10.1","v3.9.2","v3.9.1","v3.9.0","v3.8.0","v3.7.2","v3.7.1","v3.6.0","v3.5.1","v3.4.0","v3.3.0","v3.2.1","v3.2.0","v3.1.0","v3.0.3","v3.0.2","v3.0.1","v3.0.0-rc.1","v3.0.0-rc.0","v3.0.0-beta.2","v3.0.0-beta.1","v3.0.0-beta.0","v2.6.1","v2.6.0","v2.5.2","v2.5.1","v2.5.0","v2.4.3","v2.4.2","v2.4.1","v2.4.0","v2.3.2","v2.3.1","v2.3.0","v2.2.0","v2.1.3","v2.1.2","v2.1.1","v2.1.0","v2.0.10","v2.0.9","v2.0.8","v2.0.7","v2.0.6","v2.0.5-libc","v2.0.5","v2.0.4-fix2","v2.0.4-fix","v2.0.4","v2.0.3","v2.0.2","v2.0.1","v2.0.0","v2.0.0-beta7","v2.0.0-beta6","v2.0.0-beta5","v2.0.0-beta4","v2.0.0-beta3","v2.0.0-beta2","v2.0.0-beta"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-73509.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L"}]}