一、概述
逻辑漏洞是指由于程序逻辑不严或逻辑太复杂,导致一些逻辑分支不能够正常处理或处理错误,一般出现任意密码修改(没有旧密码验证),越权访问,密码找回,交易支付金额等。对常见的漏洞进行过统计,发现其中越权操作和逻辑漏洞占比最高,在我们所测试过的平台中基本都有发现,包括任意查询用户信息,任意删除等行为;最严重的漏洞出现在账号安全,包括重置任意用户密码,验证码暴力破解等。
逻辑漏洞是指由于程序逻辑不严或逻辑太复杂,导致一些逻辑分支不能够正常处理或处理错误,一般出现任意密码修改(没有旧密码验证),越权访问,密码找回,交易支付金额等。对常见的漏洞进行过统计,发现其中越权操作和逻辑漏洞占比最高,在我们所测试过的平台中基本都有发现,包括任意查询用户信息,任意删除等行为;最严重的漏洞出现在账号安全,包括重置任意用户密码,验证码暴力破解等。
二、漏洞分类
越权访问(BAC)
- 简介:该漏洞是指应用在检查授权时存在纸漏,使得攻击者在获得低权限用户账户后,利用一些方式绕过权限检查,访问或者操作其他用户或者更高权限。越权漏洞的成因主要是因为开发人员在对数据进行增,删,改,查询时对客户端请求的数据过分相信而遗漏了权限的判定。越权访问漏洞主要分为水平越权访问和垂直越权访问。
- 水平越权:相同权限的用户A和用户B,用户B可以访问到用户A的数据。
- 示例:
// 靶场: Pikachu 漏洞练习平台 pika~pika~
// 关卡:http://10.196.93.67/pikachu/vul/overpermission/op1/op1_login.php
// 用户:lili、lucy
// 密码都是:123456
// 漏洞: 通过切换username的变量是就可以得到用户的信息
http://10.196.93.67/pikachu/vul/overpermission/op1/op1_mem.php?username=lili&submit=%E7%82%B9%E5%87%BB%E6%9F%A5%E7%9C%8B%E4%B8%AA%E4%BA%BA%E4%BF%A1%E6%81%AF
- 垂直越权:不同权限的用户A和用户B,用户B可以访问到用户A的数据。