迷糊的全局守卫
2023-6-24 08:31:21 Author: 星冥安全(查看原文) 阅读量:8 收藏

随着技术的发展,前后端分离越来越流行,因为这样的流程使得前后端各负其责, 前端和后端都做自己擅长的事情,不互相依赖,开发效率更快,而且分工比较均衡,会大大提高开发效率,但有些问题也显露了出来......

随着技术的发展,前后端分离越来越流行,因为这样的流程使得前后端各负其责, 前端和后端都做自己擅长的事情,不互相依赖,开发效率更快,而且分工比较均衡,会大大提高开发效率,但有些问题也显露了出来......

F12 发现了许多敏感的路由,便注册一个账号 开始进行测

进来后当然是习惯的拼接路径,来未授权 可是无果。后发现有两个相同的path

观察了一下,发现一个可以访问页面权限大,一个访问页面的权限小。然后看了看F12-NetWork,发现了问题

研究了一会,决定尝试把role="APPLICANT",修改成role="SCHOOL"看是否可以访问权限大的页面

越权成功!

最近在研究的时候发现上面案例的问题还是挺多网站存在的,然后自己总结 + 分析原因 后又发现新一类的问题的思路

看了上一个案例,再通过下面两张图相信大家已经知道了我的下一步

将role="student"修改为role="sa",直接放结果图

思考是因为我只修改了response,并没有实际的去修改返回的token,那么又是怎么 “越权” 的呢?

发现这类问题通常伴随着鉴权不严格所导致的,观察了没有修改role的请求,发现没有token字段的存在

后看了看JS文件,发现了管理员是如何发起请求的

手动构造数据包,成功获取数据!所以如果以后我们从JS找到了一些接口,访问却提示无权限,那么我们就可以尝试在JS里管理员请求所带上的字段,再次尝试访问

F12 发现了许多敏感路径 注册一个账号 开始测试

然后尝试拼接实现未授权,拼接,虽然提示没有权限 + 跳转回home页面,但是他这一瞬间显示的总用户和总提交数引起了我的注意,感觉有戏

抓包访问,发现是有一处接口的功能是返回总用户数,看来他只做了前端的全局守卫看是否为管理员,后端并没有进行认真的鉴权

抓包进入,点击 “题目” ,后再放包,即可绕过跳转逻辑

未授权成功!

到这里,前后端分离的一些问题也是显露了出来,前后端做的事情不协调,后端以为前端使用全局守卫已经很安全,就没有对接口进行严格的鉴权操作,导致了问题的出现

转载:https://forum.butian.net/share/1779作者:TUANOAN欢迎大家去关注作者

欢迎师傅加入安全交流群(qq群:611901335),或者后台回复加群

如果想和我一起讨论,欢迎加入我的知识星球!!!

扫描下图加入freebuf知识大陆

师傅们点赞、转发、在看就是最大的支持

后台回复知识星球或者知识大陆也可获取加入链接(两个加其一即可)


文章来源: http://mp.weixin.qq.com/s?__biz=MzkxMDMwNDE2OQ==&mid=2247491202&idx=1&sn=a4b4294a444b9319f2382365c68b521c&chksm=c12c2844f65ba152f8b355de9b2f08aeab901464891efef12dc712e7713877cd1e9674cdad84#rd
如有侵权请联系:admin#unsafe.sh