CRITICAL🇬🇧 English

CVE-2026-35033

Jellyfin: odczyt dowolnych plików przez command injection w ffmpeg

CVSS 9.3v4.0pub. 2026-04-14upd. 2026-04-23

Jellyfin w wersjach przed 10.11.7 zawiera podatność umożliwiającą nieuwierzytelnionemu atakującemu odczyt dowolnych plików z serwera poprzez wstrzyknięcie argumentów do polecenia ffmpeg. Podatność jest krytyczna, ponieważ pozwala na eksfiltrację wrażliwych plików systemowych (np. /etc/shadow) bez konieczności posiadania konta w systemie.

Pokaż oryginał (EN)

Jellyfin is an open source self hosted media server. Versions prior to 10.11.7 contain an unauthenticated arbitrary file read vulnerability via ffmpeg argument injection through the StreamOptions query parameter parsing mechanism. The ParseStreamOptions method in StreamingHelpers.cs adds any lowercase query parameter to a dictionary without validation, bypassing the RegularExpression attribute on the level controller parameter, and the unsanitized value is concatenated directly into the ffmpeg command line. By injecting a drawtext filter with a textfile argument, an attacker can read arbitrary server files such as /etc/shadow and exfiltrate their contents as text rendered in the video stream response. The vulnerable /Videos/{itemId}/stream endpoint has no Authorize attribute, making this exploitable without authentication, though item GUIDs are pseudorandom and require an authenticated user to obtain. This issue has been fixed in version 10.11.7.

🤖 Analiza AI
Jak działa

Metoda ParseStreamOptions w pliku StreamingHelpers.cs dodaje wszystkie parametry zapytania zapisane małymi literami do słownika bez żadnej walidacji, omijając atrybut RegularExpression zastosowany na parametrze kontrolera. Niezweryfikowana wartość jest następnie bezpośrednio konkatenowana do polecenia ffmpeg wykonywanego przez serwer. Atakujący może wstrzyknąć filtr drawtext z argumentem textfile wskazującym na dowolny plik systemowy, a jego zawartość zostanie wyrenderowana jako tekst w odpowiedzi wideo ze strumienia. Podatny endpoint /Videos/{itemId}/stream nie posiada atrybutu Authorize, jednak do uzyskania identyfikatora GUID elementu wymagane jest wcześniejsze uwierzytelnienie.

Skutki

Atakujący może odczytać i eksfiltrować dowolne pliki dostępne dla procesu serwera, w tym wrażliwe pliki systemowe takie jak /etc/shadow, co może prowadzić do dalszego przejęcia kontroli nad systemem. Możliwy jest również odczyt kluczy prywatnych, konfiguracji i innych poufnych danych.

Mitygacja

Należy zaktualizować Jellyfin do wersji 10.11.7, w której problem został naprawiony. Patche dostępne są w oficjalnym repozytorium producenta: https://github.com/jellyfin/jellyfin/releases/tag/v10.11.7

Kogo dotyczy

Jellyfin w wersjach wcześniejszych niż 10.11.7

Uwagi

Mimo braku atrybutu Authorize na podatnym endpoincie, praktyczna eksploatacja wymaga znajomości pseudolosowego identyfikatora GUID elementu multimedialnego, który można uzyskać wyłącznie po zalogowaniu się do instancji Jellyfin. Obniża to nieco realny poziom ryzyka w środowiskach, gdzie rejestracja publiczna jest wyłączona.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Jellyfin

    APP
    Jellyfin
    < 10.11.7
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-35031CRITICAL9.9PL ✓ten sam produkt

Jellyfin: RCE jako root przez path traversal w endpoincie przesyłania napisów

CVE-2026-31852CRITICAL10.0PL ✓ten sam produkt

Krytyczna podatność RCE w workflow GitHub Actions Jellyfin iOS

CVE-2023-30627CRITICAL9.0ten sam produkt

jellyfin-web is the web client for Jellyfin, a free-software media system. Starting in version 10.1.0 and prio...

CVE-2026-35032HIGH8.6ten sam produkt

Jellyfin is an open source self hosted media server. Versions prior to 10.11.7 contain a vulnerability chain i...

CVE-2025-31499HIGH7.6ten sam produkt

Jellyfin is an open source self hosted media server. Versions before 10.10.7 are vulnerable to argument inject...