越权漏洞详解

article/2025/11/11 2:38:46

文章目录

  • Over Permission
    • 越权风险问题
    • 概述
    • 漏洞产生条件
    • 常见越权漏洞
    • 水平越权(平行越权)
      • 概述
      • pikachu靶场练习1
    • 垂直越权
      • 概述
      • pikachu靶场练习
    • 修复建议
    • 练习

Over Permission

越权风险问题

越权访问(Broken Access Control,简称BAC)是Web应用程序中一种常见的漏洞

越权访问漏洞的产生
比如,某个订单系统,用户可以查询自己的订单信息。A用户查询订单时,发送的HTTP请求中包含参数orderid=A,订单系统取得orderid后最终会查询数据库,查询语句类似于select * from tablename where orderid = A。B用户查询订单时,发送的HTTP请求中包含参数orderid=B,系统查询数据库语句类似于select * from tablename where orderid = B。正常情况下,每个用户只会查询到自己的订单。但是,当B用户将自己的HTTP请求参数修改orderid=A,那么最终B用户执行的数据库语句变成了select * from tablename whereorderid = A,导致A的订单信息被B用户获取到了。

概述

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

漏洞产生条件

越权漏洞高于逻辑漏洞(逻辑漏洞就是指攻击者利用业务的设计缺陷,获取敏感信息或破坏业务的完整性。一般出现在密码修改、越权访问、密码找回、交易支付金额用户登录等功能),是由于权限校验的逻辑不够严谨导致的。每个应用系统其用户对应的权限是根据其用户功能划分的,而每个企业的业务又都是不一样的。因此越权漏洞很难通过扫描工具发现出来,往往需要手动进行测试。

常见越权漏洞

  1. 通过修改GET传参来越权。案例
  2. 修改POST传参进行越权。 案例
  3. 修改cookie传参进行越权。案例
  4. 抓取传参可以在浏览器、APP、应用程序exe 案例
  5. 未授权访问。严格意义上而言这个不属于越权漏洞,但是在日常测试中常常会遇见。只要输入正确的网址就可以直接访问,例如/admin默认是登录,登录后跳转到user.php,然后你直接访问user.php,发现你直接有后台权限。 案例
  6. 业务逻辑绕过。 案例

水平越权(平行越权)

概述

A用户和B用户属于同一级别用户,但各自不能操作对方个人信息,A用户如果越权操作B用户的个人信息的情况称为平行越权操作。
在这里插入图片描述

pikachu靶场练习1

在当前已登陆的lucy的个人信息页面,修改url里面的username,改为lili的用户名,如果可以登陆成功查看lili的信息,说明这是一种越权行为,我们需要在源代码中添加一段判断的get请求是否来自于lucy即当前登录的用户的代码,来拒绝越权的尝试。
在这里插入图片描述

垂直越权

概述

权限较低的用户去执行高权限用户的操作。
在这里插入图片描述

pikachu靶场练习

1.获取普通用户登录态的cookie
在这里插入图片描述
2.用普通用户的cookie来代替超级管理员创建新用户的cookie,在burp页面右键点击发送到repeater,关闭代理。在超级管理员创建用户的页面点击回到admin,在burp页面点击send,刷新超级管理员的登陆页面,即可操作成功。
在这里插入图片描述

用普通用户的身份进行超级管理员的操作,如果操作成功,即可说明后台存在垂直越权的漏洞。通过burp抓包拦截超级管理员登陆的数据包,然后将其登录态的cookie【指某些网站为了辨别用户身份、进行 Session 跟踪而存储在用户本地终端上的数据,而这些数据通常会经过加密处理】代替普通用户登录态中的数据包中的cookie,可以操作成功,即进行了一次垂直越权查看后台源码可发现,源码中只有判断超级管理员是否登录的代码,应该添加一段判断当前用户登陆的权限,判断用户级别是否为超级管理员的代码。
在这里插入图片描述

修复建议

越权访问漏洞产生的主要原因是因为没有对用户的身份做判断和控制,防护这种漏洞是,可以使用session【当访问服务器某个网页的时候,会在服务器端的内存里开辟一块内存,这块内存就叫做`SESSION】来控制,例如用户在登录成功后, 将用户名写入session中,当用户查看个人信息时,通过session中取出username,而不是从GET或者POST中取到username,那么此时的username就不会被篡改了

练习

靶场练习题
在这里插入图片描述
在这里插入图片描述
方法

  1. 网页下方有登陆提示,系统测试账号用户名为test,密码为test;
  2. 点击右键查看源码,点击马春生的照片,在网页的url即可查看马春生的id;
  3. 按F12打开 开发者工具,点击网络;
  4. 登录系统测试账号,查看网络一栏下面发起的请求;在这里插入图片描述
  5. 点击json.php?card_id=......文件,打开文件,查看网页url,将网页的url中的id替换为马春生的id,访问页面;
    在这里插入图片描述
  6. 我们可以看见马春生的用户名为m233241,密码为MD5加密,解密后的密码为9232343; MD5解密工具
  7. 输入马春生的用户名和密码,登陆成功即可得到key。
    在这里插入图片描述

http://chatgpt.dhexx.cn/article/UYILiZCQ.shtml

相关文章

逻辑越权总结(超详细总结涉及各类越权)

逻辑越权总结(超详细总结涉及各类越权) 1.逻辑越权1.1.漏洞原理1.2.漏洞原因1.3.水平越权1.3.1.原理1.3.2.漏洞出现位置1.3.3.危害1.3.4.案例1.3.4.1.登录账号1.3.4.2.获取信息1.3.4.3.修改信息 1.4.垂直越权1.4.1.原理1.4.2.漏洞出现位置1.4.3.条件1.4.…

浅谈越权

浅谈越权 越权(或者说权限提升,Privilege Escalation)是指攻击者能够执行其本身没有资格执行的一些操作,属于“访问控制”的问题。用大白话讲,越权就是“超越了本身拥有的权限,干了本来不可能干的事儿” 漏…

越权

越权介绍水平越权垂直越权寻找越权漏洞 一、越权介绍 越权,从字面意思理解就是用户可以操作超过自己管理权限范围的功能。 大多数web应用系统都具备权限划分和控制,但是如果权限校验存在问题,攻击者就可以通过这些问题来访问未经授权的功能或…

浅谈一下什么是越权问题?

1、什么是越权? 越权(或者说权限提升,Privilege Escalation)是指攻击者能够执行他本身没有资格执行的一些操作,属于“访问控制”的问题。用大白话讲,越权就是“超越了你你拥有的权限,干了你本来…

快充协议(QC/PD/PE)及标准

快充协议(QC/PD/PE)及标准 充电按用途可分为:车充,墙冲,无线充和充电宝(移动电源);按接口可分为Micro-USB, USB-A or B, Type-C和Lightning(Apple); 按充电快…

通过QI协议发射和接收的无线充需要做CE认证吗?RED指令

QI协议其实是一个技术协议,和CE认证没有多大的关系。做了QI认证,还是要做CE认证的。具体的指标是RED指令。 关于如何办理QI认证和CE认证,欢迎关注Liwei_Chan!!每天学习一分钟,让你紧跟时代,扩充…

MQTT 协议

MQTT 简介 MQTT是一种基于客户端服务端架构的发布/订阅模式的消息传输协议。它的设计思想是轻巧、开放、简单、规范,易于实现。这些特点得它对很多场景来说都是很有的选择,特别是对于受限的环境如机器与机器的通信(M2M)以及物联网…

通过QI协议发射和接收的无线充需要做CE认证吗?RED指令?

QI协议其实是一个技术协议,和CE认证没有多大的关系。做了QI认证,还是要做CE认证的。具体的指标是RED指令。 关于如何办理QI认证和CE认证,想更多了解vvv! WPC官网认证产品页面上有更新一款mophie新的发射器,此发射器为定…

通用协议(一)

协议 协议: 协议的本质就是执行一个任务,在密码这个领域有时也称一个协议就是为了计算一个函数,即为求一个函数值,但是这任务或者说求函数值,往往不是有一方来单独计算的,而是由多个参与方合作完成的任务&…

MQTT协议

目录 MQTT协议的通信模型 MQTT消息格式* 1 固定报头 2 可变报头 3 负载 MQTT控制报文 1 CONNECT-连接服务器* 2 CONNACK-确认连接请求 3 PUBLISH-发布消息* 4 PUBACK-发布确认 5 PUBREC-发布收到 6 PUBREL-发布释放 7 PUBCOMP-发布完成 8 SUBSCRIBE-订阅主题* …

【协议_简介】

协议简介常见协议UDP协议IP协议以太网帧协议ARP协议封装分用网络通信的过程ARP协议:通过IP地址查找MAC地址 协议简介 协议,网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这…

netty实现多协议,多编解码器

实现多协议,多编解码器详解 前言netty中handler的执行顺序和条件(重要)执行顺序入栈handler介绍出栈handler介绍入栈handler处理器顺序出栈handler处理器顺序 执行条件 编码演示客户端服务端 编解码器异常继续传递消息(扩展&#…

什么是802.1q协议

欢迎来到东用知识小课堂! 1.VLAN VLAN全称:Virtual Local Area Network(虚拟局域网),是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。在数据帧的SMAC字段后添加VLAN标签字段,基于接口、IP、MAC或协…

qi无线充电协议_无线充电Qi专利池正式上线!

展位合作,请联系:infochongdiantou.com 此前,充电头网报道了Philips飞利浦将征收无线充专利费的事件,引发行业关于无线充专利费收取的广泛讨论。1月14日,关于大家关心的无线充专利授权,业界有了最新进展&am…

MQTT - 消息队列遥测传输协议

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在19…

无线充qi协议c语言详解,无线充电Qi协议正向通信FSK的解调设计

白光磊 池卿华 王兆俊 江昊 史佳雯 周天 摘 要: 无线充电Qi协议提出发射器和接收器通过频率调制(FSK)方式进行正向通信,进而建立完整的通信状态控制。接收器可采用测宽法进行频率解调,然而由于电磁耦合变化、负载变化、载波占空比变化、测量量化等引起的误差,该方法无法满…

无线充qi协议c语言详解,QI无线充通信协议数据包格式解析

QI通信数据格式编码: 协议规定时钟信号的频率应该是Fclk = 2(4%)KHZ,所以每一位的传输时间约500us,如图所示 数据 0:500us的高电平,或者500us的低电平 数据 1:250us高电平+250us低电平,或者250us低电平+250us高电平 电源接收端(移动设备端)采用 11 位异步串行格式传输数…

无线充电协议Qi 转 UART

前言 最近有个网友联系我,咨询做无线充电的方案; 于是开始评估一下这个方案: 1:无线充电分为供电端无线发射(通过MOS开关斩波,使线圈的电流变化,这样线圈对外才会很强的电磁辐射)受…

无线充QI协议之TX与RX通讯方式篇

谈到无线充通讯,首先得了解下无线充电的工作原理,在描述中,提供功率的一端称为发射端,接收功率的一端称为接收端; 发射端直流电经过全桥转换为交流电,交流电通过线圈产生磁场(电生磁&#xff0…

无线充电原理与QI协议详解

一 、无线充电基本原理 无线充电的基本原理就是我们平时常用的开关电源原理,区别在于没有磁介质耦合,那么我们需要利用磁共振的方式提高耦合效率,具体方法是在发送端和接收端线圈串并联电容,是发送线圈处理谐振状态,接…