当前位置:网站首页>逻辑漏洞----权限类漏洞
逻辑漏洞----权限类漏洞
2022-07-30 13:05:00 【jjj34】
越权漏洞又分为平行越权,垂直越权和交叉越权。
平行越权:权限类型不变,权限id改变
垂直越权:权限类型改变,权限id不变
交叉越权:权限类型改变,权限id改变

用户1变为用户2,且用户2也是普通用户,水平越权
用户1由普通用户变为系统管理员,垂直越权
用户1变为用户4,且用户4具有系统管理员权限,交叉越权
在Windows中,admin和system的区别:
system用户用来管理软件的,admin是给用户用的权限
system是管软件的,admin是管用户的
1.平行越权跨越
水平越权指的是攻击者尝试访问与他拥有相同权限的用户的资源。
比如某系统中,有个人资料这个功能,A账号和B账号都可以访问这个功能,但是a账号和b账号的权限不一样
当a访问这个功能时,通过bp抓包来拦截,并将用户名由a修改为b,这时候,a用户可能就获取了b的资料,这就是水平越权漏洞。
系统中所有具备水平权限划分的功能,都存在水平越权的风险,以下是常出现的水平越权的场景:
1.基于用户身份id
如某航空公司的订单,他会通过用户提交的身份id(用户id,账号,手机号证件号等用户唯一标识)来访问或操作对应的数据

其中,passengerID为乘机人,contactID为联系人
经测试可发现,这两个参数修改后,可查看其他乘机人的身份证和联系人信息

2.基于对象id
在使用某个功能时,通过用户提交的对象id(如顶顶那好,记录号)来访问或操作对应的数据
举个例子:某系统存在水平越权漏洞,抓取订单提交的数据包,发现有一个oid很可疑

对这个oid进行爆破,即可查看他人代付订单信息
3.基于文件名
在使用某个功能时通过文件名直接访问文件,最常见于用户上传文件的场景
通过遍历fileid可以下载到数十万的资源

垂直越权
垂直越权指的是一个低级别攻击者尝试访问高级别用户的资源。比如,某个系统分为普通用户和管理员,管理员有系统管理功能而普通用户没有,那我们就可以理解管理功能具备垂直权限划分,如果普通用户能利用某种攻击手段访问到管理功能,那我们称之为垂直越权。
案例1:通过修改js实现垂直越权
某站管理后台仅使用js跳转来限制未授权的用户访问

去掉js后,即可成功访问后台,且可以进行操作

案例2:先通过普通用户进入后台,然后通过修改参数值来实现垂直越权
某品牌的光猫
使用default用户名和密码:useradmin/[email protected]#$%^ 登录系统

成功登录后台

依次点击”对象管理-用户管理-编辑useradmin ->得到url */cgi/webif/Objset-users.sh?edituser=edituser&id=5"

修改参数id=4即可垂直越权到 telecomadmin的修改页面

通过源码将密码的password类型改为text类型即可直接查看密码

案例3 :权限控制框架缺陷
权限控制框架是实现权限控制功能的基础,如果权限控制框架本身存在缺陷容易被攻陷会导致权限控制功能完全失效。
在cookie中使用简单的权限标识来标记用户的权限等级或使用用户请求参数所带的简单用户ID来控制用户权限,是典型的权限框架缺陷。
如,正常用户登录后,cookie中 uid=1;管理员用户登录后 uid=2
那么我们可以先通过正常用户登录,然后将uid修改为2即可
总结
细心一点,
1.修改js
2.找到普通用户和管理员用户的不同,然后将普通用户的cookie改为管理员用户
边栏推荐
- Mysql batch insert transaction unique key repeated processing
- Greenplum 6.0有哪些不可错过的硬核升级与应用?
- 自动化测试的生命周期是什么?
- OpenHarmony环境搭建报错: ImportError: cannot import name ‘VERSION‘ from ‘hb.__main__‘
- Heshu Group: Make smart cities smarter and make real life better
- C#实现软键盘的制作
- 忆联:激活数据要素价值潜能,释放SAS SSD创新红利
- CMake library search function does not search LD_LIBRARY_PATH
- 漫谈金丝雀部署(Canary Deployment)
- 手撕读写锁性能测试
猜你喜欢

el-table中el-table-column下的操作切换class样式

Raja Koduri澄清Arc GPU跳票传闻 AXG年底前新推四条产品线

PyQt5快速开发与实战 8.6 设置样式

Heshu Group: Make smart cities smarter and make real life better

结合实战,浅析GB/T28181(三)——实况点播

MySQL【多表查询】

【Kaggle:UW-Madison GI Tract Image Segmentation】肠胃分割比赛:赛后复盘+数据再理解

ModelCoder状态机:对柴油机工况判断策略进行建模

How to display an Excel table in the body of an email?

DeFi 巨头进军 NFT 领域 用户怎么看?
随机推荐
什么是私有云?您应该知道的 6 个优势
Raja Koduri澄清Arc GPU跳票传闻 AXG年底前新推四条产品线
Dry Goods Sharing: Various Implementation Methods of Bean Management Factory with Great Use of Small Skills
【23考研】408代码题参考模板——顺序表
【自校正控制】自校正PID
ES6 Set与Map是什么,如何使用
自从外包干了四年,基本废了...
Execution order of select, from, join, on where groupby, etc. in MySQL
【微信小程序】一文带你搞懂小程序的页面配置和网络数据请求
剑指 Offer 05. 替换空格
R语言使用aov函数进行单因素协方差分析(One-way ANCOVA)、使用effects包中的effect函数来计算调整后的分组均值(calculate adjusted means)
RTSP/Onvif协议视频平台EasyNVR服务一键升级功能的使用教程
13-GuliMall Basics Summary
How to migrate the device data connected by RTSP of EasyCVR platform to EasyNVR?
基于卷积神经网络与双向长短时融合的锂离子电池剩余使用寿命预测
R语言ggplot2可视化:使用ggpubr包的ggmaplot函数可视化MA图(MA-plot)、设置label.select参数自定义在图中显示标签的基因类型(自定义显示的标签列表)
Lake storehouse which electricity (2) of the project: project using technology and version and the environment
These critical programs are missing or too old: ma
Apache Log4j2漏洞
Jackson 的JAR包冲突问题