越权漏洞是Web应用程序中一种常见的安全漏洞。它的威胁在于一个账户即可
空指全站用户数据
。当然这些数据仅限于存在漏洞功能对应的数据。
越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查的时候对客户端请求的数据过分相信而遗漏了权限的判断
。所以测试越权就是和开发人员拼细心
的过程。
第一章:水平越权
水平权限漏洞一般出现在一个用户对象关联多个其他对象(订单、地址等)、并且要实现关联对象的 CURD1 的时候。开发容易习惯性的在生成的CRUD表单(或AJAX请求)的时候根据认证过的用户身份来找出其有权限的被操作对象id,提供入口,然后让用户提交请求,并根据这个id来操作相关对象。在处理CRUD请求时,往往默认只有有权限的用户才能带的入口,进而才能操作相关对象,因此就不再校验权限了。可悲的是大多数对象ID都被设置为自增整型,所以攻击者只要对相关id加1、减1、直至遍历,就可以操作其他用户所关联的对象了。
1.1 水平越权常出现的位置 :
- 下单成功之虎的订单产查看处
- 收货地址、删除和添加
- 下单时候的地址修改
- 等等
1.2 案例场景