APache shiro-550 CVE-2016-4437复现

一、shiro反序列化漏洞原理

Apache Shiro框架提供了记住我的功能(RememberMe),用户登陆成功后会生成经过加密并编码的cookie,在服务端接收cookie值后,Base64解码-->AES解密-->反序列化。攻击者只要找到AES加密的密钥,就可以构造一个恶意对象,对其进行序列化-->AES加密-->Base64编码,然后将其作为cookie的rememberMe字段发送,Shiro将rememberMe进行解密并且反序列化,最终造成反序列化漏洞。

Apache shiro简介

Apache Shiro 是一个强大易用的 Java 安全框架,用于处理身份认证(登录)、授权(权限控制)、会话管理和加密,让应用安全实现变得简单规范。

漏洞影响版本

Apache shiro <= 1.2.4

二、漏洞复现

环境启动成功

随意输入账号密码,点击 Remember me,然后在登录的时候抓包如下。

我们发现请求包中包含rememberme字段,响应包中包含rememberMe=deleteMe这个 Cookie,这是 Shiro 的典型标志。

随后我们使用shiro反序列化漏洞综合利用工具,url输入http://192.168.112.152:8080/doLogin,然后改为POST方式,点击右面的爆破密钥,但是这样显示未发现shiro框架

那么这里我们尝试url输入http://192.168.112.152:8080/,然后再次爆破密钥,这次成功拿到了密钥,所以这里提醒我们再使用工具时候尽量从根目录开始扫描,不用落下某个目录。

然后点击检测当前利用链,随后结果如下,使用构造链CommonsBeanutils1,回显方式选择ALLEcho。

点击命令执行,输入whoami,ok利用成功。

接下来点击内存马,选择蚁剑Filter,输入个路径abc,随后执行注入,发现注入成功。

打开蚁剑,连接类型选择jsp,连接成功!

相关推荐
OpenTiny社区28 分钟前
TinyEngine 2.11版本发布:AI 进一步融入画布,Vue 工程可一键转DSL
前端·vue.js·github
七牛开发者2 小时前
RAG 工程里的上下文剪枝:如何减少 68% 的上下文
前端·css·github
Alex6630287 小时前
我重写了 Hermes Agent,专门修掉了它的 4 个硬伤
github
考虑考虑8 小时前
git中的tag
git·gitlab·github
小墨同学boy9 小时前
WorkBuddy零基础教程进阶篇
人工智能·github·aigc
BerrySen1789 小时前
GitHub开源项目破圈方法论:从技术自嗨到生态共赢
开源·github
JavaGuide1 天前
一个神级 PR Review Agent 诞生了:读 diff、写总结、找风险全自动!
github·ai编程
逛逛GitHub1 天前
1.3 万人点赞的 GitHub 项目,让 AI Agent 操作 Office 文件。
github
OpenTiny社区1 天前
Skill 设计:封装、评测、运营,一次讲透
前端·github