逻辑漏洞:初识水平越权与垂直越权

news2024/11/19 13:26:54

目录

1、什么是越权漏洞呢?

2、水平越权

3、垂直越权

4、burpsuite autorize插件


最近在学习逻辑漏洞的相关知识和技能,这里pikachu靶场作为演示进行学习一下:

pikachu靶场:GitHub - zhuifengshaonianhanlu/pikachu: 一个好玩的Web安全-漏洞测试平台

进入到水平越权和垂直越权的页面:

可以看到该靶场是这样介绍越权漏洞的:

如果使用A用户的权限去操作B用户的数据,A的权限小于B的权限,如果能够成功操作,则称之为越权操作。 越权漏洞形成的原因是后台使用了 不合理的权限校验规则导致的。

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

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

1、什么是越权漏洞呢?

参考其他大佬总结的:

漏洞产生的原理:逻辑越权漏洞就是不同用户之间操作权限的请求数据包没有做验证或验证不完整,导致用户A修改了身份验证的标志后,就有了同权限或高权限的操作权限。

通常用户访问一个应用的大致流程是:登陆—验证权限—数据库查询—数据返回,如果”验证权限”这个阶段出现验证权限不足或没有验证,那么就会导致越权,用户A可以操作其他用户的内容。

逻辑越权分为两类:水平越权和垂直越权

水平越权-同级用户权限共享:用户信息获取时未对用户与ID比较判断直接查询等

垂直越权-低高用户权限共享:数据库中用户类型编号接受篡改或高权限操作未验证等

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

2、水平越权

点击进入到进入到水平越权页面

可以看到是一个登录框,并且点击提示可以看到给出的账号和密码,那么就来尝试登录一下:

可以看到成功的登录

下面就需要对水平越权的概念进行一下理解了:水平越权-同级用户权限共享:用户信息获取时未对用户与ID比较判断直接查询等

那么我们就可以尝试在登录时抓包然后看是否存在可以修改用户ID的地方:

修改后,然后放包查看:

可以看到,本来我们在输入框输入的lucy用户,通过抓包修改,利用水平越权成功的登录到了lili用户中,那么如果这个情况出现在游戏账号中,一个不充钱的小白是不是可以越权到V10氪金大佬的账号中呢(当然没有那么容易)

3、垂直越权

点击进入到垂直越权页面:

可以看到页面也是一个登录框,并且提示我们这里有两个用户,

pikachu/000000

admin/123456

并且说明这个admin用户是超级boss

进行操作前我们再来看看垂直越权的概念:垂直越权-低高用户权限共享:数据库中用户类型编号接受篡改或高权限操作未验证等

那不用想了,一定是要用低权限的pikachu来越权到admin了

那么试试使用上面的方法,尝试登录pikachu用户,然后抓包将用户名和密码修改为管理员的:

然后放包:

可以看到成功的登录到了admin用户中,可以对所有的用户进行管理,这里也可以增加一个用户,留个小后门,防止管理员更改密码后无法登录

4、burpsuite autorize插件

下面介绍一个好用的越权burp autorize插件的使用,这里直接引用大佬的总结介绍:

Autorize 是一个旨在帮助渗透测试人员检测授权漏洞的扩展,这是 Web 应用程序渗透测试中比较耗时的任务之一。

将低权限用户的 cookie 提供给扩展程序并使用高权限用户浏览网站就足够了。该扩展会自动重复每个请求与低权限用户的会话并检测授权漏洞。

除了授权漏洞之外,还可以在没有任何 cookie 的情况下重复每个请求,以检测身份验证漏洞。

该插件无需任何配置即可工作,但也是高度可定制的,允许配置授权执行条件的粒度以及插件必须测试哪些请求,哪些不需要。可以保存插件的状态并以 HTML 或 CSV 格式导出授权测试报告。

报告的执行状态如下:

绕过!- 红色

强制执行!- 绿色

强制执行???(请配置强制检测器) - 黄色

安装方法参考:​越权检测 burp插件 autorize 使用-腾讯云开发者社区-腾讯云

然后还是用pikachu靶场来演示一下:

首先登录pikachu用户获取低权限的cookie:

然后放到autorize插件中:

尝试访问高权限用户:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1636880.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Web】2024XYCTF题解(全)

目录 ezhttp ezmd5 warm up ezMake ez?Make εZ?мKε? 我是一个复读机 牢牢记住,逝者为大 ezRCE ezPOP ezSerialize ezClass pharme 连连看到底是连连什么看 ezLFI login give me flag baby_unserialize ezhttp 访问./robots.txt 继…

运行DeepSORT_YOLOv5_Pytorch时出现的问题

文章目录 前言问题1:Loaderyaml.FullLoader问题2:utils. -> yolov5.utils.问题3:np.float -> float问题4:np.int -> int问题5:ImportError: cannot import name time_synchronized from yolov5.utils.torch_u…

ip ssl证书无限端口网站

IP SSL证书是由CA认证机构颁发的一种特殊数字证书。大部分SSL数字证书都需要用户使用域名进行申请,想要对公网IP地址加密实现https访问就需要申请IP SSL证书。IP SSL证书采用了强大的加密算法,可以有效地防止数据在传输过程中被窃取或篡改,具…

洞察Agent AI智能体的未来:机遇与挑战并存

🔒文章目录: 🛴什么是Agent AI智能体 💥Agent AI智能体的技术组成 ☂️Agent AI智能体的应用场景 💣Agent AI智能体的挑战与问题 🚲 Agent AI智能体在未来社会中的角色和影响 ❤️对Agent AI智能体未来的期…

解决iview(view ui)中tabs组件中使用图片预览组件ImagePreview,图片不显示问题

同学们可以私信我加入学习群! 正文开始 前言一、问题描述二、原因分析三、解决方案总结 前言 最近在写个人项目的web端和浏览器插件,其中一个功能是base64和图片的转换。因为分成四个小功能,所以使用的iview的tabs来展示不同功能&#xff0c…

讯饶科技 X2Modbus 敏感信息泄露

讯饶科技 X2Modbus 敏感信息泄露 文章目录 讯饶科技 X2Modbus 敏感信息泄露漏洞描述影响版本实现原理漏洞复现修复建议 漏洞描述 X2Modbus是一款功能很强大的协议转换网关, 这里的X代表各家不同 的通信协议,2是To的谐音表示转换,Modbus就是最…

STM32进入睡眠模式的方法

#STM32进入睡眠模式的方法 今天学习了如何控制STM32进入睡眠模式,进入睡眠模式的好处就是省电,今天学习的只是浅度睡眠,通过中断就能唤醒。比如单片机在那一放,也许好几天好几个月都不用一次,整天的在那空跑while循环…

德国著名自动化公司Festo设计了一款仿生蜜蜂,仅重34g,支持多只蜜蜂编队飞行!...

德国著名的气动元件研发及自动化解决方案供应商Festo公司近日展示了一款仿生蜜蜂(BionicBee),重量只有34g,却完全可以实现自主飞行,还支持多只相同的蜜蜂机器人编队飞行。 BionicBee 重约 34 克,长 22 厘米…

自学Java要到什么程度才足够能力去实习和就业?

引言 Java,作为当今软件开发领域的主流编程语言之一,对于初学者而言,明确掌握到什么程度才能开始寻找实习和入职机会是至关重要的。这涉及到对Java知识体系的理解深度、技能掌握程度以及实际项目经验的积累。 本文将分别从实习和入职两个不…

数据结构——插入排序

基本思想: 直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列 。 实际中我们玩扑克牌时&…

Scala 多版本下载指南

Scala,这一功能丰富的编程语言,结合了面向对象和函数式编程的精华,为开发者提供了强大的工具来构建高效、可扩展的应用程序。随着Scala社区的不断壮大和技术的演进,多个版本的Scala被广泛应用于不同的项目与场景中。本文旨在为您提…

Python 中的花卉矩阵组合

使用场景描述 (rib) 协议编写脚本的基础知识。通过创建在 3D 空间中转换的基本几何图形,解决了 xyz 坐标系的基础知识。初步渲染是使用基本着色完成的,因此可以更容易地看到几何体。RenderMan 图1 图 1 是我作为作业参考的示例图片,并尝试匹配 中的图片。为了完成这项任务…

【快速推理】OpenCV三行代码部署YOLOv8全系模型

学习《OpenCV应用开发:入门、进阶与工程化实践》一书,学会本文所有技能就这么简单! 做真正的OpenCV开发者,从入门到入职,一步到位! YOLOv8全系模型推理支持 大家好,OpenCV实验大师最新C SDK已…

【C语言】——数据在内存中的存储

【C语言】——数据在内存中的存储 一、整数在内存中的存储1.1、整数的存储方式1.2、大小端字节序(1)大小端字节序的定义(2)判断大小端 1.3、整型练习 二、浮点数在内存中的存储2.1、引言2.2、浮点数的存储规则2.3、浮点数的存储过…

3. BGP 实验(一):基础实验

3.1 BGP 基础实验 3.1.1 实验介绍 3.1.1.1 学习目标 1. 实现 IBGP 的配置 2. 实现 EBGP 的配置 3. 观察 BGP 的邻居表 4. 实现 BGP 更新源的配置 5. 实现 EBGP 多跳的配置 6. 观察 IBGP 和 EBGP 中路由的下一跳的变化 3.1.1.2 实验组网介绍 设备连接方式、IP 地址规划、BGP…

用于复杂任务的 AI 编码引擎:多文件多步骤拆解实现 | 开源日报 No.239

plandex-ai/plandex Stars: 3.1k License: AGPL-3.0 plandex 是一个用于复杂任务的 AI 编码引擎。 使用长时间运行的代理完成跨多个文件且需要多个步骤的任务将大型任务分解为较小子任务,逐一实现,直至完成整个工作帮助处理积压工作、使用陌生技术、摆…

内网端口转发与代理

思路:渗透的前提是双方能够建立通信。目前无法和win7建立通信,但是拿到了windows2003的权限,所以可以在Windows2003主机上面建立节点,作为跳板机去访问到内网。 目前状态:控制win2003(IP:192.1…

工作任务管理平台B端实战项目作品集+WebApp项目源文件 figma格式

首先,作品集是什么?通常应该包含什么内容?为什么大家都在做自己的作品集呢? 作品集是个人或公司展示其过往工作成果的集合,通常包括各种专案、作品或成就的范例,用以展示创建者的技能、经验和专业水平。 …

STM32利用硬件I2C读取MPU6050陀螺仪数据

有了前面的基本配置,这节读取MPU6050的数据还算是简单,主要就是初始化时给MPU6050一些配置,取消睡眠模式,MPU6050开机是默认睡眠模式的,读写无效,所以上来就要先更改配置: MPU6050寄存器初始化…

SSH远程登录实操实验!

ssh远程登录协议:默认端口号22 以下实验7-2是服务端,7-1是客户端 服务器的相关信息: 服务名称:sshd 服务端主程序:/usr/sbin/sshd 服务端配置文件:/etc/ssh/sshd_config 客户端相关信息: …