CVE-2026-53501
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 11 - wyżej niż 11% wszystkich znanych CVE
Streszczenie
Thumbor przed wersją 7.8.0 w walidacji HMAC używa metody .replace() w Pythonie do usunięcia podpisu z URL przed walidacją. Ponieważ .replace() usuwa wszystkie wystąpienia podciągu, atakujący może wstawić ten sam podpis wielokrotnie w URL i manipulować końcowym URL używanym do walidacji, umożliwiając ładowanie obrazów z niezamierzonych domen lub ścieżek.
Ocena ryzyka
Atakujący może ominąć walidację HMAC i załadować obrazy z nieautoryzowanych źródeł, co może prowadzić do wycieku danych lub wstrzykiwania złośliwych treści.
Rekomendacja
Należy zaktualizować Thumbor do wersji 7.8.0 lub nowszej.
Inne podatności w Thumbor
Zobacz wszystkie- CVE-2026-53505Wysokie
Thumbor przed wersją 7.8.0 w filtrze filters:proportion(<value>) nie narzuca górnego ograniczenia na <value> i działa w fazie po transformacji. Atakujący może wywołać ekstremalnie duże zmiany rozmiaru (wyczerpanie CPU/pamięci) i spowodować odmowę usługi.
- CVE-2026-53504Wysokie
Thumbor przed wersją 7.8.0 w filtrze konwolucji używa wyrażenia regularnego, które wykonuje wykładnicze cofanie się na spreparowanych powtarzających się danych liczbowych, umożliwiając żądaniu URL wyczerpanie czasu przetwarzania.
- CVE-2026-53503Wysokie
Thumbor przed wersją 7.8.0 w filtrze filters:convolution(<matrix>, <columns>, <should_normalize>) przekazuje kontrolowaną przez użytkownika wartość <columns> do rozszerzenia C, gdzie jest używana jako dzielnik bez walidacji, że columns > 0. Gdy columns=0, kod C wywołuje niezdefiniowane zachowanie, na x86_64 prowadząc do śmiertelnego dzielenia przez zero (SIGFPE) i awarii procesu Thumbor, powodując zdalną odmowę usługi.
- CVE-2026-53502Wysokie
Thumbor przed wersją 7.8.0 w file_loader dekoduje segmenty ścieżki zakodowane procentowo po walidacji granic korzenia, umożliwiając wyjście poza FILE_LOADER_ROOT_PATH przez dane wejściowe filtra watermark lub frame.
- CVE-2026-53500Wysokie
Thumbor przed wersją 7.8.0 w konfiguracji ALLOWED_SOURCES przekazuje zwykłe ciągi znaków do re.match() bez escapowania kropek, więc nazwa hosta różniąca się w pozycjach kropek może pasować do listy dozwolonych.
Oryginalny opis (angielski, źródło NVD)
Thumbor is an open-source photo thumbnail service by globo.com. Prior to 7.8.0, Thumbor’s HMAC validation can be bypassed due to the use of Python’s .replace() when removing the signature from the URL before validation. Since .replace() removes all occurrences of the substring, an attacker can insert the same signature multiple times in the URL and manipulate the final URL used for validation. This allows crafting URLs where the validated string differs from the actual requested resource, enabling loading images from unintended domains or paths. This issue is fixed in 7.8.0.

