Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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
Javascript 为用户提供编辑Marko模板的选项是否安全?_Javascript_Node.js_Marko - Fatal编程技术网

Javascript 为用户提供编辑Marko模板的选项是否安全?

Javascript 为用户提供编辑Marko模板的选项是否安全?,javascript,node.js,marko,Javascript,Node.js,Marko,我想让客户可以编辑marko模板。 我知道用户可以添加脚本和XSS问题。问题是关于服务器端的 如果我从nodejs运行marko模板,并且模板来自一个用户。模板是否可能评估服务器上的恶意代码 换言之: 我如何防止用户执行类似操作: <if test="require('readFileSync').deleteAllMyFile..."> Hi </if> 你好 Marko允许在模板中设计任意JavaScript代码(出于性能原因)。目前,这使得编译后的Mark

我想让客户可以编辑marko模板。 我知道用户可以添加脚本和XSS问题。问题是关于服务器端的

如果我从nodejs运行marko模板,并且模板来自一个用户。模板是否可能评估服务器上的恶意代码

换言之: 我如何防止用户执行类似操作:

<if test="require('readFileSync').deleteAllMyFile...">
   Hi
</if>

你好

Marko允许在模板中设计任意JavaScript代码(出于性能原因)。目前,这使得编译后的Marko模板不适合在模板不受信任的情况下使用。但是,由于这种情况已经出现过几次,我们正在探索通过将编译后的模板加载到沙箱中来确保其安全的方法。您可以将该讨论作为以下Github问题的一部分进行关注:

如果您在服务器端执行模板,那么是的,如果您只将其编译为预编译代码,那么我猜这可能不是一个问题,但我仍然认为这是一个安全问题。