CVE-2020-2551复现过程
CN_Simo 人气:0
# 项目地址
[cnsimo/CVE-2020-2551](https://github.com/cnsimo/CVE-2020-2551)
# CVE-2020-2551
weblogic iiop 反序列化漏洞
该项目的搭建脚本在10.3.6版本经过测试,12版本未测试。
# 环境
kali+weblogic10.3.6+jdk6u25
> 保证部署`weblogic`的机器内存至少`1.5G`,因为脚本中参数指定的`-x1024m`。
# 使用方法
先`git clone https://github.com/cnsimo/CVE-2020-2551.git`克隆本项目到本地。
## 部署weblogic本地调试环境
进入到对应版本目录,详情查阅对应`READEME`。
## 尝试登陆
访问`http://ip:7001/console`,初次访问的时候有初始化过程!
> 默认用户名密码:`weblogic/admin@123`
## payload generate
使用项目[marshalsec_docker](https://github.com/cnsimo/marshalsec_docker/)搭建`marshalsec`的`docker`版本,也可以弄本地的。
![](http://pic.scriptboy.cn/20200406173519.png)
`marshalsec_docker`默认的`payload`为`ExportObject.java`,利用成功之后会在`/tmp`目录下生成`poc-cve-2020-2551.x`空文件。
> 建议所有操作都在一台机器上复现,避免网络问题导致的复现失败!
## payload sender
使用`Y4er`的项目生成`weblogic_CVE_2020_2551.jar`包,这是一个`payload`发送器,这个`jar`发包之后肯定会报错`NamingServer`之类的错误,不用管,在`weblogic`日志中的报错信息比较重要。
![](http://pic.scriptboy.cn/20200406173823.png)
`weblogic`报这两个错,大概率是成功了:
![](http://pic.scriptboy.cn/20200406174051.png)
# 目录介绍
略。
# 已知问题
- 重启后,会导致环境变量丢失,因此导致`weblogic`无法启动,`java`找不到,自行解决!
- 其他问题,在`issue`提问,或到[blog1](https://scriptboy.cn)或[blog2](https://www.cnblogs.com/lxmwb)评论区提问。
# 注意事项
请严格按照文档中给出的版本进行测试,没有清理脚本,严重建议使用前打好系统快照!
> 所有操作尽量都在一台机器上操作,并且保证使用的`jdk`都是一个,避免出现网络问题、`java`版本不支持问题。
-----------
# 项目引用
- [WeblogicEnvironment](https://github.com/QAX-A-Team/WeblogicEnvironment/blob/master/scripts/jdk_install.sh)
- [CVE-2020-2551](https://github.com/Y4er/CVE-2020-2551/)
# 漏洞分析参考
- [WebLogic WLS核心组件RCE分析(CVE-2020-2551) - 安全客,安全资讯平台 ](https://www.anquanke.com/post/id/199695)
- [Weblogic CVE-2020-2551 IIOP协议反序列化RCE – Y4er的博客](https://y4er.com/post/weblogic-cve-2020-2551/)
- [漫谈 WebLogic-CVE-2020-2551 ](http://paper.seebug.org/1149/#_4)
加载全部内容