CVE-2020-14882&14883weblogic未授权命令执行漏洞复现
本文涉及靶场知识点-
CVE-2020-14882&14883 weblogic未授权访问漏洞
https://www.hetianlab.com/expc.do?w=exp_ass&ec=ECIDfdd4-97c8-4e32-89b7-df58dd102e4c&pk_campaign=weixin-wemedia
简介
WebLogic 是美国 Oracle 公司的主要产品之一,是商业市场上主要的 J2EE 应用服务器软件,也是世界上第一个成功商业化的 J2EE 应用服务器,在 Java 应用服务器中有非常广泛的部署和应用。
概述
10 月 21 日,Oracle 官方发布数百个组件的高危漏洞公告。其中组合利用 CVE-2020-14882/CVE-2020-14883 可使未经授权的攻击者绕过 WebLogic 后台登录等限制,最终远程执行代码接管 WebLogic 服务器,利用难度极低,风险极大。
此处漏洞均存在于 WebLogic 的控制台中。该组件为 WebLogic 全版本自带组件,并且该漏洞通过 HTTP 协议进行利用。
CVE-2020-14882允许未授权的用户绕过管理控制台的权限验证访问后台,CVE-2020-14883允许后台任意用户通过HTTP协议执行任意命令。使用这两个漏洞组成的利用链,可通过一个GET请求在远程Weblogic服务器上以未授权的任意用户身份执行命令。
影响版本
环境搭建
此处利用vulhub的环境进行复现,新建docker-compose.yml
执行以下命令会下载镜像并以此镜像启动一个容器,映射的端口为7001
漏洞复现
权限绕过漏洞(CVE-2020-14882)复现:
因为CVE-2020-14882未授权访问漏洞是绕过管理控制台权限访问后台,所以需要存在console控制台,打开浏览器访问:
http://ip:port/console
从上一步结果发现是存在管理控制台的,在正常访问console后台时会让我们输入账号密码。通过未授权访问,则可以直接绕过验证登录后台,漏洞
URL:/console/css/%252e%252e%252fconsole.portal
未授权访问控制台页面:
正常输入账号密码登录控制台页面:
通过对比可以看到通过未授权访问的后台与正常登陆的后台差异,由于权限不足,缺少部署等功能,无法安装应用,所以也无法通过后台部署war包等方式直接获取权限。“%252E%252E%252F”为二次url编码的“https://www.freebuf.com/articles/”,通过这个就可以实现穿越路径未授权访问相关管理后台。
后台任意命令执行漏洞(CVE-2020-14883)复现:
利用方式一
但此利用方法只能在 Weblogic 12.2.1 及以上版本利用,因为 10.3.6 并不存在 com.tangosol.coherence.mvel2.sh.ShellSession 类。
在12.2.1.3版本执行"id"命令 burpsuite
回显payload:
在10.3.6版本执行会报错
利用方式二
这是一种更为通杀的方法,最早在CVE-2019-2725被提出,对于所有Weblogic版本均有效。
首先,我们需要构造一个XML文件,并将其保存在Weblogic可以访问到的服务器上,这里是执行一个反弹shell的操作,如
http://example.com/rce.xml:
nc监听,然后执行一个get请求:
nc监听的端口得到反弹shell
经过测试,该方法在12.2.1.3以及10.3.6版本都可以执行
漏洞修复
目前 Oracle 官方已发布了最新针对该漏洞的补丁,请受影响用户及时下载补丁程序并安装更新。Oracle 官方补丁需要用户持有正版软件的许可账号,使用该账号登陆 https://support.oracle.com 后,可以下载最新补丁。
参考链接