These functions were explicitly listed in vulnerability details as passing user-controlled XPath to commons-jxpath. The commit diff shows they were modified to use JXPathUtils.newSafeContext (which disables functions), confirming their pre-patch vulnerability. The PoC demonstrates exploitation via StreamingParser constructor. All methods create JXPathContext instances without proper security controls, enabling CWE-95 eval injection via XPath expressions containing Java method calls.
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| org.geotools:gt-app-schema | maven | >= 30.0, < 30.4 | 30.4 |
| org.geotools:gt-complex | maven | >= 30.0, < 30.4 | 30.4 |
| org.geotools.xsd:gt-xsd-core | maven | >= 30.0, < 30.4 | 30.4 |
| org.geotools:gt-app-schema | maven | >= 31.0, < 31.2 | 31.2 |
| org.geotools:gt-complex | maven | >= 31.0, < 31.2 | 31.2 |
| org.geotools.xsd:gt-xsd-core | maven | >= 31.0, < 31.2 | 31.2 |
| org.geotools:gt-app-schema | maven | >= 29.0, < 29.6 | 29.6 |
| org.geotools:gt-complex | maven | >= 29.0, < 29.6 | 29.6 |
| org.geotools.xsd:gt-xsd-core | maven | >= 29.0, < 29.6 | 29.6 |
| org.geotools:gt-app-schema | maven | < 28.6 | 28.6 |
| org.geotools:gt-complex | maven | < 28.6 | 28.6 |
| org.geotools.xsd:gt-xsd-core | maven | < 28.6 | 28.6 |
The SourceForge download page lists drop-in-replacement jars for GeoTools: 31.1, 30.3, 30.2, 29.2, 28.2, 27.5, 27.4, 26.7, 26.4, 25.2, 24.0. These jars are for download only and are not available from maven central, intended to quickly provide a fix to affected applications.
https://github.com/geoserver/geoserver/security/advisories/GHSA-6jj6-gm7p-fcvv https://osgeo-org.atlassian.net/browse/GEOT-7587 https://github.com/geotools/geotools/pull/4797 https://github.com/Warxim/CVE-2022-41852?tab=readme-ov-file#workaround-for-cve-2022-41852
Ongoing coverage of React2Shell