Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何对Lua脚本进行除臭?_String_Lua_Byte_Obfuscation_Deobfuscation - Fatal编程技术网

String 如何对Lua脚本进行除臭?

String 如何对Lua脚本进行除臭?,string,lua,byte,obfuscation,deobfuscation,String,Lua,Byte,Obfuscation,Deobfuscation,脚本变成字节码,你知道如何反转吗?你不能将字节码反转为Lua源代码,但你可以用luac-l列出VM指令,找出VM字节码和Lua字节码之间的区别,在VM字节码中,前面总是有一个\24 在本例中,这是VM(虚拟机)字节码。这个混淆功能还使用了string.dump函数,可以很容易地反转 以下是经过修改的反编译器版本: local script= string.dump( function() print('Hi') end ) buff="" for v=1,st

脚本变成字节码,你知道如何反转吗?

你不能将字节码反转为Lua源代码,但你可以用
luac-l
列出VM指令,找出VM字节码和Lua字节码之间的区别,在VM字节码中,前面总是有一个
\24

在本例中,这是VM
(虚拟机)
字节码。这个混淆功能还使用了
string.dump
函数,可以很容易地反转

以下是经过修改的反编译器版本:

local script= string.dump(
    function()
        print('Hi')
    end
)

buff=""

for v=1,string.len(script) do
    buff=buff..'\\'..string.byte(script,v)
end

print(buff)  

这个版本只是简单地使用
print
函数来打印脚本中创建的
字符串.dump
。源代码清晰可见,我很确定这适用于所有不安全的VM混淆器。

LuaDec每次都会关闭反编译器,我对VM指令一无所知
local script= string.dump(
    function()

      print('Hi')

    end
)
buff=""

for v=1,string.len(script) do
    buff=buff..'\\'..string.byte(script,v)
end
buff = "'"..buff.."'"
print("print("..buff..")")