CVE-2023-41877
GeoServer log file path traversal vulnerability
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. A path traversal vulnerability in versions 2.23.4 and prior requires GeoServer Administrator with access to the admin console to misconfigure the Global Settings for log file location to an arbitrary location. The admin console GeoServer Logs page provides a preview of these contents. As this issue requires GeoServer administrators access, often representing a trusted party, the vulnerability has not received a patch as of time of publication. As a workaround, a system administrator responsible for running GeoServer can use the GEOSERVER_LOG_FILE setting to override any configuration option provided by the Global Settings page. The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variables, or servlet context parameters.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- High
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.2
GeoServer log file path traversal vulnerability
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. A path traversal vulnerability in versions 2.23.4 and prior requires GeoServer Administrator with access to the admin console to misconfigure the Global Settings for log file location to an arbitrary location. The admin console GeoServer Logs page provides a preview of these contents. As this issue requires GeoServer administrators access, often representing a trusted party, the vulnerability has not received a patch as of time of publication. As a workaround, a system administrator responsible for running GeoServer can use the GEOSERVER_LOG_FILE setting to override any configuration option provided by the Global Settings page. The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variables, or servlet context parameters.
- Record
CVE-2023-41877- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-22
- Updated
- 2026-11-02
EUVDEUVD-2024-0875
7.2
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. A path traversal vulnerability in versions 2.23.4 and prior requires GeoServer Administrator with access to the admin console to misconfigure the Global Settings for log file location to an arbitrary location. The admin console GeoServer Logs page provides a preview of these contents. As this issue requires GeoServer administrators access, often representing a trusted party, the vulnerability has not received a patch as of time of publication. As a workaround, a system administrator responsible for running GeoServer can use the GEOSERVER_LOG_FILE setting to override any configuration option provided by the Global Settings page. The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variables, or servlet context parameters.
- Record
EUVD-2024-0875- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-8g7v-vjrc-x4g5
7.2
GeoServer log file path traversal vulnerability
Impact
This vulnerability requires GeoServer Administrator with access to the admin console to misconfigured the Global Settings for log file location to an arbitrary location.
This can be used to read files via the admin console GeoServer Logs page. It is also possible to leverage RCE or cause denial of service by overwriting key GeoServer files.
Patches
This issue has been addressed in GeoServer 3.0.0:
- The Global Settings page can no longer be used to specify log file location
- The application parameter
GEOSERVER_LOG_LOCATIONmechanism (outlined below) is now the only approach available to customize the log file location.
Workarounds
A system administrator responsible for running GeoServer can define the GEOSERVER_LOG_FILE parameter, preventing the global setting provided from being used.
The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variable, or servlet context parameter.
Environmental variable:
export GEOSERVER_LOG_LOCATION=/var/opt/geoserver/logs
System property:
-DGEOSERVER_LOG_LOCATION=/var/opt/geoserver/logs
Web application WEB-INF/web.xml:
<context-param>
<param-name> GEOSERVER_LOG_LOCATION </param-name>
<param-value>/var/opt/geoserver/logs</param-value>
</context-param>
Tomcat conf/Catalina/localhost/geoserver.xml:
<Context>
<Parameter name="GEOSERVER_LOG_LOCATION"
value="/var/opt/geoserver/logs" override="false"/>
</Context>
References
- Upgrading GeoServer 3
- Log location (User Manual)
- Record
GHSA-8g7v-vjrc-x4g5- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-22
- Updated
- 2026-11-02
NVD
7.2
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. A path traversal vulnerability in versions 2.23.4 and prior requires GeoServer Administrator with access to the admin console to misconfigure the Global Settings for log file location to an arbitrary location. The admin console GeoServer Logs page provides a preview of these contents. As this issue requires GeoServer administrators access, often representing a trusted party, the vulnerability has not received a patch as of time of publication. As a workaround, a system administrator responsible for running GeoServer can use the GEOSERVER_LOG_FILE setting to override any configuration option provided by the Global Settings page. The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variables, or servlet context parameters.
- Record
CVE-2023-41877- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-22
- Updated
- 2026-11-02
OSV
7.2
GeoServer log file path traversal vulnerability
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. A path traversal vulnerability in versions 2.23.4 and prior requires GeoServer Administrator with access to the admin console to misconfigure the Global Settings for log file location to an arbitrary location. The admin console GeoServer Logs page provides a preview of these contents. As this issue requires GeoServer administrators access, often representing a trusted party, the vulnerability has not received a patch as of time of publication. As a workaround, a system administrator responsible for running GeoServer can use the GEOSERVER_LOG_FILE setting to override any configuration option provided by the Global Settings page. The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variables, or servlet context parameters.
- Record
CVE-2023-41877- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-22
- Updated
- 2026-11-02
OSVGHSA-8g7v-vjrc-x4g5
7.2
GeoServer log file path traversal vulnerability
Impact
This vulnerability requires GeoServer Administrator with access to the admin console to misconfigured the Global Settings for log file location to an arbitrary location.
This can be used to read files via the admin console GeoServer Logs page. It is also possible to leverage RCE or cause denial of service by overwriting key GeoServer files.
Patches
This issue has been addressed in GeoServer 3.0.0:
- The Global Settings page can no longer be used to specify log file location
- The application parameter
GEOSERVER_LOG_LOCATIONmechanism (outlined below) is now the only approach available to customize the log file location.
Workarounds
A system administrator responsible for running GeoServer can define the GEOSERVER_LOG_FILE parameter, preventing the global setting provided from being used.
The GEOSERVER_LOG_LOCATION parameter can be set as system property, environment variable, or servlet context parameter.
Environmental variable:
export GEOSERVER_LOG_LOCATION=/var/opt/geoserver/logs
System property:
-DGEOSERVER_LOG_LOCATION=/var/opt/geoserver/logs
Web application WEB-INF/web.xml:
<context-param>
<param-name> GEOSERVER_LOG_LOCATION </param-name>
<param-value>/var/opt/geoserver/logs</param-value>
</context-param>
Tomcat conf/Catalina/localhost/geoserver.xml:
<Context>
<Parameter name="GEOSERVER_LOG_LOCATION"
value="/var/opt/geoserver/logs" override="false"/>
</Context>
References
- Upgrading GeoServer 3
- Log location (User Manual)
- Record
GHSA-8g7v-vjrc-x4g5- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-22
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.geoserver:gs-mainMaven |
through 2.23.4 | None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-41877 is a high vulnerability (CVSS 7.2) in Geoserver, published March 20, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.84%, the 58th percentile. No source names a fixed version.
References
github.com/geoserver/geoserver/security/advisories/GHSA-8g7v-vjrc-x4g5
docs.geoserver.org/latest/en/user/configuration/globalsettings.html
nvd.nist.gov/vuln/detail/CVE-2023-41877
github.com/advisories/GHSA-8g7v-vjrc-x4g5
github.com/CVEProject/cvelistV5/tree/main/cves/2023/41xxx/CVE-2023-41877.json
github.com/geoserver/geoserver