由于微信公众号推送机制改变了,快来星标不再迷路,谢谢大家!
由于程序逻辑不严谨或逻辑太过复杂,导致一些逻辑分支不能正常处理或处理错误,统称为业务逻辑漏洞。常见的逻辑漏洞有交易支付、密码修改、密码找回、越权修改、越权查询、突破限制等,下图是简单的逻辑漏洞总结,在挖掘的过程中更多的时候需要脑洞大开:
挖掘逻辑漏洞的过程中,需要一些技巧和非常规思路,有点像边缘测试的思想。一般的思路是:
确定业务流程--->寻找流程中可以被操控的环节--->分析可被操控环节中可能产生的逻辑问题--->尝试修改参数触发逻辑问题
0X01:饮料贩卖机
替换订单ID,创建订单时在支付界面,在此创建订单替换订单ID(高价替换低价)
无限新用户优惠订单,重复创建优惠订单
替换优惠卷ID(未达到条件使用)
个别情况订单数量为1.99时,客户端只支付1元,实际上服务器认为支付了2元。
取货时并发(真实案例)
0X02:直播
快速进出房间炸房
无限发送点赞协议
修改礼物数量,0,小数,负数,特定值(一般情况下为1073741824)
修改礼物ID,遍历尝试是否有隐藏ID。
并发送礼物,抽奖
无限创建首次优惠订单,有些首次优惠订单是一个特殊的pid,这种的直接替换pid进行支付。有些是相同的ID,这种的提前创建订单,记录多个订单号在依次修改订单支付。
刷屏:发言刷屏,分享,点赞等有提示的地方刷屏
房间内可以申请的地方进行申请取消操作,看看是否能炸房。
越权踢人,增加管理员,关闭房间等操作。
发送的表情是否可以修改长宽(真实案例)
0X03 :购物app
购买数量:为0,小数,负数,正负值(A为-1,B为2,总值为1)
代金卷:并发领取,遍历领取,同一个代金卷重复使用,未满足条件使用代金卷
越权:登陆,操作别人订单,修改资料
0X04:外卖
商品数量,0,负数,小数,特定值,正负数(A为-1,B为2,总值为1)
送餐员评价修改,星级,打赏金额(小数,负数)
商品评价,星级,评论字数,上传图片是否可以自定义格式,
订单超出送餐地址
强行货到付款,取消订单,退款
越权操作别人订单,登陆
优惠购买会员(重复使用优惠购买)
0X05:交易平台
钱包并发提现,负数提现
使用钱包支付时多个订单并发支付(是否支付金额能大于余额)
转账负数,并发转账
上架商品突破限制,例如数量,字数。
替换订单,创建订单号如果订单状态可修改,先进到支付界面,然后将订单修改成更大的金额,然后支付提前进入的支付界面
数量修改
0X06:社交
强行举报(读取本地消息上传那种)
强行加好友(一般尝试重发通过好友这条协议)
自由修改号码(靓号类)
群管理无限禁言
越权禁言,替人,拉黑
会员修改金额,数量。无限优惠购买
非会员使用会员功能
0X07:漫画
打赏金额为负数,小数,特定值(溢出)
越权删除评论,登陆
修改充值金额
付费漫画免费看
评论图片数量过多会导致客户端加载卡死
0X08:音乐
唱歌类软件修改上传分数等参数
付费下载尝试替换下载ID
修改付费下载金额
F12查看下是否有歌曲地址
0X09:网约车
无限叫车,重复发送协议造成市场混乱
修改评价分数
修改限时优惠叫车关键参数
替换优惠卷
越权操作其他订单
业务逻辑漏洞需要对业务熟悉,有很强的逻辑思维能力,所以下面主要描述一下中注册、登录和密码找回出现的漏洞逻辑,再尽量多和全的收集整理相关场景。
任意找一个进行购买
发送邮件成功,现在去邮箱看下
确定购买的时候进行抓包,起初修改金额发现有校验,尝试了好多修改价格的方法发现都不行,随后突然想到金额修改不行,那么我就修改数量
数量为1,我们修改为0.6,进行发包
我们去验证一下
经验证金额还是为135,这样就达到了低价购买的支付逻辑漏洞
打开小程序登录账号后
删除的时候进行抓包
删除的时候抓包
修改为刚刚那个账号的地址id
可见此账号地址没有被删除,我们返回上一个账号进行查看,地址是否被删除
可见,地址被越权删除
★
欢 迎 加 入 星 球 !
代码审计+免杀+渗透学习资源+各种资料文档+各种工具+付费会员
进成员内部群
星球的最近主题和星球内部工具一些展示
加入安全交流群
关 注 有 礼
还在等什么?赶紧点击下方名片关注学习吧!
推荐阅读