我女朋友都会的Android逆向(二)

注在前面:本次软件在模拟器中打开可能会卡死,重启就好

今天接着动手去搞一个APP,受害者是这个计算器,长这样:

我女朋友都会的Android逆向(二)

我女朋友都会的Android逆向(二)

小小计算器还想让我付费辈子是不可能的。搞他!

用Android Killer打开,我们先来搜索一下关键字,您尚未获取授权:

我女朋友都会的Android逆向(二)

我觉得授权成功更重要,接着搜他的name标签:

我女朋友都会的Android逆向(二)

这个ID可是个好东西,apk在编写时,开发工具都会对源代码自动编译,生成对应的标示符,通过这些标示符,来引用对应的资源。这里我们也要注意一下0x7f080102这个ID,因为这个是授权失败的ID。我们接着去搜成功这个ID

我女朋友都会的Android逆向(二)

发现两个可疑之处,跟过去看看附近有什么好玩的东西。

我女朋友都会的Android逆向(二)

往下翻一翻我们发现了一个授权失败的对话框,他的标签是cond_1,所以我们在这个文档里找一找,看看哪里会跳到cond_1

我女朋友都会的Android逆向(二)

发现两个判断跳转,我们有两种办法吗,要么改跳转条件,要么直接删掉不跳。这里为了不必要的麻烦,我直接删掉。在另一个文件里情况也类似,但是有一处要注意,跳到cond_1上面还有一个跳转,接收传入的message,判断v0是否等于0x1b207,不等的话,跳转到:cond_2,如果这里发生跳转的话会跳过成功提示,所以这里也不能让跳和跳cond_1那里一块删了

我女朋友都会的Android逆向(二)

接下来我们打包测试一下

我女朋友都会的Android逆向(二)

芜湖起飞,赶紧换上骚粉皮肤。

我女朋友都会的Android逆向(二)

 

但是当我们关掉重启之后发现还要授权,这说明这个app有重启验证!

我们刚才看程序的时候发现有这个东西:

我女朋友都会的Android逆向(二)

如果是付费状态,“isDefaultTheme”的值是v1,在方法首可以看到v1定义的是1,这里是个putBoolean,即通过Sharepreferences.editor写入了true,那么我们通过分析发现,我们是在重启后丢失授权信息的,那验证方法肯定在第一个显示的页面被调用,我们找到程序的主页面所在的类,来到HelloWorldActivity.smali下,我们尝试搜索“isDefaultTheme”,结果搜到好几个

我女朋友都会的Android逆向(二)

我们跟过去看看干了什么,发现很多只是调用isDefaultTheme的bool值,我们真正关注的应该是改了isDefaultTheme的地方,发现参数是v1那两个是改了booble值的

我女朋友都会的Android逆向(二)

那这里的关键又变成了v2的值是怎么变化的

我女朋友都会的Android逆向(二)

发现在创建的时候给的是0,我们的原因就找到了,我们就要动手去解决。

解决方法很简单,向上看一下标签,发现是cond_3,所以我们只要跳过这个标签就好。接着向上看上面就有一个

我女朋友都会的Android逆向(二)

为了确保跳过,我这里把下面去cond_4的顺手改成了goto,然后重新打包编译,发现重启也不用再授权了。

搞定!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

来源:孤客浪子

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月4日
下一篇 2020年10月4日

相关推荐