Pikachu对Over Permission的解释:
    如果使用A用户的权限去操作B用户的数据,A的权限小于B的权限,如果能够成功操作,则称之为越权操作。 越权漏洞形成的原因是后台使用了 不合理的权限校验规则导致的。
    一般越权漏洞容易出现在权限页面(需要登录的页面)增、删、改、查的的地方,当用户对权限页面内的信息进行这些操作时,后台需要对 对当前用户的权限进行校验,看其是否具备操作的权限,从而给出响应,而如果校验的规则过于简单则容易出现越权漏洞。
    因此,在在权限管理中应该遵守:
    1.使用最小权限原则对用户进行赋权;
    2.使用合理(严格)的权限校验规则;
    3.使用后台登录态作为条件进行权限判断,别动不动就瞎用前端传进来的条件;

    我的理解:我登录我的账号,却能对你的账号进行操作,这就是越权,我权限比你低,你权限比我高,我依然能做你这种权限的操作,叫垂直越权。如果我们两个权限一样,我却对你的账号进行了操作,那就是水平越权。属于逻辑漏洞

    1. 水平越权:

    image.pngimage.png
    image.png
    image.png
    成功,结果如图:
    image.png
    明明我登陆的是lucy,却可以查看lili的信息,这就是水平越权,大部分越权漏洞都有hidden的功劳。

    1. 垂直越权:

    image.pngimage.png
    image.png
    这一关的操作点应该是添加用户,先用admin添加一个普通用户,然后用pikachu普通用户垂直越权也添加用户
    先添加一个cs用户,并且同时抓包
    image.png
    image.png
    image.png
    然后退出登录,并登录pikachu且刷新抓包拿cookie
    image.png
    只能查看
    image.png
    image.png
    复制pikachu的cookie,并粘贴到刚刚admin添加用户的包去,这样就相当于是用pikachu来添加用户,成功就代表垂直越权。
    image.png
    放包看结果
    image.png
    成功了,使用pikachu用户,做了admin的操作,这就是垂直越权
    其实这关有点问题的,我想垂直越权,必须要有管理员的包,但是我都能搞到管理员的包了,我直接用它操作啊,何必多此一举再去用pikachu操作呢。

    修复建议:

    1. 只要不用hidden把用户标识放在前端,那么就可以防止水平越权,
    2. 只要不被抓到管理员的包,那么至少在这关是无法实现垂直越权的
    3. 校验要严格,任何敏感操作都应该多重验证加token