CVE-2024-22416: pyLoad pyload-ng CSRF leading to admin privilege escalation

CVE-2024-22416 · Severity: critical · CVSS 9.6 · Published 2024-01-19

pyLoad is a download manager that provides an API for remote management. A security flaw allows attackers to perform unauthorized actions by tricking a logged-in administrator into visiting a malicious website. This could allow an attacker to create a new administrator account, effectively taking full control of the application and its data.

Technologies: pyload-ng (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2024-22416 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-22416 being exploited in the wild.
How severe is CVE-2024-22416?
Critical severity, with a CVSS score of 9.6, published 19 January 2024.
Which products and versions are affected?
pyload-ng (PyPI) < 0.5.0b3.dev78, ECOSYSTEM:introduced=0,fixed=0.5.0b3.dev78, GIT:introduced=0,fixed=1374c824271cb7e927740664d06d2e577624ca3e,fixed=c7cdc18ad9134a75222974b39e8b427c4af845fc|ECOSYSTEM:introduced=0,fixed=0.5.0b3.dev78.
Is there a fix for CVE-2024-22416?
Yes. pyload-ng (PyPI): upgrade to 0.5.0b3.dev78 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2024-22416 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2024-22416?
Check whether you run pyload-ng (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • pyload-ng (PyPI): upgrade to 0.5.0b3.dev78 or later
    pip install "pyload-ng>=0.5.0b3.dev78"

Technical details

A Cross-Site Request Forgery (CSRF) vulnerability exists in pyLoad due to the API's acceptance of GET requests for state-changing operations and the absence of 'SameSite: Strict' or 'SameSite: Lax' attributes on session cookies. An attacker can craft a malicious webpage that triggers an API call (e.g., /api/add_user) when visited by an authenticated administrator. Because the browser automatically includes the session cookie in the cross-site request, the API executes the command with the administrator's privileges. This can lead to full administrative takeover. The issue is fixed in version 0.5.0b3.dev78.

Affected products

  • pyLoad pyload-ng < 0.5.0b3.dev78

Identifiers

  • CVE-2024-22416
  • GHSA-pgpj-v85q-h5fm
  • PYSEC-2024-17

Timeline

  • 2024-01-17: disclosed
  • 2024-01-18: other: NVD published
  • 2024-01-19: advisory: GitHub Advisory published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.