Security Vulnerability Report
中文
CVE-2026-35464 CVSS 7.5 HIGH

CVE-2026-35464

Published: 2026-04-07 15:17:45
Last Modified: 2026-04-23 15:13:57

Description

pyLoad is a free and open-source download manager written in Python. The fix for CVE-2026-33509 added an ADMIN_ONLY_OPTIONS set to block non-admin users from modifying security-critical config options. The storage_folder option is not in this set and passes the existing path restriction because the Flask session directory is outside both PKGDIR and userdir. A user with SETTINGS and ADD permissions can redirect downloads to the Flask filesystem session store, plant a malicious pickle payload as a predictable session file, and trigger arbitrary code execution when any HTTP request arrives with the corresponding session cookie. This vulnerability is fixed with commit c4cf995a2803bdbe388addfc2b0f323277efc0e1.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:pyload:pyload:*:*:*:*:*:*:*:* - VULNERABLE
pyLoad (Commit c4cf995a 之前版本)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import pickle import os # Malicious pickle payload to execute arbitrary command (e.g., whoami) class PoCPayload: def __reduce__(self): return (os.system, ('whoami',)) def generate_payload(): serialized = pickle.dumps(PoCPayload()) print(f"Generated Pickle Payload Length: {len(serialized)}") # In a real attack, this payload would be written to # the Flask session file path specified in storage_folder. return serialized if __name__ == "__main__": generate_payload()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-35464", "sourceIdentifier": "[email protected]", "published": "2026-04-07T15:17:44.523", "lastModified": "2026-04-23T15:13:57.010", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "pyLoad is a free and open-source download manager written in Python. The fix for CVE-2026-33509 added an ADMIN_ONLY_OPTIONS set to block non-admin users from modifying security-critical config options. The storage_folder option is not in this set and passes the existing path restriction because the Flask session directory is outside both PKGDIR and userdir. A user with SETTINGS and ADD permissions can redirect downloads to the Flask filesystem session store, plant a malicious pickle payload as a predictable session file, and trigger arbitrary code execution when any HTTP request arrives with the corresponding session cookie. This vulnerability is fixed with commit c4cf995a2803bdbe388addfc2b0f323277efc0e1."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.6, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-502"}, {"lang": "en", "value": "CWE-863"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:pyload:pyload:*:*:*:*:*:*:*:*", "versionEndExcluding": "2026-04-02", "matchCriteriaId": "970C5BF4-1BD4-470D-A352-57CADD3CA326"}]}]}], "references": [{"url": "https://github.com/pyload/pyload/commit/c4cf995a2803bdbe388addfc2b0f323277efc0e1", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/pyload/pyload/security/advisories/GHSA-4744-96p5-mp2j", "source": "[email protected]", "tags": ["Exploit", "Vendor Advisory", "Mitigation"]}, {"url": "https://github.com/pyload/pyload/security/advisories/GHSA-r7mc-x6x7-cqxx", "source": "[email protected]", "tags": ["Exploit", "Vendor Advisory"]}, {"url": "https://www.cve.org/CVERecord?id=CVE-2026-33509", "source": "[email protected]", "tags": ["Third Party Advisory"]}, {"url": "https://github.com/pyload/pyload/security/advisories/GHSA-4744-96p5-mp2j", "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "tags": ["Exploit", "Vendor Advisory", "Mitigation"]}]}}