XXE in Geoserver
CVE-2024-34711
GeoServer is an open source server that allows users to share and edit geospatial data. An improper URI validation vulnerability exists that enables an unauthorized attacker to perform XML External Entities (XEE) attack, then send GET request to any HTTP server. By default, GeoServer use PreventLocalEntityResolver class from GeoTools to filter out malicious URIs in XML entities before resolving them. The URI must match the regex (?i)(jar:file|http|vfs)[^?#;]*\\.xsd. But the regex leaves a chance for attackers to request to any HTTP server or limited file. Attacker can abuse this to scan internal networks and gain information about them then exploit further. GeoServer 2.25.0 and greater default to the use of ENTITY_RESOLUTION_ALLOWLIST and does not require you to provide a system property.
Vulnerability class: Information Disclosure
Published · last modified .
CVSS v3 metric
CVSS v3 base score 9.3 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N.
EPSS exploit prediction
EPSS: 0.003 (20.2th percentile), scored .
Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 20th percentile — 20.2% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.003 · newest: 0.003 · change: +0.000
Affected products
- Geoserver — versions < 2.25.0
- Osgeo Geoserver
Weakness classification (CWE)
References
- github.com/geoserver/geoserver/security/advisories/GHSA-mc43-4fqr-c965 (Third Party Advisory, Mitigation)
- docs.geoserver.org/latest/en/user/production/config.html (Product)
Frequently asked questions
- What is CVE-2024-34711?
- CVE-2024-34711 is a critical-severity vulnerability in Geoserver, classified under Information Disclosure. CVSS score: 9.3/10. Published 2025-06-10.
- How severe is CVE-2024-34711?
- Critical severity. CVSS v3 base score is 9.3 out of 10.