Описание
pyLoad has Path Traversal Vulnerability in json/upload Endpoint that allows Arbitrary File Write
Summary
An authenticated path traversal vulnerability exists in the /json/upload endpoint of the pyLoad By manipulating the filename of an uploaded file, an attacker can traverse out of the intended upload directory, allowing them to write arbitrary files to any location on the system accessible to the pyLoad process. This may lead to:
- Remote Code Execution (RCE)
- Local Privilege Escalation
- System-wide compromise
- Persistence and backdoors
Vulnerable Code
File: src/pyload/webui/app/blueprints/json_blueprint.py
Issue: No sanitization or validation on file.filename, allowing traversal via ../../ sequences.
(Proof of Concept)
- Clone and install pyLoad from source (
pip install pyload-ng):
- Or install via pip (PyPi) in virtualenv:
- Login and obtain session token
- Create malicious cron payload
- Upload file with path traversal filename
- On the next cron tick, a reverse shell or payload will be triggered.
BurpSuite HTTP Request
Ссылки
- https://github.com/pyload/pyload/security/advisories/GHSA-xqpg-92fq-grfg
- https://nvd.nist.gov/vuln/detail/CVE-2025-54140
- https://github.com/pyload/pyload/commit/fc4b136e9c4e7dcbb8e467ae802cb2c3f70a71b0
- https://github.com/pyload/pyload/blob/df094db67ec6e25294a9ac0ddb4375fd7fb9ba00/src/pyload/webui/app/blueprints/json_blueprint.py#L109
Пакеты
pyload-ng
= 0.5.0b3.dev89
0.5.0b3.dev90
Связанные уязвимости
pyLoad is a free and open-source Download Manager written in pure Python. In version 0.5.0b3.dev89, an authenticated path traversal vulnerability exists in the /json/upload endpoint of pyLoad. By manipulating the filename of an uploaded file, an attacker can traverse out of the intended upload directory, allowing them to write arbitrary files to any location on the system accessible to the pyLoad process. This may lead to: Remote Code Execution (RCE), local privilege escalation, system-wide compromise, persistence, and backdoors. This is fixed in version 0.5.0b3.dev90.
pyLoad is a free and open-source Download Manager written in pure Pyth ...