Apache Shiro 1.2.4反序列化漏洞(CVE-2016-4437)
Apache Shiro是一款开源安全框架,提供身份认证、授权、密码学和会话管理。Shiro框架直观、易用,同时也提供健壮的安全性。
Apache Shiro1.2.4以及以前部版本中,加密的用户信息序列号后存储在名为remember-me的Cookie中,攻击者开源使用Shiro的默认秘钥伪造用户Cookie,触发Java反序列化漏洞,进而在目标机器上执行任意命令。
漏洞环境
cd /shiro/CVE-2016-4437/
docker-compose up -d
docker ps -a
服务启动后,访问http://your-ip:8080可使用admin:vulhub进行登录。
Shiro特征
-
在网站登录时抓包,勾选rememberMe并且密码错误时,返回包中会有rememberMe=deleteMe
-
在网站登录时,勾选rememberMe并且密码正确时,会返回经过加密的rememberMe值。
-
如果我们不进行登录去抓取时,是没有rememberMe字段的。可以在Cookie处改写为rememberMe=1判断返回包是否返回rememberMe字段
漏洞复现
当我们根据上述Shiro特征判断使用Shiro框架时,就要去检测是否存在漏洞。这里我们使用jar工具去检测是否存在漏洞。
[验证工具下载地址]:(https://github.com/feihong-cs/ShiroExploit-Deprecated/releases/tag/v2.51)
点击下一步进行验证
点击下一步
反弹shell
反弹成功