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
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Spring Spring Data Relational
Default version status: unaffected
4.0.0 to < 4.0.5.1affected3.5.0 to < 3.5.11.1affected3.4.0 to < 3.4.15affected3.3.0 to < 3.3.17affected3.2.0 to < 3.2.16affected3.1.0 to < 3.1.15affected3.0.0 to < 3.0.16affected2.4.0 to < 2.4.20affected
Spring Spring Data JDBC
Default version status: unaffected
4.0.0 to < 4.0.5.1affected3.5.0 to < 3.5.11.1affected3.4.0 to < 3.4.15affected3.3.0 to < 3.3.17affected3.2.0 to < 3.2.16affected3.1.0 to < 3.1.15affected3.0.0 to < 3.0.16affected2.4.0 to < 2.4.20affected
Spring Spring Data R2DBC
Default version status: unaffected
4.0.0 to < 4.0.5.1affected3.5.0 to < 3.5.11.1affected3.4.0 to < 3.4.15affected3.3.0 to < 3.3.17affected3.2.0 to < 3.2.16affected3.1.0 to < 3.1.15affected3.0.0 to < 3.0.16affected1.5.0 to < 1.5.20affected