CVE-2024-36401

Remote Code Execution (RCE) vulnerability in evaluating property name expressions in Geoserver

Basic Information

CVE State
PUBLISHED
Reserved Date
May 27, 2024
Published Date
July 01, 2024
Last Updated
March 25, 2025
Vendor
geoserver
Product
geoserver
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 Scores

CVSS v3.1

9.8 - CRITICAL

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

SSVC Information

Exploitation
active
Automatable
Yes
Technical Impact
total

Exploit Status

Exploited in the Wild
Yes (added 2024-07-15 00:00:00 UTC) Source
Proof of Concept Available
Yes (added 2024-09-28 14:55:50 UTC) Source

Known Exploited Vulnerability Information

Source Added Date
CISA 2024-07-15 00:00:00 UTC

Potential Proof of Concepts

Warning: These PoCs have not been tested and could contain malware. Use at your own risk.

geoserver_unauth_rce_cve_2024_36401

Type: metasploit • Created: Unknown

Metasploit module for CVE-2024-36401

bmth666/GeoServer-Tools-CVE-2024-36401

Type: github • Created: 2025-04-11 04:36:34 UTC • Stars: 15

CVE-2024-36401 图形化利用工具,支持各个JDK版本利用以及回显、内存马实现

0x0d3ad/CVE-2024-36401

Type: github • Created: 2024-11-27 19:13:49 UTC • Stars: 2

CVE-2024-36401 (GeoServer Remote Code Execution)

thestar0/CVE-2024-36401-WoodpeckerPlugin

Type: github • Created: 2024-11-22 03:57:12 UTC • Stars: 11

CVE-2024-36401-GeoServer Property 表达式注入 Rce woodpecker-framework 插件

netuseradministrator/CVE-2024-36401

Type: github • Created: 2024-10-05 10:08:55 UTC • Stars: 42

geoserver图形化漏洞利用工具

punitdarji/GeoServer-CVE-2024-36401

Type: github • Created: 2024-09-28 14:55:50 UTC • Stars: 2

GeoServer CVE-2024-36401: Remote Code Execution (RCE) Vulnerability In Evaluating Property Name Expressions

daniellowrie/CVE-2024-36401-PoC

Type: github • Created: 2024-09-13 10:28:48 UTC • Stars: 3

Proof-of-Concept Exploit for CVE-2024-36401 GeoServer 2.25.1

Chocapikk/CVE-2024-36401

Type: github • Created: 2024-07-30 18:43:40 UTC • Stars: 78

GeoServer Remote Code Execution

Mr-xn/CVE-2024-36401

Type: github • Created: 2024-07-06 01:10:28 UTC • Stars: 47

Remote Code Execution (RCE) Vulnerability In Evaluating Property Name Expressions with multies ways to exploit

RevoltSecurities/CVE-2024-36401

Type: github • Created: 2024-07-05 15:24:50 UTC • Stars: 2

Exploiter a Vulnerability detection and Exploitation tool for GeoServer Unauthenticated Remote Code Execution CVE-2024-36401.

Niuwoo/CVE-2024-36401

Type: github • Created: 2024-07-05 03:02:30 UTC • Stars: 4

POC

bigb0x/CVE-2024-36401

Type: github • Created: 2024-07-04 13:19:47 UTC • Stars: 33

POC for CVE-2024-36401. This POC will attempt to establish a reverse shell from the vlun targets.