如何识别可能被混淆/加密的lua脚本中的恶意代码

时间:2014-07-17 18:38:38

标签: encryption lua obfuscation

我是一个流行的论坛的一部分,该论坛都是关于共享/销售Lua脚本,有些是开源的,有些则不是。

我想知道是否有一种自动识别某个Lua脚本是否包含恶意代码的方法,例如:os.execute('format C:'),或者只是任何os.execute命令。

因为,即使我们要求用户向主持人提供其脚本的开源副本,我们如何确定它是否相同?或者他改变了他的剧本的链接。

提前致谢。

1 个答案:

答案 0 :(得分:2)

sandbox内运行脚本,只允许执行安全命令。例如,禁用os.execute。有关Lua特定详细信息,请参阅Lua SandBoxes wiki页面。

如果您需要允许os.execute之类的呼叫,但需要过滤某些呼叫,那么根据代码审核可能没有太多机会保护它。如果代码包含os.execute('for'..'mat C'..string.char(58))之类的内容怎么办?您甚至无法检测到它的格式C:'没有一些代码执行。