CVE-2025-58762
KrytyczneCVSS 9.1Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 57 - wyżej niż 57% wszystkich znanych CVE
Streszczenie
W Tautulli w wersji 2.15.3 i wcześniejszych osoba z uprawnieniami administracyjnymi może wykorzystać endpoint `pms_image_proxy` do zapisania dowolnych skryptów Pythona w systemie plików aplikacji. Poprzez zmianę adresu URL serwera PMS na kontrolowany przez siebie serwer i manipulację parametrami `img` oraz `img_format` (z użyciem path traversal) atakujący zapisuje złośliwy plik, a następnie uruchamia go przez wbudowanego agenta powiadomień `Script`, co prowadzi do zdalnego wykonania kodu.
Ocena ryzyka
Podatność pozwala na zdalne wykonanie kodu na serwerze aplikacji, co może skutkować pełnym przejęciem systemu, kradzieżą danych lub dalszą eskalacją ataku w sieci organizacji. Wymaga jednak posiadania uprawnień administracyjnych w Tautulli.
Rekomendacja
Należy zaktualizować Tautulli do wersji 2.16.0, która zawiera poprawkę. Dodatkowo warto ograniczyć dostęp administracyjny do aplikacji i monitorować nietypowe zmiany konfiguracji PMS.
Inne podatności w Tautulli
Zobacz wszystkie- CVE-2026-43986Krytyczne
Tautulli w wersjach przed 2.17.1 udostępnia publiczną ścieżkę `/image/<hash>`, która rozwiązuje wpisy kontrolowane przez atakującego z tabeli `image_hash_lookup` i odtwarza je przez logikę pobierania obrazów po stronie serwera. Niskouprzywilejowany użytkownik gościa może umieścić złośliwy zewnętrzny adres URL obrazu w tej tabeli, a następnie wywołać pobieranie po stronie serwera przez w pełni nieuwierzytelniony punkt końcowy, co zamienia uwierzytelnioną podatność SSRF w trwały, nieuwierzytelniony gadżet SSRF.
- CVE-2026-54915Średnie
W Tautulli przed wersją 2.17.2 nieuwierzytelniony endpoint /auth/redirect usuwa ukośniki z parametru redirect_uri, ale pozostawia znaki tabulacji, nowej linii i powrotu karetki. Przy domyślnej konfiguracji HTTP_ROOT pozwala to przekierować użytkownika na zewnętrzną domenę kontrolowaną przez atakującego.
- CVE-2026-52835Wysokie
Tautulli przed wersją 2.17.2 w handlerze import_config oraz w gałęzi database_file funkcji import_database łączy kontrolowaną przez atakującego nazwę pliku bezpośrednio z CACHE_DIR bez redukcji do basename ani sprawdzenia zawierania ścieżki. Administrator lub wywołujący z kluczem API instancji może przesłać nazwę pliku zawierającą segmenty katalogu nadrzędnego, powodując zapis lub nadpisanie pliku poza CACHE_DIR.
- CVE-2026-49995Średnie
W Tautulli przed wersją 2.17.2 pole cron newslettera jest wstawiane do łańcucha JavaScript bez bezpiecznego kodowania JSON. Administrator lub osoba z kluczem API Tautulli może zapisać spreparowaną wartość cron, która wykona skrypt w kontekście webowym Tautulli, gdy administrator otworzy okno konfiguracji newslettera.
- CVE-2026-45381Średnie
W Tautulli przed wersją 2.17.2 endpoint /search wstawia kontrolowany przez użytkownika parametr zapytania do łańcucha JavaScript z ręcznym escapowaniem, które nie obsługuje odwrotnych ukośników. Sekwencja odwrotny ukośnik-cudzysłów może zakończyć łańcuch, umożliwiając nieuwierzytelnionemu atakującemu wykonanie skryptu w kontekście webowym Tautulli, gdy uwierzytelniony użytkownik kliknie spreparowany link.
- CVE-2026-43985Wysokie
Tautulli w wersjach przed 2.17.1 nie wymusza metody POST na punkcie końcowym `configUpdate` i nie używa tokenów anty-CSRF. Atakujący może nakłonić zalogowanego administratora do odwiedzenia złośliwej strony, która wysyła żądanie międzywitrynowe, nadpisując nazwę użytkownika i hasło administratora, co pozwala na przejęcie interfejsu administracyjnego.
- CVE-2026-43984Wysokie
Tautulli to narzędzie monitorujące dla Plex Media Server. Przed wersją 2.17.1 endpoint `log_js_errors` jest dostępny dla każdego uwierzytelnionego użytkownika, w tym gości. Endpoint zapisuje kontrolowane przez atakującego ciągi znaków do logu aplikacji. Widok `logFile` (tylko dla administratora) odczytuje ten log i osadza go w odpowiedzi HTML bez kodowania, co prowadzi do przechowywanego XSS. Gość może wstrzyknąć HTML/JavaScript, które wykona się w przeglądarce administratora.
- CVE-2026-41065Wysokie
Tautulli przed wersją 2.17.1 jest podatny na zdalne wykonanie kodu poprzez funkcję niestandardowego szablonu newslettera. Na świeżej instalacji przed ukończeniem kreatora konfiguracji wszystkie endpointy zarządzania są nieuwierzytelnione. Atakujący może utworzyć agenta newslettera, wskazać katalog szablonów na kontrolowany SMB share z złośliwym szablonem Mako i wywołać kod przez endpoint renderowania newslettera.
- CVE-2026-40605Średnie
Tautulli przed wersją 2.17.1 zawiera podatność typu path traversal w punkcie końcowym usuwania pamięci podręcznej. Uwierzytelniony atakujący może usunąć katalogi poza skonfigurowaną ścieżką cache, co prowadzi do utraty danych i przerwania usługi. Problem naprawiono w wersji 2.17.1.
- CVE-2025-58763Wysokie
Tautulli w wersji 2.15.3 i wcześniejszych zawiera podatność na wstrzyknięcie poleceń, która pozwala atakującym z uprawnieniami administracyjnymi na zdalne wykonanie kodu na serwerze aplikacji. Podatność występuje, gdy aplikacja została sklonowana z GitHub i zainstalowana ręcznie, ponieważ funkcja `runGit` w `versioncheck.py` używa `shell=True` w `subprocess.Popen`, a dane wejściowe użytkownika (remote i branch) nie są sanityzowane. Poprawka znajduje się w wersji 2.16.0.
Oryginalny opis (angielski, źródło NVD)
Tautulli is a Python based monitoring and tracking tool for Plex Media Server. In Tautulli v2.15.3 and earlier, an attacker with administrative access can use the `pms_image_proxy` endpoint to write arbitrary python scripts into the application filesystem. This leads to remote code execution when combined with the `Script` notification agent. If an attacker with administrative access changes the URL of the PMS to a server they control, they can then abuse the `pms_image_proxy` to obtain a file write into the application filesystem. This can be done by making a `pms_image_proxy` request with a URL in the `img` parameter and the desired file name in the `img_format` parameter. Tautulli then uses a hash of the desired metadata together with the `img_format` in order to construct a file path. Since the attacker controls `img_format` which occupies the end of the file path, and `img_format` is not sanitised, the attacker can then use path traversal characters to specify filename of their choosing. If the specified file does not exist, Tautaulli will then attempt to fetch the image from the configured PMS. Since the attacker controls the PMS, they can return arbitrary content in response to this request, which will then be written into the specified file. An attacker can write an arbitrary python script into a location on the application file system. The attacker can then make use of the built-in `Script` notification agent to run the local script, obtaining remote code execution on the application server. Users should upgrade to version 2.16.0 to receive a patch.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

