越权漏洞原理

浏览器对用户提交的数据请求没有经过严格的权限设置,导致用户可以拥有观察或更改其他用户信息的功能。

越权漏洞被分为两类
一类是水平越权,一类是垂直越权。

水平越权 :用户在权限相同级别下的组,可以进行越权访问、修改、删除数据。

垂直越权 :用户在不同权限下的组,可以进行高级别的权限使用。

漏洞成因

前端原因:
只对页面进行更高权限的隐藏

实际上并没有对后端的进行一个权限过滤,只是对前端进行隐藏。根据用户权限的判断,进行选择显示,但是功能点还是可以触发。

正确的做法应该是用户权限与功能点进行绑定。

后端原因:
1.没有进行权限设置(通常来说我们是判断用户组编号、用户等级、用户组来确定权限)
2.没有进行参数过滤
3.数据库中同组成员不同权限

拿pikachu靶场的垂直越权源码举例

靶场验证

1.水平越权
进入靶场随便创一个新用户,查看信息,并进行抓包观察。是否有可以利用的点。

这里可以看到我们的用户名是可以修改的。我们随便改一个用户的名称,观察是否可以进行数据读取。

可以看到,我们改变username就能查看其他用户的信息。(我们这里有个问题就是怎么获取其他用户的username。其实是由很多办法的,比如相同账号名不能创建、在网页中浏览用户、在url中进行uid遍历)

漏洞成因
没有进行session验证。

2.垂直越权
我们先抓取一下添加用户的数据包

我们退出admin账户,进入pikachu账户。在pikachu账户这里进行用户添加。
在这里呢我们使用admin的seesion明显是不行的。我们将seesion改为pikachu的。


可以看到已经成功创建。

漏洞成因

他只验证了一个登录的状态,没有对权限进行一个验证。

注入条件
1.获取数据包
在前端中有提交新用户系统,但是对等级有限制,这时我们就可以根据这个数据包进行修改。

有网站源码,可以自己搭一个本地环境进行测试。

猜测添加用户的数据包。

2.对用户等级没有限制

墨者实例靶场

他这里是想让我们通过test这个用户进行越权访问马春生这个用户的信息。

我们先登录账号再抓一只下包看看利用点。

像这里的uid和card_id一看就是可以进行修改的地方。

我们将uid改为machunsheng试试,发现不能进行访问,应该是uid改为了其他值。

查看页面的源代码,发现和card_id结构相似,我们尝试一下。

这里把编号为20128880317的username和passwd爆出来了。
根据观察尾号16就是马春生。这里的passwd应该是md5加密的,我们用在线解密一下就可以了。


到这里就完成了。

在没有提示的情况下可以使用burpsuit的爆破功能。

业务逻辑漏洞之水平越权和垂直越权相关推荐

  1. 【CyberSecurityLearning 65】业务安全+业务逻辑漏洞实战

    目录 业务安全 * 业务安全概述 * 黑客攻击的目标 业务安全测试流程 * 测试准备 * 业务调研 * 业务建模 * 业务流程梳理 * 业务风险点识别 * 开展测试 * 撰写报告 万能用户名|密码 业 ...

  2. 攻防演练中的业务逻辑漏洞及检测思路

    随着各类前后端框架的成熟和完善,传统的SQL注入.XSS等常规漏洞在Web系统里逐步减少,而攻击者更倾向于使用业务逻辑漏洞来进行突破.业务逻辑漏洞,具有攻击特征少.自动化脆弱性工具无法扫出等特点,也为 ...

  3. 张小白的渗透之路(十)——业务逻辑漏洞

    业务逻辑漏洞 由于程序逻辑不严谨或逻辑太过复杂,导致一些逻辑分支不能正常处理或处理错误,统称为 业务逻辑漏洞 关注重点 业务流程 HTTP/HTTPS 请求分析 漏洞分类 身份认证 暴力破解 在 没有 ...

  4. 058 业务逻辑漏洞

    文章目录 一:概述 二:黑客攻击的目标 三:业务安全测试流程 3.1:测试准备 3.2:业务调研 3.3:业务建模 3.4:业务流程梳理 3.5:业务风险点识别 3.6:开展测试 3.7:撰写报告 四 ...

  5. Web安全之业务逻辑漏洞

    业务逻辑 不同的项目有不同的功能,不同的功能需要不同的代码实现,实现这些核心功能的代码就叫业务逻辑. 业务逻辑漏洞 业务逻辑漏洞是指由于程序逻辑不严谨或逻辑太复杂,导致一些逻辑分支不能正常处理或处理错 ...

  6. 常见的业务逻辑漏洞-整合篇

    笔者前言: 作为一个地地道道的安服仔,每日的工作就是渗透测试,在测试的过程中累积了很多的经验,看到了各种各样奇葩的漏洞,于是乎便有了这样的一篇文章.以下文章均由本人测试发现并打码,侵删 什么是业务逻辑 ...

  7. 横向越权和纵向越权(水平越权、垂直越权)

    越权:顾名思义,就是获得了本不应该有的权限. 我们都喜欢创造一些复杂的词汇,而实际上这些词就是一个代词,根本没有那么复杂. 越权漏洞往往是基于业务逻辑的漏洞,这样的漏洞很难被WAF保护. 越权的分类 ...

  8. php 水平越权,水平越权与垂直越权

    越权漏洞 越权访问(Broken Access Control,简称BAC)是Web应用程序中一种常见的漏洞,由于其存在范围广.危害大,被OWASP列为Web应用十大安全隐患的第二名. 该漏洞是指应用 ...

  9. 浅谈——业务逻辑漏洞

    目录 什么是业务逻辑漏洞 产生原因 脑图 有哪些应用场景?哪些危害? 越权 支付漏洞 靶机案例 修改支付金额 密码找回绕过 越权 防御方式 参考 | 提示

最新文章

  1. 客户端动态调用WCF服务中的方法
  2. Knockout学习之前言
  3. 泰拉瑞亚服务器权限文件,泰拉瑞亚云服务器权限
  4. 数组与字符串三(Cocos2d-x 3.x _Array容器)
  5. python发挥程度_你为什么用 Python?
  6. CSS手写代码总结02
  7. n分频器 verilog_时钟分频系列——分数分频电路的Verilog实现
  8. Python练习:平方值格式化
  9. linux交叉编译出现的问题,,Ubuntu 14.10下安装GCC交叉编译器遇到问题及解决方法
  10. 网络编程之 信号捕捉器(函数指针与回调函数)
  11. 与时俱进的治疗策略不断提高RA无药缓解机会[EULAR2015_SAT0058]
  12. Repo报错:GnuTLS recv error (-9): Error decoding the received TLS packet.
  13. 【三维路径规划】基于matlab麻雀算法求解无人机三维航迹优化问题【含Matlab源码 301期】
  14. 局域网联机游戏找不到服务器,国庆想局域网联机,除了“吃鸡”,这些Steam游戏别错过...
  15. 阿朱访谈:程序员转型期职业选择,是继续做技术高手还...(转)
  16. Android 项目必备(八)--> APP 的开发流程
  17. OFFICE没有仿宋GB2312的字体
  18. 1 5 php,直接可以拿来用的PHP惯用功能代码片段(1~5)
  19. vivoX9手机拆解
  20. 关于陌陌和微信表情页与输入法之间切换的问题

热门文章

  1. CPU占用率百分百原因及解决方法
  2. 3D点云 (Lidar)检测入门篇 - PointPillars PyTorch实现
  3. 前后端分离 Spring Security 对登出.logout()的处理
  4. python中class什么意思_python – 这个代码中classmethod做了什么?
  5. 如何听节拍器_七个方法可以拯救你的节奏感!
  6. java trim 空指针_trim()空指针异常问题!
  7. PAT 甲级 1018. Public Bike Management
  8. 2020CCPC绵阳站 Defuse the Bombs(简单二分)
  9. Delphi7升级到Delphi 2010、Delphi XE、Delphi XE2总结 .
  10. Selenium:下拉框操作