CVE-2026-49338
WysokieCVSS 7.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 — wyżej niż 6% wszystkich znanych CVE
Streszczenie
Gonic, serwer strumieniowy muzyki, przed wersją 0.21.0 nie zapewniał autoryzacji dla punktów końcowych API Subsonic `/rest/deletePlaylist.view` i `/rest/getPlaylist.view`. Umożliwia to atakującemu, po uwierzytelnieniu, usunięcie dowolnej playlisty innego użytkownika oraz odczytanie zawartości prywatnych playlist.
Ocena ryzyka
Brak odpowiedniej autoryzacji pozwala na naruszenie zaufania między użytkownikami, co może prowadzić do utraty danych i prywatności. Użytkownicy o niskich uprawnieniach mogą usunąć playlisty administratorów oraz wykradać prywatne dane innych użytkowników.
Rekomendacja
Zaleca się aktualizację do wersji 0.21.0 lub nowszej, aby naprawić tę lukę. Należy również rozważyć dodatkowe środki zabezpieczające, takie jak monitorowanie dostępu do playlist.
Oryginalny opis (angielski, źródło NVD)
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.

