1.png (96.59 KB, 下载次数: 0)
下载附件
2024-11-25 21:25 上传
,看到libil2cpp.so,于是到github上下载最新的il2cppdumper,运行exe得到如下文件
2.png (14.67 KB, 下载次数: 0)
下载附件
截图2
2024-11-25 21:26 上传
。
打开IDA,载入libil2cpp.so,并且点击file菜单下的Script file
3.png (31.41 KB, 下载次数: 0)
下载附件
2024-11-25 21:26 上传
,按对话框弹出的顺序,分别选择il2cppdumper目录下的ida_with_struct_py3.py、截图2中的script.json和il2cpp.h,之后静待ida分析完成(左下角显示idle)。
共有两个修改的地方,解析完成之后,用记事本打开dump.cs文件。
[color=]第一个修改点
,在dump.cs里搜索LoadDebugPanel,得到函数的偏移地址0xD210CC。
在ida里按G,输入0xD210CC后按确定跳转,然后F5反编译,把光标放在函数名处按X,跳转到调用的地方
4.png (105.75 KB, 下载次数: 0)
下载附件
2024-11-25 21:27 上传
,可以看到红框中的if就是我们要去掉的
5.png (40.52 KB, 下载次数: 0)
下载附件
2024-11-25 21:27 上传
按Tab键,切换到汇编代码,修改很简单,把CBZ条件跳转改成B无条件跳转就行了,光标放在CBZ指令上,按Ctrl+ALT+K,把
[color=]CBZ W21
修改成
[color=]B
。
6.png (65.45 KB, 下载次数: 0)
下载附件
2024-11-25 21:27 上传
9.png (31.93 KB, 下载次数: 0)
下载附件
2024-11-25 21:39 上传
10.png (23.6 KB, 下载次数: 0)
下载附件
2024-11-25 21:40 上传
修改完后,再按F5,代码如下
11.png (63.75 KB, 下载次数: 0)
下载附件
2024-11-25 21:41 上传
[color=]第二个修改点
,在dump.cs里搜索IsDebugModel,得到函数的偏移地址0xD210A8,按G跳转后,F5反编译,
7.png (39.76 KB, 下载次数: 0)
下载附件
2024-11-25 21:28 上传
这里是要把return改成return 1。
修改依然很简单,只需要把
8.png (41.51 KB, 下载次数: 0)
下载附件
2024-11-25 21:28 上传
红框中的指令改成
[color=]mov W0
就行了,如下图
12.png (27.85 KB, 下载次数: 0)
下载附件
2024-11-25 21:43 上传
13.png (28.52 KB, 下载次数: 0)
下载附件
2024-11-25 21:44 上传
修改完之后,再按F5,代码如下
14.png (27.52 KB, 下载次数: 0)
下载附件
2024-11-25 21:44 上传
到这两个修改都修改完了,在ida中点
15.png (205.38 KB, 下载次数: 0)
下载附件
2024-11-25 21:47 上传
把修改应用到so中,so保存完后用MT把修改后的so加入到apk中,并且签名安装即可