Apache Spark Key Negotiation Vulnerability
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-294.
Summary
Apache Spark supports end-to-end encryption of RPC connections via "spark.authenticate" and "spark.network.crypto.enabled". In versions 3.1.2 and earlier, it uses a bespoke mutual authentication protocol that allows for full encryption key recovery. After an initial interactive attack, this would allow someone to decrypt plaintext traffic offline. Note that this does not affect security mechanisms controlled by "spark.authenticate.enableSaslEncryption", "spark.io.encryption.enabled", "spark.ssl", "spark.ui.strictTransportSecurity". Update to Apache Spark 3.1.3 or later
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Apache | Apache Spark | up to and including version 3.1.2 – 3.1.2 | — | No fix listed | CNA |
| — | org.apache.spark:spark-core (Maven) | before 3.1.3 | 3.1.3 | Patch available | GHSA-9rr6-jpg7-9jg6 |
| — | pyspark (PyPI) | before 3.1.3 | 3.1.3 | Patch available | GHSA-9rr6-jpg7-9jg6 |
- Apache Spark VendorApache Affected up to and including version 3.1.2 – 3.1.2 Fixed in — No fix listed CNA
- org.apache.spark:spark-core (Maven) Vendor— Affected before 3.1.3 Fixed in 3.1.3 Patch available GHSA-9rr6-jpg7-9jg6
- pyspark (PyPI) Vendor— Affected before 3.1.3 Fixed in 3.1.3 Patch available GHSA-9rr6-jpg7-9jg6
CPE configurations NVD · 3
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:apache:spark:*:*:*:*:*:*:*:* | before 3.1.3 | Vulnerable | Apache |
| cpe:2.3:a:oracle:financial_services_crime_and_compliance_management_studio:8.0.8.2.0:*:*:*:*:*:*:* | 8.0.8.2.0 | Vulnerable | Oracle |
| cpe:2.3:a:oracle:financial_services_crime_and_compliance_management_studio:8.0.8.3.0:*:*:*:*:*:*:* | 8.0.8.3.0 | Vulnerable | Oracle |
- cpe:2.3:a:apache:spark:*:*:*:*:*:*:*:* Versions before 3.1.3 Vulnerable ·Apache
- cpe:2.3:a:oracle:financial_services_crime_and_compliance_management_studio:8.0.8.2.0:*:*:*:*:*:*:* Versions 8.0.8.2.0 Vulnerable ·Oracle
- cpe:2.3:a:oracle:financial_services_crime_and_compliance_management_studio:8.0.8.3.0:*:*:*:*:*:*:* Versions 8.0.8.3.0 Vulnerable ·Oracle
Remediation
- Fix · GHSA-9rr6-jpg7-9jg6 org.apache.spark:spark-core (Maven) Fixed in 3.1.3 Advisory →
- Fix · GHSA-9rr6-jpg7-9jg6 pyspark (PyPI) Fixed in 3.1.3 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2021-38296
- 2026-10-03 Alias added: GHSA-9rr6-jpg7-9jg6
References
Advisory 3
More Apache Spark vulnerabilities
- TI-2022-14901 Apache Spark shell command injection vulnerability via Spark UI KEVCVSS 3.1HIGH 8.8
- TI-2023-15314 Apache Spark: Shell command injection via Spark UI CVSS 3.1HIGH 8.8
- TI-2020-07589 Missing authentication in Apache Spark CVSS 3.1CRITICAL 9.8
- TI-2020-16549 Uncontrolled resource consumption in Eclipse Jetty CVSS 3.1MEDIUM 5.3
- TI-2019-14677 HttpObjectDecoder.java in Netty before 4.1.44 allows a Content-Length header to be… CVSS 3.1CRITICAL 9.1
- TI-2018-08427 Improper authentication in Apache Spark CVSS 3.1MEDIUM 4.2
Sources
- CVE-2021-38296 · CVE Program
- CVE-2021-38296 · NVD
- FIRST EPSS
- GHSA-9rr6-jpg7-9jg6 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences