微信小游戏里那个“充值漏洞”,微信我亲眼见过它怎么把一个零氪玩家变成全服第一。小游戏充
去年夏天,值漏我沉迷一款叫《山海异闻录》的微信修仙小游戏。公会里有个ID叫“白嫖老祖”的小游戏充兄弟,战力榜上长期垫底,值漏每天靠签到领的微信20灵石苟活。结果某天凌晨两点,小游戏充系统公告炸了——他连充了128笔648元,值漏直接登顶。微信
所有人都以为他中了彩票。小游戏充直到三天后他的值漏账号被永久封禁,群里才流传出真相:他卡了一个充值回调的微信bug。具体操作是小游戏充,在微信支付页面点确认付款的值漏瞬间,同时断网并强制杀掉游戏进程。系统扣款成功,但游戏服务器没收到支付回调,于是灵石到账,而微信那边的订单因为异常被判定为“未完成”,钱原路退回。他反复操作了128次,一分钱没花,白嫖了八万多灵石。
这玩法其实不算新鲜。微信小游戏的支付链路是:游戏客户端发起订单→微信支付扣款→服务器回调通知游戏发货。漏洞出在回调环节——如果游戏服务器在收到回调前就崩溃或超时,就会默认“未支付”,但微信那边钱已经扣了。正常情况下这没毛病,因为回调会补发。可一旦玩家在扣款成功但回调未到达的窗口期主动断网、清后台,部分游戏为了防丢单会设置“超时未收到回调就自动退款”。结果就是钱退了,货也发了。
这类漏洞的高发区,恰恰是那些把支付逻辑写得很糙的小游戏团队。大厂有严格的对账系统,回调丢失会触发人工核查。但很多小游戏是外包做的,服务器就一台低配云主机,支付回调接口连个重试机制都没写。白嫖老祖那晚能卡成功,是因为游戏服务器刚好在凌晨两点做数据备份,导致回调延迟超过了微信的5秒超时限制。
更讽刺的是,这游戏官方后来发的封禁公告措辞是“利用系统异常获取不正当利益”。但明眼人都知道,微信支付那边才是真漏洞——游戏方根本管不到微信的退款逻辑。小游戏平台为了用户体验,把退款判定做得太宽松,反而成了刷子的提款机。
后来我特意去搜过,这种卡回调的操作在贴吧、QQ群里早就成了公开的秘密,甚至有人卖“代充教程”,收费188元教你怎么卡。但绝大多数人卡个三五次就被风控盯上了,微信会直接冻结你的支付账号,严重的会连带封掉整个微信号。白嫖老祖那种能连刷128次的,属于极端案例——他用的是一张刚绑定的新银行卡,而且每次操作间隔超过10分钟,完美绕过了微信的异常检测。
现在你再去搜《山海异闻录》,会发现它已经凉透了。不是因为漏洞,而是因为那次事件后官方疯狂砍福利,把月卡奖励削了三分之二,逼走了所有正常玩家。一个充值漏洞,最后坑的是老老实实氪金的人——这大概就是小游戏生态里最荒诞的现实。