GitHub Advisoryadvisory · PyPI

GHSA-mf8f-x4r3-jm8c Horovod contains an insecure deserialization vulnerability in its KVStore HTTP server component

CRITICAL Published 2026-05-12 Modified 2026-10-27 Official page ↗
Aliases
CVE-2026-31234
Ecosystem
PyPI
Packages
horovod
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-502
Reviewed
2026-05-27

Affected packages

• PyPI horovod: <= 0.28.1 (no fix yet)

Description

Horovod thru 0.28.1 contains an insecure deserialization vulnerability (CWE-502) in its KVStore HTTP server component. The KVStore server, used for distributed task coordination, lacks authentication and authorization controls, allowing any remote attacker to write arbitrary data via HTTP PUT requests. When a Horovod worker reads data from the KVStore (via HTTP GET), it deserializes the data using cloudpickle.loads() without verifying its source or integrity. An attacker can exploit this by sending a malicious pickle payload to the server before the legitimate data is written, causing the victim worker to deserialize and execute arbitrary code, leading to remote code execution.

Related

Alias · CVE (1)

  • CVE-2026-31234 Horovod thru 0.28.1 contains an insecure deserialization vulnerability (CWE-502) in its KVStore HTTP server component. vulnerability

Weakness · CWE (1)

  • CWE-502 Deserialization of Untrusted Data weakness

References