Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:L
Primary rating from Vendor (vmware).
CVSS VectorVendor: vmware
Lifecycle Timeline
2Blast Radius
ecosystem impact- 151 maven packages depend on org.springframework.data:spring-data-keyvalue (3 direct, 148 indirect)
Ecosystem-wide dependent count for version 4.0.0.
DescriptionCVE.org
A SpEL Injection vulnerability exists in the Spring Data KeyValue if unsanitized user input is passed as Sort into a repository query method that delegates evaluation to the SpelPropertyComparator.
Affected versions: Spring Data KeyValue / Spring Data Redis 4.0.0 through 4.0.5; 3.5.0 through 3.5.11; 3.4.0 through 3.4.14; 3.3.0 through 3.3.16; 3.2.0 through 3.2.15; 3.1.0 through 3.1.14; 3.0.0 through 3.0.15; 2.7.0 through 2.7.19.
AnalysisAI
SpEL (Spring Expression Language) injection in Spring Data KeyValue and Spring Data Redis allows a network-accessible, low-privileged attacker to execute arbitrary SpEL expressions when applications pass unsanitized user-controlled Sort parameters directly to repository query methods delegating to SpelPropertyComparator. Affected versions span eight major release lines from 2.7.x through 4.0.x, making the exposure surface broad across Spring-based Java ecosystems. No public exploit identified at time of analysis and no CISA KEV listing, but the high confidentiality impact rating and network attack vector warrant prompt patching for any application that surfaces Sort query parameters to end users.
Technical ContextAI
CWE-917 (Improper Neutralization of Special Elements in an Expression Language Statement) describes the root cause: SpEL is a powerful runtime expression language built into the Spring Framework that can traverse and manipulate the JVM object graph, invoke methods, and access system properties. Spring Data KeyValue uses SpelPropertyComparator to evaluate property-path expressions when sorting in-memory key-value query results. If a caller constructs a Sort object directly from unsanitized user input and passes it to a repository method backed by SpelPropertyComparator, that user-supplied string reaches the SpEL evaluator without sanitization. This is analogous to OGNL or EL injection patterns well-documented in Java frameworks. Spring Data Redis inherits this behavior because it is built on the Spring Data KeyValue infrastructure. The CVSS vector AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:L indicates network delivery, no user interaction beyond the attacker's own authenticated session, and high confidentiality impact with partial integrity and availability loss - consistent with the read/execute capability that SpEL injection can provide.
RemediationAI
Upgrade to a fixed version of Spring Data KeyValue or Spring Data Redis as documented in the vendor advisory at https://spring.io/security/cve-2026-41719. Exact patched version numbers are not explicitly stated in the provided data - consult the advisory directly to identify the minimum safe version for your release line (e.g., the next patch release beyond each affected band). As an immediate compensating control, audit all repository query methods that accept Sort parameters and ensure no Sort object is constructed from raw, unsanitized user input; instead, restrict Sort to a strict allowlist of known property names validated before constructing the Sort object. This eliminates the injection vector regardless of framework version and is a sound long-term practice even after patching. Note that disabling SpEL globally in the Spring context is not a supported or safe workaround as it would break legitimate framework functionality. Dependency scanning tools (e.g., OWASP Dependency-Check, Dependabot) should be configured to flag the affected version ranges.
Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m
Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti
Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent
Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow
Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during
Same technique Code Injection
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-35901
GHSA-xg2j-3hj6-pc24