申请会员ID:kcloc【申请通过】
1、申 请 I D:kcloc2、个人邮箱:lby62318881@163.com
3、原创技术文章:
我之前破解过一款安卓的COC外挂 叫 小白精灵
官网:http://www.dummysprite.com/GW.php
不过现在这个款软件作者的原因 已经废弃了
当时花了我1个多星期的时间,我以前做过安卓的开发,不过破解也比较碰运气。
先来看下软件界面吧,我用的模拟器是靠谱助手
注册登陆之后直接运行就行了
这个软件初始赠送2小时免费试用的时间,我的破解就是从这两个小时入手,让破解的时间无限期。
再来看看我用过的工具(这个工具百度都能找到),比较乱,破解的过程主要还是分析。
安卓APK解包的指令如下,它跟目录有关,我为了方便 直接放在D盘,我们先执行“解源码”再执行“解包”
解好的源码是 .jar 结尾的用jd-gui.exe打开它。
左侧有4个大类,里面的文件几乎被我看遍了,第一个是安卓自带的安卓包,第二个是软件的执行代码,第三个应该是软件在后台操作COC所执行的脚本,第四个我猜是触摸驱动。
第二项展开后就如上图,文件非常非常多,有注册用的,购物用的,等等
启动COC程序的主要代码在这个文件里,
而且它这个文件里面既有runapp函数 又有startapp函数,看的我云里雾里,
那就先来分析RUNAPP函数
前面一些语句都是检查各种状态,直接忽略。
jniutil.Toast是一个显示函数,他能显示文字提示。
再往下看 如下
上图是比较重要的地方,至少能看到5个东西,都是蓝色的字体,“status” “value1” “value2” “value3”“version”
version是版本号,这个不用质疑,我想跟着这些函数追踪下去,但是追踪不到,因为下面都是乱码,加密过的,看不了。
但是代码里能看出来 value3 是跟 version 进行比较,在jniutil.VersionCompare这个函数里。
所以确定value3和version 两个分别是本地和服务器版本号,
分析到这里停一停。
我们看下解压包解出来的文件
主要的程序都在smali里面,这里用的是smali语言,一般人还真看不懂。
按目录找到DummySpriteWindow.smali这个文件,再定位到RUNAPP这个方法,再慢慢找到我们要研究的value1和value2这个位置
但是找了好久都找不到,为什么呢?
后来我通过定位GetFileNameWithoutExt这个函数来找,原来不是在这个smali文件里,
在一个叫DummySpriteWindow$1Listener的smali文件里。
打开DummySpriteWindow$1Listener.smali 如下,这里有我们要的value1 value2 和status,看来没找错。
接下来就要用到jniutil.Toast这个函数了,用它把value1和value2的值显示出来,
所以我就在DummySpriteWindow$1Listener.smali 里赋值了
invoke-static {v6}, Llibvitax/util/jniutil;->Toast(Ljava/lang/String;)V这句代码
把value1和value2对应的变量名填进去,再把程序打包好,装到模拟器里,运行的时候value1显示的是一串很长的16进制代码
value2显示的是一个数字。
经过分析对比,value2显示的是剩余使用时间,
value1我猜测是程序的一个KEY,而且每次都不会变,当我用一个试用时间用完的账号登陆时,这个value1显示的是“”像这样的空。
我把这个KEY记录下来,再进到DummySpriteWindow$1Listener.smali 里,在GetValue函数之后把这个KEY 这个赋值给value1的变量
再给value2赋值一个很大的时间,用如下语句
const-string v7, "f423434523452fbac547548"和 const v6, 0x7f0800df
因为一个是数字变量一个是文本,所以不太一样。
这样重新打包之后,我用了一个试验时间用完的账号登陆,虽然显示的可用时间为0,但是程序能正常调用COC启动。
本次破解成功!
总结:我在这个再详细分析下这个函数,如下图,程序先检查了下状态,再从服务器获取了KEY,剩余时间,以及版本号,每个版本号对应一个固定的KEY,所以每次版本更新都需要重新找出这个KEY。
有个这个KEY,程序会验证这个KEY 具体是用到了 hash map,这个hash map 我看的很晕,就没看他了。
全部验证通过后,小白精灵会启动COC主程序,然后没隔多少时间执行如下脚本;
我尝试修改过脚本,但都失败了。而且脚本是二进制的。。。
最后,破解主要的过程是分析,每次都会碰壁,等你尝试了你所有的想法,才有可能成功!
时间原因,就写到这里,希望管理员能采纳!谢谢
ID:kcloc
邮箱:lby62318881@163.com
申请通过,欢迎光临吾爱破解论坛,期待吾爱破解有你更加精彩,ID和密码自己通过邮件密码找回功能修改,请即时登陆并修改密码!
登陆后请在一周内在此帖报道,否则将删除ID信息。
ps:登录后可以把文章重新整理一下发到移动安全区。
新人报道,谢谢 Hmily,嘿嘿~
页:
[1]