CVE-2026-34753
SSRF Vulnerability in vLLM Batch Runner Allows Internal Requests
Publication date: 2026-04-06
Last updated on: 2026-04-20
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| vllm | vllm | From 0.16.0 (inc) to 0.19.0 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-918 | The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination. |
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability allows an attacker to make the server issue arbitrary HTTP/HTTPS requests to internal services, potentially exposing internal resources. This could lead to unauthorized access to sensitive internal data or systems.
Such unauthorized access risks could impact compliance with standards and regulations like GDPR or HIPAA, which require protection of sensitive data and internal systems from unauthorized access or disclosure.
However, the CVE description and resources do not explicitly mention compliance impacts or specific regulatory considerations.
Can you explain this vulnerability to me?
CVE-2026-34753 is a Server-Side Request Forgery (SSRF) vulnerability in the vLLM project's batch runner, specifically in the function download_bytes_from_url.
This function downloads data from URLs specified in batch input JSON files, but it does so without validating or restricting the URLs. An attacker who can control the batch input JSON can make the server issue arbitrary HTTP or HTTPS requests to any URL.
Because there is no validation on the URL's hostname, IP address, port, path, query parameters, or redirects, the attacker can target internal services accessible from the vLLM host, such as cloud metadata endpoints or internal HTTP APIs.
This vulnerability exists in versions 0.16.0 up to before 0.19.0 and was fixed in version 0.19.0 by adding URL validation and domain allowlists.
How can this vulnerability impact me? :
This vulnerability allows an attacker to make the vLLM server send arbitrary HTTP/HTTPS requests to internal or external services without authorization.
Potential impacts include unauthorized access to internal resources such as cloud metadata services or internal APIs, which could lead to information disclosure.
The CVSS score rates this vulnerability as moderate severity with a base score of 5.4, indicating a low complexity attack that requires low privileges and no user interaction.
The confidentiality impact is low, integrity impact is none, and availability impact is low.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by monitoring for unusual or unexpected HTTP/HTTPS requests originating from the vLLM server, especially those triggered by batch input JSON files containing the `file_url` field.
Since the vulnerability involves the server making arbitrary HTTP requests without validation, detection can focus on identifying such requests to internal or unexpected external endpoints.
- Use network monitoring tools (e.g., tcpdump, Wireshark) to capture outgoing HTTP/HTTPS traffic from the vLLM host.
- Run commands like `tcpdump -i <interface> tcp port 80 or tcp port 443` to capture HTTP/HTTPS traffic.
- Inspect logs of the vLLM batch runner for batch input JSON files containing suspicious or unexpected URLs in the `file_url` field.
- Use application-level logging or debugging to trace calls to the `download_bytes_from_url` function and verify the URLs being requested.
What immediate steps should I take to mitigate this vulnerability?
The immediate and recommended mitigation is to upgrade the vLLM package to version 0.19.0 or later, where the vulnerability is fixed by implementing URL validation and domain allowlists.
If upgrading is not immediately possible, restrict access to the vLLM batch runner to trusted users only, and carefully validate or sanitize batch input JSON files to prevent attacker-controlled URLs.
Additionally, network-level controls such as firewall rules can be applied to restrict the vLLM server's outbound HTTP/HTTPS requests to only trusted domains or IP ranges.