Description
Spring Data Relational does not properly escape binding values of externally-controlled input when using StringMatcher (STARTING, ENDING, or CONTAINING) in Query By Example (QBE). An attacker can supply wildcard characters to perform boolean-based blind data inference.
Affected versions:
Spring Data Relational/JDBC/R2DBC 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.4.0 through 2.4.19.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Spring | Spring Data Relational | 4.0.0 – < 4.0.5.1, 3.5.0 – < 3.5.11.1, 3.4.0 – < 3.4.15, 3.3.0 – < 3.3.17, 3.2.0 – < 3.2.16, 3.1.0 – < 3.1.15, 3.0.0 – < 3.0.16, 2.4.0 – < 2.4.20 | 4.0.5.1 |
| Spring | Spring Data JDBC | 4.0.0 – < 4.0.5.1, 3.5.0 – < 3.5.11.1, 3.4.0 – < 3.4.15, 3.3.0 – < 3.3.17, 3.2.0 – < 3.2.16, 3.1.0 – < 3.1.15, 3.0.0 – < 3.0.16, 2.4.0 – < 2.4.20 | 4.0.5.1 |
| Spring | Spring Data R2DBC | 4.0.0 – < 4.0.5.1, 3.5.0 – < 3.5.11.1, 3.4.0 – < 3.4.15, 3.3.0 – < 3.3.17, 3.2.0 – < 3.2.16, 3.1.0 – < 3.1.15, 3.0.0 – < 3.0.16, 1.5.0 – < 1.5.20 | 4.0.5.1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | org.springframework.data:spring-data-relational | >= 4.0.0, < 4.0.6 | 4.0.6 | GHSA-8r2h-xh92-gq57 |
| Maven | org.springframework.data:spring-data-relational | >= 3.5.0, < 3.5.12 | 3.5.12 | GHSA-8r2h-xh92-gq57 |
| Maven | org.springframework.data:spring-data-relational | >= 3.4.0, <= 3.4.14 | — | GHSA-8r2h-xh92-gq57 |
| Maven | org.springframework.data:spring-data-relational | >= 3.0.0, <= 3.3.16 | — | GHSA-8r2h-xh92-gq57 |
| Maven | org.springframework.data:spring-data-relational | <= 2.4.19 | — | GHSA-8r2h-xh92-gq57 |