CVE-2026-115917
Low · 3.4CVSS
3.4
EPSS
0.2%
Published
Oct 26, 2026
CISA due date
—
Cloudanix analysis
A misconfigured AI model server can let a malicious website secretly use your company's internal AI resources and see the results just because an employee visited that website.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Data Exposure
- Component
- Network Service
- Class
- Misconfiguration
- Remediation
- Upgrade
- Effort
- Low
- Patch risk
- Low
What it actually does
The OpenAI-compatible server in vLLM enables Starlette CORSMiddleware with a wildcard allowed_origins by default, permitting any origin to issue cross-origin requests to endpoints such as /v1/models and /v1/chat/completions on unauthenticated instances reachable from localhost, internal networks, or VPNs.
Why it matters to the business
Organizations running vLLM inference servers face unauthorized GPU resource consumption and potential leakage of model outputs when users visit malicious websites, increasing operational costs and risking exposure of proprietary AI interactions without requiring stolen credentials.
How an attack unfolds
An attacker hosts a malicious webpage that executes JavaScript fetch or XMLHttpRequest calls against the victim's browser-reachable vLLM instance; the wildcard CORS policy allows the browser to forward requests and return responses containing model data or confirmation of compute usage.
How to fix it
Upgrade all vLLM deployments to version 0.32.0 or later and explicitly configure allowed_origins to a strict allowlist instead of the default wildcard; disable or restrict the OpenAI-compatible server when not required.
How to confirm the fix worked
Confirm running version is 0.32.0+, inspect Starlette CORSMiddleware configuration for non-wildcard origins, and test from a different origin that requests are now blocked or require explicit preflight approval.
Typical attack path
- Victim visits attacker-controlled webpage while an unauthenticated vLLM server is reachable via browser (localhost, LAN, or VPN)
- Page issues cross-origin GET /v1/models or POST /v1/chat/completions requests
- CORS preflight and actual requests succeed due to wildcard origin policy
- Responses containing model metadata or generated text are read by the page and exfiltrated to attacker
- Repeated calls consume GPU resources on the target server
How to detect it
Review web server or application logs for cross-origin requests to /v1/models and /v1/chat/completions originating from unexpected referrers or lacking authentication headers; correlate with browser history or proxy logs showing visits to unknown domains shortly before such calls.
What your security team should do
- Immediately upgrade to vLLM 0.32.0 across all instances
- Audit network exposure of vLLM servers and restrict to authenticated, non-browser-accessible endpoints
- Implement strict CORS allowlists and consider adding authentication tokens even for internal deployments
- Monitor for unexpected traffic to /v1/* endpoints from external referrers
The record
vLLM is an inference and serving engine for large language models. Prior to 0.32.0, the OpenAI-compatible server configures Starlette CORSMiddleware with allowed_origins set to a wildcard by default. A malicious web page can use a victim's browser to reach an unauthenticated vLLM server on localhost, an internal network, or a VPN, call endpoints including GET /v1/models and POST /v1/chat/completions, consume GPU resources, and read responses. Cookie-based cross-site request forgery does not apply because credentials are disabled by default, and deployments requiring bearer authentication are exposed only when the caller already has a usable token. This issue is fixed in version 0.32.0.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-62863 MoLing is a computer-use and browser-use based MCP server. CWE-942
- CVE-2026-119285 Fiber is an Express inspired web framework written in Go. CWE-942
- CVE-2026-110737 The push endpoint of a Vaadin application that uses server push reflects the request… CWE-942
- CVE-2026-116748 Transmission 4.0.0 before 4.1.3 contains a permissive CORS vulnerability in… CWE-942
- CVE-2026-107858 Missing Origin Validation in WebSockets (CWE-1385) and Permissive Cross-domain Policy… CWE-942
- CVE-2026-89058 A flaw was found in RESTEasy's CorsFilter, which, when configured to allow all origins… CWE-942
- CVE-2026-53649 Joro is a web exploitation framework. CWE-942
- CVE-2025-61163 Cohere North AI v1.1.5 was discovered to contain excessively permissive cross-domain… CWE-942