{"id":"CVE-2024-22416","published":"2024-01-17T23:48:31Z","modified":"2025-06-17T21:19:19Z","title":"Cross-Site Request Forgery on any API call in pyLoad may lead to admin privilege escalation","vendor":"pyload","product":"pyload","tier":"tail","description":{"text":"pyLoad is a free and open-source Download Manager written in pure Python. The `pyload` API allows any API call to be made using GET requests. Since the session cookie is not set to `SameSite: strict`, this opens the library up to severe attack possibilities via a Cross-Site Request Forgery (CSRF) attack. As a result any API call can be made via a CSRF attack by an unauthenticated user. This issue has been addressed in release `0.5.0b3.dev78`. All users are advised to upgrade.","provenance":"source","from":"CVE.org"},"cvss":{"score":9.7,"severity":"CRITICAL","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","provenance":"source","from":"CVE.org CNA"},"epss":{"score":0.00948,"percentile":0.61151,"provenance":"source"},"cwes":[{"id":"CWE-352","name":"Cross-Site Request Forgery"}],"references":[{"url":"https://github.com/pyload/pyload/security/advisories/GHSA-pgpj-v85q-h5fm","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/pyload/pyload/commit/1374c824271cb7e927740664d06d2e577624ca3e","tags":["x_refsource_MISC"]},{"url":"https://github.com/pyload/pyload/commit/c7cdc18ad9134a75222974b39e8b427c4af845fc","tags":["x_refsource_MISC"]}],"priority":{"score":24.0,"factors":[{"name":"EPSS percentile","points":12.23},{"name":"Public exploit code","points":5.0},{"name":"CVSS severity","points":6.79}]},"exploitSources":{"pocGithub":{"count":1,"skipped":0,"earliest":"2024-01-18","earliestUrl":"https://github.com/theorzr/ensimag-secu3a-cve-2024-22416","repos":[{"name":"theorzr/ensimag-secu3a-cve-2024-22416","url":"https://github.com/theorzr/ensimag-secu3a-cve-2024-22416","stars":0,"created":"2024-01-18"}]},"first":{"date":"2024-01-18","source":"PoC-in-GitHub","url":"https://github.com/theorzr/ensimag-secu3a-cve-2024-22416"},"provenance":"source"},"vendorSlug":"pyload","affectedVersions":[{"vendor":"pyload","product":"pyload","versions":["< 0.5.0b3.dev78"]}],"affected":[{"ecosystem":"PyPI","package":"pyload-ng","vulnerableRanges":["<0.5.0b3.dev78"],"patched":["0.5.0b3.dev78"],"from":["GHSA-pgpj-v85q-h5fm","PYSEC-2024-17"],"provenance":"source"}],"euvd":{"id":"EUVD-2024-0154","exploited":false,"provenance":"source"},"lineage":{"familyId":"fam-pyload-pyload-cve-2023-0055","parents":[{"from":"CVE-2023-0055","to":"CVE-2024-22416","relation":"related","confidence":"medium","kind":"lineage","evidence":[{"kind":"same-code","provenance":"machine","files":["src/pyload/webui/app/__init__.py"],"commits":["https://github.com/pyload/pyload/commit/7b53b8d43c2c072b457dcd19c8a09bcfc3721703","https://github.com/pyload/pyload/commit/1374c824271cb7e927740664d06d2e577624ca3e","https://github.com/pyload/pyload/commit/c7cdc18ad9134a75222974b39e8b427c4af845fc"],"basis":"shared function","functions":["_configure_session"]}]},{"from":"CVE-2023-0057","to":"CVE-2024-22416","relation":"related","confidence":"medium","kind":"lineage","evidence":[{"kind":"same-code","provenance":"machine","files":["src/pyload/webui/app/__init__.py"],"commits":["https://github.com/pyload/pyload/commit/bd2a31b7de54570b919aa1581d486e6ee18c0f64","https://github.com/pyload/pyload/commit/1374c824271cb7e927740664d06d2e577624ca3e","https://github.com/pyload/pyload/commit/c7cdc18ad9134a75222974b39e8b427c4af845fc"],"basis":"rarely changed file"}]}],"packageHistory":[{"cve":"CVE-2023-47890","published":"2024-01-08","fixed":"0.5.0b3.dev75","kev":false},{"cve":"CVE-2024-21644","published":"2024-01-08","fixed":"0.5.0b3.dev77","kev":false,"link":{"from":"CVE-2024-21644","to":"CVE-2024-22416","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:pyload-ng","fromFixed":"0.5.0b3.dev77","toFixed":"0.5.0b3.dev78","daysApart":9}]}},{"cve":"CVE-2024-21645","published":"2024-01-08","fixed":"0.5.0b3.dev77","kev":false},{"cve":"CVE-2024-22416","published":"2024-01-17","fixed":"0.5.0b3.dev78","kev":false},{"cve":"CVE-2024-24808","published":"2024-02-06","fixed":"0.5.0b3.dev79","kev":false,"link":{"from":"CVE-2024-22416","to":"CVE-2024-24808","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:pyload-ng","fromFixed":"0.5.0b3.dev78","toFixed":"0.5.0b3.dev79","daysApart":20}]}},{"cve":"CVE-2024-47821","published":"2024-10-25","fixed":"0.5.0b3.dev87","kev":false},{"cve":"CVE-2025-54140","published":"2025-07-22","fixed":"0.5.0b3.dev90","kev":false}],"package":"PyPI:pyload-ng"}}