CVE-2026-35187 pyLoad has SSRF in parse_urls API endpoint via unvalidated URL parameter
Authenticated attackers can exploit unvalidated URL parameters in pyLoad to access internal network resources and local files via Server-Side Request Forgery.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-35187?
CVE-2026-35187 is a high-severity server-side request forgery vulnerability in pyload, published on 6 Apr 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
pyLoad is a free and open-source download manager written in Python. In 0.5.0b3.dev96 and earlier, the parse_urls API function in src/pyload/core/api/__init__.py fetches arbitrary URLs server-side via get_url(url) (pycurl) without any URL validation, protocol restriction, or IP blacklist. An authenticated user with ADD permission can make HTTP/HTTPS requests to internal network resources and cloud metadata endpoints, read local files via file:// protocol (pycurl reads the file server-side), interact with internal services via gopher:// and dict:// protocols, and enumerate file existence via error-based oracle (error 37 vs empty response).
Weakness: CWE-918
Which versions are affected by CVE-2026-35187?
3 open source packages ship an affected version, including pyload-ng. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
pyload-ng PyPI | All versions to 0.5.0b3.dev96 | None |
pyload-ng PyPI | All versions to 0.5.0b3.dev96 | None |
pyload-ng PyPI | All versions to 0.5.0b3.dev96 | None |
Products include Pyload-Ng Project Pyload-Ng.
How do I fix CVE-2026-35187?
No fix has been published for CVE-2026-35187 yet. Limit exposure of the affected software until one is available.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2026-35187 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-35187 exists.
Other vulnerabilities in pyload
- CVE-2025-54802 pyLoad CNL Blueprint is vulnerable to Path Traversal through `dlc_path` leading to Remote Code Execution (RCE)
- CVE-2024-22416 Cross-Site Request Forgery on any API call in pyLoad may lead to admin privilege escalation
- CVE-2023-0488 Cross-site Scripting (XSS) - Stored in pyload/pyload
- CVE-2026-35459 pyLoad has SSRF fix bypass via HTTP redirect
- CVE-2026-35463 pyLoad has Improper Neutralization of Special Elements used in an OS Command
Sources
Also known as GHSA-2wvg-62qm-gj33, PYSEC-2026-2988.