如果使用A用户的权限去操作B用户的数据,A的权限小于B的权限,如果能够成功操作,则称之为越权操作。 越权漏洞形成的原因是后台使用了 不合理的权限校验规则导致的。
一般越权漏洞容易出现在权限页面(需要登录的页面)增、删、改、查的的地方,当用户对权限页面内的信息进行这些操作时,后台需要对 对当前用户的权限进行校验,看其是否具备操作的权限,从而给出响应,而如果校验的规则过于简单则容易出现越权漏洞。
因此,在在权限管理中应该遵守:
1.使用最小权限原则对用户进行赋权;
2.使用合理(严格)的权限校验规则;
3.使用后台登录态作为条件进行权限判断,别动不动就瞎用前端传进来的条件;
#水平越权
水平越权的原因来自对于登录状态校检不够,只进行了登录状态的检验,并未进行登陆人身份的检测
在判断数据的用户时是通过从用户表单参数中获取userid来实现的,这里的话我们可以修改userid来实现水平越权例如当A和B在同一网站登录时,A修改,查看。。信息,如果发送的是get请求。那么A把登陆的usename修改掉就会发生越权。post请求可以抓包。
下面演示一下。
我登上lili的账号,
查看信息时把lili改为另一个用户lucy发现可以查看到lucy的信息。
产生原因:后台对于用户的登录身份未检测,只检测登陆状态。
关于水平越权后续会继续更新。推荐文章token令牌
越权实例
##垂直越权
1.当你通过一些爬虫爬取网站时你可能会得到一些敏感网址,这些网址当不需要管理员的权限时就可以查看。等操作就发生的垂直越权。
延伸一点:使用爬虫你会得到网站的结构,或许运气好的话,能爬取到敏感文件。爬虫是在信息收集必备的手段。当你访问网站时访问robots.txt你或许会得到一些东西。