Shiro CVE-2022-40664 请求转发导致的验证绕过
💡
原文中文,约6500字,阅读约需16分钟。
📝
内容提要
Apache Shiro 1.10.0之前存在认证绕过漏洞,攻击者可通过未验证路径转发至需验证路径。修复需特定配置,否则请求转发将绕过Shiro过滤器。
🎯
关键要点
- Apache Shiro 1.10.0之前存在认证绕过漏洞。
- 攻击者可以通过未验证路径转发至需验证路径。
- 漏洞复现环境为shiro:1.9.1和springboot:2.7.4。
- 修复漏洞需要特定配置,否则请求转发将绕过Shiro过滤器。
- 补丁必要配置包括设置DispatcherType为REQUEST和FORWARD。
- 如果没有补丁配置,转发请求不会进入Shiro,导致绕过限制。
- 在大于等于shiro 1.10.0的版本中,不用补丁配置也可能发生绕过。
❓
延伸问答
Apache Shiro的认证绕过漏洞是什么?
Apache Shiro 1.10.0之前存在认证绕过漏洞,攻击者可以通过未验证路径转发至需验证路径。
如何修复Apache Shiro的认证绕过漏洞?
修复漏洞需要特定配置,包括设置DispatcherType为REQUEST和FORWARD。
在什么环境下可以复现Apache Shiro的漏洞?
漏洞复现环境为shiro:1.9.1和springboot:2.7.4。
如果不进行补丁配置,会发生什么?
如果没有补丁配置,转发请求不会进入Shiro,导致绕过限制。
在Shiro 1.10.0及以上版本中,是否需要补丁配置?
在大于等于shiro 1.10.0的版本中,不用补丁配置也可能发生绕过。
如何配置Shiro以防止请求转发绕过?
需要在FilterRegistrationBean中设置DispatcherType为REQUEST和FORWARD。
➡️