CVE Catalog

Actively exploited in the wild

OSGeo GeoServer GeoTools Eval Injection Vulnerability

OSGeo - GeoServer · Listed in the CISA KEV since 2024-07-15. This indicates confirmed attacks in production environments.

Required action: Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

CVE-2024-36401

CriticalCVSS 9.8KEV
Published: Updated: Translated: NVD NIST

Summary

GeoServer versions prior to 2.22.6, 2.23.6, 2.24.4, and 2.25.2 allow unauthenticated remote code execution (RCE) through specially crafted OGC requests. The vulnerability stems from unsafely passing property names to the commons-jxpath library, which executes arbitrary code when evaluating XPath expressions. This affects all GeoServer instances, and exploitation has been confirmed via WFS, WMS, and WPS requests.

Risk Assessment

An organization using a vulnerable GeoServer can be compromised by an attacker who executes arbitrary code on the server without authentication. This may lead to data theft, malware installation, or further lateral movement within the network.

Recommendation

Immediately update GeoServer to version 2.22.6, 2.23.6, 2.24.4, or 2.25.2. If updating is not possible, remove the gt-complex-x.y.jar file from the GeoServer installation, being aware that this may break some functionality or prevent deployment.

Other vulnerabilities in GeoServer

See all
Original NVD description (English source)

GeoServer is an open source server that allows users to share and edit geospatial data. Prior to versions 2.22.6, 2.23.6, 2.24.4, and 2.25.2, multiple OGC request parameters allow Remote Code Execution (RCE) by unauthenticated users through specially crafted input against a default GeoServer installation due to unsafely evaluating property names as XPath expressions. The GeoTools library API that GeoServer calls evaluates property/attribute names for feature types in a way that unsafely passes them to the commons-jxpath library which can execute arbitrary code when evaluating XPath expressions. This XPath evaluation is intended to be used only by complex feature types (i.e., Application Schema data stores) but is incorrectly being applied to simple feature types as well which makes this vulnerability apply to **ALL** GeoServer instances. No public PoC is provided but this vulnerability has been confirmed to be exploitable through WFS GetFeature, WFS GetPropertyValue, WMS GetMap, WMS GetFeatureInfo, WMS GetLegendGraphic and WPS Execute requests. This vulnerability can lead to executing arbitrary code. Versions 2.22.6, 2.23.6, 2.24.4, and 2.25.2 contain a patch for the issue. A workaround exists by removing the `gt-complex-x.y.jar` file from the GeoServer where `x.y` is the GeoTools version (e.g., `gt-complex-31.1.jar` if running GeoServer 2.25.1). This will remove the vulnerable code from GeoServer but may break some GeoServer functionality or prevent GeoServer from deploying if the gt-complex module is needed.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS