shiro550和721的区别

主要区别

  1. Shiro550的默认密钥构造恶意的序列化对象,进行编码来伪造用户的Cookie,服务端反序列化时触发漏洞,执行命令
  1. Shiro721的AES加密的key基本上猜不到,由系统随机生成,需要登陆后rememberMe去爆破正确的key,也就是利用有效的rememberMe Cookie值来实现反序列化漏洞的攻击,难度相对较高

版本问题

  1. Shiro1.2.4之前登录时默认是先验证“rememberMe”的值,而不是先进行身份认证,这也是Shiro550漏洞能够利用的原因之一,可以利用伪造rememberMe来绕过身份验证,从而实现未授权访问
  2. Shiro1.2.4之后的登录是先进行身份验证,而不是先验证“rememberMe” 所以用户需要知道受害者已经通过登录的验证,并且Shiro框架已经为受害者创建了一个有效的会话,以便攻击者可以利用该会话ID进行身份伪造并绕过Shiro框架的权限控制机制
  3. Shiro框架的登录流程也是可以自定义的

shiro一般利用方式

Apache Shiro框架进行登录,服务端在接收cookie时,会经过下面的流程:

1、检索RememberMe Cookie的值

2、Base64解码

3、AES解密(加密密钥硬编码)

4、进行反序列化操作(未过滤处理)

5、攻击者可以使用Shiro的默认密钥构造恶意序列化对象进行编码来伪造用户的Cookie,服务端反序列化时触发漏洞,从而执行命令。

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值