LMCache Unauthenticated RCE in multiprocess mode via pickle deserialization (LMCache LMCache)
En bref
- Source
- NVD
- EPSS
- EPSS 1.02 % · centile 64 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- JFROG
- Statut NVD
- Deferred
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.
Faiblesses (CWE)
- CWE-502 — Désérialisation de données non fiables
- CWE-306 — Authentification absente sur une fonction critique
Références
- https://github.com/LMCache/LMCache
- https://pypi.org/project/lmcache/
- https://github.com/LMCache/LMCache/blob/v0.5.5/lmcache/v1/platform/base/ipc_wrapper.py
- https://github.com/LMCache/LMCache/blob/v0.3.9/lmcache/v1/multiprocess/custom_types.py
- https://research.jfrog.com/vulnerabilities/lmcache-is-vulnerable-to-unauthenticated-remote-code-execution-via-pickle-deserialization-on-the-multiprocess-zmq-transport-cve-2026-105192-jfsa-2026-001694382/
- https://blog.lmcache.ai/en/2026/10/13/an-update-on-cve-2026-105192/
- https://github.com/LMCache/LMCache/security/advisories/GHSA-w5f2-9q9c-ff4h
- https://github.com/LMCache/LMCache/pull/5644
- https://github.com/LMCache/LMCache/releases/tag/v0.5.6
- https://github.com/LMCache/LMCache/pull/5684
- https://github.com/LMCache/LMCache/pull/5685
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | JFROG |
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · reefs@jfrog.com (Secondary) |
Avis
- GHSA-w5f2-9q9c-ff4h — LMCache: Remote code execution via unsafe deserialization in multiprocess mode transport
Références européennes
- ENISA EUVD · EUVD-2026-94261
- GCVE · GCVE-0-2026-105192
Produits affectés
| Produit | Versions |
|---|---|
| LMCache · LMCache | affected 0.3.9 < 0.5.6 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |