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

文章详细介绍了如何对一款名为《王铲铲的致富之路》的Unity开发的iOS游戏进行逆向分析,包括砸壳、解包、使用Il2CppDumper反编译,以及寻找和修改与金钱相关的函数,实现游戏内金钱的修改。此外,文中还提到了对月球模式的类似修改,并讨论了可能的广告屏蔽方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

王铲铲的致富之路-逆向分析

游戏介绍

版本:1.2.4
设备:xsmax ios 14.8
游戏开发环境:Unity

游戏玩法

看着他挖,但是你需要钱去升级设备、场子等等,总之有钱!这个游戏就是你的天下!!!
游戏不需要额外充钱,但是会一直有广告
在这里插入图片描述

逆向过程

砸壳

获得未加密的ios app

砸壳环境

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

开始砸壳

  1. 确保frida能正常连通
    使用usb连接手机设备,使用命令frida-ps -U 该命令用于查看USB连接设备当前运行的进程。
    待补充图

  2. 使用iproxy命令转发22端口,iproxy 2222 22
    在这里插入图片描述

  3. 修改Frida-ios-dump 脚本中的root密码

  4. 输入命令 python dump.py -l 列出当前设备中的应用程序
    [图片]

  5. 输入命令 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分钟(函数量非常大!!)
在这里插入图片描述
接着就能看到 字符串已经可以分析出来了,函数名称也已经恢复,接着通过字符串文件,搜索我们的需求 !!!!
通过关键字money coin 搜索到一个关键信息
在这里插入图片描述
ida中输入g,复制地址跳转
在这里插入图片描述
发现有几个函数引用了该字符串,get_GameCoin、set_GameCoin,因为目的是要改钱,所以set对我们更重要
在这里插入图片描述
根据value进行设置,看看哪里用了set
在这里插入图片描述
发现有CostCoin函数和AddCoin函数都用到了该函数,所以这里有两种改法,一个是修改AddCoin时设置钱的数量,一个是修改花费时不扣钱。
在这里插入图片描述
可以看到增加钱的逻辑,是查询现有的钱然后加上获得的钱,这里修改的话就会造成一个问题!!!初始化的时候钱为0.不太好改动,所以我打算改动了花费处
在这里插入图片描述
可以看到,我把花费时应该-coin的位置改成了+coin,这样的话每次花钱都会价钱,达到了一个修改金钱的目的
在这里插入图片描述
改法比较简单,把原本FSUB改成FADD就可以了

月球模式patch

除了钱还有个新出的模式 月球模式,这个也是一种钞票,我们用同样的方式进行逆向
在这里插入图片描述
在这里插入图片描述
又看到熟悉的ADD和Cost,同样减改成加
在这里插入图片描述

改法相同FSUB改成FADD
在这里插入图片描述

打包重签名

这个过程方法有太多太多,这里为了能尽快玩上游戏,我们就走最朴实无华的路线。
首先将patched后的游戏文件替换掉原本的文件
在这里插入图片描述
把该文件复制到对应位置,并且进入这个位置,右键压缩文件在这里插入图片描述
压缩后,重命名Payload.zip为Payload.ipa
打开爱思助手!!!,使用里面的签名工具
在这里插入图片描述
签名完成后,就能安装使用了

在这里插入图片描述

最终结果

成功修改两个金钱,由于文章时隔3个月才发布,游戏早已经卸载,具体效果大家可以复现后查看。

待修改

广告也挺烦人,有一个函数用来控制广告相关的展示,以后空闲了再来回头看看这个怎么处理!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值