Advisory Database
  • Advisories
  • Dependency Scanning
  1. golang
  2. ›
  3. go.senan.xyz/gonic
  4. ›
  5. CVE-2026-49339

CVE-2026-49339: gonic: Path Traversal in playlist `id` bypasses ownership check, enabling any user to read/delete other users' playlists

June 26, 2026

The maintainer’s recent fix in 6dd71e6a3c966867ef8c900d359a7df75789f410 (fix(subsonic): enforce playlist ownership on getPlaylist/deletePlaylist) added an ownership check based on playlist.UserID. However, playlist.UserID is derived from the first path segment of the attacker-controlled playlist ID, with no path containment on the resolved file path.

Any authenticated Subsonic user can therefore bypass the ownership check and:

  1. Read any other user’s playlist (name, comment, IsPublic flag, song list) by crafting a base64-encoded playlist ID whose first segment matches their own user ID, followed by .. traversal segments pointing into another user’s playlist directory.
  2. Delete any other user’s playlist (including admin’s curated playlists) by the same trick against deletePlaylist.
  3. Probe arbitrary file paths on the host for existence/readability.

This is a bypass of the boundary the 6dd71e6 fix is trying to enforce; it is closely related to the original GONIC-1 IDOR but uses a different primitive (path traversal in the id parameter rather than direct cross-user access).

References

  • github.com/advisories/GHSA-2fp4-5v5c-4448
  • github.com/sentriz/gonic/commit/0824bed88f6bbc490ba28bf09d28e5dfeb07b445
  • github.com/sentriz/gonic/commit/6dd71e6
  • github.com/sentriz/gonic/security/advisories/GHSA-2fp4-5v5c-4448
  • nvd.nist.gov/vuln/detail/CVE-2026-49339

Code Behaviors & Features

Detect and mitigate CVE-2026-49339 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 →

Affected versions

All versions before 0.21.0

Fixed versions

  • 0.21.0

Solution

Upgrade to version 0.21.0 or above.

Impact 7.1 HIGH

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
  • CWE-639: Authorization Bypass Through User-Controlled Key

Source file

go/go.senan.xyz/gonic/CVE-2026-49339.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sat, 27 Jun 2026 12:16:20 +0000.