【渗透测试】垂直越权(高危)、水平越权(中危)

目录

    • 一、简介
      • [1.1 水平越权(中危)](#1.1 水平越权(中危))
      • [1.2 垂直越权(高危)](#1.2 垂直越权(高危))
      • [1.3 方便记忆方法](#1.3 方便记忆方法)
    • 二、修复方案
      • [2.1 水平越权修复](#2.1 水平越权修复)
      • [2.2 垂直越权修复](#2.2 垂直越权修复)

一、简介

1.1 水平越权(中危)

漏洞危害:

水平越权 是相同级别(权限)的用户或者同一角色中不同的用户之间,可以越权访问、修改或者删除其他用户信息的非法操作。如果出现此漏洞,可能会造成大批量数据的泄露,严重的甚至会造成用户信息被恶意篡改。

解决建议:

完善权限验证措施,自己的身份只能查看、修改、删除、添加自己的信息。

1.2 垂直越权(高危)

漏洞危害:

垂直越权 是不同级别之间或不同角色之间的越权,垂直越权还可以分为向上越权和向下越权。向上越权指的是一个低级别用户尝试访问高级别用户的资源,比如说某个系统分为普通用户和管理员用户,管理员有系统管理功能,而普通用户没有,那我们就可以理解成管理功能具备垂直权限划分,如果普通用户能利用某种攻击手段访问到管理功能,那我们就称之为向上越权。向下越权是一个高级别用户访问低级别用户信息,读取到低级用户的个人信息。

解决建议:

完善权限验证措施,自己的身份只能查看、修改、删除、添加自己的信息。

1.3 方便记忆方法

针对 水平越权垂直越权 问题,我们日常开发中经常遇到,但是经常混淆。有一个办法可以帮助大家记忆和理解。

我们可以把数据库中的数据想象成一个图书馆的书架。

**图书馆的书架中,每一行与行之间代表的不同的类别,相当于角色;每一本书可以摆放在各种类别的架子上,相当于用户。**这样我们就好理解水平越权和垂直越权了:

  • 水平越权: 相同角色权限下,可以跨用户操作。比如:修改别人创建的数据。
  • 垂直越权: 不同角色权限下,可以跨角色操作。比如:访问权限之外的页面。

二、修复方案

2.1 水平越权修复

修复水平越权漏洞,需要分两步:

  1. 在数据库中新增创建人标识字段,要求可以唯一标识创建人。
  2. 前端、后端都要在查询、操作接口根据当前用户进行校验。

2.2 垂直越权修复

修复垂直越权漏洞,除了前端需要控制菜单、页面的显示之外,后端接口也需要根据权限来控制访问权限,可以利用 Security、Shiro 的注解来实现。

整理完毕,完结撒花

相关推荐
互联网杂货铺3 天前
功能测试、性能测试、安全测试详解
自动化测试·软件测试·python·功能测试·测试工具·性能测试·安全性测试
澳鹏Appen3 天前
对抗性提示:大型语言模型的安全性测试
人工智能·语言模型·安全性测试
程序员秘密基地10 天前
基于python,html,flask,echart,ids/ips,VMware,mysql,在线sdn防御ddos系统
python·网络安全·flask·ddos·安全性测试
菠萝吹雪ing10 天前
测试用例:质量保障的核心利器
功能测试·程序人生·单元测试·测试用例·学习方法·测试覆盖率·安全性测试
齐鲁物联网测试中心王工14 天前
科技成果鉴定测试怎么进行?进行鉴定测试有什么好处
功能测试·性能测试·安全性测试·cma·第三方检测·软件检测·cnas
白白卡路里16 天前
【测试】功能测试和性能测试
功能测试·压力测试·安全性测试
玉笥寻珍21 天前
筑牢信息安全防线:涉密计算机与互联网隔离的理论实践与风险防控
开发语言·计算机网络·安全·计算机外设·php·安全架构·安全性测试
Codingwiz_Joy1 个月前
Day28 -js开发01 -JS三个实例:文件上传 & 登录验证 & 购物商城 & ---逻辑漏洞复现 及 判断js的payload思路
开发语言·javascript·安全·安全性测试
jardonwang11 个月前
DeepInjectSQL - 基于 AI 生成对抗网络(GAN)的下一代 SQL 注入自动化漏洞猎手
python·测试工具·生成对抗网络·安全性测试
sheepfagdng1 个月前
软件测试——用例篇(2)
功能测试·单元测试·测试用例·安全性测试