rmi反序列化导致rce漏洞修复_烽火狼烟丨Apache Dubbo反序列化漏洞(CVE201917564)漏洞分析...

点击上方“盛邦安全WebRAY”可以订阅

漏洞描述

Apache Dubbo是一款高性能、轻量级的开源java Rpc分布式服务框架。Dubbo提供面向接口的远程过程调用、集群容错和负载均衡、服务自动注册与发现这三大主要功能。(Apache Dubbo详细介绍:http://dubbo.apache.org/en-us/index.html)

b04d0b22f8a975e1eed6b66bc27462df.png

当Apache Dubbo启用HTTP协议之后,攻击者提交一个消费者的远程调用的POST请求,Apache Dubbo存在一个不安全的反序列化漏洞,从而导致远程代码执行。

 影响版本:

2.7.0 <= Apache Dubbo <= 2.7.4.1
2.6.0 <= Apache Dubbo <= 2.6.7
Apache Dubbo = 2.5.x

漏洞分析

从burp发包的报错响应包可以看出入口是javax.

servlet.http.HttpServlet.service(HttpServlet.java:790),在该处加入断点,调试跟踪函数的走向。

000ac6b7b12cea014ef4f677ac800f9c.png

进入到org.apache.dubbo.remoting.http.servlet.

DispatcherServlet文件中,先判断handler对象是否为null,不为null继续调用handler.handle(request, response)。

9962cb13373443d5383414325044645e.png

进入到org.apache.dubbo.rpc.protocol.http.

HttpProtocol文件中,先判断请求方式是否是POST,从request对象中获取remoteAddr和remotePort,调用setRemoteAddress函数,然后进入skeleton.

handleRequest函数。

02a872d08543044100e8071cc99a9728.png

进入org.springframework.remoting.httpinvoker.

HttpInvokerServiceExporter文件,调用readRemoteInvocation函数。

30c15650dac7907b169392ef2ec8d69c.png

跟进 readRemoteInvocation函数,其调用RemoteInvocation.readRemoteInvocation函数。

d264ace23c66af88a34465f925f995c6.png

跟进RemoteInvocation.readRemoteInvocation函数,其调用doReadRemoteInvocation函数。

03af9f49992094e693fa2abb1d836004.png

进入org.springframework.remoting.rmi.

RemoteInvocationSerializingExporter文件,调用readObject函数。

697c2cfdacbf71c51392fe3a1904cac2.png

其中ois为post请求的data数据,传入ois的数据没有安全过滤和处理,直接执行了readObject方法导致RCE产生。

c876679b4e7c9618c875c32556ec7d2a.png

修复建议

升级Apache Dubbo到2.7.5版本。

6c81d0fdf6e1dc325cf6d75a612e96ac.gif END 6c81d0fdf6e1dc325cf6d75a612e96ac.gif 140b6aefed3b425dc1ddcbff01ecc7c7.png 3a657e6ab14f659a289a0e45a87c1470.png 1595e585eb95c5f5f5cab867db532980.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值