zoukankan      html  css  js  c++  java
  • Over Permission

    概述:

    如果使用A用户的权限去操作B用户的数据,A的权限小于B的权限,如果能够成功操作,则称之为越权操作。

    越权漏洞形成的原因是后台使用了不合理的权限校验规则导致的。

    一般越权漏洞容易出现在权限页面(需要登录的页面)增、删、改、查的的地方,当用户对权限页面内的信息进行这些操作时,后台需要对当前用户的权限进行校验,看其是否具备操作的权限,从而给出响应,而如果校验的规则过于简单则容易出现越权漏洞。

    因此,在权限管理中应该遵守:

    1. 使用最小权限原则对用户进行赋权;
    2. 使用合理(严格)的权限校验规则;
    3. 使用后台登录态作为条件进行权限判断,别动不动就瞎用前端传进来的条件;

    平行越权:A用户和B用户属于同一级别用户,但各自不能操作对方个人信息,,A用户如果越权操作B用户的个人信息的情况称为平行越权操作。

    垂直越权:A用户权限高于B用户,B用户越权操作A用户的权限的情况称为垂直越权。

    越权漏洞属于逻辑漏洞,是由于权限校验的逻辑不够严谨导致的。

    每个应用系统其用户对应的权限是根据其业务功能划分的,而每个企业的业务又都是不一样的。

    因此越权漏洞很难通过扫描工具发现,往往需要通过手动进行测试。

    靶场:

    水平越权:

    1.进入页面,使用 lucy/123456登录账号,查看个人信息,

     2.观察url发现是通过GET请求,将查询的用户信息传递到后端,

     3.修改username为lili,个人信息发生改变,说明存在水平越权的漏洞

    产生原因:

    后台通过get请求获取到当前登录态的值后并没有进行严谨的校验权限对比(比如传进来的值是lili,通过校验后应该获取的是lili的信息),使得用户可以越权获取别的用户的个人信息。

    垂直越权:

    1.进入页面,登录超级管理员页面,

     2.创建用户xiao,并且抓包发送至Repeater模块,

    3.退出管理员账号,重放这个数据包,这时候用户是会添加失败的,因为没有登录状态

    登录普通用户账号,取出当前账号的Cookie。

     4.用上图中的Cookie修改我们刚刚发送到 Repeater 中那个数据包的  Cookie,再重放这个数据包。这时候就添加了另一个用户,第一个是超级管理员添加的;另一个是普通用户重放超级管理员的数据包添加的。

    参考:

    https://blog.csdn.net/angry_program/article/details/104435334/

    https://www.cnblogs.com/dogecheng/p/11645784.html

  • 相关阅读:
    CentOS下编译安装hping3
    ping命令的几个简单使用
    安装CPqD/ofdissector遭遇的错误
    ldconfig报错 :libstdc++.so.6.0.18-gdb.py不是一个elf文件
    sudo source /etc/profile 提示找不到source命令
    linux下安装pkg-config时遇到"glib-2.0>=2.16"的错
    CentOS6.2编译安装codelite5.3
    Socket构造但不连接
    linux c——dup( )和dup2( )函数详解(转)
    Linux中重定向
  • 原文地址:https://www.cnblogs.com/3cH0-Nu1L/p/13511276.html
Copyright © 2011-2022 走看看