|
|
||
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GeoServer是一个用 Java 编写的开源软件服务器,允许用户共享和编辑地理空间数据。
2024年7月2日,启明星辰集团VSRC监测到GeoServer中存在一个远程代码执行漏洞(CVE-2024-36401),其CVSS评分为9.8,目前该漏洞的PoC已公开。
GeoServer多个受影响版本在默认安装中存在漏洞,由于不安全地将属性名称评估为XPath 表达式,未经身份验证的威胁者可通过发送恶意请求,利用多个OGC请求参数(如WFS GetFeature、WFS GetPropertyValue、WMS GetMap、WMS GetFeatureInfo、WMS GetLegendGraphic 和 WPS Execute请求)导致远程代码执行。
二、漏洞复现
三、影响范围
2.25.0 <= GeoServer < 2.25.2
2.24.0 <= GeoServer < 2.24.4
GeoServer < 2.23.6
四、安全措施
4.1 升级版本
目前该漏洞已经修复,受影响用户可升级到GeoServer 2.23.6、2.24.4、2.25.2或更高版本。
下载链接:
https://github.com/geoserver/geoserver/tags
4.2 临时措施
可用于先前版本的补丁
官方针对GeoServer先前几个版本(包括2.25.1、2.24.3、2.24.2、2.23.2、2.21.5、2.20.7、2.20.4、2.19.2、2.18.0)提供了包含修复的补丁,这些补丁中包含了经过修复的gt-app-schema、gt-complex和gt-xsd-core JAR文件,受影响用户可下载该补丁文件并解压,进入WEB-INF/lib文件夹下替换原文件(操作之前建议备份原始JAR文件以便于在出现意外时恢复到旧版本)。
下载链接:
https://sourceforge.net/projects/geoserver/
缓解措施
从GeoServer中删除gt-complex-x.y.jar文件,其中x.y是GeoTools版本(例如,如果运行GeoServer 2.25.1,则为gt-complex.31.1.jar)。这将从GeoServer中删除易受攻击的代码,但可能会破坏GeoServer的某些功能,或者如果正在使用的某个扩展需要gt-complex模块,则可能导致GeoServer无法部署。
lgeoserver.war部署的缓解措施:
1.停止应用程序服务器。
2.将geoserver.war解压缩到目录中。
3.找到文件WEB-INF/lib/gt-complex-x.y.jar并删除。
4.将目录压缩到新的geoserver.war。
5.重新启动应用程序服务器。
lGeoServer二进制文件的缓解措施:
1.停止Jetty。
2.找到文件webapps/geoserver/WEB-INF/lib/gt-complex-x.y.jar并删除。
3.重启Jetty。
4.3 通用建议
定期更新系统补丁,减少系统漏洞,提升服务器的安全性。
加强系统和网络的访问控制,修改防火墙策略,关闭非必要的应用端口或服务,减少将危险服务(如SSH、RDP等)暴露到公网,减少攻击面。
使用企业级安全产品,提升企业的网络安全性能。
加强系统用户和权限管理,启用多因素认证机制和最小权限原则,用户和软件权限应保持在最低限度。
启用强密码策略并设置为定期修改。
4.4 参考链接
https://github.com/geoserver/geoserver/security/advisories/GHSA-6jj6-gm7p-fcvv
https://nvd.nist.gov/vuln/detail/CVE-2024-36401
原文始发于微信公众号(启明星辰安全简讯):【漏洞复现】GeoServer远程代码执行漏洞(CVE-2024-36401)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论