共计 1413 个字符,预计需要花费 4 分钟才能阅读完成。
平板上安装了几个唐诗、识字、数学口算的APP给小孩子们用的,但是每个APP都是收费的,逆向分析的劲上来了,必须看看IOS的APP能不能搞定。
–强烈抵制破解软件,使用正版软件从你们做起!–
目标软件:数学口算练习(app Store可以下载到)
可以看到,除了第一项是解锁的,其他的都是上锁的,点击锁就提示购买。


硬件:iPad Air 15.8.4 安装巨魔
windows软件:
IDA 软件静态分析工具
winHex 十六进制编辑器
IOS软件:
巨魔 过签工具
AppsDump 脱壳工具
Fliza 文件管理器
大致分为6个重点:
1.如何将App Store的APP下载成ipa文件?
2.了解ipa文件的结构
3.如何分析ipa的数据?
4.如何修改ipa的数据?
5.如何重打包ipa文件?
6.如何用巨魔安装ipa文件?
1.如何将App Store的APP下载成ipa文件?
既然ipad是有巨魔环境的,那么在巨魔中安装AppsDump就可以将应用导出为ipa文件,这个ipa文件就和安卓的apk一样。如果没有安装巨魔,也没有越狱,那么AppsDump 无法安装。


2.了解ipa文件的结构
通过AI了解到ipa文件其实就是一个zip存档文件,我也用die检查了一遍,确实是一个zip文件,我直接将后缀ipa改成zip,然后就可以解压出来了。
路径结构:/Payload/KouSuan2-mobile.app/KouSuan2-mobile
Payload–是ipa固定目录
KouSuan2-mobile.app–是包名
KouSuan2-mobile–APP的可执行文件
最后这个KouSuan2-mobile 就是核心文件,要分析的就是这个文件。
3.如何分析ipa的数据?
这里分析关键数据,要用到ida,将文件丢进ida,然后就可以进行数据分析了。

在function窗口中搜索:payment 就能找到对应的方法。


这里已经找到了购买成功的关键点了

经过分析伪代码,看出了逻辑代码,整理如下:
switch ( (unsigned __int64)objc_msgSend(v10, "transactionState")
{
case 0: 将商品添加进列表
case 1:购买成功并开启所有关卡
case 2:购买失败
case 3:恢复成功
case 4:交易延迟
}

将cmp X0,#4 直接改成 mov X0,#4 就能购买成功了
然后将B.HI def_100005C20 改成 B loc_100005C44
核心点就是让X0永远=1 然后跳转到购买成功并解锁所有关卡,这样就用绕过了。
4.如何修改ipa的数据,以绕过购买?
使用winhex根据特征码直接修改即可。
CMP X0, #4 对应十六进制:1F1000F1
B.HI def_100005C20 ; 对应十六进制:280E0054
所以这个就是winhex需要修改的数据:1F1000F1280E0054
MOV X0, #1 对应十六进制:200080D2
B loc_100005C44 对应十六进制:0D010014
改成:200080D20D010014

保存后再丢进ida看看效果

5.如何重打包ipa文件?

这里直接压缩,选择zip,但是后缀改成ipa即可,这样就对ipa文件重打包完成了
6.如何用巨魔安装ipa文件?
安装和谐版之前一定要卸载原版,否则安装会报错的。
一个是通过浏览IPA文件安装
一个是通过URL安装



最终效果

IOS应用至此解锁成功。