vLLM accepts disguised image files that can run commands on the server
vLLM trusts the file type label on uploaded images and can be tricked into handing a disguised file to a helper program. On a server with an old, vulnerable Ghostscript, that can let an attacker run commands with vLLM's permissions.
| Severity | HighCVSS 8.1 of 10 |
|---|---|
| Being exploited? | UnclearNo reports either way yet |
| Fix available? | YesvLLM 0.32.0 · since 28 Oct 2026 |
| How sure is this? | Official, 2 sourcesBacked by an official source |
How the attack works simplified
- 1Attacker sends imageDisguised EPS file labeled as PNG
- 2vLLM loads bytesMIME label does not restrict decoder
- 3Pillow picks EPSDetected by file signature
- 4Ghostscript runs payloadCVE-2024-29510 bypasses -dSAFER
- 5Commands executeRun with vLLM process privileges
- ResultAttacker runs commands on the server
What happened
vLLM before 0.32.0 lets attacker-controlled bytes select any Pillow-supported image decoder regardless of the declared MIME type. An EPS payload labeled image/png is sent to the host Ghostscript, which is exploitable via CVE-2024-29510 to escape its sandbox.
Are you affected?
You are affected if you run vLLM older than 0.32.0 with an image-capable request path reachable by callers, and the host has a vulnerable Ghostscript build (CVE-2024-29510), or you use Pillow 12.0.0 through 12.2.0.
| Package / product | Affected versions | Fixed in |
|---|---|---|
| vllm · pip | < 0.32.0 | 0.32.0 |
What to do
- Update vLLM to 0.32.0 or later
- Update Ghostscript to 10.03.1 or later, or remove it if Pillow EPS support is not needed
- Upgrade Pillow to a version outside 12.0.0 through 12.2.0
- Restrict who can reach image-capable chat requests until patched
Timeline
- 26 Oct 2026, 18:17 UTCPublicly disclosed
- 26 Oct 2026, 18:17 UTCReported by NVD · NVD
- 26 Oct 2026, 18:22 UTCPicked up by Zero Radar
- 28 Oct 2026, 21:15 UTCGitHub Advisory reported on it · GitHub Advisory
- 28 Oct 2026, 21:15 UTCFixed version published: vllm 0.32.0 · GitHub Advisory
Sources 2 reports, oldest first
Official vendor, government CERT or advisory database
- CVE-2026-115915NVD · 26 Oct 2026, 18:17 UTC
- vLLM: Untrusted EPS inputs can trigger denial of service or Ghostscript RCEGitHub Advisory · 28 Oct 2026, 21:15 UTC
Technical details
- ID
- CVE-2026-115915 · GHSA-h3rc-j82p-2c3h
- CVSS
- 8.1 / 10
- EPSS
- 0.7% chance of exploitation within 30 days
- Disclosed
- 26 Oct 2026, 18:17 UTC
- On Zero Radar
- 26 Oct 2026, 18:22 UTC (5 min after disclosure)
- Last change
- 28 Oct 2026, 21:15 UTC
The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works