Apache Shiro padding oracle attack漏洞复现
Shiro 使用了 AES-128-CBC 模式对 cookie 进行加密,导致恶意用户可以通过 padding oracle 攻击方式构造序列化数据进行反序列化攻击。
例如之前爆出来的 SHIRO-550 漏洞就是关于 remember 这个 cookie 的问题。
环境搭建
- shiro 打包环境下载地址 https://github.com/jas502n/SHIRO-721
- exp 下载地址 https://github.com/Geekby/shiro_rce_exp
复现环境:ubuntu16.04 + tomcat8 + shiro 1.4.1
apt-get install tomcat8 tomcat8-docs tomcat8-examples tomcat8-admin
然后将下载好的 samples-web-1.4.1.war
包部署到 tomcat
上。
漏洞复现
访问 shiro 登录页面
输入用户名密码,点击 Remember Me
访问任意页面,得到 Cookie 中的 rememberMe
生成 java class payload
执行 exp
得到 padding oracle attack 后的 cookie
注
:破解时间较长,大概持续 100min - 120min 左右。
复制该 cookie,重放数据包
检查执行结果
发现 success 文件成功被创建,命令可以被执行
参考
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论