碰到shiro反序列化漏洞,大家都是怎么解决的(shiro反序列化复现)

  本篇文章为你整理了碰到shiro反序列化漏洞,大家都是怎么解决的(shiro反序列化复现)的详细内容,包含有shiro反序列化综合利用工具 shiro反序列化复现 shiro反序列化 shiro721反序列化 碰到shiro反序列化漏洞,大家都是怎么解决的,希望能帮助你了解 碰到shiro反序列化漏洞,大家都是怎么解决的。

  项目是借用一个开源项目,然后被发现有shiro反序列化漏洞,如下图:

  

  有了以上漏洞,就可以在服务器执行任意指令。如下图:

  

  

  解决过程:

  1、升级shiro到最新版本1.9.1,却发现还是可以挂马;

  2、查开源代码,发现代码里面有指定密钥(可能是早期版本的shiro需要吧),如下:

  

cookieRememberMeManager.setCipherKey(Base64.decode("fCq+/xW488hMTCD+cmJ3aQ=="));
删除后,改成随机密钥。

 

  3、用shiro反序列化漏洞工具扫描,已经无法直接挂马,但还是有两点,可以扫描发现shiro框架,可以爆力穷举密钥。如下图:

  

  

  当然16字节的密钥,是不是很稳,这个就不讨论了。

  

  所谓不怕贼偷就怕贼惦记。

  然后就试了能不能优化,

  改rememberMe关键字,但是用postman,在返回cookie里面可以轻松找到关键字;

  

  然后再用工具 ,假设有耐心的情况下,依然可以完美入侵,如下图:

  

  了解shiro反序列化漏洞的原理知道,攻击者是通过cookie攻击,再进行反序列化的利用,这里也没有找到如何关闭rememberMe功能,

  就打印了一下cookie的内容

  

  发现攻击者是先尝试发一个rememberMe,检测是否有shiro框架可以利用。

  如果有shiro框架,就发第二段cookie内容,rememberMe的值是一段攻击代码,做了base64加密

  既然这样,

  干脆就拦截删除rememberMe的cookie值,

  当然,您们也可以对所有开放的路径做个性化的处理,

  (如果您们有其他办法,欢迎一起讨论讨论)

  

  以上就是碰到shiro反序列化漏洞,大家都是怎么解决的(shiro反序列化复现)的详细内容,想要了解更多 碰到shiro反序列化漏洞,大家都是怎么解决的的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: