越权分类,场景
水平越权
可以访问拥有相同权限其他用户的资源
权限类型不变,ID改变
未校验数据/资源权限归属,如:用户A、B拥有相同权限,A更改资源id,可水平越权查看、修改B的信息。
身份权限校验绕过,如:A更改uid、token等凭据为B用户,即可查看、修改B用户信息
利用场景
- 资源id可预测场景
- 身份认证凭据可预测场景- 资源id可预测场景
- 身份认证凭据可预测场景
测试方式
-
手工测试/黑盒自动化测试(针对越权查操作:录制并重放流量)
-
- 替换cookies
- 空cookies(未授权)
- url中可预测的用户、产品等id参数遍历
- cookies中可预测的用户、产品等id参数遍历
修复建议
- 用户id使用uuid等格式,使其不可预测,并保证该参数只对用户自己展示
- 应用对请求资源和身份进行校验
垂直越权
低级别 可以访问 高级别 的资源
权限ID不变,类型改变
场景
如:用户A可访问管理员的相关信息,通过垂直越权调用管理员的相关接口(uid不变,但是调用了管理员的接口)
交叉越权
场景
如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !