CVE-2026-63764: LMDeploy Server-Side Request Forgery via HTTP Redirect Bypass
Advisory generated from the CVE record, CISA, Exploit Observer and VEDAS: what it is, whether it is exploited, who is affected, and how to fix and detect it.
Generated by VEDAS. Scores as of 2026-11-01 19:19 UTC. Rebuilt every few hours from cve-scores, CISA KEV and vedas-signatures. How this works and its limits.
What it is
LMDeploy through 0.14.0, fixed in commit 03c3130, contains a server-side request forgery (SSRF) vulnerability in the _load_http_url function within the connection.py media handler, where the private-IP guard validates only the original URL without re-validating hosts after HTTP redirects. An unauthenticated attacker can submit a crafted image_url to the chat completions endpoint pointing to an attacker-controlled host that returns a redirect to a private IP or cloud-metadata endpoint, causing the server to follow the redirect and expose internal service content through the model pipeline.
Description quoted from the CVE record (assigned by VulnCheck, published 2026-07-21).
Weakness: Server-Side Request Forgery (SSRF)
How it can be exploited
Exploitable over the network with low attack complexity with no special attack requirements needing no privileges and no user interaction. Impact: confidentiality none, integrity none, availability none. CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N
CISA assessment (SSVC): CISA assesses that a public proof of concept exists. Automatable: yes. Technical impact: partial.
Public exploit evidence (Exploit Observer)
Also known as: EUVD-2026-46412, GHSA-rqhf-rg9p-w5gg
VEDAS cluster: VEDAS:CRYSTALMYSTIQUE
Exploit Observer links 5 pieces of public exploit code or detection modules that name this CVE or one of its aliases.
Exploit code and modules (5)
Code that names this CVE. A repository can be a working exploit, a scanner, a fake or malware; read it before running anything.
- Code repository: https://raw.githubusercontent.com/ARPSyndicate/vedas-signatures/main/nuclei/2026/CVE-2026-63764.yaml
- Code repository: https://raw.githubusercontent.com/ARPSyndicate/vedas-signatures/main/nuclei/2026/CVE-2026-63764.yaml
- Code repository: https://raw.githubusercontent.com/ARPSyndicate/vedas-signatures/main/suricata/2026/CVE-2026-63764.rules
- Code repository: https://raw.githubusercontent.com/ARPSyndicate/vedas-signatures/main/suricata/2026/CVE-2026-63764.rules
- Code repository: https://raw.githubusercontent.com/ARPSyndicate/vedas-signatures/main/suricata/2026/CVE-2026-63764.rules
Vulnerability databases and vendor advisories (3)
Catalogue entries, not exploit evidence.
- Vulnerability database or vendor advisory: https://euvd.enisa.europa.eu/enisa/EUVD-2026-46412
- Vulnerability database or vendor advisory: https://github.com/advisories/GHSA-rqhf-rg9p-w5gg
- Vulnerability database or vendor advisory: https://nvd.nist.gov/vuln/detail/CVE-2026-63764
1 more reference returned by Exploit Observer did not name this CVE or an alias, so they are left out.
VEDAS data as of 2026-11-01T17:12 UTC; fetched 2026-11-02.
Live scores
- EPSS
- 0.005
low predicted chance of attack - VEDAS
- 0.986
strong exploit evidence - On CISA KEV
- Not listed
Who is affected
| Product | Affected | Not affected |
|---|---|---|
| InternLM lmdeploy | up to and including 0.14.0 | 03c313006d17 is not affected |
Version ranges exactly as the CVE record states them. “Before X” means X is the first fixed version.
Exploit Observer also maps it to: internlm lmdeploy.
How to fix it
Vendor guidance:
- Pull Request (issue-tracking, patch)
- Patch Commit (patch)
How to detect it
Nuclei template (active check)
LMDeploy - Server-Side Request Forgery
LMDeploy through 0.14.0 exposes an OpenAI-compatible inference API server whose media handler (_load_http_url in connection.py) fetches image_url values supplied in a chat completions request. The private-IP guard validates only the originally submitted URL and does not re-validate the host after following HTTP redirects, so an unauthenticated client can point image_url at an attacker-controlled host and reach internal services or cloud-metadata endpoints. This template first reads the served model name from /v1/models, then submits a chat completion whose image_url references a unique out-of-band host; a resulting DNS interaction confirms the server performs the attacker-directed fetch.
Name and description quoted from the template, written by VEDAS.
The template sends 2 requests (GET /v1/models, POST /v1/chat/completions); it confirms through an out-of-band callback (interactsh), so the scanner must be able to receive it; it decides using regex, word matchers. Severity in the template: high. Marked as not yet verified against a live vulnerable target.
Run it against a host you own or are authorised to test:
nuclei -u https://your-host -t CVE-2026-63764.yamlShow the template (57 lines)
id: CVE-2026-63764
info:
name: "LMDeploy - Server-Side Request Forgery"
author: vedas-arpsyndicate
severity: high
description: |
LMDeploy through 0.14.0 exposes an OpenAI-compatible inference API server whose
media handler (_load_http_url in connection.py) fetches image_url values supplied
in a chat completions request. The private-IP guard validates only the originally
submitted URL and does not re-validate the host after following HTTP redirects, so
an unauthenticated client can point image_url at an attacker-controlled host and
reach internal services or cloud-metadata endpoints. This template first reads the
served model name from /v1/models, then submits a chat completion whose image_url
references a unique out-of-band host; a resulting DNS interaction confirms the
server performs the attacker-directed fetch.
reference:
- https://www.exploit.observer/?keyword=CVE-2026-63764&match=exact
- https://subdomain.center/?engine=ammonites&keyword=lmdeploy&match=exact
classification:
cvss-metrics: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N
cvss-score: 7.7
cve-id: CVE-2026-63764
cwe-id: CWE-918
metadata:
verified: false
tags: cve,cve2026,lmdeploy,ssrf,oast
http:
- raw:
- |
GET /v1/models HTTP/1.1
Host: {{Hostname}}
Accept: application/json
- |
POST /v1/chat/completions HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"model":"{{model}}","messages":[{"role":"user","content":[{"type":"text","text":"describe this image"},{"type":"image_url","image_url":{"url":"http://{{interactsh-url}}/vedas.png"}}]}],"max_tokens":1}
extractors:
- type: regex
name: model
part: body
internal: true
regex:
- '"id"\s*:\s*"([^"]+)"'
group: 1
matchers-condition: and
matchers:
- type: word
part: interactsh_protocol
name: dns
words:
- "dns"
Suricata rules (network detection)
1 rule that alert on traffic matching this exploit: VEDAS CVE-2026-63764 LMDeploy - Server-Side Request Forgery. Add them to your Suricata rule set and reload.
Show the rules
alert http $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"VEDAS CVE-2026-63764 LMDeploy - Server-Side Request Forgery"; flow:established,to_server; http.method; content:"POST"; http.uri; content:"/v1/chat/completions"; nocase; http.request_body; content:"image_url"; nocase; fast_pattern; content:"http"; nocase; classtype:web-application-attack; reference:cve,CVE-2026-63764; reference:url,https://www.exploit.observer/?keyword=CVE-2026-63764&match=exact; reference:url,https://subdomain.center/?engine=ammonites&keyword=lmdeploy&match=exact; sid:1090800; rev:1;)
CVE-2026-63764.rules on GitHub
References
Vendor advisories and patches
- Pull Request (issue-tracking, patch)
- Patch Commit (patch)
Exploits and technical analysis
- Researcher Disclosure (technical-description, exploit, issue-tracking)
- https://www.vulncheck.com/advisories/lmdeploy-server-side-request-forgery-via-http-redirect-bypass (third-party-advisory)
Other databases
Where this comes from
This advisory is generated automatically by VEDAS from: CVE.org record, cve-scores (EPSS and VEDAS), Exploit Observer, vedas-signatures. Text in quotes is reproduced from the source; everything else is a fixed template filled with source fields. Nothing here is written by a language model. Check the vendor advisory before acting, and read how VEDAS and Exploit Observer work, and their limits.