CVE-2019-17564 Apache Dubbo 反序列化漏洞-漏洞文库小世界-安全文库-NGC660安全实验室

CVE-2019-17564 Apache Dubbo 反序列化漏洞

CVE-2019-17564 Apache Dubbo 反序列化漏洞

01漏洞描述

Apache Dubbo支持多种协议,官方推荐使用Dubbo协议.Apache Dubbo HTTP协议中的一个反序列化漏洞(CVE-2019-17564),该漏洞的主要原因在于当Apache Dubbo启用HTTP协议之后,Apache Dubbo对消息体处理不当导致不安全反序列化,当项目包中存在可用的gadgets时即可导致远程代码执行.

02影响范围

2.7.0 <= Apache Dubbo <= 2.7.4.1

2.6.0 <= Apache Dubbo <= 2.6.7

Apache Dubbo = 2.5.x

03漏洞复现

环境介绍:

Windows 10

JDK8u221

一、环境搭建

先从GIthub上获取dubbo的项目

项目地址:https://github.com/apache/dubbo-samples

提取“dubbo-samples-http”目录到项目中

0964e649623807f1ebb853ff4694b976

用IDEA打开后需要修改pom.xml中的dubbo.version

5fef4d80ab84b2b39e4732a7c54d4846

我这里将其修改为2.7.3漏洞版本

加载pom.xml中的依赖,其中有些依赖无法从远程仓库中获取的,经过分析后这些依赖无需加载,将其删掉就可以了。

导入完依赖后还需要一个本地触发gadgets,这里导入commons-collections4-4.0。

当然启动还需要依赖zookeeper,下载完zookeeper后将conf目录下的zoo_sample.cfg文件改成zoo.cfg并修改其中的两个参数

a3481c40a946508aeae7243ffd22e124

data和log目录需要自己在zookeeper目录下创建

运行bin\zkServer.cmd文件

随后启动dubbo项目中的启动HttpProvider

e7ee34d25c03603f3f9c3d02ce6202d4

二、构造反序列化

利用ysoserial生成payload

ysoserial下载地址:http://wiki.0-sec.org/download/ysoserial.zip

java -jar ysoserial-master-30099844c6-1.jar CommonsCollections4 "calc" > payload.out

fb638a954c91f12ddc393d7c711b0b7d

将payload粘贴至burp中

bb30942596a46dd83f8c980fe9bb2857

422bde28ab64327e06bb0d2f1a14f0f9

后面的分析就不多说了,关注公众号“小陈的Life”可以查看详情

https://qiita.com/shimizukawasaki/items/39c9695d439768cfaeb5

https://mp.weixin.qq.com/s/KZxhX3Q_mE6PJ6MT7cYbeQ

请登录后发表评论

    请登录后查看回复内容