越权漏洞是一种很常见的逻辑安全漏洞,是服务器端对客户提出的数据 *** 作请求过分信任,而忽略了对该用户 *** 作权限的判定,导致修改相关参数就可以拥有了其他帐号的增删改查功能,从而导致越权漏洞。
目前存在两种越权方式:横向越权(水平越权)和纵向越权(垂直越权)。
还有一种是交叉越权,交叉越权就是既可以横向越权,也可以纵向越权。
水平越权是指相同权限下不同的账户可以互相访问。
垂直越权是指权限低的用户可以访问权限较高的用户。
水平越权测试方法主要就是看看能否通过A用户 *** 作影响到B用户。
垂直越权的测试思路就是低权限用户越权使用高权限用户的功能,比如普通用户可使用管理员功能。
越权测试流程
把握住传参就能把握住逻辑漏洞的命脉
越权测试
登录A用户时,正常更改或者是查看A用户信息,然后抓取数据包,将传参ID修改为其他用户,如果成功查看或者修改了同权限其他用户的信息就属于水平越权测试。(如果可以影响到高权限用户就是垂直越权),传参ID参数需要自己检测(常见:uid= id= user= 等)通常使用burp进行爆破传参(传参可能在GET POST COOKIE)
常见越权漏洞
常见平行越权
不需要输入原密码的修改密码,抓包改用户名或者用户id修改他人密码
修改资料的时候修改用户id
查看订单的时候,遍历订单id
未授权访问(关闭前端js)
利用逻辑漏洞,仅仅验证短信验证码的真实性,不校验手机号码与短信验证码的绑定关系。以掌握的手机号码18868345809,可得到短信验证码A。要重置的手机号码是17101304128。重置时填写手机号码17101304128和短信验证码A,由于号码和验证码A都是真实的,但未校验二者关系,重置成功。
根据题目提示得知犯人手机号码为17101304128,用该手机找回密码,发送验证码给该手机号码,收到验证码
题目还有一个提示,以注册的手机号码为:18868345809
试想,我是不是可以用犯人手机号进行密码重置,然后点击获取短信验证码是捉包:
抓包如下
修改电话号码,把犯人号码换成已注册的号码,从而获得验证码,进行重置密码
替换号码,点击forward
返回页面,可以看到,验证码已经发送过来了
获得key。
0x01 前言
我作为一个彩笔,很荣幸成为签约作家团的一员,今天,就来讲讲越权,今天会举三个例子,一个代码审计,两个黑盒测试。
0x02 什么是越权
越权漏洞是Web应用程序中一种常见的安全漏洞。它的威胁在于一个账户即可控制全站用户数据。当然这些数据仅限于存在漏洞功能对应的数据。越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信而遗漏了权限的判定。所以测试越权就是和开发人员拼细心的过程。
0x03 越权的危害
越权的危害在于一个账户可以增、删、改、查询其他账户的数据。在补天漏洞响应平台,涉及到数据的越权,是高危漏洞。(挖付费的时候可以着重测一下,特别是商城站收货地址那里,很容易出问题)
0x04 实战的案例(代码审计篇)
我们来看看百乐CMS百家 V2.7微商城越权查看订单漏洞,这是一个很经典的案例。
先定位到/system/shopwap/class/mobile/getorder.php
$orderid))echo json_encode($orders)复制代码
从代码可知,获取参数id,然后直接带入到查询中,没有判断当前用户身份。这样,我们来测试一下
遍历ID参数获取订单数据
0x05 实战的案例(实战第一d)
以我补天某漏洞为例子
数字是看不清了,但是从页数上来看,我们这个账号的权限并不大,只有1700条数据的阅读权限,这太小了对吧?
可以看到我们的权限现在已经很大了,上百万的信息。这就是黑盒测试中,存在的越权漏洞。现实中遇到这样的场景,可以测试一下。
0x06 实战的案例(实战第二d)
这回越权是后台越权,说到底,就是曾经有一个登录框摆在我的面前,我没有珍惜,扫了下目录,可以越权访问后台,管理员才追悔莫及,人世间最悲惨的事莫过于此,如果上天再给管理员一个机会,管理员一定会加上cookie验证。
首先我们得有一个登录框(那个网站打不开了,我给你们手绘一个登录框)
一般这种登录框,我都是直接爆破的,这次说越权,我们就换个姿势,我们扫目录(市面上的是扫目录工具多得是,啥御剑,AWVS,等等等等)这次听着多幸运,然后多幸运扫到了后台越权访问。
0x07 挖掘越权漏洞要注意的事项
一.测试越权一般得有俩号。
二.对userid。orderid等等ID要敏感,一旦发现,就多测测。
三.某些厂商喜欢用纯数字的MD5作为用户的cookie,多注意发现。
四.多使用抓包工具,多分析数据包,多修改数据包。
五.多站在开发的角度去分析网站哪儿存在越权。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)