pikachu---Over Permission
Over Permission(越权漏洞)
概述:
由于没有对用户权限进行严格的判断,导致低权限的账号(比如普通用户)可以去完成高权限账号(比如超级管理员)范围内的操作。
分类:
水平越权:
A用户和B用户属于同一级别用户,但各自不能操作对方个人信息,A用户如果越权操作B用户的个人信息的情况称为水平越权操作。
垂直越权:
A用户权限高于B用户,B用户越权操作A用户的权限的情况称为垂直越权。
越权漏洞为什么很难通过扫描工具发现出来,往往需要通过手动进行测试?
越权漏洞属于逻辑漏洞,是由于权限校验的逻辑不够严谨导致的。
每个应用系统其用户对应的权限是根据其业务功能划分的,而每个企业的业务又都是不一样的。
平行越权演示:
打开本关,输入正确的账号和密码。
lucy
123456
点击登录,点击“点击查看个人信息”,就可以看到lucy的个人信息。

发现url中提交了一个username=lucy,尝试修改lucy为lili,回车发现转到了lili的个人信息页面,此时就产生了越权漏洞。

查看后台源代码:

修正措施:
后台在获取到用户名的时候,需要和当前登录态的用户名作对比,不是就拒绝掉,防止出现水平越权的操作。
垂直越权演示:
漏洞思路:
- 登录管理员账户,开启抓包,创建账户,退出登录。
- 登录用户账户,将抓到的包以用户的身份重放,如果创建账户成功,则存在垂直越权漏洞。
登录管理员账户,发现有查看用户和添加用户的权限,将火狐浏览器使用burpsuite代理并关闭拦截,点击添加用户,随便输入一组信息,点击创建。

在用户列表中可以找到刚创建的用户。

退出管理员登录,将抓到的包发送到Repeater模块进行重放,发现需要登录,再次登录管理员账户后发现没有创建成功。

使用普通用户登录,发现只有查看权限。

复制用户登录的cookie,将管理员创建用户的包发送到Repeater模块并将管理员的cookie替换为普通用户的cookie,重放后刷新用户界面,发现创建用户成功,存在垂直越权漏洞。

查看后台源代码:
登录代码是没有问题的,判断管理员和用户的级别。

添加用户的代码没有进行级别验证,只验证了是否为登录态,因此存在垂直越权漏洞。


浙公网安备 33010602011771号