一、漏洞概述
EJBTaglibDescriptor 在反序列化的同时会进行XML解析,通过重写EJBTaglibDescriptor中的writeExternal
函数生成恶意的序列化数据。
二、影响版本
- WebLogic 10.3.6
三、环境搭建
- 系统环境:Ubuntu 16.04 (192.168.242.129)
- 攻击机:Kali (192.168.242.128)
- 监听机:win10 (192.168.1.223)
Weblogic中间件下载地址:
https://www.oracle.com/middleware/technologies/weblogic-server-installers-downloads.html
java jdk环境下载:
下载地址:https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html
Tips:建议使用jdk1.7版本, 否则安装完Weblogic 10.3.6会出现"Could not create the virtual machine" 报错, 因为Weblogic 10.3.6只支持JDK 1.7,不支持JDK 1.8。
利用脚本下载:
https://github.com/TheTwitchy/xxer //本地监听
https://github.com/jas502n/CVE-2019-2888 //执行攻击
四、本地复现
查看java 版本
随后安装 weblogic 10.3.6
Java -jar wls1036_generic.jar
图形化界面,按步骤下一步即可。
运行如下
本地浏览器访问
部署成功!接下来对weblogic进行漏洞利用。
本地建立监听
Kali机执行攻击,监听机回显数据,攻击成功!
WebLogic 启动和停止
./startWebLogic.sh
//开启服务
./stopWebLogic.sh
//关闭服务