漏洞概述
GeoServer 的 WMS GetFeatureInfo HTML 输出格式存在一个反射型跨站脚本(XSS)漏洞,允许远程攻击者通过特制的 SLD_BODY 参数在受害者的浏览器中执行任意 JavaScript 代码。
受影响版本
- 受影响组件:
org.geoserver.web:gs-web-app(Maven)org.geoserver:gs-wms(Maven)
- 受影响版本:
< 2.25.0 - 已修复版本:
2.25.0
漏洞详情
该漏洞存在于WMS服务的GetFeatureInfo功能中。控制HTML自动转义的WMS服务设置在受影响版本中默认被禁用或完全缺失。
影响
如果攻击者能够控制将在受害者浏览器中执行的脚本,他们通常可以完全控制该用户。具体影响包括:
- 执行该用户能够在应用程序中执行的任何操作。
- 查看该用户能够查看的任何信息。
- 修改该用户能够修改的任何信息。
- 发起与其他应用程序用户的交互(包括恶意攻击),这些交互将看似来自最初的受害者用户。
缓解措施
在多数环境中,更改以下任一WMS服务设置应可缓解此漏洞:
- 启用 GetFeatureInfo HTML 自动转义(适用于 GeoServer 2.21.3+ 和 2.22.1+ 版本)
- 禁用动态样式
- 禁用 GetFeatureInfo 的 text/html MIME 类型
参考链接
- https://osgeo-org.atlassian.net/browse/GEOS-11297
- geoserver/geoserver#7406
- GHSA-w66h-j855-qr72
- https://osgeo-org.atlassian.net/browse/GEOS-11203
漏洞信息
- CVE ID: CVE-2025-21621
- GHSA ID: GHSA-w66h-j855-qr72
- 严重等级: 中等 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)
- 弱点类型: CWE-79 - 在网页生成过程中对输入的不当中和(跨站脚本)
来源
- 报告者: sikeoka
- 发布者: aaime
- 首次发布: 2025年11月25日
- 最后更新: 2025年11月25日