【支付宝内购】远方内购(自己的锅自己背)

前言

自己的锅自己背。。。
当年第一次破解成功的喜悦,现在虽然依然无法忘怀但是却不再有当时的自豪和骄傲,甚至看到曾经的弯路,恨不得把当时的自己拉过来,抽一耳光子:

“不好好学习就罢了,写个教程也就算了,问题你的方法都不对还在那里瞎(粗鄙之语)扯”

正文

支付宝,找9000,微信,找resp(为了尽可能多的匹配,尽量搜的短一些,应该是两个,respCode和respMsg),当然什么成功、失败、取消之类的词就不赘述了。

定位判断

搜索9000。

只有一处,(其他的都是行数(.line)或是字符串)

点进去,很短,转java看一下流程。

发现把字符串resultStatus和9000进行了比较,

尝试

改流程就是把不对的过程跳过去。实现支付正确走的流程。
搜索9000就是因为支付宝的正确调用代码就是这玩意(都被玩烂了。。。。)
把判断跳转if-xxx注释了,按照9000代码里的流程(即给resultStatus赋值0)。
没错很奇怪,这种判断我也是第一次见到。不过改就完了。。。
按照下图改完,保存后转java,发现0没了。。。

因为被反编译引擎直接给翻译到后面的关键调用里了。。。

好了这个不是我们该关心的。。。
编译保存

完成

购买,点击支付,点击取消。

回合结束

更进一步(思考题)

打开支付界面自动破解 点击支付(无论是支付宝还是微信)无弹窗自动破解

咳咳,其实我之前实现过,但是这个懒得看了
思路:
1.进入支付解锁提示页面-2.点击支付按钮-3.生成orderID-4.请求微信/支付宝支付-5.监听返回参数-(假设是真的付过钱了)-6.微信返回succ/支付宝返回9000-7.执行正确支付的操作
破解的流程是在第6步对代码流程进行了更改,把判断去掉,假装返回了成功信息。
那么是不是(就是有!只不过语气委婉)有可能把流程改成
进入支付解锁提示页面-生成orderID-执行正确支付的操作
或是
进入支付解锁提示页面-点击支付按钮-生成orderID-执行正确支付的操作
一般来说,支付成功解锁的代码都会封装在一个方法里,简单地说就是生成orderID后,直接调用成功的代码(比如文中例子调用u3d的接口MainActivity . CallUnity())那我在哪里调用不是调用?为啥不能我自己调用?
生成orderID直接调用成功代码(这里不需要该参数,大部分软件因为内购不唯一一般都需要货物ID进行区分)

相关知识

记某单机游戏的一次内购破解
游戏内购攻略
游戏有内购是什么意思?
游戏内购思路
死亡日记手游内购 内购攻略详解
我的神功内购版游戏下载
无限内购版游戏——体验与消费的盛宴
无限内购版游戏,享受游戏乐趣的新方式
传奇世界单机版内购:深度体验与策略攻略
揭秘无限内购版游戏:畅享游戏的全新体验

网址: 【支付宝内购】远方内购(自己的锅自己背) http://www.hyxgl.com/newsview336385.html

推荐资讯