CVE-2024-10190GHSA-mrhh-3ggq-23p2PYSEC-2026-355
Horovod Vulnerable to Command Injection
horovod horovodpipLibraries & packages
CVSS
9.8CriticalExploitationPublic exploit codeCISA's assessment says proof of concept code is public, assessed 20 Mar 2025. Not in the KEV catalogCISA via CVE List
Exploit odds (EPSS)1.12%Chance of exploitation activity in the next 30 days, higher than 66% of CVEs. Scored 27 Oct 2026FIRST EPSS
Fixed inNone listedNo source names a fixed version. Check the vendor advisory below
What fixes it
No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.
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.
Text from CVE List
Affected versions 53
- horovod, pip<= 0.28.1GitHub
- horovod/horovodaffected: unspecified through latestCVE List
- horovod, PyPIfrom first release, through 0.28.1OSV
- horovod, PyPI0.10.0OSV
- horovod, PyPI0.10.1OSV
- horovod, PyPI0.10.2OSV
- horovod, PyPI0.11.0OSV
- horovod, PyPI0.11.1OSV
- horovod, PyPI0.11.2OSV
- horovod, PyPI0.11.3OSV
- horovod, PyPI0.12.0OSV
- horovod, PyPI0.12.1OSV
- horovod, PyPI0.13.0OSV
- horovod, PyPI0.13.1OSV
- horovod, PyPI0.13.10OSV
- horovod, PyPI0.13.11OSV
- horovod, PyPI0.13.2OSV
- horovod, PyPI0.13.3OSV
- horovod, PyPI0.13.4OSV
- horovod, PyPI0.13.5OSV
- horovod, PyPI0.13.6OSV
- horovod, PyPI0.13.7OSV
- horovod, PyPI0.13.8OSV
- horovod, PyPI0.14.0OSV
- horovod, PyPI0.14.1OSV
- horovod, PyPI0.15.0OSV
- horovod, PyPI0.15.1OSV
- horovod, PyPI0.15.2OSV
- horovod, PyPI0.16.0OSV
- horovod, PyPI0.16.1OSV
- horovod, PyPI0.16.2OSV
- horovod, PyPI0.16.3OSV
- horovod, PyPI0.16.4OSV
- horovod, PyPI0.18.0OSV
- horovod, PyPI0.18.1OSV
- horovod, PyPI0.18.2OSV
- horovod, PyPI0.19.0OSV
- horovod, PyPI0.19.1OSV
- horovod, PyPI0.19.2OSV
- horovod, PyPI0.19.3OSV
- horovod, PyPI0.19.4OSV
- horovod, PyPI0.19.5OSV
- horovod, PyPI0.20.0OSV
- horovod, PyPI0.20.1OSV
- horovod, PyPI0.20.2OSV
- horovod, PyPI0.20.3OSV
- horovod, PyPI0.21.0OSV
- horovod, PyPI0.21.1OSV
- horovod, PyPI0.21.2OSV
- horovod, PyPI0.21.3OSV
- horovod, PyPI0.22.0OSV
- horovod, PyPI0.22.1OSV
- horovod, PyPI0.23.0OSV
References 5
- github.com/pypa/advisory-database/tree/main/vulns/horovod/PYSEC-2026-355.yamlAdvisoryvia GitHub
- github.com/advisories/GHSA-mrhh-3ggq-23p2Advisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2024-10190Referencevia GitHub
- huntr.com/bounties/3e398d1f-70c2-4e05-ae22-f5d66b19a754Referencevia CVE List
- pypi.org/project/horovodReferencevia GitHub