What is Spring Data Commons?
Spring Data Commons is a foundational module of the Spring Data project, providing shared infrastructure — repository abstractions, query derivation, and property binding — used by nearly every Spring Data module (JPA, MongoDB, Redis, etc.). It underpins a huge share of Java enterprise web applications, meaning a flaw in its core binding logic has broad reach across the Spring ecosystem, including applications that never call Spring Data APIs directly but pull it in as a transitive dependency.
Overview
CVE-2018-1273 is a remote code execution vulnerability in how Spring Data Commons (and the related Spring Data REST) binds HTTP request parameters to Java objects. Specially crafted property names/paths submitted through standard web request parameters — for example, on registration or search forms exposed by Spring Data REST — can trigger evaluation of a Spring Expression Language (SpEL) expression, allowing an attacker to execute arbitrary code on the server.
Technical Details
The vulnerability (CWE-94, Code Injection) exists in the property path parsing used during data binding: when the framework evaluates nested/indexed property names (the "property binder"), maliciously constructed input can be interpreted as a SpEL expression rather than a literal property reference. Because Spring Data REST endpoints (and comparable data-binding entry points) are frequently exposed directly to the internet for user-facing forms, this gives an unauthenticated, remote attacker full code execution with a single HTTP request (CVSS 9.8: no auth, no user interaction, network vector, low complexity).
Discovery
The issue was found and reported through Pivotal Software's (now VMware Tanzu) responsible disclosure process for the Spring portfolio; Pivotal published a security advisory with patched versions of Spring Data Commons and Spring Data REST.
Exploitation Context
CISA's KEV listing confirms this vulnerability has been exploited in the wild, and its ransomware-use flag reflects its popularity as an initial-access vector against Spring-based enterprise applications — the ubiquity of Spring Data Commons as a transitive dependency means many organizations were unknowingly exposed even without directly using its REST features.
Remediation
- Upgrade Spring Data Commons to the patched release line identified in Pivotal's advisory (Spring Data Commons 1.13 to 1.13.10, 2.0 to 2.0.5, or later), and update any Spring Data REST dependency in tandem.
- Audit dependency trees (not just direct Maven/Gradle declarations) since Spring Data Commons is frequently pulled in transitively.
- Restrict or disable Spring Data REST endpoints that are not intended for direct public exposure.
- Deploy a web application firewall rule to detect SpEL injection patterns (
T(,#this,getRuntime()) in request parameters as a stopgap. - Review application logs for unusual property-name parameters or unexpected outbound process execution from the application server.
Key Details
| Property | Value |
|---|---|
| CVE ID | CVE-2018-1273 |
| Vendor / Product | VMware Tanzu — Spring Data Commons |
| NVD Published | 2018-04-11 |
| NVD Last Modified | 2025-10-28 |
| CVSS 3.1 Score | 9.8 |
| CVSS 3.1 Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Severity | CRITICAL |
| CWE | CWE-94 find similar ↗ |
| CISA KEV Added | 2022-03-25 |
| CISA KEV Deadline | 2022-04-15 |
| Known Ransomware Use | ⚠️ Yes |
CVSS 3.1 Breakdown
Required Action
Timeline
| Date | Event |
|---|---|
| 2018-04-11 | CVE published; Pivotal security advisory released with fixed versions |
| 2022-03-25 | Added to CISA Known Exploited Vulnerabilities catalog |
| 2022-04-15 | CISA BOD 22-01 remediation deadline |
References
| Resource | Type |
|---|---|
| NVD — CVE-2018-1273 | Vulnerability Database |
| CISA KEV Catalog Entry | US Government |