Apache Shiro-550反序列化漏洞复现(vulhub)

架构介绍:

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

漏洞原理:

在 Shiro <= 1.2.4 中,AES 加密算法的key是硬编码在源码中,当我们勾选remember me 的时候 shiro 会将我们的 cookie 信息序列化并且加密存储在 Cookie 的 rememberMe字段中,这样在下次请求时会读取 Cookie 中的 rememberMe字段并且进行解密然后反序列化
由于 AES 加密是对称式加密(Key 既能加密数据也能解密数据),所以当我们知道了我们的 AES key 之后我们能够伪造任意的 rememberMe 从而触发反序列化漏洞。

漏洞复现:

进入环境并启动(初次启动会进行下载)

环境启动后,查看靶机IP地址

进行网页访问(http://ip地址:8080)

输入用户名与密码勾选记住选项,并用burp进行抓包

(发现响应包中存在rememberMe=deleteMe; 字样,可知道框架为shiro)

使用shiro_attack工具进行密钥的破解

此界面的命令执行中可对靶机进行控制

解决方法:

及时对Apache进行更新

如果在配置里配置了密钥, 不要使用网上的密钥, 利用官方提供的方法去生成密钥

工具连接:

链接:https://pan.baidu.com/s/1Y2z3xYXBah9g38RxP4Snlw?pwd=root
提取码:root
--来自百度网盘超级会员V2的分享

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值