7.5
HIGH
CVE-2024-24749
GeoServer Windows Classpath Resource Bypass
Description

GeoServer is an open source server that allows users to share and edit geospatial data. Prior to versions 2.23.5 and 2.24.3, if GeoServer is deployed in the Windows operating system using an Apache Tomcat web application server, it is possible to bypass existing input validation in the GeoWebCache ByteStreamController class and read arbitrary classpath resources with specific file name extensions. If GeoServer is also deployed as a web archive using the data directory embedded in the `geoserver.war` file (rather than an external data directory), it will likely be possible to read specific resources to gain administrator privileges. However, it is very unlikely that production environments will be using the embedded data directory since, depending on how GeoServer is deployed, it will be erased and re-installed (which would also reset to the default password) either every time the server restarts or every time a new GeoServer WAR is installed and is therefore difficult to maintain. An external data directory will always be used if GeoServer is running in standalone mode (via an installer or a binary). Versions 2.23.5 and 2.24.3 contain a patch for the issue. Some workarounds are available. One may change from a Windows environment to a Linux environment; or change from Apache Tomcat to Jetty application server. One may also disable anonymous access to the embeded GeoWebCache administration and status pages.

INFO

Published Date :

July 1, 2024, 2:15 p.m.

Last Modified :

Dec. 18, 2024, 10:08 p.m.

Remotely Exploitable :

Yes !

Impact Score :

3.6

Exploitability Score :

3.9
Affected Products

The following products are affected by CVE-2024-24749 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Microsoft windows
1 Geoserver geoserver
1 Osgeo geoserver

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2024-24749 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2024-24749 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • Initial Analysis by [email protected]

    Dec. 18, 2024

    Action Type Old Value New Value
    Added CVSS V3.1 NIST AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    Added CWE NIST CWE-22
    Added CPE Configuration AND OR *cpe:2.3:a:geoserver:geoserver:*:*:*:*:*:*:*:* versions up to (excluding) 2.23.5 *cpe:2.3:a:geoserver:geoserver:*:*:*:*:*:*:*:* versions from (including) 2.24.0 up to (excluding) 2.24.3 OR cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:*
    Changed Reference Type https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3 No Types Assigned https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3 Patch, Vendor Advisory
    Changed Reference Type https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3 No Types Assigned https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3 Patch, Vendor Advisory
    Changed Reference Type https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef No Types Assigned https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef Patch
    Changed Reference Type https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef No Types Assigned https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef Patch
    Changed Reference Type https://github.com/GeoWebCache/geowebcache/pull/1211 No Types Assigned https://github.com/GeoWebCache/geowebcache/pull/1211 Issue Tracking
    Changed Reference Type https://github.com/GeoWebCache/geowebcache/pull/1211 No Types Assigned https://github.com/GeoWebCache/geowebcache/pull/1211 Issue Tracking
  • CVE Modified by af854a3a-2127-422b-91ae-364da2661108

    Nov. 21, 2024

    Action Type Old Value New Value
    Added Reference https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3
    Added Reference https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef
    Added Reference https://github.com/GeoWebCache/geowebcache/pull/1211
  • CVE Received by [email protected]

    Jul. 01, 2024

    Action Type Old Value New Value
    Added Description GeoServer is an open source server that allows users to share and edit geospatial data. Prior to versions 2.23.5 and 2.24.3, if GeoServer is deployed in the Windows operating system using an Apache Tomcat web application server, it is possible to bypass existing input validation in the GeoWebCache ByteStreamController class and read arbitrary classpath resources with specific file name extensions. If GeoServer is also deployed as a web archive using the data directory embedded in the `geoserver.war` file (rather than an external data directory), it will likely be possible to read specific resources to gain administrator privileges. However, it is very unlikely that production environments will be using the embedded data directory since, depending on how GeoServer is deployed, it will be erased and re-installed (which would also reset to the default password) either every time the server restarts or every time a new GeoServer WAR is installed and is therefore difficult to maintain. An external data directory will always be used if GeoServer is running in standalone mode (via an installer or a binary). Versions 2.23.5 and 2.24.3 contain a patch for the issue. Some workarounds are available. One may change from a Windows environment to a Linux environment; or change from Apache Tomcat to Jetty application server. One may also disable anonymous access to the embeded GeoWebCache administration and status pages.
    Added Reference GitHub, Inc. https://github.com/geoserver/geoserver/security/advisories/GHSA-jhqx-5v5g-mpf3 [No types assigned]
    Added Reference GitHub, Inc. https://github.com/GeoWebCache/geowebcache/pull/1211 [No types assigned]
    Added Reference GitHub, Inc. https://github.com/GeoWebCache/geowebcache/commit/c7f76bd8a1d67c3b986146e7a5e0b14dd64a8fef [No types assigned]
    Added CWE GitHub, Inc. CWE-22
    Added CVSS V3.1 GitHub, Inc. AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2024-24749 is associated with the following CWEs:

CVSS31 - Vulnerability Scoring System
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality
Integrity
Availability