0 Tools
[ol]
1 先看软件
16727414386166.jpg (181.93 KB, 下载次数: 0)
下载附件
2023-1-3 19:48 上传
[/ol]
2 分析过程
之前超级右键看过之后我们知道他在启动函数中做了receipt授权验证
那么我们直接看start函数
16727414902547.jpg (898.77 KB, 下载次数: 0)
下载附件
2023-1-3 19:48 上传
换汤不换药 直接ban掉v17
jz loc_100064FA3 改成jnz即可
接着ban掉两个夺命连环call objc_msgSend
16727416504254.jpg (139.91 KB, 下载次数: 0)
下载附件
2023-1-3 19:48 上传
16727425428742.jpg (733.38 KB, 下载次数: 0)
下载附件
2023-1-3 19:48 上传
修改后如图所示。
16727445788658.jpg (863.33 KB, 下载次数: 0)
下载附件
2023-1-3 19:49 上传
16727446075250.jpg (1.19 MB, 下载次数: 0)
下载附件
2023-1-3 19:49 上传
红色部分为修改后的二进制数据 用了大量的nop来跳过代码执行
上图中v23不修改的原因是只需要在下面把标志改为1即可,因为v23 == True的话结果也是将r60设为1 所以我们直接跳过让他强制设为1.
然后将else分支中的r60 = 0强制改为1
16727446984946.jpg (265.81 KB, 下载次数: 0)
下载附件
2023-1-3 19:49 上传
eax赋值为1即可实现订阅破解,最后走了173行处逻辑。
16727447464641.jpg (112.78 KB, 下载次数: 0)
下载附件
2023-1-3 19:49 上传
3 成果
e4db0e43622565f6528fb6d742a42a4f.png (363.88 KB, 下载次数: 0)
下载附件
2023-1-3 19:49 上传