越权漏洞概述:
由于没有对用户权限进行严格判断,导致低权限账号(比如普通账号)可以去完成高权限账号(比如超级管理员)范围内的操作
平行越权:
A用户和B用户属于同一级别用户,但各自不能操作对方个人信息,
但是A用户越权操作了B用户的个人信息的情况
垂直越权:
A用户权限高于B用户,但是B用户越权操作了A用户的权限
越权漏洞属于逻辑漏洞,是由于权限校验的逻辑不够严谨导致。每个应用系统其用户对应的权限是根据其业务功能划分的,而每个企业的业务又都是不一样的,因此越权漏洞很难通过扫描工具发现出来,往往需要通过手动进行测试。
下面我在pikachu平台演示一下
平行越权:
我们在页面登录kobe账号,密码123456,点击查看个人信息
然后我们直接修改链接的username为lucy,我们发现直接可以看到lucy个人信息
查看源码,我们发现他接受信息但是未对发信息的人进行判断
垂直越权:
我们演示思路就是先登录超级管理员用户,进行只有超级管理员才可以进行的操作,抓包,再登录普通用户,用普通用户身份执行刚抓的包,看是否可以执行,是否存在垂直越权漏洞
登陆超级用户,添加用户aaa并抓包
将抓包内容发送到repeater模块,我们看到登录状态的cookie
接下来我们返回登录界面,可以看到aaa用户产生,点击退出登录
返回repeater模块点击发送信息,然后点击follow redirection进行重定向,我们发现已退出超级用户登录
再在登陆界面登录普通用户,我们看到普通用户没有,添加用户权力
刷新登陆界面并抓包,获取普通用户登录态cookie,并复制
找到我们超级用户抓包记录,发送到repeater模块
用普通用户登录态替换超级用户登录态,点击发送,然后重定向,刷新登陆界面,我们发现已有两个aaa用户,这说明它存在垂直越权漏洞