Weblogic任意文件上传漏洞(CVE-2018-2894)复现
一、漏洞概述
Weblogic管理端未授权的两个页面存在任意上传jsp文件漏洞,进而获取服务器权限。
Oracle 7月更新中,修复了Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在 ‘生产模式’ 下默认不开启,所以该漏洞有一定限制。两个页面分别为/ws_utc/begin.do、/ws_utc/config.do。
二、受影响的版本
weblogic 10.3.6.0、weblogic 12.1.3.0、weblogic 12.2.1.2、weblogic 12.2.1.3。
三、环境搭建及漏洞复现
1、使用docker环境搭建vulhub环境
具体过程可见:Apache struts2 namespace远程命令执行—CVE-2018-11776(S2-057)漏洞复现 中的第三部分
2、漏洞复现
2.1> 进入vulhub/weblogic/CVE-2018-2894目录下,生成靶场
2.2> 执行docker-compose logs | grep password可查看管理员密码,管理员用户名为weblogic,密码为iT7DQKen
2.3> 环境启动之后,访问http://172.17.0.1:7001/console,即可看到后台登录页面
2.4> 登录后台页面,点击base_domain
的配置,在 ‘高级’ 中勾选 ‘启用 Web 服务测试页’ 选项,然后保存配置。
2.5> 访问http://172.17.0.1:7001/ws_utc/config.do,设置Work Home Dir为
/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css,访问这个目录是无需权限的,这一点很重要。
2.6> 然后点击 ‘安全’ -> ‘添加’ ,然后上传jsp大马(本文最后附jsp大马)
2.7> 审查元素,查看时间戳(也可使用抓包方式进行查看)
2.8> 访问http://172.17.0.1:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell
2.9> 菜刀连接。 #连接密码为Cknife