CVE-2024-10190 Unauthenticated Remote Code Execution in ElasticRendezvousHandler in horovod/horovod
Unauthenticated attackers can execute arbitrary code on Horovod servers by sending malicious pickle objects via the ElasticRendezvousHandler.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2024-10190?
CVE-2024-10190 is a critical unsafe deserialization vulnerability in horovod/horovod, published on 20 Mar 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Horovod versions up to and including v0.28.1 are vulnerable to unauthenticated remote code execution. The vulnerability is due to improper handling of base64-encoded data in the `ElasticRendezvousHandler`, a subclass of `KVStoreHandler`. Specifically, the `_put_value` method in `ElasticRendezvousHandler` calls `codec.loads_base64(value)`, which eventually invokes `cloudpickle.loads(decoded)`. This allows an attacker to send a malicious pickle object via a PUT request, leading to arbitrary code execution on the server.
Weakness: CWE-502
Which versions are affected by CVE-2024-10190?
3 open source packages ship an affected version, including horovod. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
horovod PyPI | All versions to 0.28.1 | None |
horovod PyPI | All versions to 0.28.1 | None |
horovod PyPI | All versions to 0.28.1 | None |
Products include Horovod Horovod.
How do I fix CVE-2024-10190?
No fix has been published for CVE-2024-10190 yet. Limit exposure of the affected software until one is available.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2024-10190 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-10190 exists.
Other vulnerabilities in horovod/horovod
Sources
Also known as GHSA-mrhh-3ggq-23p2, PYSEC-2026-355.