如何解密Lua字节码?

问题描述 投票:0回答:4

早上好,我正在尝试破译 Moon 字节码的代码,但我不能以任何方式,有人可以帮助我吗?

我有这个,例如:

code = '\27\76\117\97\81\0\1\4\4\4\8\0\'

如何将此字节码解密为文本?

我已经在这里搜索了:http://www.asciitable.com/ 但是找到结果,因为有些结果在表中是不存在的

请帮我解决这个...

我试了好几天都没有

lua bytecode
4个回答
8
投票

这似乎是 Lua 5.1 的字节码。它没有加密,可以用

luac -l -p
轻松阅读(不是源代码形式,而是VM指令,这可能足以重建源代码)。如果您想重建源代码,请尝试 LuaDec for Lua 5.1.


4
投票
有这个,例如:
code = '\27\76\117\97\81\0\1\4\4\4\8\0\'

我如何将此字节码解密为文本?

上面的序列是 Lua 字节码的样子,如果第一个字符 ' ' 告诉 lua 该文件是字节码或文本。该序列后跟 Lua '>O\97',然后是 \81,表明这是 Lua 5.1 字节码等。有关详细信息,请查看此链接http://howto.oz-apps.com/ 2012/04/delve-deeper-into-lua-and-compilation.html

可以在 http://chunkspy.luaforge.net/ 找到非常好的资源,以及来自 Kein Hong Man 的详细 PDF


1
投票

就像其他人所说的,你可以使用 LuaDec for Lua 5.1 但是对于这样的字节码,我会做的是使用这个 number extractor,只获取所有数字,然后使用这个 numbers to utf8 converter 并将它们粘贴到那里。一开始它可能看起来像随机单词,但你需要将它们排成一行,但每次回退一行时都要留出一个空格,就像这样。

27 76 117 97 81 0 1 4 4 4 8 0

NOT像这样。

27
76
117
97
81

etc,你应该得到答案,但这可能不适用于不同的字节码,但这几乎只是手动方式,最好使用 LuaDec for Lua 5.1,但是如果你仍然想尝试这个,你会没有得到确切的源字符串,如果你做了那么很好,但那将是非常糟糕的加密。


-4
投票

你不能把字节码变成文本。这不是文本,而是给 Lua 解释器的指令。

© www.soinside.com 2019 - 2024. All rights reserved.