CVE-2026-102663
MediumCVSS 4.3Exploitation Probability (EPSS)
Low risk11th percentile - higher than 11% of all known CVEs
Summary
OpenList is a file list program that supports multiple storage backends. Prior to 4.2.4, the OpenList search API uses a non-separator-aware strings.HasPrefix comparison as a path containment authorization check when authorizing globally indexed Bleve results against a restricted user's BasePath. When Bleve search is enabled, a restricted authenticated user can obtain sibling-path results that pass the prefix check.
Risk Assessment
Unauthorized file metadata or file-existence information can be disclosed, and the backend Total value can reveal a match even when another access check removes the individual result. This constitutes a breach of data confidentiality.
Recommendation
Update OpenList to version 4.2.4 or later, which fixes this vulnerability. It is also recommended to review user permission configurations and restrict access to the global search index.
Other vulnerabilities in OpenList
See all- CVE-2026-75602Medium
OpenList before version 4.2.3 contains a vulnerability in the offline download feature that allows an unprivileged user to write files outside the temporary directory, potentially creating, truncating, or overwriting any file writable by the OpenList process. The vulnerability stems from a lack of containment check in the filename derived from the Content-Disposition header.
- CVE-2026-69160Medium
OpenList, a file list program that supports multiple storage, prior to 4.2.4 contains a vulnerability where share creation and update checks use strings.HasPrefix(requested_path, user.BasePath) without enforcing a directory separator boundary. An authenticated user with CanShare permission and a BasePath such as /base can submit a sibling path such as /base2/secret.txt, create a share for the out-of-scope file, and use the public share download or list handlers to read data outside the assigned directory. This issue is fixed in version 4.2.4.
- CVE-2026-73509High
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.
Original NVD description (English source)
OpenList is a file list program that supports multiple storage backends. Prior to 4.2.4, the OpenList search API uses a non-separator-aware strings.HasPrefix comparison as a path containment authorization check when authorizing globally indexed Bleve results against a restricted user's BasePath. When Bleve search is enabled and a restricted authenticated user searches the global index for content in a sibling path, the user causes a globally indexed sibling-path result to pass the prefix check. The strings.HasPrefix(node.Parent, user.BasePath) predicate allows a sibling path such as /base2 to be treated as contained by /base. Unauthorized file metadata or file-existence information can be disclosed, and the backend Total value can reveal a match even when another access check removes the individual result. This issue is fixed in version 4.2.4.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

