郑重声明:
本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关。倡导维护网络安全人人有责,共同维护网络文明和谐。

越权访问

  • 1 越权简介
    • 1.1 实验平台
    • 1.2 越权漏洞的危害
    • 1.3 产生越权漏洞的原因
  • 2 水平越权
  • 3 垂直越权
  • 4 预防越权

越权访问(Broken Access Control,简称BAC)是一种很常见的逻辑安全漏洞。可以理解为服务器端对客户提出的数据操作请求过分信任,一个用户一般只能够对自己本身的信息进行增删改查,然而由于后台开发人员的疏忽,没有在信息进行增删改查时候进行用户判断,忽略了对该用户操作权限的判定,导致攻击账号拥有了其他账户的增删改查功能。

越权分类:水平越权和垂直越权

1 越权简介

1.1 实验平台

zhuifengshaonianhanlu/pikachu: 一个好玩的Web安全-漏洞测试平台 (github.com)

1.2 越权漏洞的危害

  • 越权查询
  • 越权删除
  • 越权修改
  • 越权增加

1.3 产生越权漏洞的原因

  1. 通过隐藏 URL 实现权限管理

    实现控制访问有些程序的管理员的管理页面只有管理员才显示,普通用户看不到,利用 URL 实现访问控制,但 URL 泄露或被恶意攻击者猜到后,这会导致越权攻击。

  2. 直接引用对象实现权限管理

    这种通过修改一下参数就可以产生水平越权,例如查看用户信息页面 URL 后加上自己的 id 便可查看,当修改为他人的 ID 号时会返回他人的信息,便产生了水平越权。

  3. 多阶段功能

    多阶段功能是一个功能有多个阶段的实现。例如修改密码,可能第一步是验证用户身份信息,号码验证码类的。当验证成功后,跳到第二步,输入新密码,很多程序会在这一步不再验证用户身份,导致恶意攻击者抓包直接修改参数值,导致可修改任意用户密码。

  4. 静态文件

    很多网站的下载功能,一些被下载的静态文件,例如 pdf、word、xls 等,可能只有付费用户或会员可下载,但当这些文件的 URL 地址泄露后,导致任何人可下载,如果知道 URL 命名规则,则会便利服务器的收费文档进行批量下载。

  5. 平台配置错误

    一些程序会通过控件来限制用户的访问,例如后台地址,普通用户不属于管理员组,则不能访问。但当配置平台或配置控件错误时,就会出现越权访问。

2 水平越权

访问与攻击者拥有相同权限的用户资源

1. 在越权模块水平越权登陆 lucy 用户,并点击查看个人信息,此时可以查看到 lucy 用户的相关信息。
http://bac.lab.com/vul/overpermission/op1/op1_mem.php?username=lucy&submit=%E7%82%B9%E5%87%BB%E6%9F%A5%E7%9C%8B%E4%B8%AA%E4%BA%BA%E4%BF%A1%E6%81%AF2. 通过 BurpSuit对浏览器数据包进行抓包,并再次点击查看个人信息。BurpSuit 阻断的信息请求包中,修改以下请求头中的 lucy 为 lili,最后发送修改后的请求包
GET /vul/overpermission/op1/op1_mem.php?username=lucy&submit=%E7%82%B9%E5%87%BB%E6%9F%A5%E7%9C%8B%E4%B8%AA%E4%BA%BA%E4%BF%A1%E6%81%AF HTTP/1.13. 结果显示的是用户 lili 的信息。即此网站存在水平越权漏洞。

3 垂直越权

由于后台应用没有做权限控制,或仅仅在菜单、按钮上做了权限控制,导致恶意用户只要猜测其他管理页面的 URL 或者敏感的参数信息,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。

1. 在越权模块垂直越权标签下使用 admin 用户登陆,并点击添加用户,复制此时的浏览器 URL 链接
http://bac.lab.com/vul/overpermission/op2/op2_admin_edit.php2. 退出 admin 用户登陆或使用另一个浏览器登陆普通用户(pikachu),登陆成功后,创建新标签打开前面复制的添加用户的 URL 链接。3. 引时浏览器能正常加载添加用户界面,在此页面上尝试创建新用户,创建完成后提交时页面返回到登陆界面,使用 admin 用户登陆,发现之前在普通用户权限下创建的用户被顺利创建。4. 结果,该页面存在垂直越权漏洞。

4 预防越权

  1. 前后端同时对用户输入信息进行校验,双重验证机制
  2. 执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限
  3. 特别敏感操作可以让用户再次输入密码或其他的验证信息。
  4. 可以从用户的加密认证 cookie 中获取当前用户 id,防止攻击者对其修改。或在 session、cookie 中加入不可预测、不可猜解的 user 信息。
  5. 直接对象引用的加密资源ID,防止攻击者枚举ID,敏感数据特殊化处理
  6. 永远不要相信来自用户的输入,对于可控参数进行严格的检查与过滤

WEB安全之:越权访问相关推荐

  1. Web 攻防之业务安全:越权访问漏洞 测试.

    Web 攻防之业务安全:越权访问漏洞 测试. 由于没有对用户权限进行严格的判断,导致低权限的账号(比如普通用户)可以去完成高权限账号(比如超级管理员)范围内的操作.(比如:通过更换的某个 ID 之类的 ...

  2. 水平越权访问与垂直越权访问漏洞

    目录 前言 越权访问漏洞 水平越权访问漏洞 垂直越权访问漏洞 防范措施 前言 电网机巡智能管控平台是XX省电力巡检智能管控平台,辅助全省无人机巡线作业工作顺利.高效开展.由于今年互联网出现了严重的安全 ...

  3. WEB安全之越权漏洞

    title: WEB安全之越权漏洞 date: 2017-11-4 12:46:16 tags: WEB安全 maven 越权漏洞 categories: WEB安全 背景 越权漏洞是Web应用程序中 ...

  4. WEB漏洞-逻辑越权之登录脆弱及支付修改

    WEB漏洞-逻辑越权之登录脆弱及支付篡改 支付篡改 商品购买流程 常见修改参数 常见修改方法 某商场系统商品支付逻辑测试-数量,订单 购买数量 订单编号 某建站系统商品支付逻辑测试-价格,商品 购买价 ...

  5. 越权访问(Broken ACCESS Control)说明及解决方案

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

  6. Web安全—逻辑越权漏洞(BAC)

    逻辑越权漏洞 漏洞分类:逻辑越权漏洞属于漏洞分类中的服务端漏洞,属于权限控制类漏洞 漏洞简介: 越权漏洞是比较常见的漏洞类型,通常分为两种类型,垂直和水平越权,简单可以理解为,在修改某个用作身份标识的 ...

  7. Web安全测试之越权测试案例

    平行越权 攻击者请求操作(增.删.查.改)某条数据时,Web 应用程序没有判断该数据的所属人,或者在判断数据所属人时直接从用户提交的表单参数中获取(如用户ID),导致攻击者可以自行修改参数(用户ID) ...

  8. android web 访问数据库,Web下的JDBC访问数据库的基本步骤

    Web下的JDBC访问数据库的基本步骤 (2012-06-02 12:09:33) 在Java程序中连接数据库的一般步骤分为一下几部分,我摘录出来,跟大家分享. (1)将数据库的JABC驱动加载到cl ...

  9. SQL Server 2005中设置Reporting Services发布web报表的匿名访问

    第一步:在运行IIS的Web服务器的本地访问http://localhost/reports ,这是Reporting Services的管理站点,在Properties(属性)页面下添加一个只有Br ...

最新文章

  1. subprocess 的 kill()/terminate() 问题
  2. Android studio版本还原操作
  3. Webpack单元测试,e2e测试
  4. 03-类与对象——课后动手动脑
  5. Window Server 2008中开启Window Media Player功能
  6. 详解深度语义匹配模型DSSM和他的兄弟姐妹
  7. activemq消息丢失_Kafka or RabbitMQ:消息中间件选型深入分析
  8. 计算机专业英语问卷调查,调查问卷英文版.doc
  9. 深度学习TF—13.对抗生成网络—GAN
  10. 团队项目:第二次冲刺站立会议08
  11. Symbian系统手机软件
  12. java转码工具应用程序_java转码工具native2ascii.exe的使用方法
  13. MySQL操作语句(快速办公)
  14. lighttpd服务器搭建教程
  15. 【论文阅读】 Object Detection in 20 Years: A Survey
  16. docker logs日志清除
  17. 草履虫纳米机器人_草履虫大小的“微型机器人”或许能在人体组织中自由穿梭...
  18. 游戏蓝牙耳机怎么挑选?超高性价比蓝牙耳机分享
  19. 【网络协议】互联网协议入门(一)
  20. CStaticText 静态文本

热门文章

  1. 第12章动画-Hero页面切换动画
  2. Ubuntu 18.04 下安装smplayer视频播放器
  3. 电子设计教程5:稳压管与保险丝防反接电路
  4. 2021滁州中学高考成绩查询,2021年滁州高考成绩排名及成绩公布时间什么时候出来...
  5. 5分钟,客服聊天处理技巧,炉火纯青
  6. 网络基础学习系列三http
  7. 未来会是云计算的时代吗?
  8. linux 下让屏幕不锁屏步骤(基于红帽系统)
  9. 在VMware中制作linux虚拟机模板
  10. SQL使用------联合查询