Shiro550 721区别

24 年 6 月 24 日 星期一
257 字
2 分钟

shiro 框架目前只有两个利用,一个是550,一个是721。 其中550 是最容易利用的,不需要登录就可以利用;721 是需要登录去爆破它的密钥的,所以它的利用条件比较苛刻

shiro-550

shiro反序列化漏洞利用有两个关键点,首先是在shiro<1.24时,AES加密的密钥Key被硬编码在代码里,只要能获取到这个key就可以构造恶意数据让shiro识别为正常数据。另外就是shiro在验证rememberMe时使用了readObject方法。

readObject用来执行反序列化后需要执行的代码片段,从而造成恶意命令可以被执行。攻击者构造恶意代码,并且序列化,AES加密,base64编码后,作为cookie的rememberMe字段发送。Shiro将rememberMe进行编码,解密并且反序列化,最终造成反序列化漏洞。

shiro-721

不需要key,利用Padding Oracle Attack构造出RememberMe字段后段的值结合合法的Remember。

文章标题:Shiro550 721区别

文章作者:Crazy0x70

文章链接:https://www.crazy0x70.com/posts/17[复制]

最后修改时间:


商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接,您可以自由地在任何媒体以任何形式复制和分发作品,也可以修改和创作,但是分发衍生作品时必须采用相同的许可协议。
本文采用CC BY-NC-SA 4.0进行许可。