新手学习记录1-《教我兄弟学Android逆向03 破解第一个Android游戏 》课后作业第二 题
本帖最后由 审判者压缩 于 2018-11-3 04:52 编辑原贴地址:
《教我兄弟学Android逆向03 破解第一个Android游戏 》
https://www.52pojie.cn/thread-654654-1-1.html
(出处: 吾爱破解论坛)
新手日记,顾名思义,也可以叫菜鸟被虐日记。
说正题吧,下面是《教我兄弟学Android逆向03 破解第一个Android游戏 》的课后作业,原帖子就是这个。
https://www.52pojie.cn/thread-620244-1-1.html火柴者联盟
我是先做《教我兄弟学Android逆向03》的作业失败之后,
学了04的AS动态调试,05的插入Log,然后回头再做的03的作业火柴人。
原贴子开头是验证问题:
说实话,就这段话,我是怎么都理解不了啊,翻来翻去,找到作者的回复如下:
一层一层调用,跟踪,回溯。
我努力的想,怎么调用?
找到《教我兄弟学Android逆向番外02 jeb工具的使用》
这个里的一段话
我的图太小了,可以去原帖子里看。
兴致勃勃(性质勃勃)下了个 jeb,地址原帖子也有我贴出来吧
可以从论坛爱盘里面获取下载JEB工具 :
https://down.52pojie.cn/Tools/Android_Tools/jeb-2.2.7.201608151620_crack_qtfreet00.zip
然后一顿设置
闪退,我擦,搜了帖子
地址如下
求一份jeb2.2.7能正常调试的。。论坛的下了 能看到界面然后闪退
https://www.52pojie.cn/thread-679050-1-1.html
(出处: 吾爱破解论坛)
换了jdk版本,终于能用了。省略path环境,java_home设置,反正以前整过,都忘了,又一顿搜。
然后jeb,调用毛线呢?java也看不懂啊。跟踪试试,跟踪的稀碎啊,回溯啥基本放弃了。以后再整吧。
跳过了怎么找,直接来到结果,搜函数,看smali,不太费劲了啊,毕竟大神解释的很到位,直接返回不要中间的验证。
也算成功了吧,继续努力啊。
选择性跳过经验部分,毕竟弱鸡理解不了。
然后跳过广告-----没办法,我的要求并不高,能破解了再整这些没用的。
来到重点了. 内购破解:
先不看答案,搜”失败",一堆啊,找到带pay字样的点开看看
看到;解码,购买道具失败
感觉有戏啊,看java代码
这什么情况,没有这个字啊,不死心的加log(此时已经会加Log了,之前没整明白的部分,以为加了Log怎么也能整明白了)
编译,进游戏,然后什么Log也没弹,算了,不是这部分代码,继续吧。
这个是支付宝的,一看java,可以啊,有成功,有失败,又是一顿log,编译,然后进游戏支付,取消。毛Log没有。难受。
然后又是按着顺序往下看,看到sdk里的“充值失败 retcode“
已经没有心情在搞了,回去看作者怎么搞的吧。哎,自己是蒙不对了。
大神直接给了招,
Egame支付成功
Egame支付Cancel
搜索Egame支付Cance
直接到位
不记得第一次怎么跟着做的了,反正是这句话整没信心了。
回溯,分析。。。。。。。
当时是没懂,也就不搞了。
今天有信心,先自己插Log,上AS看Log,挣了半天,发现
AS里是联通失败,换了个电信卡,终于看到了
smali代码里自带Log:
const-string v0, "qq"
const-string v1, "Egame\u652f\u4ed8Cancel1"
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
在AS里搜索qq就行了。
然后我发现
这个支付成功的方法和支付的方法没差几个字
一看java,也是差不多。
直接把函数定义名字换了下,payFailed和paySuccess定义名换了下。
把支付失败的函数定义
.method public payFailed(Ljava/util/Map;I)V
复制给支付成功
.method public paySuccess(Ljava/util/Map;)V
这里调用支付失败,实际上调用的是支付成功的代码。
然后,就成功了,把联通卡,换成用电信卡,支付,取消,失败变成功
就算破解了。
哎,没劲,都没懂怎么得来的这个字符串
真难过。
以后再学学吧,
一年前的技术都整了两天才整明白。
感谢一下
会飞的丑小鸭
https://www.52pojie.cn/home.php?mod=space&uid=619334
去年就看大神的帖子来着,当事没把课后习题当回事,这回按部就班整,空闲时间多练练。
要学的很多,我这点东西大神就看着玩了,别喷太狠,有不合规范的地方,管理该改改,该删删。
争取早日学会调试,回溯 ,不至于看答案都看不懂。
Plugin loaded: class com.pnf.plugin.oat.OATPlugin
Plugin loaded: class com.pnf.plugin.pdf.PdfPlugin
检查更新中。。。
检查更新出错
Creating a new project
java.lang.RuntimeException: java.io.FileNotFoundException: C:\Users\user\.jeb-android-frameworks\1.apk (系统找不到指定的路径。)
at com.pnfsoftware.jeb.corei.parsers.apk.XW.iY(SourceFile:63)
at com.pnfsoftware.jeb.corei.parsers.apk.nR.process(SourceFile:126)
at com.pnfsoftware.jeb.corei.parsers.XW.process(SourceFile:345)
at com.pnfsoftware.jeb.corei.parsers.XW.process(SourceFile:317)
at com.pnfsoftware.jeb.corei.wt.ko(SourceFile:110)
at com.pnfsoftware.jeb.corei.np.ko(SourceFile:304)
at com.pnfsoftware.jeb.corei.np.iY(SourceFile:296)
at com.pnfsoftware.jeb.corei.np.processArtifact(SourceFile:46)
at com.pnfsoftware.jeb.rcpclient.RcpClientContext$7.run(RcpClientContext.java:1288)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.FileNotFoundException: C:\Users\user\.jeb-android-frameworks\1.apk (系统找不到指定的路径。)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at com.pnfsoftware.jeb.corei.parsers.apk.XW.iY(SourceFile:59)
... 13 more
The unit "crack04.apk" could not be processed
楼主用jeb有遇到这种情况吗 秋狝 发表于 2018-11-4 00:25
Plugin loaded: class com.pnf.plugin.oat.OATPlugin
Plugin loaded: class com.pnf.plugin.pdf.PdfPlugin ...
没遇到过,我用的jeb是爱盘的
https://down.52pojie.cn/Tools/Android_Tools/jeb-2.2.7.201608151620_crack_qtfreet00.zip
jdk-8u121
jdk链接:http://pan.baidu.com/s/1c1Ogeg4 密码:1nr6
系统win7
环境变量-系统变量
JAVA_HOME
E:\BaiduNetdiskDownload\jdk1.8.0_121\jdk1.8.0_121 就是jdk的路径
Path
E:\BaiduNetdiskDownload\jdk1.8.0_121\jdk1.8.0_121\bin; jdk路径下的bin
CLASSPATH
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 前面有个.
都是这么过来的,加油,不懂的地方可以请教@会飞的丑小鸭 Hmily 发表于 2018-11-3 20:31
都是这么过来的,加油,不懂的地方可以请教@会飞的丑小鸭
好的大佬!! 我也是这样。。。。java啥的都搞不明白 AS动态调试 这是最简单的游戏破解.努力加油吧 初来乍到, 开始学习破解 , 共勉 谢谢分享~!
页:
[1]
2