发新帖

【Android逆向教程】Unity3D付费逆向思路+实例(1)

[复制链接]
39266 6
本帖最后由 Sarkozy 于 2014-11-22 19:27 编辑

原软件地址:http://www.yxdown.com/shouji/82887.html

工具:apkide、reflector

http://img.blog.csdn.net/20140912103543091?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2Fya296eTIwMTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

从smali文件夹中发现了一个MM文件夹,这是典型的移动支付接口。遇到这个直接搜onbillingfinish即可,搜索结果如下图:

http://img.blog.csdn.net/20140912103527578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2Fya296eTIwMTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

箭头所指为本次搜索结果中唯一一个method。我们来查看他的java源码:

http://img.blog.csdn.net/20140912103720593?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2Fya296eTIwMTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast

方框中我们看到了,这个onbillingfinish没有任何的判断,难道我们找错了吗?可是这个onbillingfinish就这一个方法啊!仔细看图中红色方框处,发现了一行命令:

sendMsgToUnity("onBillingFinish", arrayOfString);

也就是最后执行了这一行命令,简单翻译一下,得出这是向unity发送信息的命令。

翻译为smali代码就是这样:

aput-object v3, v1, v2

invoke-virtual {p0, v0, v1}, Lcom/juxiang/game01/mmIAPListener;->sendMsgToUnity(Ljava/lang/String;[Ljava/lang/String;)V

接下来,我们要用到reflector这个工具了。用这个工具打开assembly-csharp文件【不会的请查阅本博客中伊甸分析教程】,如图所示:

http://img.blog.csdn.net/20140912104256203?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2Fya296eTIwMTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast

同样的,既然是移动的支付接口,上文中有说道,目前的MM接口支付判断就是在onbillingfinish,按下F3搜索,记得切换到方法搜索,如图所示:

http://img.blog.csdn.net/20140912104432531?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2Fya296eTIwMTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast



由于字数限制,所以分为两章

下一章:【Android逆向教程】Unity3D付费逆向思路+实例(2)
http://www.pd521.com/forum.php?mod=viewthread&tid=57&fromuid=18

举报 使用道具

回复

精彩评论8

hzw007    发表于 2014-12-19 12:08:33 | 显示全部楼层
很好的东东,感谢分享:handshake

举报 使用道具

回复 支持 反对
默小坑    发表于 2014-12-22 17:27:20 来自手机  | 显示全部楼层
哟西

举报 使用道具

回复
737672679    发表于 2014-12-25 13:44:04 | 显示全部楼层
前排支持。
。。。。。,。顶

举报 使用道具

回复 支持 反对
求渔者    发表于 2015-3-23 14:48:25 | 显示全部楼层
请问下,本文中的逻辑是卸载dll中的
如果在Java代码中看到了逻辑部分,应该怎么改呢?

举报 使用道具

回复 支持 反对
抬头望未来    发表于 2015-7-26 17:58:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

举报 使用道具

回复 支持 反对
yyyl    发表于 2016-1-5 12:18:19 | 显示全部楼层
先收着,学习下

举报 使用道具

回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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