CVE-2025-59953 PUBLISHED

LMdeploy has Remote Code Execution by Pickle Deserialization via zmq_rpc.call_and_response() in InterLM/lmdeploy

Assigner: GitHub_M
Reserved: 23.09.2025 Published: 16.09.2026 Updated: 16.09.2026

LMDeploy is a toolkit for compressing, deploying, and serving large language models. Starting in version 0.9.1 and prior to version 0.10.2, the LMdeploy implements an rpc server (AsyncRPCServer in zmq_rpc.py) for supporting the RPC communications. In its core functionality call_and_response(), I found it will directly use the pickles.loads() to deserialize the received messages without any sanitization, hence resulting in a remote code execution vulnerability by this RPC server. Version 0.10.2 contains a patch.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 9.8

Product Status

Vendor InternLM
Product lmdeploy
Versions
  • Version >= 0.9.1, < 0.10.2 is affected

References

Problem Types

  • CWE-502: Deserialization of Untrusted Data CWE