【漏洞通告】Apache Shiro Padding Oracle导致远程代码执行漏洞

漏洞描述

Apache Shiro是一个应用面非常广的Java安全框架,主要用于完成身份校验、会话管理的操作。在Apache Shiro cookie中的通过AES-128-CBC模式加密的rememberMe字段存在问题,容易受到Padding Oracle攻击。攻击者可以通过以下步骤完成攻击:

  1. 用已经存在的用户登录网站,并从cookie中获得rememberMe字段。
  2. 使用rememberMe cookie作为Padding Oracle攻击的前缀。
  3. 通过Padding Oracle加密利用ysoserial生成的攻击代码来构造恶意的rememberMe字段。
  1. 用刚刚构造的恶意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版本。

修复方案

临时防范建议:

在外部设备尝试拦截爆破流量,及时阻止攻击者进行尝试性攻击。