pyLoad w wersji 0.5.0b3.dev96 i wcześniejszych zawiera podatność typu SSRF (Server-Side Request Forgery), która pozwala uwierzytelnionemu użytkownikowi ominąć wcześniej wprowadzoną poprawkę bezpieczeństwa. Groźne jest to, że atakujący może zmusić serwer do wykonywania żądań do wewnętrznych adresów infrastruktury, naruszając izolację sieci.
▸ Pokaż oryginał (EN)
pyLoad is a free and open-source download manager written in Python. In 0.5.0b3.dev96 and earlier, pyLoad has a server-side request forgery (SSRF) vulnerability. The fix for CVE-2026-33992 added IP validation to BaseDownloader.download() that checks the hostname of the initial download URL. However, pycurl is configured with FOLLOWLOCATION=1 and MAXREDIRS=10, causing it to automatically follow HTTP redirects. Redirect targets are never validated against the SSRF filter. An authenticated user with ADD permission can bypass the SSRF fix by submitting a URL that redirects to an internal address.
Poprawka dla CVE-2026-33992 dodała walidację adresu IP dla nazwy hosta w początkowym URL-u przekazanym do funkcji BaseDownloader.download(). Jednak biblioteka pycurl jest skonfigurowana z opcjami FOLLOWLOCATION=1 oraz MAXREDIRS=10, co powoduje automatyczne podążanie za przekierowaniami HTTP (do 10 kroków). Adresy docelowe przekierowań nie są nigdy weryfikowane przez filtr SSRF. Uwierzytelniony użytkownik posiadający uprawnienie ADD może zatem przesłać URL wskazujący na kontrolowany przez siebie zewnętrzny serwer, który zwróci przekierowanie do wewnętrznego adresu, omijając w ten sposób całą wdrożoną ochronę.
Atakujący może wykorzystać serwer pyLoad jako proxy do wysyłania żądań HTTP do zasobów w sieci wewnętrznej (np. metadanych chmurowych, usług niedostępnych publicznie), co może prowadzić do ujawnienia poufnych danych lub dalszej eksploatacji wewnętrznej infrastruktury.
Należy zaktualizować pyLoad-NG do wersji zawierającej poprawkę wskazaną w referencjach producenta (commit 33c55da084320430edfd941b60e3da0eb1be9443 w repozytorium GitHub). Jako obejście tymczasowe należy ograniczyć dostęp do interfejsu pyLoad wyłącznie do zaufanych użytkowników oraz rozważyć sieciową izolację instancji pyLoad od krytycznych zasobów wewnętrznych.
pyLoad-NG (Pyload-Ng Project) w wersji 0.5.0b3.dev96 i wcześniejszych
Podatność stanowi obejście wcześniejszej poprawki dla CVE-2026-33992. Szczegóły techniczne i advisory dostępne są pod adresem https://github.com/pyload/pyload/security/advisories/GHSA-7gvf-3w72-p2pg
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:H/SI:H/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:XPyload Ng Project Pyload Ng
APPPyload-Ng Project< 0.5.0b3.dev97
Powiązane podatności
Path Traversal i RCE w pyLoad-ng — zapis dowolnych plików bez uwierzytelnienia
CSRF w pyLoad umożliwia wykonanie dowolnych wywołań API bez uwierzytelnienia
pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev100, when passing a f...
pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev100, the set_config_v...
pyLoad is a free and open-source download manager written in Python. In 0.5.0b3.dev96 and earlier, the ADMIN_O...