Apache Spark
CVE-2025-55039
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain man-in-the-middle position on inter-node network
-
DeliveryIntercept AES/CTR RPC ciphertext
-
ExploitFlip targeted bits without authentication check
-
ExecutionDeliver tampered packets to node
-
ImpactCorrupt heartbeat or application data integrity
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Encryption strength requirements
|
| Exploitation Conditions | Exploitation requires ALL of: (1) a network-level man-in-the-middle position on RPC traffic between Spark nodes; (2) the non-default setting spark.network.crypto.enabled=true (disabled by default); and (3) spark.network.crypto.cipher left unconfigured so Spark falls back to unauthenticated AES/CTR/NoPadding. It does NOT apply to default deployments (crypto disabled), to clusters that set spark.network.crypto.cipher=AES/GCM/NoPadding, or to clusters using spark.ssl.enabled=true. The requirement for an active MitM position plus an opt-in encryption configuration are the key limiting factors that make real-world exploitation narrow and targeted rather than broad. |
| Impact | This is a genuine but low-priority integrity weakness rather than a high-urgency flaw. The official CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N = 6.5 Medium) suggests easy network exploitation, but this understates the real barriers: exploitation requires a man-in-the-middle position on inter-node RPC traffic AND a non-default victim configuration (spark.network.crypto.enabled=true with spark.network.crypto.cipher left unset). The MitM requirement realistically raises attack complexity beyond the AC:L the vector claims - I would assess AC:H. EPSS corroborates low real-world risk at 0.24% (13th percentile), there is no CISA KEV listing and no public exploit identified at time of analysis, so there is no evidence of active exploitation or weaponization. CWE-326 (inadequate encryption strength) and the description both center on INTEGRITY (undetected ciphertext bit-flipping), yet NVD assigned C:L - note this apparent emphasis mismatch: the primary impact is tampering, not disclosure. Net: a real defense-in-depth issue for hardened Spark clusters that opted into RPC encryption, but not a widespread exploitation priority. |
| Exploit ScenarioDerived | An attacker who has gained a man-in-the-middle position on the network between Spark nodes (e.g., on a shared or compromised cluster network segment) intercepts AES/CTR-encrypted RPC traffic. Because CTR mode provides no authentication, the attacker flips targeted bits in the ciphertext to alter heartbeat messages or application data without detection, corrupting the integrity of Spark workflows. No public exploit code is identified, and exploitation is only possible if the cluster enabled RPC encryption without specifying an authenticated cipher. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Man-in-the-middle tampering of Apache Spark RPC traffic can silently alter encrypted internode messages in clusters that opt into network crypto but leave the cipher unset, because Spark falls back to unauthenticated AES/CTR/NoPadding. Affected releases are all versions before 3.4.4, before 3.5.2, and before 4.0.0; default deployments (spark.network.crypto.enabled=false) and clusters that configure AES/GCM/NoPadding or spark.ssl.enabled=true are not exposed. The independent assessment rates this as a low-priority integrity weakness (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N) requiring both an active MitM position and a non-default opt-in configuration, with EPSS at roughly 0.24% (13th percentile) and no public exploit identified at time of analysis.
RemediationAI
Vendor-released patches fix the insecure default: upgrade Apache Spark to 3.4.4, 3.5.2, or 4.0.0 (or later) as applicable to your branch, per the advisory at https://lists.apache.org/thread/zrgyy9l85nm2c7vk36vr7bkyorg3w4qq. If upgrading is not immediately possible, the two documented compensating controls are to explicitly set spark.network.crypto.cipher=AES/GCM/NoPadding so that RPC encryption is authenticated, or to enable TLS transport security with spark.ssl.enabled=true; note that enabling SSL adds certificate provisioning and rotation overhead, and that changing the cipher must be applied consistently across every node in the cluster or node-to-node connections can fail due to mismatched algorithm negotiation. Because the weakness is inert unless network crypto is explicitly enabled, clusters that never set spark.network.crypto.enabled=true (the default) face no exposure and can schedule the upgrade normally. No vendor-released patch is needed beyond the upgraded builds; there is no public exploit identified at time of analysis, so urgency is driven by the opt-in configuration rather than active exploitation.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 5 packages in maven, pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Spark's block and RPC transport layers can be encrypted via the spark.network.crypto.* settings, which are built on symmetric AES. Root-caused as CWE-326 (Inadequate Encryption Strength), the defect is not the algorithm itself but the default cipher mode: when spark.network.crypto.enabled=true and spark.network.crypto.cipher is not explicitly set, Spark selects AES/CTR/NoPadding. CTR mode is a stream cipher that provides confidentiality but no message authentication, so ciphertext is malleable and an attacker positioned between nodes can flip bits to produce predictable, undetected changes in the decrypted plaintext (bit-flipping attack). The CPE data (cpe:2.3:a:apache:spark) confirms the affected component is Apache Spark itself across all shipping branches prior to the fixed releases. While the NVD entry scores this at 6.5 with confidentiality and integrity impact, the authoritative independent assessment narrows this to integrity-only (C:N/I:L) at high attack complexity, because the attacker must already hold a network MitM position and the vulnerable code path is only reachable when network crypto is explicitly enabled without specifying an authenticated cipher - behavior that does not occur in a stock, default cluster.
Know when Spark gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Attacker needs a MitM position and a non-default encryption config, so AC:H; AES/CTR still preserves confidentiality so C:N, and only unauthenticated integrity (bit-flipping) is affected (I:L).
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
DescriptionCVE.org
This issue affects Apache Spark versions before 3.4.4, 3.5.2 and 4.0.0.
Apache Spark versions before 4.0.0, 3.5.2 and 3.4.4 use an insecure default network encryption cipher for RPC communication between nodes.
When spark.network.crypto.enabled is set to true (it is set to false by default), but spark.network.crypto.cipher is not explicitly configured, Spark defaults to AES in CTR mode (AES/CTR/NoPadding), which provides encryption without authentication.
This vulnerability allows a man-in-the-middle attacker to modify encrypted RPC traffic undetected by flipping bits in ciphertext, potentially compromising heartbeat messages or application data and affecting the integrity of Spark workflows.
To mitigate this issue, users should either configure spark.network.crypto.cipher to AES/GCM/NoPadding to enable authenticated encryption or
enable SSL encryption by setting spark.ssl.enabled to true, which provides stronger transport security.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)CVE.org
The Apache Spark UI offers the possibility to enable ACLs via the configuration option spark.acls.enable. Rated high sev
In Apache Spark 2.4.5 and earlier, a standalone resource manager's master may be configured to require authentication (s
An issue was discovered in Ignite Realtime Spark 2.8.3 (and the ROAR plugin for it) on Windows. Rated high severity (CVS
Directory traversal vulnerability in Spark 2.5 allows remote attackers to read arbitrary files via a .. Rated high sever
From version 1.3.0 onward, Apache Spark's standalone master exposes a REST API for job submission, in addition to the su
Signing cookies is an application security feature that adds a digital signature to cookie data to verify its authentici
In Apache Spark versions prior to 3.4.0, applications using spark-submit can specify a 'proxy-user' to run as, limiting
In all versions of Apache Spark, its standalone resource manager accepts code to execute on a 'master' host, that then r
In Apache Spark 2.1.0 to 2.1.2, 2.2.0 to 2.2.1, and 2.3.0, it's possible for a malicious user to construct a URL pointin
** UNSUPPORTED WHEN ASSIGNED ** The Apache Spark UI offers the possibility to enable ACLs via the configuration option s
In Apache Spark 1.6.0 until 2.1.1, the launcher API performs unsafe deserialization of data received by its socket. Rate
The REST interface in Cisco Spark 2015-07-04 allows remote attackers to bypass intended access restrictions and create a
NVD
CVE.org
EPSS
GitHub PoC
Exploit-DB