BUUCTF-[WebLogic]CVE-2018-2894(任意文件上传漏洞)

漏洞描述

WebLogic管理端未授权的页面存在任意上传getshell漏洞,可直接获取权限。

漏洞地址:/ws_utc/begin.do、/ws_utc/config.do

默认端口:7001

影响版本

WebLogic :10.3.6.0,12.1.3.0,12.2.1.2,12.2.1.3

漏洞复现-方法1

1、打开靶场,看到一个Weblogic的默认404页面。

2、(本步骤是漏洞形成原理分析,靶场测试不需要进行这一步)访问后台登录地址/console/login/LoginForm.jsp,输入账号密码weblogic/weblogic1(密码靶场已给)登录系统,登录后在  base_domain  中的  高级  里面设置启用  WEB服务测试页  ,然后保存。如上配置后,就是漏洞存在的环境。如果管理员这样设置后,那么对应版本的weblogic即会存在任意文件上传漏洞。攻击者无需登录,即可上传shell了。

3、访问/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。将目录设置为ws_utc应用的静态文件css目录,访问这个目录是无需权限的,这一点很重要。

4、然后来到设置中的  安全  ,点击  添加  ,上传shell。同时抓包,查看返回响应,获取上传的时间戳。或者提交后右键-检查,找到id后面的时间戳,后面有用。

5、此时shell的位置为:/ws_utc/css/config/keystore/[时间戳]_[文件名]。使用冰蝎客户端连接 http://node5.buuoj.cn:27088/ws_utc/css/config/keystore/1751532358243_shell.jsp,密码是默认连接密码rebeyond,即可获得 webshell。

漏洞复现-方法2-使用工具WeblogicTool_1.3.jar

下载地址:https://github.com/KimJun1010/WeblogicTool/releases/tag/v1.3

1、工具检查,靶场存在CVE-2018-2894漏洞。

2、执行命令env,打印环境变量,找到flag。

修复建议

1.设置Config.do、begin.do页面登录授权后访问
2.IPS等防御产品可以加入相应的特征
3.升级到官方最新版本

posted @ 2025-07-16 19:43  zhengna  阅读(24)  评论(0)    收藏  举报