前言
菜某分享,有误请指正
越权漏洞功能
顾名思义,他能使用别的用户的权力。我们网站有许多用户,有普通用户,管理员,最高级的管理员等多种账户。这个越权漏洞就是指我们可以行使别的用户的权力。
越权漏洞的分类
1.水平越权
这个是指同级别的用户的越权。
打个比方:我是一个qq普通群聊成员,你也是qq普通群聊成员,我能够越权行使你的权力,用你的账号发送脏话,发小视频,然后群主把你给踢了。这就是水平越权。
2.垂直越权
这个是指上下级的用户越权
再打个比方:我们都在qq群里,里面有成员,管理员,群主三种。我是普通成员,看一个管理员不爽,于是我用越权漏洞越权使用群主的权力,把这个管理员给撤了。这种就是垂直越权。
3.未授权访问
这个就是,我压根不需要登录,我甚至没有账户,但是我可以跳过这个流程去使用别人的权力。
越权漏洞的实操案例
这两次演示只是看一下原理就行,真正的网站还要复杂一点,之后会演示一个贴近真网站的。
水平越权案例
靶场环境为pikachu靶场
首先打开靶场看到了一个登录框
我登录我的用户
发现他发送的数据包如下
(这个信息有点奇葩,请不要害怕,这只是我在搞csrf漏洞的时候干的好事)
我们观察数据包,发现他没有什么特殊的地方,唯一特殊的就是这个名字,我们输入了lili他给我们返回了我的信息,那么我们输入别人的名字会不会就会返回别的内容了呢?
实践走起
结果如下
可以看到成功了,但是这个信息除了邮箱之外怎么跟lili这么像?
不要害怕,这也是我干csrf干的好事。
这就是水平越权的原理,很简单是不是,实战跟他差不多但是有些差别,他不会这么明显的一个名字,他会给每人一个编号,我们需要想办法找编号。所以可能用爆破爆破的不是我们想要的账号。
垂直越权案例
还是这个pikachu的靶场,接下来是垂直。
先看靶场环境
同样的登录框
有两个用户,一个是admin,一个是pikachu,admin是管理员
admin用户
pikachu用户
可以看到,两者的页面是不同的。
抓一下admin用户的增添删除数据包样式
可以看到admin用户增添的数据包样式如下
这时就可以思考
用普通用户发送相同的数据包是否能够添加
发送数据包,cookie不同,但是 别的相同
添加成功
可见虽然我们是用的普通用户,但是发送添加用户的数据包依然可以完成添加操作。
判断有越权漏洞的方法
1.水平越权
URL上,或者发送的数据包中找找,有可能像案例一样很明显的输入名字就会改变页面。
当然大部分是一个编号,每个人一个编号,我们拿两个账号抓包查看有没有一个类似编号的东西,然后用burp去对变化的位置去爆破试试。(当然这个编号也可能是规律性的,比如时间+。。。的形式),如果访问到了别人的信息就实现了水平越权。
2.垂直越权
经常在数据库中会有一个表示等级的数字,比如说普通用户可能是1,管理员是2.抓包多留意下这种的参数,然后修改试试,页面变化说明了有垂直越权。
再者就是想办法搞数据包,盲猜,搞源代码,有些界面有修改选项但是需要权限,这时就可以抓个包看他格式,然后再配合修改一下那个关于等级的数字尝试。