最近攻防演练,一个业务平台被打穿了,还是个很老的漏洞shiro反序列化,记录一下如何识别这个漏洞。
Shiro 干嘛用的:Shiro 是Java 的一个安全框架。Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE 环境,也可以用在JavaEE 环境。Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与Web 集成、缓存等。
Shiro 功能很多,而Shiro 反序列化漏洞一般会出现在Remember Me功能上:这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。
也就是说在登录、跨域访问的时候会调用这个,那么接下来要找到这个漏洞就简单了。
实战
工具:
Burp Sutie+ShiroScan插件
shiro_attack_2.2综合利用工具
jdk8+jdk11环境:jdk8运行shiro_attack_2.2综合利用工具,jdk11运行最新版本burpsutie
工具包下载
链接:https://pan.baidu.com/s/1yTOfePgj8bU6DJvCDDhfpQ
提取码:6666
被动发现Shiro 反序列化漏洞环境:如果你是个很懒的工具人可以使用ShiroScan插件来被动发现该漏洞。
1.Burp Sutie加载ShiroScan插件
2.测试功能点的时候有相关漏洞会自己发现
3.细心的小伙伴就会发现咋没有发现key,当插件跑不出来key的时候可以使用shiro_attack_2.2综合利用工具进行暴力跑key。
4.跑出key和利用链之后就可以执行命令了
5.剩下的就是反弹shell或者frp代理进行内网横向渗透了,这里就不多演示了。
6.备注:运行shiro_attack_2.2综合利用工具,需要jdk8的环境,与最新burpsutie版本不兼容,建议另外使用虚拟机运行。