背景环境
越权漏洞是我们在测试过程中遇到比较多的漏洞,我们可以这样来理解越权漏洞,一个用户A一般只能够对自己本身的信息进行增删改查,然而由于后台开发人员的疏忽,没有在信息进行增删改查时候进行用户判断,从而导致用户A可以对其他用户进行增删改查等等操作。当然越权漏洞还分为水平越权和垂直越权。
漏洞详情:https://blog.csdn.net/weixin_39997829/article/details/79788969
背景介绍
钻石代理商马春生同学卷款逃跑,多位下级代理内心受到了难以磨灭的伤害,为了找到她我们将通过代理网站获取到她的手机号码等信息。
实训目标
1.了解越权漏洞的相关知识;
2.熟练的使用burp工具获取用户信息;
3.掌握一定的前端知识;
解题方向
越权访问,遍历用户信息。
靶机平台
墨者学院——身份认证失效漏洞实战:
https://www.mozhe.cn/bug/detail/eUM3SktudHdrUVh6eFloU0VERzB4Zz09bW96aGUmozhe
攻击过程
BurpSuite 越权
1、访问地址,获得测试账号:
2、对测试账号进行登录,同时对登录过程的请求包进行拦截并标记后放行,进入系统,获得测试账号的信息:
3、观察登录请求包,发现以下数据包:
来看看对应的响应包:
4、查看网页源码,发现card_id=20128880322
正是每位用户的头像id值:
5、我们返回登录页面,发现可以直接找到目标马春生同学的头像id=20128880316
:
6、接下来开始尝试越权查询,将刚才在BurpSuite中标记的请求包发送到Repeater模块中,修改Card_id的值并Go发送请求,查看服务器返回的信息,发现成功获得目标马春生同学的信息:
7、对获得的密码进行MD5解密,得到马同学m233241账号的密码为9732343:
8、直接登录,获得Key信息,完成任务:
URL 越权
1、在登录test账号后,用F12查看源码,发现还有一个json链接:
【附】此处也可以直接在页面中鼠标右键选择查看网页源码:
2、直接访问该链接,可以查看到用户信息:
3、于是乎,直接上目标id直接查:
F12 发包越权
1、在登录test账号后,查看F12的“网络”请求包,发现json请求:
2、对该请求包直接编辑并重发:
3、查看返回结果,直接获得目标信息:
漏洞修复
- 鉴权,服务端对请求的数据和当前用户身份做校验,在每个页面加载前进行权限认证;
- 不要直接使用对象的实名或关键字,例如订单ID使用随机数;
- 基础安全架构,完善用户权限体系,要知道哪些数据对于哪些用户,那些数据不应该由哪些用户操作;
- 特别敏感操作可以让用户再次输入密码或其他的验证信息。