CVE-2024-1597

Summary

pgjdbc, the PostgreSQL JDBC Driver, allows attacker to inject SQL if using PreferQueryMode=SIMPLE. Note this is not the default. In the default mode there is no vulnerability. A placeholder for a numeric value must be immediately preceded by a minus. There must be a second placeholder for a string value after the first placeholder; both must be on the same line. By constructing a matching string payload, the attacker can inject SQL to alter the query,bypassing the protections that parameterized queries bring against SQL Injection attacks. Versions before 42.7.2, 42.6.1, 42.5.5, 42.4.4, 42.3.9, and 42.2.28 are affected.

Affected Software

VendorProductVersion RangeStatus
pgjdbcpgjdbc< 42.7.2affected
pgjdbcpgjdbc< 42.6.1affected
pgjdbcpgjdbc< 42.5.5affected
pgjdbcpgjdbc< 42.4.4affected
pgjdbcpgjdbc< 42.3.9affected
pgjdbcpgjdbc< 42.2.28affected

Weaknesses

  • CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

Workarounds

Don't use SimpleQuery mode

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: poc
    • Automatable: yes
    • Technical Impact: total

CVE Program Container

Additional References

References