mvn install
run person.xu.vulEnv.ShiroBypassApplication
Shiro version < 1.6.0
- Shiro 在设置权限时参考
person.xu.vulEnv.AuthConfig.shiroFilterFactoryBean
由于 Shiro
与 Springboot
在处理URL的过程中存在差异,导致在实际访问 info/%3bAdmin
时
- Shiro 认为访问的页面为
info/
此页面不需要鉴权,通过权限校验 - SpringBoot 认为访问的页面为
info/;Admin
返回为此页面下的内容导致绕过
两者处理URl的差异在
- Shiro: urldecode ---> remove
;
- Springboot: remove
;
---> urldecode