Shiro反序列化漏洞检测及修复(工具分享)

  • 写在前面
  • 反序列化漏洞是如何产生的
  • 反序列化漏洞解决思路
  • 测试工具下载地址
  • 测试过程

写在前面

这篇博文主要解决于一些朋友为了修复反序列化漏洞,根据某些帖子的内容升级了shiro版本,或者采用了随机生成key的方式后,不知道是否管用。特地写下一篇记录,分享一个检测工具。
我在之前项目中碰到了这个问题,由于shiro使用的版本是1.2.4,存在反序列化漏洞,我们采取的办法是手动升级到了1.2.6版本(根据@CityHost提示,需要升级到1.5.x才能彻底解决该问题),但苦于无法验证是否解决了问题,后来发现了一款测试工具,ShiroExploit
在此特别感谢其作者 feihong飞鸿

反序列化漏洞是如何产生的

shiro版本<=1.2.4时,其参数remeberMe存在硬编码,它对于cookie的处理流程是,首先获取rememberMe的cookie值,然后进行Base64解码,再进行AES解密,最后反序列化。但在这个过程中,其AES的Key硬编码,导致反序列化漏洞的产生。(参考http://www.secwk.com/2019/09/18/2818/)

反序列化漏洞解决思路

从上面我们了解到,反序列化漏洞主要是由于硬编码引起的,那么只要解决硬编码,就解决了该漏洞。解决硬编码主要有两种方式:

  1. 自行实现key值
  2. 升级到1.2.5版本或以上

那么在我的项目中,选择的是升级版本到1.2.6

测试工具下载地址

https://github.com/feihong-cs/ShiroExploit_GUI/releases

测试过程

1. 首先打开下载到的ShiroExploit,可以看到这样的界面。选择shiro550,在中间的白框,填入项目访问路径,点击下一步

2. 来到当前页面,选择使用回显进行漏洞检测,点击下一步

3. shiro1.2.4版本
可以看到,Trying Key,然后Find Valid key。相信从字面意思也看出来了,找到了这个硬编码的key,此时代表反序列化漏洞存在

4. 接下来我们看一下升级后的shiro1.2.6
很清晰看到与1.2.4的对比,Can not find a valid key,然后一直在Trying,此时漏洞已经不存在了

最后希望本篇文章能够帮助到大家,
再次郑重感谢工具作者飞鸿!!!

Shiro反序列化漏洞检测及修复(工具分享)相关推荐

  1. 4加密问题漏洞修复_Apache Shiro 反序列化漏洞实战

    Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.2016年,网络中曝光1.2.4以前的版本存在反序列化漏洞.尽管该漏洞已经曝光几年,但是在实战中仍然比较实用.花了点 ...

  2. shiro反序列化漏洞学习(工具+原理+复现)

    工具准备 1.java8 C:\Program Files\Java 2.冰蝎 C:\Users\ali\Desktop\tools\Behinder_v4.0.6 3.shiro反序列化 图形化工具 ...

  3. shiro反序列化漏洞修复

    文章目录 shiro反序列化漏洞修复 前言 解决方案 shiro反序列化漏洞修复 前言 最近项目在进行安全漏洞扫描的时候,出现一个shiro的反序列化漏洞的问题:目标IP站点存在Apache shir ...

  4. 实战渗透-Shiro反序列化漏洞实例

    0x01.前言 这是一次授权的渗透测试,技术含量不高,但我始终相信,每一次的积累,都是为了成就更好的自己,所以过程简洁,记录下每个知识点.对渗透而言,我更喜欢实战的体验感,那种喜悦和知识的获取感,永远 ...

  5. shiro反序列化漏洞的原理和复现

    一.shiro简介 Shiro是一个强大的简单易用的Java安全框架,主要用来更便捷的认证,授权,加密,会话管理.Shiro首要的和最重要的目标就是容易使用并且容易理解. 二.shiro的身份认证工作 ...

  6. Shiro反序列化漏洞利用笔记

    Shiro反序列化漏洞利用笔记 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.目前在Java web应用安全框架中,最热门的产品有Spring Sec ...

  7. 【漏洞复现】Apache Shiro 反序列化漏洞

    Apache Shiro 反序列化漏洞 一.简介 二.环境 三.漏洞原理 四.AES秘钥 1.判断AES秘钥 五.Shiro rememberMe反序列化漏洞(Shiro-550) 1.版本1.4.2 ...

  8. pcie16x能插1x的卡嘛?_小白把这7个修复工具分享给你:不仅能修复U盘,SD卡、TF卡也能修复!...

    此前分享给大家的U盘量产工具帮助了许多朋友修复了本来不能使用的U盘,但是仍然有不少朋友反映"主控型号无法检测""没有对应的量产工具可以下载""量产后仍 ...

  9. Shiro反序列化漏洞利用详解(Shiro-550+Shiro-721)

    Shiro反序列化漏洞利用详解(Shiro-550+Shiro-721) Shiro简介 Apache Shiro 是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能,Shiro ...

  10. vulhub复现之shiro反序列化漏洞复现

    目录 什么是shiro? 什么是安全框架? 反序列化与序列化 shiro反序列化漏洞 怎么判断是否存在反序列化漏洞? 什么是shiro? shiro是功能强大且容易使用的java安全框架.shiro可 ...

最新文章

  1. 可以获取python整数类型帮助的是什么-Python 的数值类型(整数、长整数、浮点数和复数)...
  2. Centos7使用yum安装MySQL5.6的正确姿势
  3. WSS 扩展文件夹的属性--如何给文件夹添加扩展字段
  4. DrawerLayout侧滑
  5. mysql居左查询abcd_MySql速查手册
  6. 字符串:3.KMP算法(快速模式匹配算法)详解
  7. php数组超索引,php数组多维索引
  8. 时间复杂度与空间复杂度小结
  9. 2.6 使用for循环遍历文件 2.7 使用while循环遍历文件 2.8 统计系统剩余的内存 2.9 数据类型转换计算(计算mac地址) 3.0 数据类型转换(列表与字典相互转换)...
  10. linux otl oracle数据库连接例子
  11. 线切割常用专用编程软件下载
  12. 用Visual Studio调试asp程序
  13. 【硬件】详解电流采样电路
  14. R语言学习之深圳市空气质量分析
  15. 硬件设计23之三极管开关原理与场效应管开关原理
  16. Selenium学习_常用场景代码示例
  17. 程序员漫画集连载[1]
  18. 《Python计算机视觉编程》一书中关于增强现实茶壶显示的程序
  19. win10安装mujoco
  20. 在Docker中使用Oracle 18c(12.2.0.2)

热门文章

  1. 牛客IOI周赛17-普及组 数列统计(组合数)
  2. 数独终局游戏(数独终局生成,数独问题求解,数独题目生成)
  3. 利用.sym跨平台解析iOS符号
  4. 计算机流程图知识点,高中数学流程图知识点
  5. 关于springboot的配置注册循序问题
  6. 克莱斯勒等公司宣布召回缺陷汽车
  7. 树莓派OS Lite系统安装LXDE桌面环境
  8. MySQL数据库中存储引擎和数据类型
  9. 数据库维护任务-邮件通知:未配置全局配置文件。请在 @profile_name 参数中指定配置文件名。
  10. 语义漂移_当概念漂移是语义漂移时