项目地址
- 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
使用项目 https://github.com/cnsimo/marshalsec_docker/ 搭建 marshalsec 的 docker 版本, 也可以弄本地的.
marshalsec_docker 默认的 payload 为 ExportObject.java, 利用成功之后会在 / tmp 目录下生成 poc-cve-2020-2551.x 空文件.
建议所有操作都在一台机器上复现, 避免网络问题导致的复现失败!
payload sender
使用 Y4er 的项目生成
weblogic_CVE_2020_2551.jar
包, 这是一个 payload 发送器, 这个 jar 发包之后肯定会报错 NamingServer 之类的错误, 不用管, 在 weblogic 日志中的报错信息比较重要.
weblogic 报这两个错, 大概率是成功了:
目录介绍
略.
已知问题
重启后, 会导致环境变量丢失, 因此导致 weblogic 无法启动, java 找不到, 自行解决!
其他问题, 在 issue 提问, 或到 blog1 https://scriptboy.cn/ 或 blog2 评论区提问.
注意事项
请严格按照文档中给出的版本进行测试, 没有清理脚本, 严重建议使用前打好系统快照!
所有操作尽量都在一台机器上操作, 并且保证使用的 jdk 都是一个, 避免出现网络问题, java 版本不支持问题.
项目引用
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 https://paper.seebug.org/1149/#_4
来源: https://www.cnblogs.com/lxmwb/p/12643684.html