CVE-2026-25960 json
SSRF Protection Bypass in vLLM
published 2026-03-09 8 mo ago modified 2026-07-21 3 mo ago also EUVD-2026-10356 , GHSA-v359-jj2v-j536 , PYSEC-2026-3411
- cvss
- 7.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 49%
- public exploits
- 0
- none known
Summary
vLLM is an inference and serving engine for large language models (LLMs). The SSRF protection fix for CVE-2026-24779 add in 0.15.1 can be bypassed in the load_from_url_async method due to inconsistent URL parsing behavior between the validation layer and the actual HTTP client. The SSRF fix uses urllib3.util.parse_url() to validate and extract the hostname from user-provided URLs. However, load_from_url_async uses aiohttp for making the actual HTTP requests, and aiohttp internally uses the yarl library for URL parsing. This vulnerability in 0.17.0.
Patch / fix
- pypi vllm 0.17.0
- Red Hat Red Hat OpenShift AI 2.25 1780069069, 1783998774, 1783998857
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-25960 updated cvss 7.1
vLLM: vLLM: Server-Side Request Forgery bypass via inconsistent URL parsing
-
Red Hat AI Inference Server rhaiis/vllm-tpu-rhel9, rhaiis/vllm-cuda-rhel9, rhaiis/vllm-rocm-rhel9, rhaiis/vllm-spyre-rhel9, rhaiis-preview/vllm-cuda-rhel9affected: workaround, no fix available
-
Red Hat Enterprise Linux AI (RHEL AI) 3 rhelai3/bootc-cuda-rhel9, rhelai3/bootc-aws-cuda-rhel9, rhelai3/bootc-gcp-cuda-rhel9, rhelai3/bootc-azure-cuda-rhel9affected: workaround, no fix planned “Will not fix”
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-kserve-agent-rhel9, rhoai/odh-kserve-router-rhel9, rhoai/odh-kserve-storage-initializer-rhel9affected: workaround, no fix planned “Out of support scope”
-
Red Hat OpenShift AI 2.25 rhoai/odh-vllm-cpu-rhel9 1792018436, rhoai/odh-vllm-cuda-rhel9 1783998774, rhoai/odh-vllm-rocm-rhel9 1783998857, rhoai/odh-vllm-gaudi-rhel9 1780069069fixed: vendor fix RHSA-2026:87410
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-kserve-controller-rhel9not affected: vulnerable code not in execute path
-
Red Hat OpenShift AI 2.25 rhoai/odh-rhel9-operator 1780513840, rhoai/odh-rhel9-operator 1784004914, rhoai/odh-rhel9-operator 1792570619, rhoai/odh-vllm-cpu-rhel9 1780069252, rhoai/odh-vllm-cpu-rhel9 1782397826, rhoai/odh-dashboard-rhel9 1780467029, +215 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 8 mo ago
Exploit prediction
0.60% chance of exploitation in the next 30 days, higher than 49% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/vllm-project/vllm/security/advisories/GHSA-v359-jj2v-j536 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L |
| CISA ADP | 3.1 | 7.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L |
| GitHub | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | vllm | >=0.15.1, <0.17.0 |
0.17.0 |
Affected products
- vllm-project vllm
- Red Hat Red Hat OpenShift AI 2.25
- Red Hat Red Hat AI Inference Server
- Red Hat Red Hat Enterprise Linux AI (RHEL AI) 3
- Red Hat Red Hat OpenShift AI (RHOAI)
Classification
References
-
github.com
/vllm-project/vllm/pull/34743
web, issue-tracking, patch
-
github.com
/vllm-project/vllm/commit/6f3b2047abd4a748e3db4a68543f8221358002c0
web, patch
-
github.com
/vllm-project/vllm/security/advisories/GHSA-v359-jj2v-j536
web, exploit, patch, vendor-advisory
-
access.redhat.com
/errata/RHSA-2026:42644
vendor-advisory
-
access.redhat.com
/errata/RHSA-2026:24977
vendor-advisory, web
-
github.com
/vllm-project/vllm/security/advisories/GHSA-qh4c-xf7m-gxfc
web, not-applicable
-
access.redhat.com
/security/cve/CVE-2026-25960
vdb-entry, web
-
bugzilla.redhat.com
/show_bug.cgi?id=2445892
issue-tracking, web
-
security.access.redhat.com
/data/csaf/v2/vex/2026/cve-2026-25960.json
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-25960
advisory
-
github.com
/advisories/GHSA-v359-jj2v-j536
advisory
-
github.com
/pypa/advisory-database/tree/main/vulns/vllm/PYSEC-2026-3411.yaml
web
-
github.com
/vllm-project/vllm
package
-
pypi.org
/project/vllm
web, package
Sources
- CVE List CVE-2026-25960
- GitHub Advisory GHSA-v359-jj2v-j536
- NVD CVE-2026-25960
- OSV PYSEC-2026-3411
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.