逻辑越权
简介
- 逻辑越权漏洞就是当用户跳过自己的权限限制,去操作同等级用户或者上级用户。正常的情况下,当一个用户去访问某个资源的时候,首先需要去登录验证自己的权限,其次是对数据的查询,最后返回数据内容。
- 但是如果在权限验证这里,出现了验证不足或者根本就没有验证,那么就会导致越权漏洞的出现。并且逻辑越权又分为水平越权和垂直越权。
- 逻辑越权主要是由于开发人员在对数据的增删改查的对人员客户端的请求数据过分相信,未对其进行权限判定而导致的问题。
水平越权
原理
- 水平越权也就是同等级越权,可以理解为本来A只能够看自己的工资,而通过更换某个ID或者其他的验证身份的操作,就能够A去看B的工资。
- 水平越权多数会出现在和数据库进行增删改查的地方,若用户在对其进行信息修改的时候,后台没对其进行严格的校验的话或者校验的规则较简单的情况下,就可能会出现越权漏洞。
- 水平越权的危害可以导致用户的个人信息泄露,冒充别人等。
实例
- 使用pikachu靶场进行实例演示
- 在提示中随便选择一个用户登录
- 这里选择了lucy
- 登录之后可以查看个人信息
- 抓包然后发现是直接username获取个人信息
- 直接修改username为另一个人就行
垂直越权
原理
- 垂直越权就是通过自身低权限账号去执行高权限账号所能执行的操作。
- 垂直越权漏洞可以考虑低权限提升为高权限,比如让普通的用户变成管理员用户。
- 其实垂直越权漏洞是需要一定的条件的,需要抓取到高权限用户的数据包,而抓取这个数据包是有一定的困难的,比如可以盲猜数据包,或者通过网站获取源码本地搭建去获取。
- 垂直越权的危害可以导致普通用户修改他人的密码,篡改他人信息,依旧个人信息泄露等。
实例
- 首先登录admin用户
- admin拥有最大权限,可以增加或者删除用户信息
- 添加用户
- 并且抓包,获取到post包
- 然后登录pikachu用户,就是普通用户
- 普通用户只有查看的权限,不能修改用户列表
- 获取到普通用户的cookie信息
- 然后将普通用户的cookie替换
- 然后发包,在该用户登录的情况下
- 刷新用户列表就可以看到添加成功了
- 如果在退出用户的情况下,是没办法添加的
评论