问一下在魔兽世界里遇到的脚本安全问题。
比如我把程序主架构用C++写好编译,然后用脚本语言来描述逻辑和细节,发布后那么别人也可以通过修改脚本来让软件以不同形态展示。
但是我这次本打算写一个魔兽世界插件,我想用插件的lua脚本调用我自己的dll,发现不行,暴雪的lua脚本里面,除了基本的操作和调用它提供的API,其他有安全隐患的操作全部屏蔽,哪怕是lua的标准操作。 比如调用dll, 文件操作, IO操作,统统失灵。 而在我自己的lua Demo里面是可以执行的。
那么它是怎样屏蔽这些不安全的东西呢? 它只允许一个脚本执行它规定的语法和关键字
[解决办法]
这个不难吧。。
LUA是开源的,暴雪稍微修改一下LUA的源码
在自己用,把你说那些调用dll, 文件操作, IO操作的操作
在源码上屏蔽掉就OK了啊。