Description (CNA)
pyLoad is a free and open-source download manager written in Python. From version 0.4.0 to before version 0.5.0b3.dev97, the set_config_value() API endpoint allows users with the non-admin SETTINGS permission to modify any configuration option without restriction. The reconnect.script config option controls a file path that is passed directly to subprocess.run() in the thread manager's reconnect logic. A SETTINGS user can set this to any executable file on the system, achieving Remote Code Execution. The only validation in set_config_value() is a hardcoded check for general.storage_folder — all other security-critical settings including reconnect.script are writable without any allowlist or path restriction. This issue has been patched in version 0.5.0b3.dev97.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| pyload / pyload | affected >= 0.4.0, < 0.5.0b3.dev97 |
CWE
CWE-269
References
ADP enrichment
No English description supplied.
No references supplied.