【已复现】Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)

admin 2024年7月3日07:42:12评论177 views字数 1320阅读4分24秒阅读模式

【已复现】Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)

GeoServer是一个开源服务器,用于共享、处理和编辑地理空间数据。它支持多种地图和数据标准,使用户能够通过网络访问和操作地理信息系统(GIS)数据。

2024年7月,互联网上披露Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401),攻击者无需认证即可利用该漏洞获取服务器权限,建议受影响的客户尽快修复漏洞。

漏洞描述
 Description 
01

漏洞成因

该系统不安全地将属性名称解析为 XPath 表达式。GeoServer 调用的 GeoTools 库 API 以不安全的方式将要素类型的属性名称传递给 commons-jxpath 库。该库在解析 XPath 表达式时,可以执行任意代码。这种 XPath 评估本应仅供复杂要素类型(例如应用程序架构数据存储)使用,但由于错误,该机制也被应用于简单要素类型。这使得所有 GeoServer 实例都可能受到该漏洞的影响。

漏洞影响

此漏洞可能导致远程代码执行 (RCE)。未经身份验证的用户可以通过向默认的 GeoServer 安装发送特制的输入,利用多个 OGC 请求参数,如 WFS GetFeature、WFS GetPropertyValue、WMS GetMap、WMS GetFeatureInfo、WMS GetLegendGraphic 和 WPS Execute 请求,从而执行任意代码。这种远程代码执行将导致系统被完全控制,严重威胁系统安全,可能造成数据泄露、勒索或更广泛的网络攻击。

处置优先级:高

漏洞类型:远程代码执行

漏洞危害等级

触发方式:网络远程

权限认证要求:无需任何权限

系统配置要求:默认配置可利用

用户交互要求:无需用户交互

利用成熟度:POC/EXP 未公开

批量可利用性:可使用通用 POC/EXP,批量检测/利用

修复复杂度:低,官方提供缓解、修复方案

影响版本
Affects
03

2.25.0 <= GeoServer < 2.25.2

2.24.0 <= GeoServer < 2.24.4

GeoServer < 2.23.6

解决方案
 Solution 
04

升级修复方案

官方已发布先前版本的补丁可供下载(https://geoserver.org/),包括已修复的 gt-app-schema、gt-complex 和 gt-xsd-core jar 文件。补丁可从以下 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。下载后使用补丁文件替换原文件即可。

临时缓解方案

通过删除 GeoServer 中的 gt-complex-x.y.jar 文件(其中 x.y 是 GeoTools 版本,例如运行 GeoServer 2.25.1 时为 gt-complex-31.1.jar),可以临时缓解此漏洞。这将从 GeoServer 中移除漏洞代码,但可能会导致某些 GeoServer 功能失效或 GeoServer 部署失败,尤其是当 gt-complex 模块被正在使用的扩展所需要时。

漏洞复现
Reproduction
05

【已复现】Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)

原文始发于微信公众号(长亭安全应急响应中心):【已复现】Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月3日07:42:12
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【已复现】Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)http://cn-sec.com/archives/2911613.html

发表评论

匿名网友 填写信息