CVE-2026-75602: OpenList: Authenticated arbitrary file write via Content-Disposition path traversal in SimpleHttp offline-download tool
Alist’s offline-download feature (POST /api/fs/add_offline_download with tool: "SimpleHttp") accepts an attacker-supplied URL, fetches it, and saves the bytes under a per-task temp directory before transferring to the user’s destination storage. The temp filename is taken from the response’s Content-Disposition header (attacker-controlled when the URL points to an attacker HTTP server), passed verbatim to filepath.Join(tempDir, filename), and written via os.Create with no containment check. Go’s filepath.Join calls Clean on the result, which collapses .. segments and lets the attacker traverse out of tempDir to write any file the alist process can write.
A non-admin user with PermAddOfflineDownload permission on any path is sufficient.
References
Code Behaviors & Features
Detect and mitigate CVE-2026-75602 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →