安全矩阵

 找回密码
 立即注册
搜索
查看: 2571|回复: 0

实战 | App优惠劵无限领取漏洞挖掘记录

[复制链接]

189

主题

191

帖子

903

积分

高级会员

Rank: 4

积分
903
发表于 2022-3-21 00:27:51 | 显示全部楼层 |阅读模式
原文链接:实战 | App优惠劵无限领取漏洞挖掘记录 (qq.com)


介绍
对于app的漏洞挖掘其实客户端漏洞挖掘还是很少的,当然像谷歌或者小米这种手机厂商的src还是很重视的,但是其他厂商除非是rce可能就奖励不是很高了。一般的app中漏洞挖掘还是主要在于客户端与服务端进行通信过程中,进行数据包的抓取,毫不夸张的说,会使用Charles或者bp就可能会挖到一些严重的漏洞。

主要就是api接口或者是数据的修改。因为很多app都只是前端做校验,在一些比较关键的地方进行修改可能会有意想不到的惊喜。

挖掘流程
我们首先在领取优惠卷的地方进行抓包。




箭头所指的就是优惠劵类别。此时我们继续重复抓包是无法领取的,但是在这个时候,还是不要放弃,可以换一个思路,既然直接重放是无法实现的,那么能否修改优惠券的类别,此时我们可以去其他可以领取优惠券的地方,查看是否是有其他的优惠卷编码。

此时我们可以去查看一些赠送优惠券的商品,进行抓包。而且可以去挑选一些无差别的优惠券甚至是一些通用券。

比如我们此时抓到了这样一个包。



那么此时我们将该编码放在我们上一个数据包中进行重放,发现是可以成功重放并且进行多次重放。优惠卷也是已经全部领取成功,我们也可以领取各种不同的优惠券。此时就已经成功完成了优惠券的无限领取。

此时重放了10次,全部成功。

该漏洞已经提交修复了。不刑的。

补充阅读

逻辑漏洞的挖掘总结

https://www.secpulse.com/archives/139186.html
支付交易(充值、提现、抽奖、优惠券、会员)等多个模块

  1. •金额、数量负值/小数。

  2. •总金额=商品金额+优惠券金额(只校验订单总金额,而不单独校验优惠券金额跟商品金额,可增大优惠券金额)。

  3. •订单参数混淆干扰(在同一个订单内提交两个或多个金额参数,如price=1&price=-1)。

  4. •校验商品总数量不能为负数,而不校验单个数量,可以设置两个商品一个数量为-1,一个数量为2。

  5. •越权使用他人优惠券。

  6. •首充优惠、升级会员等,多台设备同一账号同时进入支付宝微信第三方支付页面,此时签名订单已生成,支付时不会变成其他金额,可依次以优惠价格支付订单。

  7. •小数点精度:0.019=0.02(比如充值0.019元,第三方支付截取到分也就是0.01元,但是系统四舍五入为0.02)。

  8. •int型溢出(超过最大值整数溢出)遍历优惠券id,有可能遍历出测试隐藏的无条件大额优惠券。

  9. •首充、提现、抽奖、领取优惠券等并发:不一定非要用同一个数据包去进行多次并发操作,可用bp等工具拦截客户端数据包,快速多次点击相应客户端按钮,然后停止拦截,并发请求。
复制代码

APP端赛事商品下单并发场景下导致优惠券可以重复使用多次的逻辑漏洞
https://www.cnblogs.com/qmfsun/p/8954247.html

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2025-4-24 15:27 , Processed in 0.016632 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表