Skip to content
OpenAdvisories
Critical · 9.8 Scanner template Public exploit CVE-2026-22778 EUVD-2026-5277GHSA-4r2x-xpjr-7cvvPYSEC-2026-565

vLLM leaks a heap address when PIL throws an error

Published Feb 2, 2026 · Updated Jul 15, 2026 · Assigned by GitHub_M

Description

vLLM is an inference and serving engine for large language models (LLMs). From 0.8.3 to before 0.14.1, when an invalid image is sent to vLLM's multimodal endpoint, PIL throws an error. vLLM returns this error to the client, leaking a heap address. With this leak, we reduce ASLR from 4 billion guesses to ~8 guesses. This vulnerability can be chained a heap overflow with JPEG2000 decoder in OpenCV/FFmpeg to achieve remote code execution. This vulnerability is fixed in 0.14.1.

Affected products

VendorProductAffectedFixed
vllm-project vllm >= 0.8.3, < 0.14.1 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

Metasploit 1 module

GitHub 1 repository

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Automated scanner template

A ready-made Nuclei template detects this vulnerability automatically. Vulnerabilities with public scanner templates are typically probed across the internet soon after the template appears — exposed systems should be patched first.

Source: projectdiscovery/nuclei-templates (MIT) — updated daily. Only links are listed.

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI vllm >= 0.8.3, < 0.14.1 0.14.1 GHSA-4r2x-xpjr-7cvv

Advisories 1

References