CVE-2024-32888 Amazon JDBC Driver for Redshift SQL Injection via line comment generation
SQL injection in Amazon Redshift JDBC driver when using non-default simple query mode, allowing attackers to read or modify database data.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-32888?
CVE-2024-32888 is a critical SQL injection vulnerability in aws amazon-redshift-jdbc-driver, published on 15 May 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The Amazon JDBC Driver for Redshift is a Type 4 JDBC driver that provides database connectivity through the standard JDBC application program interfaces (APIs) available in the Java Platform, Enterprise Editions. Prior to version 2.1.0.28, SQL injection is possible when using the non-default connection property `preferQueryMode=simple` in combination with application code which has a vulnerable SQL that negates a parameter value. There is no vulnerability in the driver when using the default, extended query mode. Note that `preferQueryMode` is not a supported parameter in Redshift JDBC driver, and is inherited code from Postgres JDBC driver. Users who do not override default settings to utilize this unsupported query mode are not affected. This issue is patched in driver version 2.1.0.28. As a workaround, do not use the connection property `preferQueryMode=simple`. (NOTE: Those who do not explicitly specify a query mode use the default of extended query mode and are not affected by this issue.)
Weakness: CWE-89
Which versions are affected by CVE-2024-32888?
2 open source packages ship an affected version, including com.amazon.redshift:redshift-jdbc42.
| Package | Affected | Fixed in |
|---|---|---|
com.amazon.redshift:redshift-jdbc42 Maven | All versions | 2.1.0.28 |
com.amazon.redshift:redshift-jdbc42 Maven | All versions | 2.1.0.28 |
How do I fix CVE-2024-32888?
Upgrade com.amazon.redshift:redshift-jdbc42 to 2.1.0.28 or later.
Use parameterised queries everywhere and never build SQL by joining strings. Upgrade affected software first; a web application firewall only buys time. More about SQL injection.
Is CVE-2024-32888 being exploited?
There is no known exploitation of CVE-2024-32888 in the wild and no public exploit code.
Sources
Also known as GHSA-x3wm-hffr-chwm.