pyLoad CVE-2026-41133
HIGHSeverity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Lifecycle Timeline
4DescriptionGitHub Advisory
pyLoad is a free and open-source download manager written in Python. Versions up to and including 0.5.0b3.dev97 cache role and permission in the session at login and continues to authorize requests using these cached values, even after an admin changes the user's role/permissions in the database. As a result, an already logged-in user can keep old (revoked) privileges until logout/session expiry, enabling continued privileged actions. This is a core authorization/session-consistency issue and is not resolved by toggling an optional security feature. Commit e95804fb0d06cbb07d2ba380fc494d9ff89b68c1 contains a fix for the issue.
AnalysisAI
Session fixation in pyLoad 0.5.0b3.dev97 and earlier allows authenticated users to retain revoked administrative privileges until logout. After an administrator demotes a user's role or revokes permissions, the affected user's active session continues to operate with the old cached privileges, enabling unauthorized administrative actions. Publicly available exploit code exists via GitHub commit e95804fb0d06cbb07d2ba380fc494d9ff89b68c1. With CVSS 8.8 (High) but requiring low-privilege authentication (PR:L), this represents an elevation-of-privilege vector in multi-user pyLoad deployments where role changes are expected to take immediate effect.
Technical ContextAI
This vulnerability stems from CWE-613 (Insufficient Session Expiration), a session management flaw where pyLoad's authentication subsystem caches user role and permission data in the session object at login time. When administrators modify user privileges through the database or admin interface, the application fails to invalidate or refresh existing sessions. The Python-based session handler does not implement real-time authorization checks against the current database state, instead relying on stale cached values until the session expires naturally or the user manually logs out. This creates a window where revoked privileges remain exploitable, violating the principle of immediate privilege revocation common in multi-tenant or role-based access control systems.
RemediationAI
Upgrade to pyLoad commit e95804fb0d06cbb07d2ba380fc494d9ff89b68c1 or later, which implements real-time privilege checking against current database state rather than cached session values. Users can apply the patch directly from https://github.com/pyload/pyload/commit/e95804fb0d06cbb07d2ba380fc494d9ff89b68c1. If immediate patching is not feasible, implement compensating controls: (1) Force logout of all active sessions after making any role/permission changes via administrative tools or by restarting the pyLoad service (causes service interruption for all users), (2) Reduce session timeout values to minimize the window of stale privilege retention (trade-off: increases user login frequency and inconvenience), (3) Monitor audit logs for privilege escalation attempts by cross-referencing user actions against current database roles (requires manual review overhead). Note that these workarounds do not eliminate the vulnerability and may impact usability. Official vendor advisory available at https://github.com/pyload/pyload/security/advisories/GHSA-66hx-chf7-3332.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
Cross-user flow execution in Langflow (< 1.9.1) lets any authenticated API-key holder run another user's flow by passing
Same weakness CWE-613 – Insufficient Session Expiration
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
GHSA-66hx-chf7-3332