CVE-2026-40594
published 2026-04-21CVE-2026-40594: pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev98, the set_session_cookie_secure before_request handler in…
PriorityP424medium4.8CVSS 3.1
AVNACHPRNUINSUCLINAL
EPSS
0.17%
6.7th percentile
pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev98, the set_session_cookie_secure before_request handler in src/pyload/webui/app/__init__.py reads the X-Forwarded-Proto header from any HTTP request without validating that the request originates from a trusted proxy, then mutates the global Flask configuration SESSION_COOKIE_SECURE on every request. Because pyLoad uses the multi-threaded Cheroot WSGI server (request_queue_size=512), this creates a race condition where an attacker's request can influence the Secure flag on other users' session cookies — either downgrading cookie security behind a TLS proxy or causing a session denial-of-service on plain HTTP deployments. This vulnerability is fixed in 0.5.0b3.dev98.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| pyload-ng_project | pyload-ng | < 0.5.0b3.dev69 | 0.5.0b3.dev69 |
| pyload-ng_project | pyload-ng | >= 0 < 0.5.0b3.dev98 | 0.5.0b3.dev98 |
| pyload | pyload | < 0.5.0b3.dev98 | 0.5.0b3.dev98 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
VulDB
pyLoad up to 0.5.0b3.dev97 __init__.py set_session_cookie_secure origin validation (GHSA-mp82-fmj6-f22v)
vuldb·2026-04-21·CVSS 4.8
CVE-2026-40594 [MEDIUM] pyLoad up to 0.5.0b3.dev97 __init__.py set_session_cookie_secure origin validation (GHSA-mp82-fmj6-f22v)
A vulnerability was found in pyLoad up to 0.5.0b3.dev97. It has been classified as problematic. Affected by this vulnerability is the function set_session_cookie_secure of the file src/pyload/webui/app/__init__.py. Performing a manipulation results in origin validation error.
This vulnerability is known as CVE-2026-40594. Remote exploitation of the attack is possible. No exploit is available.
Upgrading the affected component is recommended.
GHSA
pyLoad has a Session Cookie Security Downgrade via Untrusted X-Forwarded-Proto Header Spoofing (Global State Race Condition)
ghsa·2026-04-16
CVE-2026-40594 [MEDIUM] CWE-346 pyLoad has a Session Cookie Security Downgrade via Untrusted X-Forwarded-Proto Header Spoofing (Global State Race Condition)
pyLoad has a Session Cookie Security Downgrade via Untrusted X-Forwarded-Proto Header Spoofing (Global State Race Condition)
## Summary
The `set_session_cookie_secure` `before_request` handler in `src/pyload/webui/app/__init__.py` reads the `X-Forwarded-Proto` header from any HTTP request without validating that the request originates from a trusted proxy, then mutates the **global** Flask configuration `SESSION_COOKIE_SECURE` on every request. Because pyLoad uses the multi-threaded Cheroot WSGI server (`request_queue_size=512`), this creates a race condition where an attacker's request can influence the `Secure` flag on other users' session cookies — either downgrading cookie security behind a TLS proxy or causing a session denial-of-service on plain HTTP deployments.
## Details
The v
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2026-04-21
Published