Описание
pyLoad Has Incomplete Fix for CVE-2026-33509 -storage_folder Bypass via Session Directory in pyLoad
Summary
The fix for CVE-2026-33509 prevents setting storage_folder inside PKGDIR or userdir, but does NOT protect the Flask session directory (/tmp/pyLoad/flask). An authenticated attacker can set storage_folder to the session directory and download session files of other users via /files/get/, leading to account takeover.
Details
The fix in src/pyload/core/api/__init__.py:
But the Flask session directory is:
Attack Chain
- Attacker (admin) sets
storage_folder = /tmp/pyLoad/flask - Fix does NOT block this —
/tmp/pyLoad/flasknot insidePKGDIRoruserdir - Attacker requests
GET /files/get/<victim_session_filename> send_from_directory('/tmp/pyLoad/flask', session_file)serves victim's session- Attacker uses stolen session → Account Takeover
PoC
Impact
Authenticated admin can steal sessions of other users → Account Takeover.
Suggested Fix
Пакеты
pyload-ng
<= 0.5.0b3.dev99
Отсутствует
Связанные уязвимости
pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev100, the fix for CVE-2026-33509 prevents setting storage_folder inside PKGDIR or userdir, but does NOT protect the Flask session directory (/tmp/pyLoad/flask). An authenticated attacker can set storage_folder to the session directory and download session files of other users via /files/get/, leading to account takeover. This vulnerability is fixed in 0.5.0b3.dev100.
pyLoad is a free and open-source download manager written in Python. P ...