CVE-2026-105192

LMCache Unauthenticated RCE in multiprocess mode via pickle deserialization

State
Published
Severity
9.8 Critical
Published
Oct 7, 2026
Updated
Oct 29, 2026
Reserved
Oct 4, 2026

Read the record on cve.org

Description

LMCache multiprocess mode, also called distributed mode, opens an unauthenticated ZeroMQ ROUTER so worker processes can register and share KV cache blocks. Messages on that socket are msgpack. Extension code 1 is passed to DeviceIPCWrapper.Deserialize, which calls pickle.loads, while the server is still decoding request arguments and before the handler runs. A single unauthenticated ZMQ DEALER message to the transport port (default 5555) therefore executes code as the user the LMCache process runs as. Official container images run that process as root. The transport binds to localhost unless the operator sets a routable address with --host, which is how multi-node deployments let peers connect. The decode path shipped in v0.3.9 and is present through v0.5.5, including the v0.5.6 release candidates. v0.5.6, published on 2026-10-14, removes pickle.loads from this path.

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HJFROG

Weaknesses

  • CWE-502 Deserialization of Untrusted Data
  • CWE-306 Missing Authentication for Critical Function

Affected Products

ProductVersions
LMCacheLMCache
  • 0.3.9 to before 0.5.6Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.