NewApp Monitoring is liveSign up free
AgentbeamBeta
Open-source package vulnerability · Maven

CVE-2026-76904: GeoTools has unauthenticated SQL injection in the jsonArrayContains filter function against PostGIS layers

criticalCVSS 3.1 9.8GHSA-mqjf-5f49-2fjh

Summary An SQL Injection Vulnerability has been found when executing OGC Filters with PostGIS DataStore implementation: jsonArrayContains function Requires PostGIS 12 or greater with a String or JSON field For PostGIS 12 and greater jsonArrayContains( , , ) function writes into generated SQL without escaping.

Published Aug 21, 2026

Affected packages

org.geotools.jdbc:gt-jdbc-postgis

Ecosystem
Maven
Affected
= 35.0
Fixed in
35.1
Check
mvn dependency:tree -Dincludes=org.geotools.jdbc:gt-jdbc-postgis

org.geotools.jdbc:gt-jdbc-postgis

Ecosystem
Maven
Affected
>= 34.0, < 34.5
Fixed in
34.5
Check
mvn dependency:tree -Dincludes=org.geotools.jdbc:gt-jdbc-postgis

org.geotools.jdbc:gt-jdbc-postgis

Ecosystem
Maven
Affected
>= 30.5, < 33.6
Fixed in
33.6
Check
mvn dependency:tree -Dincludes=org.geotools.jdbc:gt-jdbc-postgis

Advisory details

From the GitHub Advisory Database (CC BY 4.0).

Summary

An SQL Injection Vulnerability has been found when executing OGC Filters with PostGIS DataStore implementation:

  • jsonArrayContains function Requires PostGIS 12 or greater with a String or JSON field

For PostGIS 12 and greater jsonArrayContains(<column>, <pointer>, <value>) function writes <value> into generated SQL without escaping.

Patches

  • GeoTools 35.1
  • GeoTools 33.5
  • GeoTools 34.4

Mitigation

No mitigation is available:

  • To limit scope of SQL Injection the PostGIS connection pool should be configured with limited rights.

Impact

This vulnerability can lead to execution of arbitrary SQL expressions in the database.

References

  • https://osgeo-org.atlassian.net/browse/GEOT-7958
  • https://osgeo-org.atlassian.net/browse/GEOT-7959
  • https://github.com/geotools/geotools/pull/5829
  • https://osgeo-org.atlassian.net/browse/GEOT-7589

Credited to qquang, mrlihd, PhilipPhil, Quikko, jodygarnett, h1ei1, 4ra1n.

References

How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology