首页
社区
课程
招聘
[原创]记录一款Unity il2cpp lua手游的逆向全过程
发表于: 2025-8-10 17:24 22573

[原创]记录一款Unity il2cpp lua手游的逆向全过程

2025-8-10 17:24
22573

传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!

最后于 2025-10-13 22:15 被G33k3r编辑 ,原因: 补充声明
收藏
点赞 49
打赏
分享
最新回复 (54)
雪    币: 10118
活跃值: (6167)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2

导出函数最终都会被unity调用来着,所以直接找一个原版的unity对照字符串看一下就知道了

当然我也只遇到过一次,用这种方法可以解决

2025-8-10 18:34
2
雪    币: 499
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
breaklink 导出函数最终都会被unity调用来着,所以直接找一个原版的unity对照字符串看一下就知道了当然我也只遇到过一次,用这种方法可以解决

没错,我去看了下这个游戏,将libunity.so dump下并修复找到sub_6D3494函数就能看到所有的il2cpp api

最后于 2025-8-10 19:40 被安卓逆向test编辑 ,原因:
2025-8-10 19:40
2
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
安卓逆向test breaklink 导出函数最终都会被unity调用来着,所以直接找一个原版的unity对照字符串看一下就知道了当然我也只遇到过一次,用这 ...
大佬来了 荣幸 回去看了一下确实 如果顺序和原版一致的话 直接就对上了 想起来一个个找就肝疼
2025-8-10 21:26
0
雪    币: 1516
活跃值: (2056)
能力值: ( LV12,RANK:229 )
在线值:
发帖
回帖
粉丝
5

signature 应该还需要再处理一下重定位的问题才有机会匹配成功。

拿着结果去手动对比验证了一下结果,发现不太准,取特征码和匹配的方式也有点讲究,大家感兴趣可以改下脚本,这个脚本还是有点呆了。


关于 sproto 协议的设计部分:

云风的 BLOG

设计一种简化的 protocol buffer 协议
93dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6T1L8r3!0Y4i4K6u0W2j5$3!0V1K9h3&6Y4L8X3!0%4i4K6u0W2j5$3!0E0i4K6u0r3x3U0l9I4y4q4)9J5c8U0l9%4i4K6u0r3k6h3A6G2P5i4m8J5L8%4c8G2i4K6u0W2K9s2c8E0L8l9`.`.

最后于 2025-8-10 21:57 被zZhouQing编辑 ,原因:
2025-8-10 21:53
2
雪    币: 200
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
哈哈,lua他没自定义字节码,不然你至少还得整三天,顺便告诉你LuaJIT Decompiler v2可以直接拖文件夹到exe就行,自动批量跑
2025-8-10 23:07
1
雪    币: 144
活跃值: (2723)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
666666666
2025-8-10 23:10
0
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
8
Zepp7289 哈哈,lua他没自定义字节码,不然你至少还得整三天,顺便告诉你LuaJIT Decompiler v2可以直接拖文件夹到exe就行,自动批量跑
哈哈 原来如此 我以为他工具不支持嘞
2025-8-11 01:10
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
66666
2025-8-11 05:46
0
雪    币: 910
活跃值: (5347)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
tql,学习一下
2025-8-11 09:45
0
雪    币: 309
活跃值: (1361)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
mark
2025-8-11 09:56
0
雪    币: 19
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12
mark
2025-8-11 10:12
0
雪    币: 6785
活跃值: (8107)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
13
tql,学习一下
2025-8-11 11:14
0
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
14
2beNo2 tql,学习一下
看了佬的文章也很强啊
2025-8-11 12:38
0
雪    币: 1342
活跃值: (7010)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
用lua dump还原打乱的opcode是一种方法,有些网游如果不提供lua dump函数接口,可以用triton识别出lua opcode
大概原理是
7edK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6S2M7X3y4Z5k6i4u0U0M7X3g2S2N6q4)9J5c8Y4c8A6N6r3q4F1
这种,过一阵我写篇文章来详细说明
2025-8-11 19:16
4
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
16
qj111111 用lua dump还原打乱的opcode是一种方法,有些网游如果不提供lua dump函数接口,可以用triton识别出lua opcode 大概原理是 557K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6S2M7R3`.`. ...
期待你的文章 到时候@我 学习一下
2025-8-11 20:51
0
雪    币: 659
活跃值: (1555)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
qj111111 用lua dump还原打乱的opcode是一种方法,有些网游如果不提供lua dump函数接口,可以用triton识别出lua opcode 大概原理是 46cK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6S2M7R3`.`. ...
同期待,更新求踢
2025-8-11 22:41
0
雪    币: 137
活跃值: (1661)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
18
无尽冬日这个游戏可以换个方式,从微信小程序入手,解密wasm然后提取dll。再修复下偏移,拿到完整的解密。
2025-8-12 11:00
2
雪    币: 516
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
看爽了
2025-8-12 13:36
0
雪    币: 802
活跃值: (2058)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
大佬太厉害了
2025-8-12 16:56
0
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
21
Light紫星 大佬太厉害了
谦卑求学
2025-8-12 18:39
0
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
22
阿杨` 看爽了
你能看得懂也不简单
2025-8-12 18:39
1
雪    币: 716
活跃值: (1111)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
23
胡家二少 无尽冬日这个游戏可以换个方式,从微信小程序入手,解密wasm然后提取dll。再修复下偏移,拿到完整的解密。
有空研究下 
2025-8-12 18:40
0
雪    币: 112
活跃值: (9405)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
6666
2025-8-13 13:37
0
雪    币: 516
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
G33k3r 你能看得懂也不简单
看得懂,不会写。拿来用的话没啥问题。哈哈哈哈  之前接了个单子,都没接触过,找帖子,拼在一块,硬生生是把lua解密出来,然后自己修改一份符合要求的lua,然后替换资源,实现的功能 大佬确实np
2025-8-14 12:44
1
游客
登录 | 注册 方可回帖
返回