吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 22866|回复: 30
收起左侧

[Android 原创] 破解最近有点小火的【永不言弃】unity3d游戏内购功能过程

  [复制链接]
haking 发表于 2015-7-5 10:17
事情是这样的,本人的一个朋友给我介绍一款游戏,说是很好玩,我就问他,有没有内购的,他说有,OK,那么咱们就来玩玩,这款游戏叫做【永不言弃】,其实是一款类似flybird的虐心小游戏,玩过才知道累。
破解这款游戏的内购主要不是真正的破解内购,而是直接将游戏内需要花钱购买功能的地方直接让他不用花钱就可以使用。此款游戏花了我最少2个多小时的分析,但是分析之后破解起来就跟玩一下,这是一款unity3d开发的游戏,所以我一开始没想到是这种游戏,所以浪费了不少的时间。那么废话就不多说了,下面开始咱们的破解之旅吧。
游戏名称:永不言弃
下载地址:腾讯应用宝
破解所使用的工具:android killer(或者同类的apk改之理)、reflector需要内置插件:reflexil

一、判断游戏类型
由于刚开始使用就直接使用android killer开始破解,所以一直找不到重点,后来发现竟然是unity3d开发的,真是一身汗,所以第一步一定要先判断游戏是不是由unity3d开发的游戏,以免浪费太多的时间。判断是不是unity3d开发的游戏最好的依据就是,先用android killer反编译,然后看看是否有\assets\bin\Data\Managed目录,如下图所示。
y1.png
如果有那么基本上可以判定是unity3d开发的游戏了,接着,先使用android killer编译一下,将编译好的文件,放到手机中去测试,主要原因是因为我使用模拟器的时候游戏可能有检查的功能吧,一打开就是白屏,而我对这种检查还不熟悉,所以就使用手机来运行吧。

二、分析需要破解的东西
从下图我们可以看到,需要破解的东西有两个,一个是休闲模式,一个就是游戏金币了。其实还有其它的,后面再来讲。
y2.png
y3.jpg
好,了解到我们需要破解的东西,就简单了,开启reflector,加载Assembly-CSharp.dll ,有的朋友可能会问,为什么要加载Assembly-CSharp.dll这个而不是加载别的?或者说哪个文件大就加载哪个?恩,一般来讲都是先加载这个,如果这个没法找到我们想要的东西,再来加载其它的。分析是一个需要耐心的过程,没有谁一开始就知道哪个东西是重点的。扯远了。
三、开始分析破解内容
明白我们要破解的东西之后,加载Assembly-CSharp.dll,然后使用搜索功能,搜索Member "coin" ,然后我们一个一个找,在这里就直接给出重点的,如下图所示的地方就是重点了。这里找到了三个重点,那么第一个翻译中文就是增加金币,第二个就是捡起金币,第三个就是得到金币,可能我的翻译不太对,但是意思差不多。
y4.png
我们来看这几个函数,其中AddCoin的函数没有我们想要的代码,或者我的分析能力不足,没找到重要的,我们继续看,HasCoin()返回的是布尔类型,所以更加不是了,那么只有一个PickUpCoin(),捡起金币,通过玩游戏我们得知,玩游戏的时候路上是有金币的,那么会不会是我们吃金币的时候,就会出发这个函数呢?当然会啦。那么我们就来看看这个函数是什么鬼。
y5.png
像我这种级别的菜鸟,还真看不到他写了什么,大概是,是否得到金币,得到了就执行下面的函数,我们知道,吃一个金币就是加1,那么这些函数里面哪些是有加1的呢?因为时间关系,就不具体分析第一个了,在这里分析之后,得到重要的地方就是这个User.ChangeCoins(1);,我们点开来看看他都写了什么函数。
y6.png
意思是把你得到的金币加到总金币上面。那么这样看起来就简单了,我们直接将User.ChangeCoins(1);中的1改成9999,也就是吃一个金币就有9999这么多金币了。下面我们就要使用reflexil 工具来修改了。
y7.png
其中我们需要修改的是ldc.i4.1 将这个数值改成ldc.i4 前面的意思是数值为1,后面这个呢就是你自己定义数值了。那么我们按照如下图所示就可以改好了。最后点击update,由于时间关系,就不一一测试了,我们直接来进行内购功能的破解。从上面的图中我们知道,还有休闲模式,那么我们这里直接使用搜索字符串的功能,搜索休闲模式看看。
y8.png
通过搜索我们可以看到如下图所示的地方有三个函数,而其中最让我注意到的就是第二个函数OnUnlockAll(),翻译成中文的意思就是解锁全部!
y9.png
我们通过下图可以了解到几个重要的判定,User.HasIAP_UnlockAll,user.HasIAP_UnlockGame ,那么我们定位一下,看看谁会调用这两个鬼。
y11.png

同样的,经过大量时间的分析,下面直接给出重点了,如下图所示,最后一个才是重点。
y12.png
我们来看看为什么他是重点,通过下图我们了解到,这个游戏里面几乎所有的重要数据都写在这里了,就像一个游戏的初始化一样,但是由于本人的分析能力有限,只获得了几个有用的信息,那就是HasIAP_RemoveAds ,HasIAP_UnlockAll ,HasIAP_UnlockGame 这三个,一个是去广告的,一个是解锁全部游戏关卡的,一个是休闲模式。那么我们只要将这三个值直接设置为true就可以了,这个内购的功能也就破解了,下面来试试。
y13.png
将在函数开始的时候添加他们几个值,如下图所示,这样就达到了破解。下面我们使用android killer编译然后放到手机上试试效果。
y14.png
可以看到,我们的破解已经完成了。无论是关卡内购,还是广告内购,都搞定了,捡金币,一下就是9999,用不完了。
y15.jpg

y16.jpg
注意的是,金币的值不要修改太大,否则会出问题。还有就是一打开游戏可能显示没有破解成功,不用管,先玩一盘,吃个金币,就可以成功了。

累死了,今天的教程就写到这里吧。

游戏原版和破解下载地址:http://pan.baidu.com/s/1qWHX2lI   密码:sdyi

ybyq_killer.apk 是破解版。

点评

来晚了,原版没有了,本想加分给好评的,唉。。。。。。。。  发表于 2017-5-2 22:48

免费评分

参与人数 13热心值 +13 收起 理由
a4310569 + 1 已答复!
tigor65 + 1 我很赞同!
qtfreet00 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩.
Hacker丶残月 + 1 我很赞同!
假好人。 + 1 我很赞同!
一毛在此 + 1 热心回复!
淡然出尘 + 1 我很赞同!
蔓延的肆意 + 1 不评分对不起你啊
n123896 + 1 鼓励转贴优秀软件安全工具和文档!
小猪后儿 + 1 热心回复!
阿纯@ + 1 虽然看不懂
My_CC + 1 感谢发布原创作品,吾爱破解论坛因你更精彩.
逍遥枷锁 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

myoldid 发表于 2015-7-24 22:01
将在函数开始的时候添加他们几个值,如下图所示,这样就达到了破解。.
请问添加是在这里添加?好久没玩逆向,搞不懂了
QQ截图20150724220039.png

丶永远 发表于 2015-8-22 02:55
为什么一直编译失败  
APK 编译完成!
正在对 APK 进行签名,请稍等...
>APK 相关工作目录或文件不存在,无法继续!
APK 签名失败!
一块两毛五 发表于 2015-7-5 10:21
1220981007 发表于 2015-7-5 10:26
安卓最低什么等级能玩
贴纸笔墨 发表于 2015-7-5 10:39
现在安卓破解 我都不敢当小白了 我这点话费 都不够扣的
呀呀 发表于 2015-7-5 10:46 来自手机
贴纸笔墨 发表于 2015-7-5 10:39
现在安卓破解 我都不敢当小白了 我这点话费 都不够扣的

飞行模式值得信赖
九九八十一 发表于 2015-7-5 10:49
完全看不懂了
11212897 发表于 2015-7-5 11:03
感谢楼主分享。
n123896 发表于 2015-7-5 11:26
惟有热情的回复才有优质的分享!
 楼主| haking 发表于 2015-7-5 11:49 来自手机
贴纸笔墨 发表于 2015-7-5 10:39
现在安卓破解 我都不敢当小白了 我这点话费 都不够扣的

或者用模拟器也是可行的
孤雁是天的寂寞 发表于 2015-7-5 22:02
感谢分享!!!!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 18:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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