水平-垂直越权攻击和防范
大约 1 分钟解决方案
介绍
越权攻击是Web应用程序中一种常见的漏洞,由于其存在范围广、危害大, 列为Web应用十大安全隐患的第二名,指应用在检查授权时存在纰漏,使得攻击者在获得低权限用户账户后,利用一些方式绕过权限检查,访问或者操作其他用户或者更高权限.
- 水平越权
- 攻击者尝试访问与他拥有相同权限的用户的资源
- 例子:A用户可以直接操作到B用户的数据
- 垂直越权
- 一个低级别攻击者尝试访问高级别用户的资源
- 例子:普通管理员登录,拼接浏览器地址,直接访问高级管理员的页面
防范
防止水平越权:建立用户和可操作资源的绑定关系,用户对任何资源进行操作时,通过该绑定关系确保该资源是属于该用户所有的。
防止垂直越权:基于RBAC角色访问控制机制来防止纵向越权攻击,定义不同的权限角色,为每个角色分配不同的权限,当用户执行某个动作或产生某种行为时,通过用户所在的角色判定该动作或者行为是否允许。