Skip to content

CVE-2024-36401

OSGeo GeoServer GeoTools Eval Injection

9.8 CRITICALActively exploited (CISA KEV)Public exploitEPSS 99.8%
  1. Published1 Jul 2024
  2. Added to CISA KEV15 Jul 2024
  3. Remediation due5 Aug 2024
Actively exploited (CISA KEV)

OSGeo GeoServer GeoTools contains an improper neutralization of directives in dynamically evaluated code vulnerability due to unsafely evaluating property names as XPath expressions. This allows unauthenticated attackers to conduct remote code execution via specially crafted input.

Added to KEV: 15 Jul 2024Federal remediation due: 5 Aug 2024

Description

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.

CVSS 3.1 breakdown

Attack vectorNetwork
Attack complexityLow
Privileges requiredNone
User interactionNone
ScopeUnchanged
ConfidentialityHigh
IntegrityHigh
AvailabilityHigh
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected products

Geoserver≥ 2.23.0 < 2.23.6 · ≥ 2.24.0 < 2.24.4 · ≥ 2.25.0 < 2.25.2 · < 2.22.6
Geotools≥ 30.1 < 30.4 · ≥ 31.1 < 31.2 · < 29.6 · 30.0

Frequently asked

Is CVE-2024-36401 being actively exploited?

Yes. CVE-2024-36401 is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog, added 15 Jul 2024.

How severe is CVE-2024-36401?

CVE-2024-36401 has a CVSS 3.1 base score of 9.8, rated critical. EPSS estimates a 99.8% probability of exploitation.

Which products are affected by CVE-2024-36401?

Affected products include Geoserver, Geotools.

How do I fix CVE-2024-36401?

Upgrade affected software to a fixed version, for example Geoserver 2.23.6, Geotools 30.4 or later, then confirm no affected versions remain in your inventory.

How Secuno handles this

Secuno correlates vulnerabilities like CVE-2024-36401 against the real software inventory on every managed device, every day. Rather than a static severity, each match is scored in context: exploit availability, EPSS, the asset's exposure, and business criticality decide where it lands in the queue. Because it is on the CISA KEV list, Secuno flags any affected asset as top-priority automatically. If an affected version is present anywhere across your portfolio, it surfaces automatically with a prioritised remediation path.

Get Patch this first every Monday

Five vulnerabilities that matter this week, ranked on real exploitation. Plain language, one email, no spam.

You can unsubscribe with one click from every issue. We handle your details as described in our privacy policy.

Data from the NVD, CISA KEV catalog and FIRST EPSS. CVSS 3.1 base score shown where available.