Skip to main content

Deserialization of Untrusted Data

CVE-2024-10190

Severity High
Score 9.8/10

Summary

Horovod is vulnerable to unauthenticated Remote Code Execution (RCE). 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.

  • LOW
  • NETWORK
  • HIGH
  • UNCHANGED
  • NONE
  • NONE
  • HIGH
  • HIGH

CWE-502 - Deserialization of Untrusted Data

Deserialization of untrusted data vulnerabilities enable an attacker to replace or manipulate a serialized object, replacing it with malicious data. When the object is deserialized at the victim's end the malicious data is able to compromise the victim’s system. The exploit can be devastating, its impact may range from privilege escalation, broken access control, or denial of service attacks to allowing unauthorized access to the application's internal code and logic which can compromise the entire system.

Advisory Timeline

  • Published