Over Permission(越权)学习「建议收藏」

Over Permission(越权)学习「建议收藏」OverPermission(越权)用户A的权限小于用户B的权限,此时用用户A的权限去操作用户B的数据,如果能够操作成功,就称之为越权操作。越权漏洞一般容易出现在权限页面(需要登录的页面)增、删、改、查的地方。越权漏洞形成的原因是后台使用了不合理的权限校验规则导致的。当用户对权限页面内的信息进行增、删、改、查的操作时,后台对当前用户的权限进行校验,看是否具备操作的权限,从而给出响应。如果校验规则过于简单,就容易出现越权漏洞。防止越权漏洞1、使用最小权限原则对用户进行赋权;2、使用

大家好,又见面了,我是你们的朋友全栈君。

Over Permission(越权)

用户A 的权限小于用户B 的权限,此时用用户 A 的权限去操作用户 B 的数据,如果能够操作成功,就称之为越权操作。

越权漏洞一般容易出现在权限页面(需要登录的页面)增、删、改、查的地方。

越权漏洞形成的原因是后台使用了不合理的权限校验规则导致的。当用户对权限页面内的信息进行增、删、改、查的操作时,后台对当前用户的权限进行校验,看是否具备操作的权限,从而给出响应。如果校验规则过于简单,就容易出现越权漏洞。

防止越权漏洞

1、使用最小权限原则对用户进行赋权;
2、使用合理(严格)的权限校验规则;
3、使用后台登录态作为条件进行权限判断,不用前端传来的条件。

下面通过 pikachu 靶场里的 Over Permission 模块对越权的两种方式进行测试。

水平越权

是相同权限的两个用户进行越权操作。
比如普通用户 A 越权查看普通用户 B 的一篇邮件。

打开是一个登录界面。
在这里插入图片描述
根据提示,给出了三个账户:

lucy/123456
lili/123456
kobe/123456

我们尝试随便登录一个看看。
可以看到这些用户登录进去可以点击查看个人信息。
并且当我们点击查看的时候,它是进行了一个 GET 请求,将要查询的用户信息传递到后台。
在这里插入图片描述
可以发现这个 GET 请求就是一个 username 的值。尝试把这个值改为此页面存在的其他用户,看是否可以查看其他用户的个人信息。
不退出刚才 lucy 账号的登录状态,直接在 url 上把 lucy 改为 lili ,可以看到 lucy 的个人信息变成了 lili 的个人信息。
而此时 lili 是没有登录账号密码的,说明存在水平越权的漏洞。
在这里插入图片描述

垂直越权

是在不同权限的用户之间进行越权。
比如普通用户 A 越权而拥有管理员的权限,甚至超级管理员的权限。

打开界面,同样是一个登录界面。
在这里插入图片描述

通过提示,给出了

普通用户:pikachu/000000
超级用户:admin/123456

尝试登录普通用户 pikachu/000000 ,用户界面可以有查看的权限,查看存在的用户信息。
在这里插入图片描述
尝试登录超级用户 admin/123456
可以看到超级用户除了可以查看用户信息,还可以添加用户。
在这里插入图片描述
尝试在超级用户界面添加用户,点击创建,用 burp 抓下这个 post 请求的数据包。
在这里插入图片描述
然后点击 action 把这个包发送到 Repeater 模块。这个时候Repeater 模块就会把这个包保留下来。
在这里插入图片描述
回到 Proxy 代理界面,点击取消拦截数据包。
在这里插入图片描述
那么刚刚那个创建用户的 post 请求就会发送出去。
可以看到我们是利用超级用户 admin 创建了一个用户。
在这里插入图片描述
接下来退出 admin 用户,登录普通用户 pikachu 。
在点击登录的时候用 burp 拦截,对 pikachu 的登录信息进行抓包。
因为我们要用到 pikachu 这个普通用户的 cookie 登录信息。
在这里插入图片描述

还记得刚刚我们把超级用户创建用户的 post 请求放在了 Repeater 模块,上面也有一个 cookie 信息,这是超级用户的 cookie。
我们把 Repeater 模块上的超级用户 的 cookie 替换成刚抓到的 pikachu 登录信息的cookie 。

这里要先把 Proxy 界面的拦截数据包关闭,关闭后页面就进入了普通用户 pikachu 的登录界面。
然后在 Repeater 界面点击 Send 发送,会出现一个 Follow redirection 的按钮,点击进行重定向。
在这里插入图片描述
此时我们回到 pikachu 的用户界面,看到多了一个添加的用户。
第一个是前面用超级用户 admin 的登录权限添加的。
第二个是刚刚用普通用户 pikachu 的登录状态越权添加的。
在这里插入图片描述
后台没有判断我们发送的数据包的用户权限。直接执行了,造成了垂直越权漏洞。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150596.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 数据挖掘应用实例分析

    数据挖掘应用实例分析数据挖掘应用实例分析——个性化推荐系统​ 数据挖掘技术,一门基于计算机技术与大数据时代信息处理需求的技术产物,从世纪之交的火热发展以来,不知不觉间,早已应用到我们生活的方方面面:电子邮箱中的垃圾邮件分类、电影院的票房预测、网页上的广告推荐、语音识别、电网语义精确搜索等。还有人工智能、自然语言处理、数据修正等。我们认为,数据挖掘技术将成为互联网时代应用最广泛的技术之一,它有可能为人类社会带来一个新的时代。​ 但是由于笔者才疏学浅,今天我们暂不谈得那么高深,只分析的一个常见的应用实例——个性化推荐系统。

  • hikaripool信息_HikariPool源码(三)资源池动态伸缩「建议收藏」

    hikaripool信息_HikariPool源码(三)资源池动态伸缩「建议收藏」Java极客|作者/铿然一叶这是Java极客的第54篇原创文章1.资源池的动态伸缩1.为了提升资源池的性能,需要设置最小闲置资源数量,在资源池初始化时完成初始化;而当使用的资源超过最小闲置资源数,消费者释放回池中超过一定时间后要收缩到最小闲置资源数。2.为了避免无限申请资源导致超出负载,需要设置最大资源数,池中资源不能超出最大资源数。2.动态伸缩相关类结构职责说明:类职责Hou…

  • html5菜单折纸效果

    类似猎豹浏览器安装时的用户须知效果。html文件代码,保存为html文件打开:12345foldpapereffectbygt-柯乐义6218990919293g

    2021年12月20日
  • 方程自己解(1)——物理信息神经网络(PINN)

    方程自己解(1)——物理信息神经网络(PINN)文章目录前言(一)物理神经网络(PINN)解读1.1PINN基本背景1.2PINN算法描述前言  最近正在看利用“深度学习”(大概吧,其实只是利用了neuralnetwork的自动微分特性(AD)),在看一些文章的同时,将文章中提到的开源代码用起来和复现一些基本方程求解能够加快我学习的进度,这里将持续贴出一些方程和代码的求解过程。当然非常希望同学和朋友们可以给我指出错误,最后如果能够坚持下去,这个系列的工作会分享到github,同时如果对各个开源程序有所帮助那就更好了!  由于会参考到很多文章

    2022年10月23日
  • 方程推导:二阶有源带通滤波器设计!(下载:教程+原理图+视频+代码)

    方程推导:二阶有源带通滤波器设计!(下载:教程+原理图+视频+代码)1、背景对于微弱的信号的处理方式一般是:放大和滤波,这个过程中就涉及到放大电路的选取、滤波器的选择以及偏置电路的设计。本例以实例的方式讲解并附带参数计算、仿真、实物测试三个环节。假设需要处理一个20mV的正弦信号,该信号的频率范围是15~35Hz,经过处理后幅值不超过3.3V,且需要经过带通滤波器滤除杂波。2、滤波器定义滤波电路又称为滤波器,是一种选频电路,能够使特定频…

  • 在虚拟机上安装使用LoadRunner教程

    在虚拟机上安装使用LoadRunner教程记录一下我的安装LoadRunner血泪史1.LoadRunner11在win10上使用总是出问题,后来看到只能在win7在用,就在VMware建了个win7镜像,在msdn(https://msdn.itellyou.cn/)上下了win7的cn_windows_7_enterprise_x64_dvd_x15-70741.iso,后来安装VMwareTools的时候会报“安装程序无法继续。本程序需要您将此虚拟机上安装的操作系统更新到SP1”这个才是能用的镜像:cn_windows_7_enter

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号