Dubbo反序列化漏洞复现分析(二)

  • A+
所属分类:安全文章

Dubbo反序列化漏洞复现分析(二)

成功弹出计算机

Dubbo反序列化漏洞复现分析(二)


5.漏洞分析


我们从idea里的报错栈可以看到入口应该是javax.servlet.http.HttpServlet.service

Dubbo反序列化漏洞复现分析(二)

我们在this.service处下个断点

Dubbo反序列化漏洞复现分析(二)

我们用postman发个包,然后跟进去,发现它会用handler函数处理request,response

Dubbo反序列化漏洞复现分析(二)

随后发现其进入org.apache.dubbo.rpc.protocol.heep.HttpProtocol中的handle

Dubbo反序列化漏洞复现分析(二)

当跟进去后handleRequest,F8后发现直接弹出了计算机,所以可以判断漏洞出发点就在红框中,因此选择跟进

Dubbo反序列化漏洞复现分析(二)

Dubbo反序列化漏洞复现分析(二)

继续进一步跟踪,最后在

org.springframework.remoting.rmi.RemoteInvocationSerializingExporter的

doReadRemoteInvocation发现了反序列化入口 

该ois对象来源为报文中post data部分,对于传入的ois并没有做任何安全检查,直接就执行read0bjec方法导致REC产生。

Dubbo反序列化漏洞复现分析(二)


6.坑点


我一开始发包是采用burp进行发包的,但是一直没有达成效果。

Dubbo反序列化漏洞复现分析(二)

就连错误栈里都没看到commonsollection4的执行调用。

Dubbo反序列化漏洞复现分析(二)

我当时打开断点判断时,发现会进入read0bject的,但是就是没成功。

Dubbo反序列化漏洞复现分析(二)

我估计是因为编码问题吧,直接从payload.ser文件中粘贴序列化代码,导致代码发生了变化,所以传进去后反序列化就不行了。



参考链接

https://zhzhdoai.github.io/2020/08/26/Dubbo%E5%8E%86%E5%8F%B2%E6%BC%8F%E6%B4%9 E%E4%B9%8BCVE-2019-17564/

https://www.cnblogs.com/wh4am1/p/12307848.html

本文始发于微信公众号(雷石安全实验室):Dubbo反序列化漏洞复现分析(二)

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: