What it is
CVE-2022-33891 is a vulnerability affecting Apache Spark. The Apache Spark UI offers the possibility to enable ACLs via the configuration option spark.acls.enable.
Vulnerability report
Apache Spark Shell command injection vulnerability
Apache Spark · 3.0.3 and earlier to <= 3.0.3
Decision summary
Direct answers before the deeper technical record.
What it is
CVE-2022-33891 is a vulnerability affecting Apache Spark. The Apache Spark UI offers the possibility to enable ACLs via the configuration option spark.acls.enable.
Have exploitation attempts been observed?
Yes. Exploitation attempts have been reported for this vulnerability. Previdian lists it as a known exploited vulnerability. Listed in CISA KEV. Also reported by third-party sources. Confidence is confirmed.
Who is affected?
Apache Spark, including 3.0.3 and earlier to <= 3.0.3, 3.1.1 to 3.1.2 to <= 3.1.2, and 3.2.0 to 3.2.1 to <= 3.2.1.
What should we do?
Prioritize remediation. Validate affected assets and apply vendor fixes on an accelerated timeline.
Overview
The Apache Spark UI offers the possibility to enable ACLs via the configuration option spark.acls.enable. With an authentication filter, this checks whether a user has access permissions to view or modify the application. If ACLs are enabled, a code path in HttpSecurityFilter can allow someone to perform impersonation by providing an arbitrary user name.
A malicious user might then be able to reach a permission check function that will ultimately build a Unix shell command based on their input, and execute it. This will result in arbitrary shell command execution as the user Spark is currently running as. This affects Apache Spark versions 3.0.3 and earlier, versions 3.1.1 to 3.1.2, and versions 3.2.0 to 3.2.1.
Exploitation evidence
Third-party attestation and first-party sensor observation are shown separately so teams can judge the evidence chain.
CISA
A trusted third party reported exploitation attempts.
GitHub
Public scanner or PoC coverage increases practical exploitability.
Per-source evidence links for KEV attestations are available through the Previdian Pro API.
Learn about Pro API access| Source | Added |
|---|---|
| CISA First | 2023-03-07 00:00 UTC |
| The Shadowserver | 2026-07-05 00:00 UTC |
Detection
Make the evidence actionable in scanner, SOC, and edge-control workflows.
Metasploit template detected 28 Apr 2025.
View Metasploit template (opens in new tab)No Previdian virtual patch is currently available. Future rules ship for ModSecurity, Cloudflare, and AWS WAF.
Learn about virtual patches →Scanner and exploit-framework references linked to this CVE.
| Scanner | Reference | Detected |
|---|---|---|
| Metasploit | https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/linux/http/apache_spark_rce_cve_2022_33891.rb | 28 Apr 2025 |
| Nuclei | https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2022/CVE-2022-33891.yaml | 25 Apr 2025 |
Risk and context
CVSS v3.1
Potential damage if exploited. Separate from whether attackers are using it.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS
93.2%
Estimated chance of exploitation in the next 30 days. Previdian's warning comes from evidence, not this score.
These PoCs are unverified and could contain malware. Use at your own risk.
nuclei · Created Unknown
Timeline
00:00 UTC
Exploitation attempts reported by an external source
15:02 UTC
Exploit module available
15:02 UTC
Public proof-of-concept code published
00:00 UTC
Scanner coverage available
00:00 UTC
Listed in the CISA Known Exploited Vulnerabilities catalog
00:00 UTC
Vulnerability disclosed publicly
00:00 UTC
Identifier reserved by the CNA
Pro API
Confidence, exploit status, sensor telemetry, PoCs, scanner integrations, mentions, and tags are available programmatically for VM, SOC, and CTI workflows.
GET /api/v2/pro/kevs/CVE-2022-33891
Sample API response{
"cve_id": "CVE-2022-33891",
"confidence": "Confirmed",
"cvss_score": 8.8,
"cvss_estimated": false,
"epss_score": 0.93244,
"exploit_status": {
"exploited_in_the_wild": true,
"active_exploitation_observed": false
},
"sensor_telemetry": { "attempts": 0, "sensors": 0 }
}