让IP飘一会 发表于 2022-3-9 01:16

某图片加文字app-【免登录+永久内购】-破解教程

本帖最后由 让IP飘一会 于 2022-3-9 01:17 编辑

运行环境:
WIN10
涉及工具:
MT管理器,逍遥模拟器
教程类型:
逆向限制
是否讲解思路和原理:

是否为悬赏杀手:


以下为图文内容:

0x1 前言
今天稍微有空,再来破一个软件玩玩咯,这是一个图片里添加文字让图更生动的软件,我是小米应用商店 或 酷安下的 图片加文字【点我可以下载哦】
可以看到广告是很多的啦,没办法啦,人家开发的免费给你用总要点点流量赞助嘛,还是那句话,假如真喜欢这软件,请支持正版哈!{:5_188:}







0x2 目的
逆向掉去广告强制登录,实现免登录功能,逆向永久内购买断,去广告!!!{:5_193:}


0x3 分析【免登录】


1.下载安装好后用MT提取安装包,可以看到未加固,那就不用分析加壳了,如下:




2.逆向前还是要习惯性的过签哈,然后点击过签好的安装看看有无闪退,这里是没有的,那就没问题了,不贴图了哈{:5_121:}




3.打开软件,随便使用软件能看看,发现全是广告,然后想去广告就只能打赏作者啦{:5_121:},而且想打赏还必须是微信登录情况下才可以,如下:





4.到了这里这次的逆向也开始了,点击去广告的时候会弹出一段提示语,必须授权登录才可以去打赏,而且必须是微信登录
那尝试搜索这段字符串看看 【需要微信授权登录】,可以看到只有一个搜索结果,操作如下:








5.上面只有一个搜索结果,点进去看看代码逻辑,如下:






6.可以看到包含搜索的字符的这段逻辑里面几乎全是登录相关的,说白了,只要没登录就给你跳这来,你再往上拉,就会看到这字符属于方法【loginWX】,
看方法名那再清楚不过了,就是登录微信的意思,如下:







7.有了上面的判断后,那就可以分析了
逻辑分析:先看下是哪个判断让代码走到 【“需要微信授权登录,才能去广告”】,往上即可看到是有一个 【:cond_1d】跳转到这里的,然后看下是哪个判断了该跳转,
往上跳转看到判断是这个 【 if-eqz v0, :cond_1d】 ,判断了v0的值是否等于0,等于了就跳到让你登录那了,而v0的值则来自上面的方法 【isLoginWX】,那就跳到
【isLoginWX】里面看看逻辑,可以看到最终结果是输出v0【因修改简单,中间逻辑就不讲那么多了,想深入分析的可以自己再往下了{:5_193:}】













8.有了上面的分析后那基本没啥问题了,只需要把 【isLoginWX】返回的v0改为1 就是不为0就能让判断不成立然后就不会跳转了
修改:在224、225行处添加两行代码      const/4 v0, 0x1
                                                                  return v0










9.修改好了就保存退出,自动签名、重装,就看到不再提示登录而是 提示检测到你没有支付,免登录就算逆向成功了!废话不多说,看效果,如下:





0x4 分析【永久内购】
1.上面的免登录逆向成功后接下来就是主菜->永久内购逆向了,它这个属于类似一次买断那种吧{:5_188:}



2.对于内购、类似支付的,可以优先搜索 【支付成功】 看看,但是这里不一样【我是自己测试了才下判断的哈,假如是刚开始摸索那肯定是要一个一个来的不可能猜的那么准】,
这里的最终结果就是去广告,所以无论是支付成功与否都会提示广告去除成功还是没去除,那 去广告 就是很关键的一个词了,所以搜索关键词为【去广告】,如下:







3.可以看到有9个搜索结果,但是前四个肯定直接排除掉了,这里不多说,这里重点分析下面五个







4. 逻辑分析 以及 修改 :共四个分析大点{:5_184:},下面配合截图讲解{:5_188:}

第一个:点进去后就很熟悉了,正是前面免登录的那里,这个不用修改,不再赘述{:5_185:}



第二个:进去后看到这字符串就知道这个肯定要改的,因为广告去除成功后会显示的,而该字符串上面有个判断 【if-eqz p1, :cond_7b】,
而判断的值则来自上面的方法 【getPay】,方法名就很明显了 -> 获取支付,那应该是支付结果,为真则提示去广告成功,否则跳转,所以只需要修改返回值即可





修改:在741行处加一行代码const/4 p1,0x1





第三个:点进去看到显示该段字符上有个判断 【if-ne v0, v2, :cond_5b】,判断v0、v2是否相等,不等则跳转,看起来修改很简单了,但是上面还有一个跳转 【:cond_2a】,
而该跳转则是经过上面67行处的判断 【if-nez v0, :cond_2a】v0不等于0的时候才是我们想要的跳转!那么整个跳转很清楚了,下面看修改








修改1:在66行处添加一行代码 const/4 v0,0x1




修改2:在93行前 加个 #   注释掉这行判断代码不给它跳过成功代码





第四个:看到很熟悉的支付成功字符啦{:5_118:},而成功代码上面有个判断【if-ne v0, v1, :cond_55】 ,如果v0、v1的值不等的话,则跳转到 :cond_55【也就是跳过成功代码了】,
但是还是跟上面一个套路,上面还有一个跳转【:cond_30】 ,往上看到判断是f-nez v0, :cond_30 ,哈哈 跟上面差不多原理,那就简单了{:5_121:},看修改







修改1:在66行处加一行代码const/4 v0,0x1,让他满足跳转跳到成功那边



修改2:在97行处 前面加一个# ,注释掉该判断 让它不生效





5.终于终于修改完了。。。。{:5_191:} 上面修改完后 保存、自动签名、重装,整个所有的逆向也到此结束了!!!【凌晨一点了都{:6_224:}困死了,不写完又过不去】{:5_185:}
废话不多说了,看效果:

好像还有广告????{:6_199:}




6.不过不用慌,关掉广告,点击上面的去广告,然后就自动支付永久内购成功,然后广告自然也就没啦,
即使你退出软件再进也不会有的,但是如果卸载重装了它要重新识别那就再点一次去广告即可{:6_206:}










总结:整个逆向相当的成功,但是也相当的曲折{:6_217:},断断续续的,搞到现在才写完{:6_221:},看到这里你们有没有感觉{:6_224:}有的话第二天再试试吧{:6_218:}







eTPtJuZd85 发表于 2022-3-9 01:16

谢谢大神的奉献

YME8 发表于 2022-3-9 01:19

被标题吸引进来了,回复看看

MUt309 发表于 2022-3-9 01:34

感谢楼主

uYE05 发表于 2022-3-9 08:17

谢谢分享

JYmejiO 发表于 2022-3-9 08:24

膜拜大神!

WGIJlqH 发表于 2022-3-9 08:32

谢谢分享

KbRDG16 发表于 2022-3-9 08:33

谢谢分享

tmuNDTbVP 发表于 2022-3-9 08:33

感谢楼主

IPGVh84539 发表于 2022-3-9 08:37

感谢楼主
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 某图片加文字app-【免登录+永久内购】-逆向教程