国服炽焰天穹(绯染天空)如何绕过文件验证机制?

目前正在内测的国服炽焰天穹(绯染天空)有文件验证机制,虽然文件能直接被AS读取和解包,但是替换图片并放回游戏目录的时候,游戏能检测到文件被修改了并重新下载资源文件以及同目录下的_info文件。这个_info文件我怀疑就是某种验证文件,用记事本打开看的话只有几行代码,但不清楚是怎样验证的。
我把相关文件文件上传了,希望有人能看看这是什么验证机制以及如何绕过。
国服内测端炽焰天穹资源文件.rar (2.8 MB)

这里贴出_info文件的内容,应该是某种校验码,不知道是怎么校验的,每个资源文件目录下都有一个info文件

-1
1711368989
1
__data

需要更多的文件,或者游戏的安装包。如果可以请提供il2cpp.so和globalmetadata.dat

(已编辑)

(zsbd)
感谢大佬回复,这是游戏内测端的下载地址:https://api.32r.com/down/132831
顺便问下il2cpp.so和globalmetadata.dat要怎么提取,我在游戏目录下没搜索到这两个文件

crc校验,和__info没关系。两种思路,一种是在修改后的文件末端添加额外数据修正crc,或者直接patch so,跳过校验。前面的方法我还在看有没有相关的研究,暴力搜索不太可行。后面那个可能需要重新打包游戏安装包或者需要root权限

1 个赞

或者考虑修改manifest文件里的crc值,但是这样每个文件都要修改一次

1 个赞

修改libunity.so以跳过crc校验是可行的,我在日服中尝试过了。但是国服使用了libtprt.so来保护,要修改so得先绕过libtprt(腾讯的游戏保护),这方面我不能保证成功(可能会对so文件的完整性校验)。而且测试服现在无法登录我也没法很好的测试。


日服成功的替换,裙子上的红色痕迹。

编辑

OK,绕过CRC32校验的方法已经找到了,程序稍后会写出来

4月25日编辑

项目连接
你需要准备两个文件,一个是通过uabea解压缩后的未修改的文件,一个是修改后未uabea压缩的文件,根据提示在命令行中操作,得到一个修正过crc32的文件,经过测试可以直接替换游戏文件(在日服测试)。具体操作参考仓库的readme,或者在这提问也行

感谢大佬,学到了不少知识,这里我想问一下libunity.so这个文件是怎么获取的。

安装包解压直接在lib文件夹里找呗,不过国服有libtprt.so保护,改这个没什么必要