{"id":"CVE-2026-25960","summary":"SSRF Protection Bypass in vLLM","details":"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.","aliases":["GHSA-v359-jj2v-j536","PYSEC-2026-3411"],"modified":"2026-08-12T03:51:31.115513820Z","published":"2026-03-09T21:01:01.827Z","related":["GHSA-qh4c-xf7m-gxfc","GHSA-v359-jj2v-j536"],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-918"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25960.json"},"references":[{"type":"WEB","url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-25960.json"},{"type":"ADVISORY","url":"https://access.redhat.com/errata/RHSA-2026:24977"},{"type":"ADVISORY","url":"https://access.redhat.com/errata/RHSA-2026:42644"},{"type":"ADVISORY","url":"https://access.redhat.com/security/cve/CVE-2026-25960"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25960.json"},{"type":"ADVISORY","url":"https://github.com/vllm-project/vllm/security/advisories/GHSA-qh4c-xf7m-gxfc"},{"type":"ADVISORY","url":"https://github.com/vllm-project/vllm/security/advisories/GHSA-v359-jj2v-j536"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-25960"},{"type":"REPORT","url":"https://bugzilla.redhat.com/show_bug.cgi?id=2445892"},{"type":"FIX","url":"https://github.com/vllm-project/vllm/commit/6f3b2047abd4a748e3db4a68543f8221358002c0"},{"type":"FIX","url":"https://github.com/vllm-project/vllm/pull/34743"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/vllm-project/vllm","events":[{"introduced":"1892993bc18e243e2c05841314c5e9c06a80c70d"},{"fixed":"b31e9326a7d9394aab8c767f8ebe225c65594b60"},{"fixed":"6f3b2047abd4a748e3db4a68543f8221358002c0"}],"database_specific":{"cpe":"cpe:2.3:a:vllm:vllm:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0.15.1"},{"fixed":"0.17.0"}],"source":["CPE_RANGE","REFERENCES"]}}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-25960.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L"}]}