漏洞描述
Apache Shiro是一个应用面非常广的Java安全框架,主要用于完成身份校验、会话管理的操作。在Apache Shiro cookie中的通过AES-128-CBC模式加密的rememberMe字段存在问题,容易受到Padding Oracle攻击。攻击者可以通过以下步骤完成攻击:
- 用已经存在的用户登录网站,并从cookie中获得rememberMe字段。
- 使用rememberMe cookie作为Padding Oracle攻击的前缀。
- 通过Padding Oracle加密利用ysoserial生成的攻击代码来构造恶意的rememberMe字段。
- 用刚刚构造的恶意rememberMe重新请求网站,进行反序列化攻击,最终导致任意代码执行。
目前Apache Shiro并未发放官方补丁和缓解方案,禹宏信安建议使用Apache Shiro的用户及时对存在漏洞的资产进行自查,并及时关注官方安全补丁是否发布。
漏洞编号
无
漏洞危害
攻击者可以通过构造的恶意rememberMe请求网站,进行反序列化攻击,最终导致任意代码执行。
漏洞等级
高危
受影响版本
Apache Shiro 1.2.5, 1.2.6, 1.3.0, 1.3.1, 1.3.2, 1.4.0-RC2, 1.4.0, 1.4.1版本。
修复方案
临时防范建议:
在外部设备尝试拦截爆破流量,及时阻止攻击者进行尝试性攻击。