如何解密该 LUA 代码?
2014-5-12 15:5:15
收藏:0
阅读:68
评论:3
我自己无法克服这个问题,我也无法解密那个代码,我找到了一些工具,但它们对我没用。
有人能解密那段代码吗?
loadstring('\27\76\117\97\81\0\1\4\4\4\8\0\16\0\0\0\64\116\111\66\121\116\101\67\111\100\101\46\108\117\97\0\2\0\0\0\20\0\0\0\0\0\0\3\11\0\0\0\5\0\0\0\6\64\64\0\65\128\0\0\164\0\0\0\28\64\128\1\5\192\0\0\6\64\64\0\65\0\1\0\164\64\0\0\28\64\128\1\30\0\128\0\5\0\0\0\4\19\0\0\0\69\102\102\101\99\116\77\101\115\115\97\103\101\80\114\111\120\121\0\4\10\0\0\0\79\110\82\101\99\101\105\118\101\0\4\11\0\0\0\68\105\99\101\69\102\102\101\99\116\0\4\17\0\0\0\76\111\99\97\108\83\112\101\101\99\104\80\114\111\120\121\0\4\11\0\0\0\83\97\121\67\97\116\99\104\101\114\0\2\0\0\0\0\0\0\0\4\0\0\0\11\0\0\0\0\5\0\9\17\0\0\0\69\1\0\0\70\65\192\2\128\1\128\0\197\129\0\0\198\193\192\3\220\129\128\0\1\2\1\0\213\1\130\3\92\129\128\1\90\1\0\0\22\0\1\128\133\65\1\0\134\129\65\3\193\193\1\0\12\2\194\2\156\65\128\1\30\0\128\0\9\0\0\0\4\7\0\0\0\115\116\114\105\110\103\0\4\6\0\0\0\109\97\116\99\104\0\4\5\0\0\0\83\101\108\102\0\4\5\0\0\0\78\97\109\101\0\4\16\0\0\0\32\114\111\108\108\101\100\32\97\32\40\46\43\41\46\0\4\7\0\0\0\83\105\103\110\97\108\0\4\5\0\0\0\83\101\110\100\0\4\11\0\0\0\68\105\99\101\82\111\108\108\101\100\0\3\0\0\0\0\0\0\0\0\0\0\0\0\17\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\6\0\0\0\7\0\0\0\7\0\0\0\8\0\0\0\8\0\0\0\8\0\0\0\8\0\0\0\8\0\0\0\11\0\0\0\6\0\0\0\7\0\0\0\115\105\103\110\97\108\0\0\0\0\0\16\0\0\0\8\0\0\0\109\101\115\115\97\103\101\0\0\0\0\0\16\0\0\0\2\0\0\0\120\0\0\0\0\0\16\0\0\0\2\0\0\0\121\0\0\0\0\0\16\0\0\0\2\0\0\0\122\0\0\0\0\0\16\0\0\0\14\0\0\0\82\111\108\108\101\100\95\78\117\109\98\101\114\0\9\0\0\0\16\0\0\0\0\0\0\0\0\0\0\0\14\0\0\0\18\0\0\0\0\5\0\8\8\0\0\0\69\1\0\0\70\65\192\2\129\129\0\0\202\129\0\0\201\129\128\129\201\1\1\130\92\65\128\1\30\0\128\0\5\0\0\0\4\7\0\0\0\83\105\103\110\97\108\0\4\5\0\0\0\83\101\110\100\0\4\11\0\0\0\65\110\97\108\121\122\101\83\97\121\0\4\9\0\0\0\99\114\101\97\116\117\114\101\0\4\8\0\0\0\109\101\115\115\97\103\101\0\0\0\0\0\8\0\0\0\16\0\0\0\16\0\0\0\16\0\0\0\16\0\0\0\16\0\0\0\16\0\0\0\18\0\0\0\5\0\0\0\6\0\0\0\112\114\111\120\121\0\0\0\0\0\7\0\0\0\6\0\0\0\109\116\121\112\101\0\0\0\0\0\7\0\0\0\8\0\0\0\115\112\101\97\107\101\114\0\0\0\0\0\7\0\0\0\6\0\0\0\108\101\118\101\108\0\0\0\0\0\7\0\0\0\5\0\0\0\116\101\120\116\0\0\0\0\0\7\0\0\0\0\0\0\0\11\0\0\0\4\0\0\0\4\0\0\0\4\0\0\0\11\0\0\0\4\0\0\0\14\0\0\0\14\0\0\0\14\0\0\0\18\0\0\0\14\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0')()
点赞
用户3629357
使用 luadec
--使用 luadec 2.0.1 by sztupy (http://winmo.sztupy.hu)进行反编译
EffectMessageProxy.OnReceive("DiceEffect",
function(a0, a1, a2, a3, a4)
local Rolled_Number = string.match(a1, Self.Name().." rolled a (.+).")
if Rolled_Number then
Signal.Send("DiceRolled", Rolled_Number + 0)
end
end
)
LocalSpeechProxy.OnReceive("SayCatcher",
function(b0, b1, b2, b3, b4)
Signal.Send("AnalyzeSay", {creature = b2, message = b4})
end
)
2014-05-12 16:34:22
用户3629357
关于这个large bytecode
不幸的是,Luadec 无法反编译此字节码。
但是它成功地反汇编了它
名称Tiusu Frontline被隐藏了。 但并不够隐蔽 :-)
在以下行中,您可以看到将相应字符的ascii值形成字符串'Tiusu Frontline'的过程:
36865 [-]: LOADK R6 K28 ; R6 := 84
36866 [-]: LOADK R7 K29 ; R7 := 105
36867 [-]: LOADK R8 K30 ; R8 := 117
36868 [-]: LOADK R9 K31 ; R9 := 115
36869 [-]: LOADK R10 K30 ; R10 := 117
36870 [-]: LOADK R11 K32 ; R11 := 32
36871 [-]: LOADK R12 K33 ; R12 := 70
36872 [-]: LOADK R13 K34 ; R13 := 114
36873 [-]: LOADK R14 K35 ; R14 := 111
36874 [-]: LOADK R15 K36 ; R15 := 110
36875 [-]: LOADK R16 K37 ; R16 := 116
36876 [-]: LOADK R17 K38 ; R17 := 108
36877 [-]: LOADK R18 K29 ; R18 := 105
36878 [-]: LOADK R19 K36 ; R19 := 110
36879 [-]: LOADK R20 K39 ; R20 := 101
36880 [-]: CALL R5 16 2 ; R5 := R5(R6,R7,R8,R9,R10,R11,R12,R13,R14,R15,R16,R17,R18,R19,R20)
在此反汇编器输出中还有一些类似的片段,从相同的ASCII代码中构建相同的字符串。
可能,将该字节码文件打补丁以将名称“Tiusu Frontline”更改为其他名称不会太难。
2014-05-15 15:02:11
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
这不是加密的 Lua 代码:它是预编译的 Lua 代码。按照 Sean 的建议,将字节保存到文件中。然后获取 Lua 5.1,在一台32位的机器上编译,然后在保存的文件上运行“luac -l”。你会得到下面这个列表,这不是 Lua 源代码,但如果需要,它可能会帮助你重建它。
<toByteCode.lua:2,20>函数(11条指令,44字节,开始位置0x8c9dd00) 0个参数,3个Slot,0个Upvalue,0个Local,5个常量,2个函数 1 [4] GETGLOBAL 0 -1 ; EffectMessageProxy 2 [4] GETTABLE 0 0 -2 ; "OnReceive" 3 [4] LOADK 1 -3 ; "DiceEffect" 4 [11] CLOSURE 2 0 ; 0x8c9ded0 5 [4] CALL 0 3 1 6 [14] GETGLOBAL 0 -4 ; LocalSpeechProxy 7 [14] GETTABLE 0 0 -2 ; "OnReceive" 8 [14] LOADK 1 -5 ; "SayCatcher" 9 [18] CLOSURE 2 1 ; 0x8c9e228 10 [14] CALL 0 3 1 11 [20] RETURN 0 1 <toByteCode.lua:4,11>函数(17条指令,68字节,开始位置0x8c9ded0) 5个参数,9个Slot,0个Upvalue,6个Local,9个常量,0个函数 1 [6] GETGLOBAL 5 -1 ; string 2 [6] GETTABLE 5 5 -2 ; "match" 3 [6] MOVE 6 1 4 [6] GETGLOBAL 7 -3 ; Self 5 [6] GETTABLE 7 7 -4 ; "Name" 6 [6] CALL 7 1 2 7 [6] LOADK 8 -5 ; " rolled a (.+)." 8 [6] CONCAT 7 7 8 9 [6] CALL 5 3 2 10 [7] TEST 5 0 0 11 [7] JMP 5 ; to 17 12 [8] GETGLOBAL 6 -6 ; Signal 13 [8] GETTABLE 6 6 -7 ; "Send" 14 [8] LOADK 7 -8 ; "DiceRolled" 15 [8] ADD 8 5 -9 ; - 0 16 [8] CALL 6 3 1 17 [11] RETURN 0 1 <toByteCode.lua:14,18>函数(8条指令,32字节,开始位置0x8c9e228) 5个参数,8个Slot,0个Upvalue,5个Local,5个常量,0个函数 1 [16] GETGLOBAL 5 -1 ; Signal 2 [16] GETTABLE 5 5 -2 ; "Send" 3 [16] LOADK 6 -3 ; "AnalyzeSay" 4 [16] NEWTABLE 7 0 2 5 [16] SETTABLE 7 -4 2 ; "creature" - 6 [16] SETTABLE 7 -5 4 ; "message" - 7 [16] CALL 5 3 1 8 [18] RETURN 0 1