越权漏洞

article/2025/11/11 11:41:55

什么是越权漏洞?

越权漏洞指的是应用在检查授权时存在纰漏,可以让攻击者获得低权限用户账户后,利用一些方式绕过权限检查,可以访问或者操作其他用户或者更高权限,而越权漏洞是属于业务性漏洞,困难在于这类漏洞并不是代码本身存在问题,我们利用一些自动化检测工具很难检测出漏洞,所以我们需要额外关注这类漏洞。

越权漏洞的分类:

  • 水平越权:用户在同级别用户进行越权访问,删除,修改数据
  • 垂直越权:用户可以向更高级别的用户越权进行访问,修改,删除数据
  • 未授权访问:攻击者在没有获得访问权的情况下可以直接进行访问,修改删除数据

 简单的案例演示

  • 水平越权(pikachu)

先用kobe这个用户登录,抓包

 

 将uesrname=kobe该为username=lucy

 

查看源代码

登录页面 ,如果输入的用户名和密码不为空,且能在数据库中存在,就将用户名和密码存放在session中,并跳转到信息查看页面

if(isset($_POST['submit'])){if($_POST['username']!=null && $_POST['password']!=null){$username=escape($link, $_POST['username']);$password=escape($link, $_POST['password']);//转义,防注入$query="select * from member where username='$username' and pw=md5('$password')";$result=execute($link, $query);if(mysqli_num_rows($result)==1){$data=mysqli_fetch_assoc($result);$_SESSION['op']['username']=$username;$_SESSION['op']['password']=sha1(md5($password));header("location:op1_mem.php");}else{$html.="<p>登录失败,请重新登录</p>";}}

信息查看页面,检查session中的username值是否存在,若存在就从数据库中检索信息并打印出来。但是这里get传进去的值可以被攻击者篡改,从而造成越权漏洞,正确的方法应该是使用$_SESSION['op']['username']来进行校验,因为session存放在服务端,攻击者不能进行伪造

if(!check_op_login($link)){header("location:op1_login.php");
}
$html='';
if(isset($_GET['submit']) && $_GET['username']!=null){//没有使用session来校验,而是使用的传进来的值,权限校验出现问题,这里应该跟登录态关系进行绑定$username=escape($link, $_GET['username']);$query="select * from member where username='$username'";$result=execute($link, $query);if(mysqli_num_rows($result)==1){$data=mysqli_fetch_assoc($result);$uname=$data['username'];$sex=$data['sex'];$phonenum=$data['phonenum'];$add=$data['address'];$email=$data['email'];
<form class="msg1" method="get"><input type="hidden" name="username" value="<?php echo $_SESSION['op']['username']; ?>" /><input type="submit" name="submit" value="点击查看个人信息" /></form>

 垂直越权(pikachu)

 先登录admin管理员账号,然后添加数据,抓取管理员账号的cookie

退出管理员账号,登录普通用户的账号,抓取cookie,将普通用户的cookie替换掉管理员账号的cookie,重新发包,数据添加成功。

 

 代码分析:

这里check_op2_login($link) 只检测了用户的登录状态,即只检测了session是否存在,session存在就通过验证,没有进行级别验证。可以将用户权限放入session中(登录页面中,管理员用户等级为1,普通用户等级为2),然后在数据添加文件代码中添加对用户权限等级的验证。

function check_op2_login($link){if(isset($_SESSION['op2']['username']) && isset($_SESSION['op2']['password'])){$query="select * from users where username='{$_SESSION['op2']['username']}' and sha1(password)='{$_SESSION['op2']['password']}'";$result=execute($link,$query);if(mysqli_num_rows($result)==1){return true;}else{return false;}}else{return false;}
}
if(!check_op2_login($link)){header("location:op2_login.php");exit();
}
if(isset($_POST['submit'])){if($_POST['username']!=null && $_POST['password']!=null){//用户名密码必填$getdata=escape($link, $_POST);//转义$query="insert into member(username,pw,sex,phonenum,email,address) values('{$getdata['username']}',md5('{$getdata['password']}'),'{$getdata['sex']}','{$getdata['phonenum']}','{$getdata['email']}','{$getdata['address']}')";$result=execute($link, $query);if(mysqli_affected_rows($link)==1){//判断是否插入header("location:op2_admin.php");}else {$html.="<p>修改失败,请检查下数据库是不是还是活着的</p>";}}
}


http://chatgpt.dhexx.cn/article/4JqYXy0X.shtml

相关文章

水平越权与垂直越权

文章目录 越权漏洞简介水平越权概念常见场景实例 垂直越权概念常见场景实例 越权漏洞简介 越权&#xff0c;顾名思义&#xff0c;就是超出了权限或权力范围。多数WEB应用都具备权限划分和控制&#xff0c;但是如果权限控制功能设计存在缺陷&#xff0c;那么攻击者就可以通过这…

水平越权垂直越权

#知识点&#xff1a; 1、水平越权-同级用户权限共享 2、垂直越权-低高用户权限共享 3、访问控制-验证丢失&取消验证&脆弱验证 4、脆弱验证-Cookie&Token&Jwt等 解释 水平越权 就是同级用户之间的越权&#xff0c;打个比方现在有ABC三个用户&#xff0c;A…

越权漏洞详解

文章目录 Over Permission越权风险问题概述漏洞产生条件常见越权漏洞水平越权&#xff08;平行越权&#xff09;概述pikachu靶场练习1 垂直越权概述pikachu靶场练习 修复建议练习 Over Permission 越权风险问题 越权访问&#xff08;Broken Access Control&#xff0c;简称BA…

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

逻辑越权总结&#xff08;超详细总结涉及各类越权&#xff09; 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.…

浅谈越权

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

越权

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

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

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

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

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

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

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

MQTT 协议

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

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

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

通用协议(一)

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

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协议&#xff1a;通过IP地址查找MAC地址 协议简介 协议&#xff0c;网络协议的简称&#xff0c;网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这…

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

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

什么是802.1q协议

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

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

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

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

MQTT&#xff08;Message Queuing Telemetry Transport&#xff0c;消息队列遥测传输协议&#xff09;&#xff0c;是一种基于发布/订阅&#xff08;publish/subscribe&#xff09;模式的"轻量级"通讯协议&#xff0c;该协议构建于TCP/IP协议上&#xff0c;由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 位异步串行格式传输数…