---
id: CVE-2026-75602
title: OpenList a file list program that supports multiple storage
summary: >-
  OpenList a file list program that supports multiple storage. Prior to 4.2.3,
  OpenList's offline-download feature at POST /api/fs/add_offline_download with
  tool: "SimpleHttp" accepts an attacker-supplied URL and saves its bytes under
  a pe…
severity: medium
cvss: 6.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:H'
cwe:
  - CWE-22
  - CWE-73
vendor: OpenListTeam
product: github.com/OpenListTeam/OpenList
affected:
  - github.com/OpenListTeam/OpenList <= 4.2.2
patched:
  - github.com/OpenListTeam/OpenList 4.2.3
published: '2026-09-03'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T21:09:13.080'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-75602'
references:
  - url: >-
      https://github.com/OpenListTeam/OpenList/commit/9cc5dd969b9833c8cb4e14c338c3571dfdbe2108
    label: security-advisories@github.com
  - url: 'https://github.com/OpenListTeam/OpenList/releases/tag/v4.2.3'
    label: security-advisories@github.com
  - url: >-
      https://github.com/OpenListTeam/OpenList/security/advisories/GHSA-h6cj-26g5-67fv
    label: security-advisories@github.com
  - url: >-
      https://github.com/OpenListTeam/OpenList/security/advisories/GHSA-h6cj-26g5-67fv
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
  - url: 'https://github.com/advisories/GHSA-h6cj-26g5-67fv'
tags:
  - nvd
  - ghsa
  - go
epss: 0.00431
epssPercentile: 0.36946
aliases:
  - GHSA-h6cj-26g5-67fv
ecosystem: go
ingestedAt: '2026-09-03T18:06:41.978Z'
---

## Overview

OpenList a file list program that supports multiple storage. Prior to 4.2.3, OpenList's offline-download feature at POST /api/fs/add_offline_download with tool: "SimpleHttp" accepts an attacker-supplied URL and saves its bytes under a per-task temporary directory before transferring them to the user's destination storage. The temporary filename comes from the attacker-controlled Content-Disposition header, is passed from parseFilenameFromContentDisposition in internal/offline_download/http/util.go to filepath.Join(task.TempDir, filename) in SimpleHttp.Run in internal/offline_download/http/client.go, and is opened with os.Create without a containment check. Because filepath.Join cleans .. segments, a non-admin user with PermAddOfflineDownload on any path can traverse out of task.TempDir and create, truncate, or overwrite any file writable by the OpenList process whose parent directory already exists. The server/handles/offline_download.go AddOfflineDownload route uses normal user authentication rather than AuthAdmin, and local-storage destinations fall through tryPutUrl in internal/offline_download/tool/add.go to the vulnerable SimpleHttp.Run path. This issue is fixed in version 4.2.3.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-75602)

Affected packages:

- `github.com/OpenListTeam/OpenList <= 4.2.2`

Patched in:

- `github.com/OpenListTeam/OpenList 4.2.3`

Source: https://github.com/advisories/GHSA-h6cj-26g5-67fv
