GeoTools Remote Code Execution (RCE) vulnerability in evaluating XPath expressions
geotools · geotools
GeoTools, an open source Java library for geospatial data, is vulnerable to remote code execution in its XPath expression evaluation functionality in versions prior to 31.2, 30.4, and 29.6. An unauthenticated remote attacker can exploit this without user interaction when an application uses that GeoTools functionality to evaluate XPath expressions supplied as user input, with the fix available in the listed patched versions and a workaround of removing the gt-complex jar at the cost of reduced functionality.
GeoTools is an open source Java library that provides tools for geospatial data. Prior to versions 31.2, 30.4, and 29.6, Remote Code Execution (RCE) is possible if an application uses certain GeoTools functionality to evaluate XPath expressions supplied by user input. Versions 31.2, 30.4, and 29.6 contain a fix for this issue. As a workaround, GeoTools can operate with reduced functionality by removing the `gt-complex` jar from one's application. As an example of the impact, application schema `datastore` would not function without the ability to use XPath expressions to query complex content. Alternatively, one may utilize a drop-in replacement GeoTools jar from SourceForge for versions 31.1, 30.3, 30.2, 29.2, 28.2, 27.5, 27.4, 26.7, 26.4, 25.2, and 24.0. These jars are for download only and are not available from maven central, intended to quickly provide a fix to affected applications.
- Exploited
- Not confirmed
- Reports
- 0
- Tactics
- 0/15
Exploitation timelineDated milestones for a CVE: when it was disclosed, when exploit code became public, when exploitation was confirmed, and when threat reports named it.
Disclosed on 2 Jul 2024. No public exploit code or confirmed exploitation is recorded.
Patch historyEarlier and later CVEs in the same code, in date order. It shows when a fix was bypassed or incomplete and which version finally fixed it.
See the family tree2 related vulnerabilities in the same code over 1 day.
Same bug familyLinked by evidence that a fix failed or the same code was patched again. Oldest first.
relatedHigh
Why these are linked: Link confidenceHow strong the evidence is that two CVEs are related. High: stated in the CVE text or linked in an advisory, or the same code was patched one release apart. Medium: the same code, or a version step plus a similar description. Low: similar description only.
- Linked in OSV/GitHub advisoryGHSA-w3pj-wh35-fq8w
- Linked in OSV/GitHub advisoryGHSA-6jj6-gm7p-fcvv
This CVECVE-2024-36404GeoTools Remote Code Execution (RCE) vulnerability in evaluating…2 Jul 2024
MITRE ATT&CKA public catalogue of the techniques attackers use, maintained by MITRE. Patchfirst uses it to describe what attackers do with a vulnerability. techniques
No techniques linkedNo ATT&CK techniques are linked to this CVE yet. MITRE CTID has not mapped it, and no report passage in the corpus ties it to a technique.
Am I affected? What do I upgrade to?
From GitHub Security Advisories and OSV3 packages in 1 ecosystem. No single main package: each of these ships the affected code.
- Mavenorg.geotools:gt-app-schemaAffected: 31.0 up to 31.2; 30.0 up to 30.4; 29.0 up to 29.6; All versions before 28.6Upgrade to 31.2 or later (older lines: 30.4, 29.6, 28.6)
- Mavenorg.geotools:gt-complexAffected: 31.0 up to 31.2; 30.0 up to 30.4; 29.0 up to 29.6; All versions before 28.6Upgrade to 31.2 or later (older lines: 30.4, 29.6, 28.6)
- Mavenorg.geotools.xsd:gt-xsd-coreAffected: 31.0 up to 31.2; 30.0 up to 30.4; 29.0 up to 29.6; All versions before 28.6Upgrade to 31.2 or later (older lines: 30.4, 29.6, 28.6)