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

admin 2020年10月24日16:00:54评论271 views字数 796阅读2分39秒阅读模式

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反序列化漏洞复现分析(二)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年10月24日16:00:54
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Dubbo反序列化漏洞复现分析(二)http://cn-sec.com/archives/169404.html

发表评论

匿名网友 填写信息