这几天公司的部署服务器在经过漏洞检测后发现了我们的系统服务器上出现Shiro 反序列化漏洞问题,这个任务自然就落到了我这个产量服务器维护的Java小白身上,下面就简单记录一下自己修复这个漏洞的过程。
开始拿到这个任务其实我还是不明白这个到底是个什么样的问题,于是我就去开开发者社区网站了解了一下这个不知所以的问题。后来我大致了解了这个问题:
漏洞说明
Apache Shiro 框架提供了记住我的功能(RememberMe),用户登录成功后会
生成经过加密并编码的 cookie。cookie 的 key 为 RememberMe,cookie 的值是经过
相关信息进行序列化,然后使用 AES 加密(对称),最后再使用 Base64 编码处理。
攻击者可以使用 Shiro 的默认密钥构造恶意序列化对象进行编码来伪造用户的
Cookie,服务端反序列化时触发漏洞,从而执行命令。
432次
服务器