---
id: CVE-2025-59953
title: >-
  LMDeploy is a toolkit for compressing, deploying, and serving large language
  models
summary: "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 commu…"
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-502
vendor: InternLM
product: lmdeploy
affected:
  - 'lmdeploy >= 0.9.1, < 0.10.2'
patched:
  - lmdeploy 0.10.2
published: '2026-09-16'
updated: '2026-09-24'
sourceUpdated: '2026-09-24T21:25:27.050'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-59953'
references:
  - url: 'https://github.com/InternLM/lmdeploy/releases/tag/v0.10.2'
    label: security-advisories@github.com
  - url: >-
      https://github.com/InternLM/lmdeploy/security/advisories/GHSA-5h8j-6crg-7rmw
    label: security-advisories@github.com
  - url: >-
      https://github.com/InternLM/lmdeploy/security/advisories/GHSA-5h8j-6crg-7rmw
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
  - url: 'https://github.com/InternLM/lmdeploy'
  - url: 'https://github.com/advisories/GHSA-5h8j-6crg-7rmw'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2025-59953'
  - url: >-
      https://github.com/InternLM/lmdeploy/commit/d86046a0e6b02ecaaf7cdb74346d0477130221c2
tags:
  - nvd
  - cve.org
  - exploit-available
  - osv
  - pip
  - ghsa
epss: 0.00802
epssPercentile: 0.54736
aliases:
  - GHSA-5h8j-6crg-7rmw
ecosystem: pip
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-09-18T18:05:34.211593Z'
ingestedAt: '2026-09-16T15:58:38.763Z'
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2025-59953)

Affected packages:

- `lmdeploy >= 0.9.1, < 0.10.2`

Patched in:

- `lmdeploy 0.10.2`

Source: https://osv.dev/vulnerability/GHSA-5h8j-6crg-7rmw
