CVE-2024-21545 Path traversal in libpve-common-perl (Promox Mail Gateway 8)
Authenticated attackers with audit or monitor privileges can read arbitrary host files via API, potentially leading to system compromise.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2024-21545?
CVE-2024-21545 is a high-severity path traversal vulnerability in Proxmox libpve-common-perl (Promox Mail Gateway 8), published on 24 Sep 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Proxmox Virtual Environment is an open-source server management platform for enterprise virtualization. Insufficient safeguards against malicious API response values allow authenticated attackers with 'Sys.Audit' or 'VM.Monitor' privileges to download arbitrary host files via the API. When handling the result from a request handler before returning it to the user, the handle_api2_request function will check for the ‘download’ or ‘data’->’download’ objects inside the request handler call response object. If present, handle_api2_request will read a local file defined by this object and return it to the user. Two endpoints were identified which can control the object returned by a request handler sufficiently that the ’download’ object is defined and user controlled. This results in arbitrary file read. The privileges of this file read can result in full compromise of the system by various impacts such as disclosing sensitive files allowing for privileged session forgery.
Weakness: CWE-73
Which versions are affected by CVE-2024-21545?
How do I fix CVE-2024-21545?
No fix has been published for CVE-2024-21545 yet. Limit exposure of the affected software until one is available.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2024-21545 being exploited?
There is no known exploitation of CVE-2024-21545 in the wild and no public exploit code.
Public exploit code: 1 proofs of concept on GitHub.