ghsa-6p6v-m64v-jx8q
Vulnerability from github
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.
{ "affected": [ { "package": { "ecosystem": "Maven", "name": "org.apache.spark:spark-network-common_2.13" }, "ranges": [ { "events": [ { "introduced": "3.5.0" }, { "fixed": "3.5.2" } ], "type": "ECOSYSTEM" } ] }, { "package": { "ecosystem": "Maven", "name": "org.apache.spark:spark-network-common_2.13" }, "ranges": [ { "events": [ { "introduced": "0" }, { "fixed": "3.4.4" } ], "type": "ECOSYSTEM" } ] }, { "package": { "ecosystem": "Maven", "name": "org.apache.spark:spark-network-common_2.12" }, "ranges": [ { "events": [ { "introduced": "0" }, { "fixed": "3.4.4" } ], "type": "ECOSYSTEM" } ] }, { "package": { "ecosystem": "Maven", "name": "org.apache.spark:spark-network-common_2.12" }, "ranges": [ { "events": [ { "introduced": "3.5.0" }, { "fixed": "3.5.2" } ], "type": "ECOSYSTEM" } ] } ], "aliases": [ "CVE-2025-55039" ], "database_specific": { "cwe_ids": [ "CWE-326" ], "github_reviewed": true, "github_reviewed_at": "2025-10-15T18:58:35Z", "nvd_published_at": "2025-10-15T08:15:38Z", "severity": "MODERATE" }, "details": "This issue affects Apache Spark versions before 3.4.4,\u00a03.5.2 and 4.0.0.\n\nApache 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.\n\nWhen 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.\n\nThis 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.\n\nTo 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.", "id": "GHSA-6p6v-m64v-jx8q", "modified": "2025-10-15T18:58:35Z", "published": "2025-10-15T09:30:17Z", "references": [ { "type": "ADVISORY", "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-55039" }, { "type": "PACKAGE", "url": "https://github.com/apache/spark" }, { "type": "WEB", "url": "https://lists.apache.org/thread/zrgyy9l85nm2c7vk36vr7bkyorg3w4qq" } ], "schema_version": "1.4.0", "severity": [ { "score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:U", "type": "CVSS_V4" } ], "summary": "Apache Spark has Inadequate Encryption Strength" }
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.