CVE-2026-76850
Last modified
CVE-2026-76850 is a critical-severity vulnerability rated 9.8/10 on the CVSS scale. LMDeploy deserializes disaggregated-serving peer messages with pickle. The handle_zmq_recv coroutine in lmdeploy/pytorch/disagg/conn/engine_conn.py reads peer-to-peer cache-free requests with recv_pyobj(), which deserializes the received bytes with pickle.loads(), and the isinstance check against DistServeCacheFreeRequest runs only after deserialization has already completed. EPSS estimates a 0.98% chance of exploitation in the next 30 days.
Description
LMDeploy deserializes disaggregated-serving peer messages with pickle. The handle_zmq_recv coroutine in lmdeploy/pytorch/disagg/conn/engine_conn.py reads peer-to-peer cache-free requests with recv_pyobj(), which deserializes the received bytes with pickle.loads(), and the isinstance check against DistServeCacheFreeRequest runs only after deserialization has already completed. The peer that supplies those bytes is caller-controlled: p2p_connect passes remote_engine_endpoint_info.zmq_address from the request body to connect() on the ZMQ PULL socket, and the POST /distserve/p2p_initialize and /distserve/p2p_connect endpoints in lmdeploy/serve/openai/api_server.py apply no authentication unless the server is started with api_keys, which defaults to None. A remote attacker can direct an engine to pull from a ZMQ endpoint under their control and execute arbitrary code in the engine process. Deployments that do not enable disaggregated serving are not affected, because the receive loop is only started once the migration backend accepts the connection.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| InternLM | lmdeploy | >= 0.9.2, < 0.16.0 |
References
Timeline
- Published
- Last Modified
- Status
- Received
Frequently Asked Questions
What is CVE-2026-76850?
How severe is CVE-2026-76850?
How do I fix CVE-2026-76850?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-76844webpack-dev-middleware resolves a request to a local file in…7.4
- CVE-2026-76845adm-zip 0.5.9 through 0.6.0 follows symbolic links at the ex…6.5
- CVE-2026-76846Grav before 2.0.16 contains an incomplete default denylist i…7.5
- CVE-2026-76847act starts an HTTP Artifacts V4 backend whenever a workflow …8.8
- CVE-2026-76848TypeORM's SelectQueryBuilder.distinctOn accepts an array of …7.5
- CVE-2026-7685A vulnerability was detected in Edimax BR-6208AC up to 1.02.…8.8
- CVE-2026-7686A vulnerability was found in eyeo Adblock Plus up to 4.36.2 …5.5
- CVE-2026-7687A vulnerability was determined in langflow-ai langflow up to…6.3
- CVE-2026-76876Craftplan before 0.5.1 contains a broken access control vuln…5.9
- CVE-2026-76878In OpenStack Aodh before 22.0.1, the alarm list API bypasses…8.4
- CVE-2026-76879C12.22 protocol dissector crash in 4.6.0 to 4.6.7 and 4.4.0 …7.5
- CVE-2026-7688A vulnerability was identified in Dolibarr ERP CRM up to 23.…5
Are you affected by CVE-2026-76850?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
