Cyber Resilience

CVE-2024-21644

HighPublic PoC

Published: 08 January 2024

Published
08 January 2024
Modified
21 November 2024
KEV Added
Patch
CVSS Score v3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS Score 0.8928 99.6th percentile
Risk Priority 69 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2024-21644 is a high-severity Improper Access Control (CWE-284) vulnerability in Pyload Pyload. Its CVSS base score is 7.5 (High).

Operationally, ranked in the top 0.4% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

Deeper analysis

pyLoad, the open-source Python download manager, contains an information disclosure vulnerability that allows exposure of the underlying Flask application configuration. Unauthenticated remote users can access a specific URL to retrieve the full Flask config, including the SECRET_KEY value, due to improper access controls tracked under CWE-284. The issue affects versions prior to the patch released in 0.5.0b3.dev77 and carries a CVSS 3.1 score of 7.5 reflecting network attack vector, low complexity, and high confidentiality impact.

An attacker with no credentials or user interaction can exploit the flaw simply by requesting the exposed endpoint, obtaining the SECRET_KEY and any other sensitive configuration data stored in the Flask environment. Possession of the key enables further attacks such as session forgery or tampering with application state, though the vulnerability itself is limited to read access on the config.

The official GitHub security advisory GHSA-mqpq-2p68-46fv and the referenced commit bb22063a875ffeca357aaf6e2edcd09705688c40 confirm the patch that restricts access to the configuration endpoint. Administrators are advised to upgrade to the fixed development build to prevent unauthenticated disclosure.

The EPSS score has remained steady at its peak value of 0.8928 with no indicated rise after disclosure.

EU & UK References

Vulnerability details

pyLoad is the free and open-source Download Manager written in pure Python. Any unauthenticated user can browse to a specific URL to expose the Flask config, including the `SECRET_KEY` variable. This issue has been patched in version 0.5.0b3.dev77.

CWE(s)

Related Threats

No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.

Affected Assets

pyload
pyload
0.5.0 · ≤ 0.4.9

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-284

The access control policy and procedures directly mandate and enforce proper access control mechanisms across the organization.

addresses: CWE-284

Device lock enforces restricted access until re-authentication, directly reducing unauthorized use of active sessions.

addresses: CWE-284

Supervision and review of access control activities directly detects and remediates improper access configurations or usages.

addresses: CWE-284

Explicitly identifying and documenting actions permitted without identification or authentication enforces proper access control boundaries by defining justified exceptions.

addresses: CWE-284

By automatically labeling outputs with security attributes, the control supports attribute-based enforcement and reduces exploitability of improper access control weaknesses.

addresses: CWE-284

Associating and retaining security attributes with data directly supports enforcement of access control decisions across storage, processing, and transmission.

addresses: CWE-284

Requiring prior authorization for each remote access type prevents improper access control over remote connections.

addresses: CWE-284

Requiring authorization of wireless access before allowing connections enforces proper access control for this access method.

References