Read the docs
TI-2026-29330 Aliases CVE-2026-40594GHSA-mp82-fmj6-f22v

pyLoad: Session Cookie Security Downgrade via Untrusted X-Forwarded-Proto Header Spoofing (Global State Race Condition)

Priority MEDIUM 55CWE-346Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
High
Impact type
Security bypass
Confidentiality · integrity · availability
Low · None · Low
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-346.

Summary

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.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00171 6th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed pyload (pyload): 0.5.0b3.dev98pyload-ng (PyPI): 0.5.0b3.dev98

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
pyloadpyloadbefore 0.5.0b3.dev980.5.0b3.dev98Patch availableCNA
—pyload-ng (PyPI)before 0.5.0b3.dev980.5.0b3.dev98Patch availableGHSA-mp82-fmj6-f22v
  • pyload Vendorpyload Affected before 0.5.0b3.dev98 Fixed in 0.5.0b3.dev98 Patch available CNA
  • pyload-ng (PyPI) Vendor— Affected before 0.5.0b3.dev98 Fixed in 0.5.0b3.dev98 Patch available GHSA-mp82-fmj6-f22v

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:pyload-ng_project:pyload-ng:*:*:*:*:*:python:*:*before 0.5.0b3.dev69VulnerablePyload-ng Project
  • cpe:2.3:a:pyload-ng_project:pyload-ng:*:*:*:*:*:python:*:* Versions before 0.5.0b3.dev69 Vulnerable ·Pyload-ng Project

Remediation

  • Fix · CNA pyload (pyload) Fixed in 0.5.0b3.dev98
  • Fix · GHSA-mp82-fmj6-f22v pyload-ng (PyPI) Fixed in 0.5.0b3.dev98 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-40594
  2. 2026-10-03 Alias added: GHSA-mp82-fmj6-f22v

References

  • TI-2023-00282 Code Injection in pyload/pyload CVSS 3.1CRITICAL 9.8
  • TI-2025-34556 pyLoad CNL Blueprint is vulnerable to Path Traversal through `dlc_path` leading to Remote Code Execution (RCE) CVSS 3.1CRITICAL 9.8
  • TI-2025-33765 pyLoad vulnerable to remote code execution through js2py onCaptchaResult CVSS 3.1CRITICAL 9.8
  • TI-2023-00412 Excessive Attack Surface in pyload/pyload CVSS 3.1CRITICAL 9.8
  • TI-2026-27589 pyLoad has SSRF fix bypass via HTTP redirect CVSS 4.0CRITICAL 9.3
  • TI-2026-26332 pyLoad: Server-Side Request Forgery via Download Link Submission Enables Cloud Metadata Exfiltration CVSS 4.0CRITICAL 9.3
See all 49 →

Sources