ios

ios游戏破解-王铲铲的致富之路

N 人看过

游戏介绍

版本:1.2.4
设备:xsmax
游戏环境:Unity

游戏玩法

看着他挖,但是你需要钱去升级设备、场子等等,总之有钱!这个游戏就是你的天下!!!

游戏不需要额外充钱,但是会一直有广告

逆向过程

砸壳

获取未加密APP

砸壳环境

  1. 实体机 xsmax 系统版本 14.8 已经越狱
  2. Mac os 环境 需要装usbmuxdWindows 下没找到能解决该问题的方法
  3. 均安装 frida 同一版本就行
  4. Frida-ios-dump

开始砸壳

  1. 确保 frida 能正常连通

使用 usb 连接手机设备,使用命令 frida-ps -U 该命令用于查看 USB 连接设备当前运行的进程。

待补充图

  1. 使用 iproxy 命令转发 22 端口,iproxy 2222 22

  1. 修改 Frida-ios-dump 脚本中的 root 密码
  2. 输入命令 python dump.py -l 列出当前设备中的应用程序

  1. 输入命令 python dump.py com.mojike.digearth ,开始砸壳

解包分析

复制 dump 中的 ipa 文件到 Windows 下,进行下一步分析。

首先重命名.ipa 为.zip 并解压

简单说明一下重要的目录结构,该游戏是 Unity 开发。

Data 目录

data.unity3d 文件是游戏的资源文件,可以通过 AssetStudio.net6 或者 AssetRipper_win_x64 进行查看或者分析

RaW 文件夹里面放着一些分享时的图片资源

Managed 文件夹放着 ll2cpp 生成后的文件 非常重要!!!

mono 放着数据库相关文件

Frameworks 目录

UnityFramework.framework 里面放着游戏编译后的 object-c 程序 很重要

KSAdSDK.framework 广告框架,没有详细 研究

TTNetworkManager.framework 网络相关,没有详细研究

ll2cpp 反编译

利用 Il2CppDumper-net6-v6.7.25 进行反编译

可执行文件位置

符号表数据位置 global-metadata.dat

反编译后的数据信息

其中 stringliteral.json 是字符串表信息,包含着游戏字符串和对应偏移地址,il2cpp.h 是 object-c 的结构体信息

dump.cs 是.net 反编译后的源码信息,DummyDll 中包含的是提取出来的所有游戏 DLL 信息与 dump.cs 内容一致。

逆向分析主程序

首先通过 ida 打开程序

接着利用脚本导入之前得到的 il2cpp.h 文件,和字符串文件信息

这几个都可以导入,等待 20-30 分钟(函数量非常大!!)

接着就能看到 字符串已经可以分析出来了,函数名称也已经恢复,接着通过字符串文件,搜索我们的需求 `钱!!!!

通过关键字 moneycoin 搜索到一个关键信息

ida 中输入 g,复制地址跳转

发现有几个函数引用了该字符串,get_GameCoin、set_GameCoin,因为目的是要改钱,所以 set 对我们更重要

根据 value 进行设置,看看哪里用了 set

发现有 CostCoin 函数和 AddCoin 函数都用到了该函数,所以这里有两种改法,一个是修改 AddCoin 时设置钱的数量,一个是修改花费时不扣钱。

可以看到增加钱的逻辑,是查询现有的钱然后加上获得的钱,这里修改的话就会造成一个问题!!!初始化的时候钱为 0.不太好改动,所以我打算改动了花费处

可以看到,我把花费时应该-coin 的位置改成了 +coin,这样的话每次花钱都会价钱,达到了一个修改金钱的目的

改法比较简单,把原本 FSUB 改成 FADD 就可以了,除了钱还有个新出的模式 月球模式

这个也是一种钞票,我们用同样的方式进行逆向

又看到熟悉的 ADD 和 Cost,同样减改成加

改法相同 FSUB 改成 FADD

打包重签名

这个过程方法有太多太多,这里为了能尽快玩上游戏,我们就走最朴实无华的路线。

首先将 patched 后的游戏文件替换掉原本的文件

把该文件复制到对应位置,并且进入这个位置,右键压缩文件

压缩后,重命名 Payload.zip 为 Payload.ipa

打开爱思助手!!!,使用里面的签名工具

签名完成后,就能安装使用了

安装即可

逆向相关文件下载

链接:https://pan.baidu.com/s/1gX0Z069Wft1Q_NbdaKrhxQ?pwd=799v
提取码:799v