我是新来的Lua 和要问是否有可能限制在配置文件LUA语法?我知道配置加载必须在监狱中执行,但我们如何能够在应用中加载配置文件while 1 do end
?有没有办法只允许在配置中的字符串,分配和表,如果没有,那么检查lua文件是否包含不需要的结构的最好方法是什么?手动预解析唯一的解决方案?如何让LUA配置文件是安全的
2
A
回答
7
你似乎已经知道在Lua“沙盒”。所以剩下的就是你说的像无限循环这样的恶意结构。并解决你需要解决停机问题。这是不实际的。
除了“手动”解析并希望找到所有恶意内容(您不会),如何使用计时器设置运行您的Lua解释器,以便脚本在中断时间超过N秒?
0
如果你想明确地禁止在Lua一定的结构,你得亲自扫描文件。请注意,即使在配置文件中也有这些构造的有效用途,所以您限制了用户可以执行的操作。
编写一个简单的Lua词法分析器不会太困难,该分析器忽略字符串和注释的内容,但在除return
之外的任何Lua关键字上出现错误。给定适当的沙盒(即:没有功能可以被调用),这应该足以消除任何恶意的东西。
另外,还要注意的Lua 5.1没有可以很容易地防止分析器解析非文本数据(即:编译Lua的字节码)。 5.2提供了特定的API支持,用于强制加载程序只识别文本并因此拒绝字节码。
相关问题
- 1. 配置文件的PhpMyAdmin安全警告
- 2. Firebase .plist配置文件和安全
- 3. StructureMap配置文件线程安全吗?
- 4. PowerShell配置文件不安全?
- 5. 如何安全地使用Eclipse p2配置文件?
- 6. 如何将Spring Boot配置为.war文件以及安全性?
- 7. 如何安全地将配置文件下载到iPad上?
- 8. 如何创建全局配置文件?
- 9. 如何在AWS中的安全组内部配置安全组?
- 10. 将安全配置文件放置在WAR中的位置?
- 11. 如何确保设置文件在Python中是安全的?
- 12. 如何读取包含lua表的配置文件
- 13. 如何使用类型安全配置库只是渲染文件内容?
- 14. WCF安全配置
- 15. ExtUtils :: MakeMaker如何安装配置文件
- 16. 如何让安装文件
- 17. 如何让$ _SESSION更安全?
- 18. 如何让它更安全?
- 19. 是文件上还是位置上的Windows安全设置?
- 20. 配置WCF安全设置
- 21. 如何全局配置货运配置文件选项?
- 22. 安全:http在spring安全配置?
- 23. 类型安全配置安全rendeing
- 24. .NET 2.0的安全配置
- 25. Silex的安全配置
- 26. 安装附件到全新的配置文件
- 27. 用于安全地分发配置文件的软件
- 28. 这是.htacces配置安全吗?
- 29. 无法从URL位置导入Spring安全bean配置文件
- 30. 如何防止我的WCF服务配置文件中的安全覆盖?
+1为实用解决方案,而不是使用其他硬解决方案 – cctan 2012-03-28 02:04:14