首页 > 其他分享 >越权漏洞学习-做你做不了的事情

越权漏洞学习-做你做不了的事情

时间:2024-08-18 10:49:43浏览次数:5  
标签:做不了 用户 漏洞 管理员 权限 id 越权

原文链接:https://blog.csdn.net/weixin_49349476/article/details/131362007

(一)、什么是越权漏洞
1、了解越权漏洞:
越权漏洞是指一个用户或者一个攻击者通过利用系统中某一漏洞,可以获得超过其正常权限的权限。也就是说,越权漏洞会使攻击者能够执行未经授权的操作或访问受保护的资源

简单来说,你干了原本你不能干的事情,例如,原本是vip才能看的视频,你不充值,而是通过某一个方法也能看,这就是越权。通过实现越权的地方,这个地方就是存在越权漏洞

2、越权漏洞的分类:
水平越权:权限是同级别的,但是是给不同的对象使用。例如:一般不同的用户只有对自己信息修改的权限,如果出现用户A能对用户B的信息进行修改,这就是水平越权

垂直越权:从低权限到高权限的翻越。例如普通用户到了超级用户

交叉越权:水平越权与垂直越权的集合

 3、越权漏洞产生的原因

越权漏洞产生关键点:

用户提交(主动或被动)的数据内容被带入到资源操作(增删改查)逻辑中
后端程序未对请求操作资源的用户身份进行合理判断
越权漏洞产生的主要原因是由于程序在设计或者代码实现上没有考虑权限控制的问题。攻击者可以使用这个漏洞,通过修改或者篡改程序中的参数或数据,使得程序在处理之前没有对数据进行合理的授权验证,让攻击者获得程序中本不应该拥有的权限,从而进行攻击

举个例子,如上图,用户A只能对自己的订单15167,进行编辑,用户B只能对自己的订单15166进行编辑。这是正常情况,如果用户A在提交自己订单时候,对利用抓包工具对其抓包,然后把自己的订单号15167改为了15166,即用户A提交的信息,不是自己的订单,而是用户B的订单,如果后台程序没有对身份验证,之后就处理了A的请求。越权漏洞就这样产生。

4、越权测试规范
在越权测试的时候,是有一些要求的,如下:

越权读取的时候,能读取到的真实数据不超过5组,严禁进行批量读取。
帐号可注册的情况下,只允许用自己的2个帐号验证漏洞效果,不要涉及线上正常 用户的帐号,越权增删改,请使用自己测试帐号进行。帐号不可注册的情况下,如 果获取到该系统的账密并验证成功,如需进一步安全测试,请咨询管理员得到同意 后进行测试

(二)越权测试案例
1、水平越权
场景1;在某些购火车票、机票等功能,需要提交用户的身份id(用户的手机号,身份证、证件号等唯一标识),

场景2:在某些查询快递信息等功能,需要提交对象id(例如订单号、记录号)

场景3、在下载某些文件时候,如果文件非常长的大,文件都会有文件id,文件下载也是通过文件id下载

漏洞测试:

这些场景使用到的身份id、对象id、文件id,都是数字组成,在利用bp进行抓包之后,对这些id遍历爆破,从某个id开始,不断的+1递增,不断尝试爆破。如果能对其中一个,提交成功,购买车票成功、查询订单号成功、下载文件成功。这些不是属于自己的权限返回,这就是水平越权。可能严重情况的后果就是泄露用户的敏感信息
如果不是id,而是用户名,也可以采用字典爆破,使用id一般比较方便。
(注:爆破是只是为了方便检测是否有这个漏洞,如果检测到一个,已经到达了目的,建议就立马停止)

在修改用户名,测试越权漏洞:

 

2、垂直越权漏洞:

在皮卡丘靶场有一个案例:

有两个账户,admin,和pikachu,其中,admin账户可以增加账户信息,pikachu没有这个增加账户这个权限。我们想做垂直越权,让pikachu也能够增加账户信息。

第二步:查看pikachu的cookie信息,复制到刚刚抓到数据包的cookie字段中(服务器识别用户身份,就是根据cookie,这一步就是把请求用户的身份换成pikachu)

 

在现实中的,权限和人数往往成反比的,越高的权限,拥有的人越少。总不可能各个都是管理员吧,高权限的人往往比较少,负责管理一个系统,责任极其重要,不能随便给一个人高权限。

在登录时候,要识别登陆是否是管理员权限,一般采用白名单的方法判断,白名单的意思是,对于登录的用户,判断是否存在于管理员表中,如果存在就是判断为管理员,反之则不是。根据这一点中,开发者一般采用几种方法

方法一:利用前端js实现(概率较小)

在登录时候,直接在前端,判断是否管理员,这一种可能是没有接触安全意识的开发者使用,这的确可能发生。因为一般高权限的用户非常少,只需要判断该用户是不是在高权限用户中,就可以。
 

针对这个方法,直接禁用js的触发方法,就可以直接绕过。(轻轻松松的,就进入了)
方法二:带入数据库中查询(概率交大)
 

在这一方法中,有两种情况:

a:有一些开发者,是直接把所有的管理员信息,存放到一个表中,在登录时候,会到这个表中查询,判断登录用户是不是管理员账户
b:会在用户表中添加一个角色字段,来判断是否是管理员,例如user_type、user_status、role_id、is_admin等
所以,在垂直越权漏洞测试中常见的测试点:

注册用户时,是否包含角色相关字段。例如,在注册的时候,对其抓包,发现一个字段role_id,这个可能是角色判断字段,而且值为1,就可以尝试测试,更改值为0,或者2,进行测试,然后登录查看,如果存在管理员权限,说明这里就存在垂直越权
 cookies中是否包含角色相关字段,一些网站开发是把判断角色的信息是放在cookie中,对其抓包之后,查看cookie,是否存在该相关信息。
下面是一个根据cookies中,查看是否包含角色相关字段的案例

在注册用户时候,对其抓包,发现cookie中含有admin字段

然后修改admin的值为1,进行提交,发现登录用户变成了管理员权限

(三)总结
越权漏洞的主要产生原因是在程序开发过程中没有充分考虑权限控制的问题,攻击者可以通过篡改参数或者数据,获得不应该拥有的权限或者资源。
越权漏洞对于系统的安全性和稳定性产生极大的威胁,攻击者可以窃取敏感信息、篡改数据或者破坏系统的正常运行。
防范越权漏洞的措施包括严格的权限控制、数据合法性验证、代码审计、修复已知的漏洞以及安全编程实践等。
对于网站或者应用程序的管理员来说,定期进行安全审计和漏洞扫描是必要的,及时修复已知的漏洞可以在攻击发生前消除安全风险。
最后,对于用户来说,在使用各种在线服务时,应当遵守一些常规的安全措施,例如不轻信陌生人的信息或链接,不在公共场合或者不安全的网络环境下登陆敏感账户等。同时,不要轻易泄露自己的个人信息,保护好自己的账户密码等敏感信息。

 

标签:做不了,用户,漏洞,管理员,权限,id,越权
From: https://www.cnblogs.com/Dongmy/p/18365366

相关文章

  • CORS配置错误漏洞
    基础概念在部署SOP的情况下,为了实现跨域通信,开发人员必须使用不同的技术来绕过SOP,以便传递敏感信息。这种“绕过”发生了太多次,本身已经成为一个安全问题。因此,为了在不影响应用程序安全状态的前提下实现信息共享,HTML5中引入了跨域资源共享(CORS)这种机制,但这并没有解决所有问题。......
  • XXE漏洞
    基本概念XML指可扩展标记语言(eXtensibleMarkupLanguage),是一种用于标记电子文件使其具有结构性的标记语言,被设计用来传输和存储数据。文件读取<?xmlversion="1.0"?><!DOCTYPEdata[<!ELEMENTdata(#ANY)><!ENTITYfileSYSTEM"file:///etc/passwd">]><data>&a......
  • 【漏洞复现】某某康达vpn list_base_config 远程命令执行漏洞
               声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。一、漏洞描述网络设备是确保计算机网络顺畅运行的关键硬件组件,主要包括路由器、交换机、网桥、网卡、集线器、防火墙、......
  • 【漏洞复现】某骋BPM Handler SQL注入漏洞
               声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。一、漏洞描述某骋BPM系统是一款全面的商业流程管理平台,旨在帮助企业自动化和优化业务流程。它集成了工作流引擎、表单......
  • 萌新赛 sprintf漏洞
    首先是个.git源码源码泄露,用githack回复一下源码源码<?php$pass=sprintf("andpass='%s'",addslashes($_GET['pass']));$sql=sprintf("select*fromuserwherename='%s'$pass",addslashes($_GET['name']));?>......
  • 前后端不分离"老"项目,XSS 漏洞处理实践
    前言本月迭代需求没有几个,领导给我派了一个漏洞修复的活。这个项目是一个前后端不分离的ToB老项目,前端使用Velocity模板+JQuery+miniui,后端是用的Spring。嗯,前后端不分离,技术老旧,模块众多且耦合,基础设施不完善,让我从一开始校招(2022)刚进来接触到这个项目时候,就感到“畏惧、难受......
  • wookteam协作平台api/users/searchinfo接口存在SQL注入漏洞 附POC
    @[toc]免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。1.wookteam协作平台简介微信公众号搜索:南风漏洞复现文......
  • 【漏洞复现】某成科信票务管理系统 TicketManager SQL注入漏洞
              声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。一、漏洞描述某成科信票务管理系统以私有/公有云为基础部署,实现了基础六管控多协同的智慧票务系统。该系统提供了票类策......
  • HW漏洞威胁情报第二十天|HW情报
      0x01阅读须知        技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使......
  • 微软紧急发布90个漏洞补丁,其中6个漏洞是被广泛利用的0day漏洞
    微软周二发布了修复程序,以解决总共90个安全漏洞,包括10个零日漏洞,其中6个已在野外受到积极利用。在90个漏洞中,7个被评为严重,79个被评为重要,1个被评为中等严重程度。这也是科技巨头自上个月以来在其边缘浏览器中解决的36个漏洞的补充。6个已被积极利用的零日漏洞:CVE-2024-......