GeoServer's MapML HTML Page vulnerable to Stored Cross-Site Scripting (XSS)
Date: 2024-03
Affected: maven/org.geoserver.extension:gs-mapml, maven/org.geoserver.extension:gs-mapml
Attack vector: xss
Category: vulnerability-disclosure
Severity: Medium
CVE: CVE-2024-23819
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 MapML HTML Page. The MapML extension must be installed and access to the MapML HTML Page is available to all users although data security may limit users' ability to trigger the XSS. ### 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-11154 https://github.com/geoserver/geoserver/pull/7175


Mitigations:

Architectural layers (MAESTRO):