{"cve":"CVE-2026-49338","nvd":{"published":"2026-06-19T19:16:36.557","modified":"2026-10-25T23:10:00.167","status":"Deferred","description":"gonic is a music streaming server / free-software subsonic server API implementation. Prior to version 0.21.0, the Subsonic API endpoints `/rest/deletePlaylist.view` and `/rest/getPlaylist.view` perform no per-resource authorization. Once authenticated as any user (admin or not), an attacker can delete any playlist owned by any other user (including admin) by passing its `id` and read the full contents (name, comment, song list) of any other user's **private** (non-public) playlist by passing its `id`. The Subsonic playlist `id` is `base64url(\"<userID>/<filename>.m3u\")`. Because filenames are user-supplied or time-derived and the `userID` is a small integer, IDs are guessable and frequently exposed (e.g. a previously-public playlist that was later made private still has the same ID). This breaks the multi-user trust boundary of gonic: a low-privileged user can wipe an administrator's curated playlists, and a user can exfiltrate any private playlist they obtain an ID for. The issue was fixed in commit `6dd71e6a3c966867ef8c900d359a7df75789f410`, which is part of version 0.21.0.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N","score":7.1},"cwes":["CWE-285","CWE-639"],"references":["https://github.com/sentriz/gonic/commit/6dd71e6","https://github.com/sentriz/gonic/security/advisories/GHSA-hmgp-w9jm-vp95"],"products":[],"source":"nvd","synced_at":"2026-10-25T23:44:33.281319194+00:00"},"epss":{"cve":"CVE-2026-49338","score":0.00288,"percentile":0.21204,"date":"2026-10-25"},"kev":null,"osv":[{"id":"GHSA-hmgp-w9jm-vp95","url":"https://osv.dev/vulnerability/GHSA-hmgp-w9jm-vp95","summary":"Subsonic API: any authenticated user can delete or read any other user's playlist (IDOR)","modified":"2026-07-07T16:11:07.579401227Z","packages":[{"ecosystem":"Go","name":"go.senan.xyz/gonic","purl":"pkg:golang/go.senan.xyz/gonic","ranges":["<0.21.0"],"fixed":["0.21.0"]}]},{"id":"GO-2026-5830","url":"https://osv.dev/vulnerability/GO-2026-5830","summary":"Subsonic API: any authenticated user can delete or read any other user's playlist (IDOR) in go.senan.xyz/gonic","modified":"2026-07-07T16:01:34.889204951Z","packages":[{"ecosystem":"Go","name":"go.senan.xyz/gonic","purl":"pkg:golang/go.senan.xyz/gonic","ranges":["<0.21.0"],"fixed":["0.21.0"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}