GeoServer's Simple SVG Renderer vulnerable to Stored Cross-Site Scripting (XSS)
Date: 2024-03
Affected: maven/org.geoserver:gs-wms, maven/org.geoserver:gs-wms
Attack vector: xss
Category: vulnerability-disclosure
Severity: Medium
CVE: CVE-2024-23642
CWE: CWE-79
CVSS: 4.8 (CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N)

### Summary A stored cross-site scripting (XSS) vulnerability exists that enables an authenticated administrator with workspace-level privileges to store a JavaScript payload in the GeoServer catalog that will execute in the context of another user's browser when viewed in the WMS GetMap SVG Output Format when the Simple SVG renderer is enabled. Access to the WMS SVG Format is available to all users by default although data and service security may limit users' ability to trigger the XSS. ### Details _Give all details on the vulnerability. Pointing to the incriminated source code is very helpful for the maintainer._ ### PoC _Complete instructions, including specific configuration details, to reproduce the vulnerability._ ### Impact If an attacker can control a script that is executed in the victim's browser, then they can typically fully compromise that user. Amongst other things, the attacker can: 1 .Perform any action within the application that the user can perform. 2. View any information that the user is able to view. 3. Modify any information that the user is able to modify. 4. Initiate interactions with other application users, including malicious attacks, that will appear to originate from the initial victim user. ### References https://osgeo-org.atlassian.net/browse/GEOS-11152 https://github.com/geoserver/geoserver/pull/7173


Mitigations:

Architectural layers (MAESTRO):