V4: OpenList: Arbitrary File Read via Path Prefix Confusion in Share Creation API
Affects github.com/OpenListTeam/OpenList/v4Source GCVE Database
CVSS 6.5 Medium · fixed in 4.2.4 : update github.com/OpenListTeam/OpenList/v4 when convenient.
Data as of 07/25/2026, 23:50:07 UTC
- Patch
- Available – fixed in 4.2.4
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:NWhat to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| Gogithub.com/OpenListTeam/OpenList/v4 | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Recommended mitigation includes replacing the flawed strings.HasPrefix check with a canonical path containment validation that is separator-aware, such as verifying that the target path equals the base path or starts with the base path plus a directory separator. Implement a centralized utility function to consistently validate path containment across all share creation, update, and access handlers to prevent regressions.
Description
OpenList v4 contains an authorization bypass vulnerability in its file sharing API due to improper path prefix validation. An authenticated user with sharing privileges can create share links to files outside their assigned base directory by exploiting a flawed string prefix check that does not consider directory separators. This allows unauthorized read access to arbitrary files in sibling directories, breaking tenant/user isolation. The issue affects versions prior to 4.2.4. The vulnerability enables horizontal privilege escalation by exposing files from other users or internal paths. No known exploits in the wild have been reported.
Impact
This vulnerability allows an attacker with legitimate sharing permissions to bypass directory restrictions and access arbitrary files outside their assigned base directory. It breaks data isolation guarantees by enabling unauthorized read access to sensitive files belonging to other tenants or system areas. The impact is limited to confidentiality (read access), with no integrity or availability impact reported. The severity is moderate due to the requirement of authenticated user privileges and the lack of remote unauthenticated exploitation.
Summary
The vulnerability arises from the use of a simple string prefix check (strings.HasPrefix) to verify that a requested file path is within a user's assigned BasePath during share creation or update. Because this check does not account for directory separators, an attacker with a BasePath of '/base' can specify a path like '/base2/secret.txt', which incorrectly passes the prefix check. Consequently, the attacker can create share links to files outside their authorized directory. The share download and listing handlers serve these files without revalidating directory scope, enabling unauthorized access. The flaw is due to CWE-639 (Authorization Bypass Through User-Controlled Key).
Weaknesses
- CWE-639Authorization Bypass Through User-Controlled Key (opens in a new tab)
Base weaknessLikelihood of exploit: HighCWE Top 25 (2025): #24OWASP Top 10 A01:2025: Broken Access Control (opens in a new tab)
The system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data.
References
- github.com/OpenListTeam/OpenList/security/advisories/GHSA-86cx-wwf4-phq4 (opens in a new tab)
- github.com/OpenListTeam/OpenList/commit/59bd3431408578f420895457554700cc9a52375a (opens in a new tab)
- github.com/OpenListTeam/OpenList (opens in a new tab)
- github.com/OpenListTeam/OpenList/releases/tag/v4.2.4 (opens in a new tab)