渗透测试之越权与逻辑漏洞

越权漏洞原理

如果使用A用户的权限去操作B用户的数据,A的权限小于B的权限,如果能操作成功,称之为越权操作。

越权漏洞形成的原因是后台使用了不合理的权限效验规则导致的。

一般越权漏洞容易出现在权限页面(需要登录的页面),增删改查的地方,当用户对权限页面内的信息进行这些操作时,后台需要对当前用户的权限进行校验,看其是否具备操作的权限,从而给出响应,而如果校验的规则过于简单则容易出现越权漏洞。

越权分类

平行越权

A用户和B用户属于同一级别用户,但各自不能操作对方个人信息,A用户如果越权操作B用户的个人信息的情况称为平行越权操作。

漏洞演示平台:pikachu


先用第一个账号登录 查看一下个人信息


接着把username参数值改成其他的用户名  看下是否可以查看到其他用户的个人信息


再来看下源代码是怎么写的


数字1代码块效验了是否登录  数字2则直接判断传递进来的username是否为空 如果不为空的话 直接将username带入数据库查询  没有进行session验证  而是直接使用传递进来的值

水平越权结束。。

垂直越权

A用户权限高于B用户,B用户越权操作A用户的权限的情况称为垂直越权。


先登录普通账号看一下


没有操作数据的权限

越权思路:  先用管理员账号登录 执行添加用户的操作  用burp抓取数据包发送到重发器  再用普通账号登录抓取数据包 将普通用户的cookie值替换到管理员操作的那个数据包内  尝试使用普通用户的权限执行管理员权限的操作


先抓到添加用户的数据包 


将普通用户的cookie替换到重发器那边


替换过来发送请求


再回到网页查看用户是否添加成功


看下源代码


在22行只是判断了是否登录并没有判断登录者是否有权限进行此操作

垂直越权结束。。。。




逻辑漏洞

逻辑漏洞使用webbug靶场

交易支付中的逻辑漏洞挖掘思路

加入购物车时是否可以修改购买数量为负数,商品价格是否可以修改。

确认购物车信息时是否可以修改商品数量为负数,是否存在折扣限制突破问题,是否可以修改商品总金额。

输入物流信息时是否可以控制运费,如果可以,尝试修改为负数。

确认订单后跳转支付接口时是否可以修改支付金额,可否不支付直接跳转到交易成功环节。

你可能感兴趣的:(渗透测试之越权与逻辑漏洞)