横向越权与纵向越权

越权,简单来说就是使用一个账号却能对其他账号产生影响或者去执行其他账号的功能。越权又分为横向越权和纵向越权。

横向越权:横向越权指的是攻击者尝试访问与他拥有相同权限的用户的资源

对于一个请求,或者说一个接口,经常使用url拼接的方式去传递参数,如果攻击者在浏览的时候提前知悉了url的参数以及拼接顺序,那么他就可以在任意账号去随意执行你的接口。

localhost:8080/user/updatePassword?username=aaa&passwordNew=xxx

修复方案:

一、可通过建立用户和可操作资源的绑定关系,用户对任何资源进行操作时,通过该绑定关系确保该资源是属于该用户所有的。

二、对请求中的关键参数进行间接映射,避免使用原始关键参数名,比如使用索引1代替id值123等

纵向越权:纵向越权指的是一个低级别攻击者尝试访问高级别用户的资源

垂直权限攻击又叫做权限提升攻击。其原理是由于Web应用没有做权限控制,或仅仅在菜单上做了权限控制,导致恶意用户只要猜测其他管理页面的URL,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。

修复方案:

建议使用基于角色访问控制机制来防止纵向越权攻击,

即预先定义不同的权限角色,为每个角色分配不同的权限,每个用户都属于特定的角色,

即拥有固定的权限,当用户执行某个动作或产生某种行为时,通过用户所在的角色判定该动作或者行为是否允许。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值