【问题标题】:How to Identify malicious code inside lua scripts that may be obfuscated/encrypted如何识别 lua 脚本中可能被混淆/加密的恶意代码
【发布时间】:2014-07-18 04:47:06
【问题描述】:

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

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

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

提前致谢。

【问题讨论】:

  • 没有。 Lua 是一种功能强大的编程语言,用户可以在沙箱之外运行它。你可以提供一个沙盒。

标签: encryption lua obfuscation


【解决方案1】:

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

如果您需要允许像os.execute 这样的调用,但需要过滤掉一些 调用,那么基于代码审查可能没有太多机会来保护它。如果代码中包含os.execute('for'..'mat C'..string.char(58)) 之类的内容怎么办?如果不执行一些代码,您甚至无法检测到它是“格式 C:”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-09
    • 1970-01-01
    • 2020-07-04
    • 1970-01-01
    • 2021-05-25
    • 1970-01-01
    • 2020-09-11
    相关资源
    最近更新 更多