CVE-2024-11041: vLLM Remote Code Execution Vulnerability Due to Deserialization of Untrusted Data
Summary
CVE-2024-11041: vLLM Deserialization of Untrusted Data vulnerability. Affects vllm versions < 0.6.2. No fix is published. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
vLLM is an open-source library designed for efficient and scalable machine learning model serving. It allows users to deploy and manage large language models with ease. However, version 0.6.2 of vLLM contains a critical vulnerability that exposes users to potential remote code execution attacks due to improper handling of deserialization in its MessageQueue component.
Vulnerability Detail
The vulnerability arises from the MessageQueue.dequeue() API function, which utilizes pickle.loads to deserialize data received from sockets without proper validation. This flaw allows an attacker to send a specially crafted malicious payload to the MessageQueue, leading to arbitrary code execution on the victim's machine. The implications of this vulnerability are severe, as it could allow attackers to execute any code with the same privileges as the user running the vLLM application, potentially compromising sensitive data and system integrity.
How To Fix
No fixed version is published for this vulnerability.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
If immediate upgrading is not feasible, a temporary workaround is to avoid using the MessageQueue.dequeue() function until the package is updated. Additionally, consider implementing network-level security measures to restrict access to the MessageQueue from untrusted sources.
Conclusion
The vLLM library version 0.6.2 contains a critical vulnerability that allows for remote code execution due to improper deserialization of untrusted data. Users are strongly advised to update to version 0.6.3 or implement workarounds to mitigate the risk. Regular monitoring for vulnerabilities, such as through Vulert, can help maintain application security.
See every vulnerability recorded for vllm →
FAQ
The vulnerability has a CVSS score of 9.8, indicating it is critical and should be addressed immediately.
You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.
An exploit could allow attackers to execute arbitrary code, potentially leading to data breaches, system compromise, and unauthorized access to sensitive information.
Yes, vLLM version 0.6.2 is vulnerable. Users should upgrade to version 0.6.3 or later to mitigate this risk.
Deserialization is the process of converting a data format back into an object. It poses a risk when untrusted data is deserialized, as it can lead to remote code execution if not properly validated.
Related vulnerabilities
Recent vulnerabilities recorded for vllm.