某小程序逻辑漏洞
2023-11-14 13:55:47 Author: 藏剑安全(查看原文) 阅读量:10 收藏

免责声明

由于传播、利用本公众号狐狸说安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号狐狸说安全及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉,谢谢!

0x01 概述

由于程序逻辑不严谨或逻辑太过复杂,导致一些逻辑分支不能正常处理或处理错误,统称为业务逻辑漏洞。常见的逻辑漏洞有交易支付、密码修改、密码找回、越权修改、越权查询、突破限制等,下图是简单的逻辑漏洞总结,在挖掘的过程中更多的时候需要脑洞大开:

挖掘逻辑漏洞的过程中,需要一些技巧和非常规思路,有点像边缘测试的思想。一般的思路是:

确定业务流程--->寻找流程中可以被操控的环节--->分析可被操控环节中可能产生的逻辑问题--->尝试修改参数触发逻辑问题
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:网约车
无限叫车,重复发送协议造成市场混乱修改评价分数修改限时优惠叫车关键参数替换优惠卷越权操作其他订单

业务逻辑漏洞需要对业务熟悉,有很强的逻辑思维能力,所以下面主要描述一下中注册、登录和密码找回出现的漏洞逻辑,再尽量多和全的收集整理相关场景。

0x02 正文

打开小程序

登录后实名认证
然后打开首页

查看更多的时候进行抓包

获取到id,这里可遍历全站id数据

点击查看的地方,抓包

修改为他人的

我们去验证一下

放包后可查看他人报名数据

点击时抓包修改为他人id,可越权查看他人的证书信息

保存的时候抓包

然后这个包的id改为刚刚测试人员的

直接越权查看,然后我们查看一下

发现已经越权修改成功


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg5MDA5NzUzNA==&mid=2247485478&idx=1&sn=3662b4a9ca4e0fa3b051450f8f1017e4&chksm=cfe09237f8971b21411bcabb94e31e13a3eefbf82e894299587c22bdaf4402a74f664128ec5d&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh