zoukankan      html  css  js  c++  java
  • pikachu——Over Permission(越权漏洞)

    概述:

    由于没有对用户权限进行严格的判断

    导致低权限的账号(比如普通用户)可以去完成高权限账号(比如超管)范围内的操作

    分为水平越权垂直越权

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

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

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

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

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

    水平越权:

    我们登录一下,右上角有提示账号密码。我还是用lili的了,登录之后我们点击 “点击查看个人信息” 就能查看个人信息。

     在这里实际上是通过一个 GET 请求,将要查询的用户信息传递到了后台,

    我们把 lili 修改为 lucy,提交请求后我们就能查看 lucy 的信息,说明是存在水平越权的漏洞

     

    这样,没有经过密码验证就查看了其他平级用户的信息,这是水平越权。

    垂直越权:

    我们先登录超级管理员的账号,这里有两个用户admin/123456,pikachu/000000。admin是超级管理员

     我们现在添加一个用户:

    然后抓包,这是他新建的用户的数据包,并且有登录状态的cookie,把这个请求发送到 Repeater 中

    然后退出管理员账号,重放这个数据包,这时候用户是会添加失败的,因为没有登录状态。登录普通用户账号,取出当前账号的Cookie

    用上图中的Cookie修改我们刚刚发送到 Repeater 中那个数据包的  Cookie,再重放这个数据包。

     

    这时候就添加了另一个用户,第一个是超级管理员添加的;另一个是普通用户重放超级管理员的数据包添加的。

     普通管理员去做超级管理员的操作就是垂直越权,但是比较鸡肋 因为现实很难抓到超级管理员的包。

  • 相关阅读:
    oracle 在C# 中调用oracle的数据库时,出现引用库和当前客户端不兼容的问题解决方案
    oracle user locked(timed)处理
    Windows下Oracle 11g安装以及创建数据库
    Windows下Oracle 11g创建数据库
    Windows下Oracle 11g的下载与安装
    C# 正则表达式大全
    socket-WebSocket HttpListener TcpListener 服务端客户端的具体使用案例
    InstallUtil操作WindowsService
    通过cmd 使用 InstallUtil.exe 命令 操作 windows服务 Windows Service
    Robots.txt 协议详解及使用说明
  • 原文地址:https://www.cnblogs.com/qi-yuan/p/12554630.html
Copyright © 2011-2022 走看看