Shiro 权限绕过漏洞复现(CVE-2020-1957)

0x00简介

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。

0x01漏洞概述

Shiro框架通过拦截器功能来对用户访问权限进行控制,如anon, authc等拦截器。anon为匿名拦截器,不需要登录即可访问;authc为登录拦截器,需要登录才可以访问。主要是Spring web在匹配url的时候没有匹配上/导致绕过

0x02影响范围

Apache Shiro

0x03环境搭建

1.下载实验代码,下载地址:

https://github.com/lenve/javaboy-code-samples/tree/master/shiro/shiro-basic

2.下载完成后将项目导入Java IDEA中,在pom.xml文件可以看到shiro的版本,把版本修改成1.4.2。(不修改也可)

Shiro 权限绕过漏洞复现(CVE-2020-1957)

3.打开maim目录下ShiroConfig.java文件,添加authc拦截器的拦截正则

map.put(“/hello/*”, “authc”);

Shiro 权限绕过漏洞复现(CVE-2020-1957)

4. 打开LoginController.java文件,修改路由控制器方法,添加一个方法。

import org.springframework.web.bind.annotation.PathVariable;

@GetMapping(“/hello/{currentPage}”)

public String hello(@PathVariable Integer currentPage) {

return “hello”;

}Shiro 权限绕过漏洞复现(CVE-2020-1957)

Shiro 权限绕过漏洞复现(CVE-2020-1957)

5.启动应用点击右上角三角形,运行出现以下图片表示启动成功

Shiro 权限绕过漏洞复现(CVE-2020-1957)

0x04漏洞复现

1.在浏览器访问http://your-ip:8080/login,可以看到需要登录

Shiro 权限绕过漏洞复现(CVE-2020-1957)

2.打开Burp访问首页进行抓包,并将抓到的包送到Reapter模块

Shiro 权限绕过漏洞复现(CVE-2020-1957)

3.将url修改为/hello/1,发包,可以看到跳转到了登陆界面。

Shiro 权限绕过漏洞复现(CVE-2020-1957)

4.在url处/hello/1后面再加上一个反斜杠/hello/1/,访问成功

Shiro 权限绕过漏洞复现(CVE-2020-1957)

0x05修复建议

建议升级至最新版本

在这里,给大家介绍一下“东塔攻防世界靶场”

2020年12月,东塔攻防世界靶场正式对外提供注册,各位小伙伴可通过注册后进行体验。新注册用户可获得一定的积分,对于靶场使用获取正确的Key后,也可以获取一定的经验值,经验值根据排名会不定期给予一定的奖励。

并且,在操作过程中,针对出现的Bug和安全漏洞问题可以和塔塔子提出,审核通过后可以获得相应的奖励积分。

东塔攻防世界网站不定时推出可免费限时使用的靶场,具体可关注东塔网络安全学院推出的一系列活动或添加东塔客服了解详情。

东塔攻防世界靶场主要分为在线靶场和职业体系两大特色板块。且平台内的靶场会定期更新内容,尤其是最新漏洞复现的一些文章和靶场,会优先在靶场中提供环境让大家体验。

东塔攻防世界网站会不定期限时免费推出最新的一些复现的靶场,以供学习交流,给了大家充分体验和使用靶场的机会。

具体可关注东塔网络安全学院推出的一系列活动或添加东塔客服wx(dongtakefu)了解详情。

除了以上介绍的内容,还有更多宝藏区域,更强大的功能,等你来寻宝!

详戳下方“东塔攻防世界靶场”网址,Get一波新世界

https://labs.do-ta.com

相关推荐: 红色警戒!Windows微信蓝屏文件刨析

样本 核心代码为:file:///globalroot/device/condrv/kernelconnect 受灾画面 分析 .url文件 url格式的文件是一种网页文件,只要接触就会触发访问 漏洞分析可见开普勒安全团队此前发的文章《Windows10使用浏…

本文为转载文章,源自互联网,由网络整理整理编辑,转载请注明出处:https://www.hacksafe.net/vuls/5598.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注