GeoServer 反射型跨站脚本(XSS)漏洞分析 (CVE-2025-21621)
漏洞详情
漏洞包: maven:org.geoserver.web:gs-web-app 和 maven:org.geoserver:gs-wms
受影响版本: < 2.25.0
已修复版本: 2.25.0
严重等级: 中等 (CVSS评分:6.1)
漏洞描述
概要
GeoServer的WMS GetFeatureInfo HTML输出格式中存在一个反射型跨站脚本(XSS)漏洞。该漏洞使得远程攻击者能够通过特制的SLD_BODY参数,在受害者的浏览器中执行任意JavaScript代码。
详情
在受影响的版本中,控制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
- https://nvd.nist.gov/vuln/detail/CVE-2025-21621
- geoserver/geoserver@dc9ff1c
技术指标
CVSS v3.1 基准指标: AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- 攻击向量: 网络
- 攻击复杂度: 低
- 所需权限: 无
- 用户交互: 需要
- 影响范围: 改变
- 机密性影响: 低
- 完整性影响: 低
- 可用性影响: 无
EPSS评分: 0.038% (第11百分位)
弱点标识: CWE-79 - 网页生成期间输入中和不当(跨站脚本)
漏洞编号:
- CVE ID: CVE-2025-21621
- GHSA ID: GHSA-w66h-j855-qr72
源代码仓库: geoserver/geoserver
报告者: sikeoka