0x01|关于Shiro反序列化漏洞的一些思考


0x01|关于Shiro反序列化漏洞的一些思考
文章插图
Shiro反序列化虽然被很多大佬们在前几年的学习中都总结的差不多了,但有些知识的总结思考还不是很具体。本文主要以抛出问题的方式,努力寻找在实际调试过程中遇到问题的真实答案,最后结合前辈们总结的知识点也用实践检验了知识点,特此记录。
0x01 漏洞简介0x1 介绍Shiro是一个强大而灵活的开源安全框架,它非常简单的处理身份认证,其中提供了登录时的RememberMe功能,让用户在浏览器关闭重新打开后依然能恢复之前的会话。
【 0x01|关于Shiro反序列化漏洞的一些思考】此次分析的漏洞是一个标准的反序列化漏洞,其原理是Cookie中的rememberMe字段使用AES加密及Base64编码的方式储存用户身份信息,因此我们只要能够伪造Cookie并且让服务器正确的解密后反序列化任意对象,就可以造成一定的危害。
其实Shiro反序列化的漏洞触发和加解密分析都是比较简单的部分,最难的地方在于反序列化利用的部分,坑点全在这里。
0x2 漏洞适用版本1.2.4版本及以下,整体流程是Base64解码—>AES解密—>反序列化。
我们从环境搭建开始一步步了解并掌握其中的知识。
0x02 环境搭建0x1 docker 容器下载docker run -d -p 8080:8080 -p 5006:5006 medicean/vulapps:s_shiro_1

    推荐阅读