首页
社区
课程
招聘
[原创]新手向unity+xlua解密lua脚本
发表于: 2020-2-14 15:21 16804

[原创]新手向unity+xlua解密lua脚本

2020-2-14 15:21
16804
在家呆着无聊,本着下个游戏练习练习技术,顺带打发无聊的时间,就开始了小白的探索之路。
在家呆着无聊,本着下个游戏练习练习技术,顺带打发无聊的时间,就开始了小白的探索之路。
打开lib文件夹下 ,游戏是unity + mono框架,开心!不过却发现特别的地方----libxlua.so!

而打开apk\assets\bin\Data\Managed文件夹下却没有发现关键的Assembly-CSharp.dll文件。
这可难倒我了,直接百度,在这篇博客给了我启发:57bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2U0L8X3u0D9L8$3N6K6i4K6u0W2j5$3!0E0i4K6u0r3k6h3&6A6j5h3x3I4z5e0b7$3i4K6u0r3M7q4)9J5c8U0M7J5y4o6b7@1x3o6m8Q4x3X3g2Z5N6r3#2D9i4@1g2r3i4@1u0o6i4K6S2o6i4@1f1#2i4K6R3#2i4K6R3^5i4@1f1^5i4@1q4r3i4K6V1#2i4@1f1^5i4@1q4r3i4K6V1#2 Assembly.Load(byte[] rawAssembly)这个接口,看看有没有发现,至于实际上在哪里加载的,暂时就不管了,反正最终都要调用这个接口,那就直接在这个接口做文章。

加入代码后保存,替换安装包的dll,运行游戏,坐等剩余的dll dump出来。

居然是 关键的Assembly-CSharp.dll文件。不过怎么都是LUA相关的呢?那就试试搜索 luaL_loadbuffer方法试试,有两个,最终都会调用 xluaL_loadbuffer这个方法加载脚本,那就通过打印日志的方式,看看脚本在哪里调用了这个方法。

修改之后,怎么把 Assembly-CSharp.dll替换回去呢?那就是从哪dump出来的,就从那里替换回去。

运行游戏就可以看到打印的日志信息了。

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 2
支持
分享
最新回复 (6)
雪    币: 12504
活跃值: (3093)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
正常,就和俺尝试修改三国杀一样,没效果
2020-2-14 18:54
0
雪    币: 0
活跃值: (379)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
现在很多unity都是云更新Lua代码的,你改了Lua之后MD5不一样咯,又去拉了代码下来。
2020-9-29 17:22
0
雪    币: 628
活跃值: (122)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
大佬,IDA中如何分析加密函数啊,也想解密il2cpp模式得资源
2020-10-7 09:40
0
雪    币: 4068
活跃值: (7531)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
wx_时光丶老了少年 大佬,IDA中如何分析加密函数啊,也想解密il2cpp模式得资源
他逆向的是没有il2cpp的游戏, 经过il2cpp的游戏是没有Assembly-CSharp.dll保存在apk里的 只会存在一个libil2cpp.so文件 经过il2cpp的游戏逆向难度很高目前还没有很好的办法逆向
2020-10-7 12:47
1
雪    币: 628
活跃值: (122)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
不是吧,比如unity得il2cpp得,bundle+lua资源加密了,那如何去解密呐,难道不是IDA去分析解密函数嘛,还有别的方式嘛,我找人解密得时候,他们几分钟就弄好了,我也想学习学习哇
2020-10-7 13:13
0
雪    币: 3379
活跃值: (2811)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7

帖子真棒学习了

最后于 2021-12-22 14:15 被暗月隐落编辑 ,原因: 已过时效
2020-12-29 13:44
0
游客
登录 | 注册 方可回帖
返回