UNKNOWNCVE-2026-35459

pyLoad: SSRF filter bypass via HTTP redirect in BaseDownloader (Incomplete fix for CVE-2026-33992)

Platform

python

Component

pyload-ng

## Samenvatting De fix voor CVE-2026-33992 (GHSA-m74m-f7cr-432x) voegde IP-validatie toe aan `BaseDownloader.download()` die de hostname van de initiële download URL controleert. Echter, pycurl is geconfigureerd met `FOLLOWLOCATION=1` en `MAXREDIRS=10`, waardoor het automatisch HTTP-redirects volgt. Redirect targets worden nooit gecontroleerd tegen de SSRF-filter. Een geauthenticeerde gebruiker met ADD-rechten kan de SSRF-fix omzeilen door een URL in te dienen die naar een intern adres redirect. ## Oorzaak De SSRF-controle op `src/pyload/plugins/base/downloader.py:335-341` controleert alleen de initiële URL: dl_hostname = urllib.parse.urlparse(dl_url).hostname if is_ip_address(dl_hostname) and not is_global_address(dl_hostname): self.fail(...) else: for ip in host_to_ip(dl_hostname): if not is_global_address(ip): self.fail(...) Na de controle wordt `_download()` aangeroepen. pycurl is geconfigureerd op `src/pyload/core/network/http/http_request.py:114-115` om redirects te volgen: self.c.setopt(pycurl.FOLLOWLOCATION, 1) self.c.setopt(pycurl.MAXREDIRS, 10) Er wordt nergens een `CURLOPT_REDIR_PROTOCOLS` restrictie ingesteld. Redirect targets

Hoe te verhelpen

Geen officiële patch beschikbaar. Zoek naar tijdelijke oplossingen of monitor updates.

Bewaak uw afhankelijkheden automatisch

Ontvang meldingen wanneer nieuwe kwetsbaarheden uw projecten beïnvloeden.

Gratis beginnen