pikachu
pikachu => 备份地址
Over Permission
概述
如果使用 低权限 A用户的权限去操作 高权限 B用户的数据,如果能够成功操作,则称之为越权操作。
越权漏洞形成的原因是后台使用了 不合理的权限校验规则 。
越权漏洞容易出现在权限页面(需要登录的页面)中增、删、改、查的地方,进行这些操作时,
后台需要进行合理的权限校验。
权限管理应当遵守:
- 使用最小权限原则对用户进行赋权
- 使用合理(严格)的权限校验规则
- 使用后台登录状态作为条件进行权限判断,不盲目使用前端传递的条件判断条件
水平越权
水平越权指的是 相同权限 下的 不同用户 可以相互访问
登录lucy/123456
用户后,查看个人信息时,会向/pikachu/vul/overpermission/op1/op1_mem.php?username=lucy&submit=点击查看个人信息
请求数据。
可以观察到username=lucy
参数,将其更换为同权限的其他用户名即可获得其他用户的信息。
1 2
| # 使用`lucy`身份,查看`lili`用户信息 http://train.com/pikachu/vul/overpermission/op1/op1_mem.php?username=lili&submit=点击查看个人信息
|
垂直越权
垂直越权指的是使用 低权限用户 可以访问到 高权限用户 。
登录admin/123456
用户,添加用户时可以查看到URL
为:
1 2
| POST /pikachu/vul/overpermission/op2/op2_admin_edit.php HTTP/1.1 username=qwe&password=qweqwe&sex=&phonenum=&email=&address=&submit=%E5%88%9B%E5%BB%BA
|
后台获得参数后直接插入,没有权限验证。因此登录pikachu/000000
这个只有查看权限
的用户后,
直接访问http://train.com/pikachu/vul/overpermission/op2/op2_admin_edit.php
页面,即可进入
添加用户
页面,并且能够正常添加用户。