Skip to content

Latest commit

 

History

History
27 lines (16 loc) · 840 Bytes

README.md

File metadata and controls

27 lines (16 loc) · 840 Bytes

Apache Shiro CVE-2020-13933

Build

  1. mvn install
  2. run person.xu.vulEnv.ShiroBypassApplication

Environment

  1. Shiro version < 1.6.0
  2. Shiro 在设置权限时参考 person.xu.vulEnv.AuthConfig.shiroFilterFactoryBean

Analyse

由于 ShiroSpringboot 在处理URL的过程中存在差异,导致在实际访问 info/%3bAdmin

  • Shiro 认为访问的页面为 info/ 此页面不需要鉴权,通过权限校验
  • SpringBoot 认为访问的页面为 info/;Admin 返回为此页面下的内容导致绕过

两者处理URl的差异在

  • Shiro: urldecode ---> remove ;
  • Springboot: remove ; ---> urldecode

Reference