Java框架Shiro、漏洞工具利用、复现以及流量特征分析

news2024/9/25 19:19:07

Shiro流量分析

前言

 博客主页:

靶场:Vulfocus 漏洞威胁分析平台

Shiro(Apache Shiro)是一个强大且灵活的开源安全框架,专为Java应用程序提供安全性解决方案。它由Apache基金会开发和维护,广泛应用于企业级应用程序和Web应用程序中。Shiro的设计目标是简化应用程序的安全性配置和开发过程,提供易于使用的API和丰富的功能。

本文主要介绍了Java框架Shiro和shiro工具的流量特征,以及Shiro-550漏洞的复现

CVE-2016-4437

image-20240820160942234

登录界面

image-20240820145112169

正常的流量包

返回包set-Cookie⾥没有 deleteMe字段的,返回包甚至都没有set-Cookie

image-20240820192051239

登录失败的流量特征

看到一个结果

image-20240820145250040

抓包,输入错误的密码,他就会返回一个rememberMe=deleteMe,那么百分百是shiro框架,不管是否勾选记住密码,返回包都会有rememberMe=deleteMe字 段

image-20240820163100507

登录成功的流量特征

image-20240820190749089

这时候再去请求别的页面就会有这个cookie特征,未登陆的情况下,请求包的cookie中没有rememberMe字段

image-20240820164428402

没有登录的情况下,请求包的cookie中没有rememberMe字段,返回set-Cookie也没有deleteMe字段

不勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe 字段。

image-20240820192904683

但是之后的所有请求中Cookie都不会有rememberMe字段

image-20240820193157179

勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe字 段,还会有rememberMe字段,

image-20240820193331380

之后的所有请求中Cookie都会有rememberMe字段

image-20240820193502353

工具爆破的流量特征

工具的第一步就是去判断网站是否使用了shiro框架,开始之前,先设置工具代理,把流量转发到burp suite

image-20240820195409246

就可以得到如下数据包,它添加了一个Cookie: rememberMe=yes

image-20240820195957611

看看返回数据包,他也有一个Set-Cookie:rememberMe,也就是登录失败,通过这个值来判断是否是shiro框架

image-20240820200329510

密匙爆破流量分析,当成功之后就会有一个设置一个cookie:rememberMe

image-20240820201413181

发送请求,爆破成功的set-cookie就没有rememberMe的值

image-20240820201704358

我在cookie中随便添加几个字母/数字,他也会提示Set-Cookie: rememberMe=deleteMe,密匙爆破失败

image-20240820202514146

成功后,还不能直接获得webshell,还需要爆破利用链和回显

利用链爆破流量分析

如果在秘钥正确的情况下,进行利用链爆破

image-20240820195825657

利用链爆破失败流量

和密匙/浏览器登录流量一样,只要登录/爆破失败就会返回一个Set-Cookie:rememberMe=deleteMe

image-20240820204241985

利用链爆破成功流量

当cookie非常长的时候。如果在研判 中发现cookie非常长,并且返回包状态码为200,那就要考虑网站是否被入侵了!

image-20240820204149009

成功之后才能执行系统命令,获取flag

image-20240820154057801

系统命令流量分析

执行命令时候的流量特征就是,rememberme 非常长,并且返回值是加密的,执行命令ls,在响应包中会出现三个$

image-20240820205004956

ls -a

image-20240820205137667

注入内存马流量

上传蚁剑一句话马

image-20240820154131935

上传的过程流量

image-20240820213245120

正常连接

image-20240820154830344

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Anolis os系统进入单用户模式重置密码

Anolis os系统进入单用户模式重置密码 1、重启计算机。 2、在启动时,当GRUB菜单出现时,按下任意键停止自动倒计时。 3、选择要启动的内核版本,然后按e键编辑启动参数。 4、找到以linux或linux16开头的行,通常这行包含了启动内核…

keepalived与lvs

1 lvs Linux服务器集群系统(一) -- LVS项目介绍 LVS(Linux Virtual Server)即Linux虚拟服务器,是一个基于Linux操作系统的虚拟服务器技术,用于实现负载均衡和高可用性。章文嵩,是中国国内最早出现的自由软件项目之一。 2 lvs发展…

Circuitjs 快捷键完全列表

对于常见组件, 反复通过菜单去选择也是比较繁琐的, 系统考虑到这一点, 也为那些常用组件添加了快捷键. 通过 菜单--选项--快捷键... 可以查看所有快捷键, 分配新的快捷键或调整现有的快捷键. 点开菜单时, 位于菜单右侧的那些字母即是对应的快捷键, 如下图所示: 注: 旧版本有, …

Debug-022-el-upload照片上传-整体实现回顾

前情概要: 最近业务里通过el-upload实现一个上传图片的功能,有一些小小的心得分享给各位。一方面是review一下,毕竟实现了很多细小的功能,还有这么多属性、方法(钩子)和碰到的问题,感觉小有成就…

Swing中如何实现快捷键绑定和修改

在许许多多市面上常见的桌面软件中, 可以使用快捷键操作, 比如像微信一样,使用AltA 可以打开截图窗口,如果不习惯于AltA按键时,还可以打开设置去修改。 如果在swing中也想实现一个快捷键绑定和修改的操作,那么应该如何操作&#…

《计算机操作系统》(第4版)第8章 磁盘存储器的管理 复习笔记

第8章 磁盘存储器的管理 一 、外存的组织方式 1. 连续组织方式(连续分配方式) (1)概述 ①定义 连续组织方式要求为每一个文件分配一组相邻接的盘块。磁盘空间的联系组织方式如图8-1所示。 ②记录方法 在目录项的“文件物理地址”字段中记录该文件第一个记录所在的盘块号和文件…

【Docker深入浅出】Docker引擎架构介绍

文章目录 一. docker引擎介绍1. Docker daemon:实现Docker API,通过API管理容器2. containerd:负责容器的生命周期3. runc:用于创建和启动容器 二. 启动容器的过程1. 启动过程2. docker daemon的维护不会影响到运行中的容器3. shi…

依靠 VPN 生存——探索 VPN 后利用技术

执行摘要 在这篇博文中,Akamai 研究人员强调了被忽视的 VPN 后利用威胁;也就是说,我们讨论了威胁行为者在入侵 VPN 服务器后可以用来进一步升级入侵的技术。 我们的发现包括影响 Ivanti Connect Secure 和 FortiGate VPN 的几个漏洞。 除了漏洞之外,我们还详细介绍了一组…

C语言试题(含答案解析)

单选 1.下面C程序的运行结果为&#xff08;&#xff09; int main(void) {printf("%d", B < A);return 0; }A.编译错误 B.1 C.0 D.运行错误 A’的ascii码值为65&#xff0c;‘B’的ascii码值为66&#xff0c;‘B’<‘A’是不成立的&#xff0c;返回0&#xf…

spring学习(1)

目录 一、是什么 二、IOC思想 2.1 IOC创建对象的方式 三、Spring的配置 3.1 别名 3.2 Bean的配置 3.3 import 四、DI依赖注入 4.1 构造器注入 4.2 Set方式注入【重点】 4.3 拓展方式注入 五、Bean的自动装配 5.1 byName自动装配 5.2 byType自动装配 5.3 注解实现…

Vue小知识大杂烩

一、Vue组件的三大部分&#xff1a;template、Script、Style template --> 组件的模板结构 写html的地方 注意&#xff1a;<template> 是 vue 提供的容器标签&#xff0c;只起到包裹性质的作用&#xff0c;它不会被渲染为真正的 DOM 元素。 script -> 组件的…

超声波清洗机什么牌子值得入手? 清洁力好的超声波清洗机推荐

对于眼镜佩戴人士而言&#xff0c;超声波清洗机无疑是清洁神器&#xff01;它凭借高频振动技术&#xff0c;能深入眼镜的每一细微处及手洗难以触及的缝隙&#xff0c;有效清除顽固污渍&#xff0c;不仅大幅提高清洁效率&#xff0c;而且清洁质量远胜传统方法。随着超声波清洗机…

Linux下快速搭建七日杀官方私人服务器教程

今天给大家分享一下七日杀的个人开服教程&#xff0c;本教程基于Linux系统开发&#xff0c;推荐有一定基础的小伙伴尝试&#xff01;如果你没有Linux的基础但实在想开的小伙伴可以根据以下教程一步步进行操作&#xff0c;后续这边也会上架对应视频操作 架设前准备&#xff1a; …

Redis篇三:在Ubuntu下安装Redis

文章目录 1. 安装Redis2. 更改Redis的IP3. 使用redis自带的客户端来连接服务器4. Redis的客户端介绍 1. 安装Redis sudo apt install redis2. 更改Redis的IP 刚安装的Redis的ip是一个本地环回的ip&#xff0c;也就是只能由当前主机上的客户端进行访问&#xff0c;跨主机就访问…

IO进程线程 0823作业

作业 创建子父进程&#xff0c;子进程将1.txt内容拷贝到2.txt中&#xff0c;父进程将3.txt内容拷贝到4.txt中。 #include <myhead.h> int main(int argc, const char *argv[]) {pid_t ID;ID fork();if(ID > 0){int fd1;fd1 open("./3.txt",O_RDONLY);if(…

js 键盘监听 组合键

今天分享如何快速实现js快捷键监听 所需环境&#xff1a; 浏览器js 实现目标 mac/win兼容&#xff0c;一套代码&#xff0c;多个平台支持快捷键监听/单按键监听事件是否冒泡可设置使用方式简单快速挂载与卸载4行代码实现组合键监听 代码原理 把键盘监听事件挂载在documen…

c#-DataGridView控件实现分页

有时候我们需要进行分页显示&#xff0c;第一方面是在大数据量下可以降低卡顿&#xff0c;另一方面也是方便查找。 首先划重点&#xff0c;如果卡顿&#xff0c;不要用单元格填充的方式去刷新&#xff0c;用绑定数据源的方式比较高效&#xff01; 下面重点讲如何使用数据源绑定…

正式收官!阿里云携手优酷,用AI重塑影视IP创新边界

影视行业的新一轮创作风潮&#xff0c;将由AI掀起。 GPT和Sora等先进AI模型的出现&#xff0c;带动影视行业进入一场前所未有的创意变革。当前&#xff0c;在角色创作、脚本生成、营销策略等方面&#xff0c;AI已经展现了强大的潜力。而作为影视创作的“灵魂”&#xff0c;影视…

重新审视 ChatGPT 和 Elasticsearch:RAG 真正将应用程序紧密结合在一起

作者&#xff1a;来自 Elastic Jeff Vestal 关注博客 ChatGPT 和 Elasticsearch&#xff1a;OpenAI 遇到私人数据。 在此博客中&#xff0c;你将了解如何&#xff1a; 创建 Elasticsearch Serverless 项目创建推理端点以使用 ELSER 生成嵌入使用语义文本字段进行自动分块并调…

SpringBoot如何进行全局异常处理?

1.为什么需要全局异常处理&#xff1f; 在日常开发中&#xff0c;为了不抛出异常堆栈信息给前端页面&#xff0c;每次编写Controller层代码都要尽可能的catch住所有service层、dao层等异常&#xff0c;代码耦合性较高&#xff0c;且不美观&#xff0c;不利于后期维护。 应用场…