CVE-2017-12612: Apache Spark Deserialization of Untrusted Data vulnerability
7.8
CVSS Score
3.0
Basic Information
CVE ID
GHSA ID
EPSS Score
0.37125%
CWE
Published
11/9/2018
Updated
11/26/2024
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.apache.spark:spark-core_2.11 | maven | < 2.1.2 | 2.1.2 |
org.apache.spark:spark-core_2.10 | maven | < 2.1.2 | 2.1.2 |
pyspark | pip | < 2.1.2 | 2.1.2 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from unsafe deserialization in Spark's launcher API socket communication. The LauncherServer
class's connection handler (ServerConnection.run
) would be responsible for reading and deserializing commands. Vulnerable versions use raw ObjectInputStream
for deserialization, while patched versions add validation()
. The function appears in stack traces when malicious payloads are deserialized during exploitation.