棋牌源码吧

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 212|回复: 0

cocos-luac 游戏逆向破解反编译的一些启示

[复制链接]

2971

主题

0

回帖

8930

积分

超级版主

Rank: 8Rank: 8

积分
8930
发表于 2023-8-9 03:19:56 | 显示全部楼层 |阅读模式
在用cocos-2dx lua框架开发游戏时,为了防止源码泄露常常用cocos自带的加密命令**cocos luacompile**去加密,本人从破解的角度去谈谈这样做存在的一些弊病。(本文示例是用mac去做,用windows的同学可能需要去安装一些相应的工具)
为了方便,去网上随意下载了cocos-lua开发的且有做luac加密的apk包,
第一步,在apk路径使用命令apktool d xxx.apk解包,获得解包的文件夹(apktool命令工具,[https://ibotpeaches.github.io/Apktool/][1]
第二步,找到文件夹下的luac脚本目启示录讲道讲章全集录

随便打开一个luac文件启示录兽,找到第一个反编译软件字符串,记录下来,待会要用到,如图中的RY_QP_201密钥6,
(为什么要找到它呢,co命令cos的加密命令的弊端就是,命令加密后它的key已经暴露出来了,RY_QP_2016就是,当然,光有key还不够)

第三步,找到文件夹下cocos的lib库

在该路径下执行命令,strings -a libcocos2dlua.so,解析出库中的字符串,cmd+f搜索RY_QP_2016定位,看到了什么游戏中心,RY_QP_MBCLIEN游戏名字T_!2016字样的字符串,它就是密钥(这里剧透了哈密钥宝app,其实这个包加密命令助手的方式做的很简陋密钥在哪里可以找到,所以很快能启示录找到,就算复杂一些通过这个方法同样能找到,麻烦一点而已,启示录中最美的七个福原理是什么呢,在游戏包中luac加密后,需要AppDelegate::applicationDidFinishLaunching中的方法,调用engine-&g反编译appt;getLuaSta启示录讲道讲章全集ck()->setXXTEAKeyAnd启示录1904Sign(xx,密钥宝appxxx)方法,xx和xxx分别是lu启示录电影ac的key和密钥,而so文件用strings命令能暴露出这些字符串,所以用key就能定位密钥)

有了密钥和key基本上就成了,最后一步,下载这个工具包[https://github.com/dengxiaochun/luac_decodeTool][2],放在项目所在的src路径,修改shell脚本中相应的key和密钥后执反编译软件行 ./decode.sh src命令

看到src中的.lua文件,就成功了

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|棋牌源码吧

GMT+8, 2024-9-17 04:20 , Processed in 0.065077 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表