该方法将cocos2dx_lua_loader方法添加到Lua全局变量package下的loaders成员中//当requires加载脚本时,Lua会使用package下的loaders中的加载器,即cocos2dx_lua_loader来加载//设定cocos2dx_lua_loader,可以使得我们自定义设置搜索路径相关,且拓展实现对脚本的加密解密相关addLuaLoader(cocos2dx_lua_loader);returntrue;...
1、解密.lua文件; 2、解密.png文件。 2LuaJit 反汇编 这个不多介绍了窝,在理论篇中已经提到了。对于此样本的LuaJit的版本是2.1.0-Beta2,并且没有魔改Opcode。 Lua文件加载流程:想要解密.lua文件,了解coco2d-x加载Lua的流程必不可少。 Cocos2d-x环境搭建:参考官方Docs,搭建所需环境:...
看到这,我们首先就想到是不是也是用xxtea加密的,我们用上面的方法,先xxtea解密,再解压,发现依旧是乱码,在操作的过程中就出现了错误,显然,要否定我们刚才的猜想。我们继续按部就班的解密配置文件。 稍微思考一下,文件头部是:fuckyou!如果想对文件进行解密,那么不可避免的需要处理字符串:fuckyou!,所以,我们应该能在...
首先查看apk的结构,可以发现游戏的图片和控制逻辑的lua文件都被加密了。游戏引擎是cocos2d,而所有被加密的文件头都是固定的ge2d8!ga*sgf1z99这几个字符,由此推断是xxtea加密。 这种加密在网上流传的破解工具已经很多了,无非是打开so文件找到附近的key值直接解密。所以我也先尝试下能不能直接解密出来,用ultraEdit打开...
定位至cocos2dx_lua_loader 在luaLoadBuffer前调用了decodeLuaData,怀疑这就是解密Lua的关键方法 下面是伪代码 此方法首先获取文件数据,而后判断文件头,文件头正是abcd 可以肯定这就是解密.lua的算法 如果不确定,我们可以使用Frida进行Hook验证猜想 我这里就不Hook了 ...
好了,现在,我们可以将异或表byte_A1C55F拷贝出来,然后模仿app的解密过程(可从GitHub上找个xor解码脚本,稍作修改即可)写一个小工具,对大神.apk的所有资源进行解密了: 看完上述内容,你们对cocos2d-LUA逆向中如何解密app资源有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支...
cocos2d-LUA逆向之解密app资源 还是以大神apk为例,通过前面分析app解密lua脚本,我们能够解密大神apk的lua脚本,现在我们来解密其资源(配置文件和图片等)。我们以比较重要的配置文件为例,未解密之前: 文件头部也有签名值:fuckyou!。看到这,我们首先就想到是不是也是用xxtea加密的,我们用上面的方法,先xxtea解密,再解压,...
还是以大神apk为例,通过前面分析app解密lua脚本,我们能够解密大神apk的lua脚本,现在我们来解密其资源(配置文件和图片等)。我们以比较重要的配置文件为例,未解密之前: 文件头部也有签名值:fuckyou!。看到这,我们首先就想到是不是也是用xxtea加密的,我们用上面的方法,先xxtea解密,再解压,发现依旧是乱码,在操作的过程...
我个人对lua还是比较熟悉的,cocos2d游戏的lua脚本一般都是lua加载的地方已经完成解密了。所以,盲猜的话解密真心应该不会难。我的初心是想看看这些人怎么从这些东西上赚钱,并非想赚钱。说话个人感受,纯粹做技术的,技术变现能力都很差的。 悬赏人贴了哥script_encrypt的函数,其实,看上去发帖人自己也懂啊。看...
Android inline hook一般基于这个函数,使用ptrace函数attach一个目标进程,注入定制的so库进入目标进程的地址空间,然后用so里边的函数地址替换目标进程地址空间里原有的函数地址,目标进程运行到原有函数地址时,就会进入你的so库中的函数,而你的函数一般需要将当时目标进程现场保存起来(原函数地址、寄存器值),待自己的函数...