漏洞概述
这是一个反序列化漏洞,是一条新的gadget,在低版本的JDK中可能会造成RCE风险。
漏洞分析
测试环境weblogic14c版本,测试JDK 1.8版本。

首先会调用BadAttributeValueExpException.readObject方法。
image-1661844961380
接着会调用SessionData.toString方法
image-1661844971353
接着会调用SessionData.isDebuggingSession方法
image-1661844982797
接着会调用SessionData.getAttribute方法
image-1661844994275
接着会调用SessionData.getAttributeInternal方法
image-1661845004215
接着会调用AttributeWrapperUtils.unwrapObject方法
image-1661845016057
接着会调用AttributeWrapperUtils.unwrapEJBObjects方法

image-1661845027415
接着会调用BusinessHandleImpl.getBusinessObject方法
image-1661845040095
接着会调用HomeHandleImpl.getEJBHome方法
image-1661845050380
可以看到这里调用了ctx.lookup方法

修复建议

及时更新补丁,参考oracle官网发布的补丁:
https://www.oracle.com/security-alerts/cpujan2022.html