解开zip后拿到的文件
我们对其中的文件进行文本格式打开或者是notepad打开,发现里面是如下的文件
但大家多打开几个文件会发现其中有个共同点
每个开头都是LuaQ,那么我们只需要百度搜索luacdes反编译
下载后是有三个版本
我们选择5.1版本下面的luadec.exe
双击EXE是没有的, 你在这个luadec.exe所在的文件夹内按cmd 选择 luadec.exe F:\\代码开发----------------------------------------\\A游戏逆向\\和天下逆向\\bb\\game\\launcher.init > F:\\代码开发----------------------------------------\\A游戏逆向\\和天下逆向\\bb\\game\\launcher.init.lua') 即可拿到解密结果如下
你可以选择代码批量生成
然后文件一个一个的打开查看
通过源代码我们清晰的发现sign= (string.upper)((crypto.md5)(singTemp))
singTemp=singTemp .. "key=" .. self:getKeyValue()
而 self:getKeyValue() 执行的为
LauncherScene.getKeyValue = function()
-- function num : 0_7
local keySet = (string.split)((crypto.decodeBase64)(Launcher.key), ",")
return keySet[1]
end
在这个函数里面 返回的是keySet[1] 而 keySet= (string.split)((crypto.decodeBase64)(Launcher.key), ",")
然后我们在去搜索Launcher.key
发现 Launcher.key = "RDklSkAjJEEkJSNASkEmJjYzNQ"
decodeBase64代表解密base64加密,我们于是用浏览器自带的atob 得到了结果为D9%J@#$A$%#@JA&&635
然后我们这个时候已经找到了key值,现在就是按照他的加密方式进行加密,,
他的加密格式如下
先把要传的参数一个 一个的用 singTemp .. v .. "=" .. tb[v] .. "&"进行拼接最后带上key=
D9%J@#$A$%#@JA&&635然后用md5进行加密
如下
经过对比和他本身的加密是一模一样就是11A4954B5F1004953E0874A7E15A7C9C
好了现在我们就是正式的把这个游戏用到的加密逆向并拿到了源码, 后续就可以对源码进行想要的分析和判断