Skip to main content

CVE-2025-66455: CWE-502: Deserialization of Untrusted Data in InternLM lmdeploy

0
Critical
VulnerabilityCVE-2025-66455cvecve-2025-66455cwe-502
Published: 09/18/2026 (09/18/2026, 17:03:37 UTC)
Source: CVE Database V5
Vendor/Project: InternLM
Product: lmdeploy

Description

LMDeploy is a toolkit for compressing, deploying, and serving large language models. Starting in version 0.9.2 and prior to version 0.16.0, LMDeploy's PyTorch DistServe/PD-disaggregation control plane used `recv_pyobj()` to deserialize messages received through a ZeroMQ PULL socket. PyZMQ implements `recv_pyobj()` using Python pickle deserialization, which can execute arbitrary code while reconstructing an object. The peer address used by the receiver was supplied through the `POST /distserve/p2p_connect` HTTP endpoint. An attacker who could reach an affected DistServe API server could cause the server to connect to an attacker-controlled ZeroMQ endpoint and deserialize a crafted pickle payload. API-key authentication is not enabled unless the operator explicitly configures it. As a result, affected DistServe deployments without API keys allowed unauthenticated remote code execution with the privileges of the LMDeploy serving process. This issue affects the PyTorch backend when PD-disaggregation/DistServe is enabled. Ordinary deployments that do not use the affected disaggregated-serving path do not expose this data flow. The fix was released in LMDeploy 0.16.0. Users who cannot upgrade immediately should prevent untrusted clients from reaching `/distserve/*` endpoints, restrict the DistServe HTTP and ZeroMQ control planes to trusted cluster networks, configure API-key authentication, and block arbitrary outbound ZeroMQ connections from serving nodes. These measures reduce exposure but do not make pickle deserialization safe.

CVSS v3.1

Score 9.8critical

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected software

InternLM

lmdeploy

Affected versions
>=0.9.2 <0.16.0
lmdeploy
pkg:pypi/lmdeploy
Affected versions
>=0.9.2 <0.16.0

Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 09/18/2026, 17:47:22 UTC

Technical Analysis

CVE-2025-66455 is a deserialization of untrusted data vulnerability (CWE-502) in InternLM's LMDeploy toolkit affecting versions >=0.9.2 and <0.16.0. The PyTorch DistServe/PD-disaggregation control plane uses recv_pyobj() from PyZMQ to deserialize messages via Python pickle, which can execute arbitrary code during object reconstruction. The vulnerable code accepts a peer address from the HTTP endpoint POST /distserve/p2p_connect, allowing an attacker who can reach the DistServe API server to force it to connect to a malicious ZeroMQ endpoint and deserialize a crafted pickle payload. Without API-key authentication enabled (which is off by default), this leads to unauthenticated remote code execution with the LMDeploy serving process privileges. The vulnerability only affects deployments using the disaggregated serving path and not ordinary LMDeploy deployments. The issue was fixed in LMDeploy 0.16.0.

Potential Impact

Successful exploitation allows unauthenticated remote code execution on the LMDeploy server process, leading to full compromise of the affected service. This can result in complete loss of confidentiality, integrity, and availability of the LMDeploy instance. The vulnerability is critical with a CVSS 3.1 score of 9.8, reflecting network attack vector, no required privileges or user interaction, and high impact on confidentiality, integrity, and availability.

Mitigation Recommendations

A fixed version, LMDeploy 0.16.0, is available and should be applied to remediate this vulnerability. For users unable to upgrade immediately, mitigation includes restricting access to the /distserve/* HTTP endpoints to trusted clients only, enabling API-key authentication on the DistServe API, limiting the DistServe HTTP and ZeroMQ control planes to trusted cluster networks, and blocking arbitrary outbound ZeroMQ connections from serving nodes. These mitigations reduce exposure but do not eliminate the risk posed by unsafe pickle deserialization.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2025-12-01T18:44:35.640Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 6aad759d55bf5e2cf54f30a9

Added to database: 09/18/2026, 17:32:13 UTC

Last enriched: 09/18/2026, 17:47:22 UTC

Last updated: 09/18/2026, 23:31:41 UTC

Views: 10

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses