由于像jsfiddle这样的站点只是客户端代码(你不能编写服务器端代码),任何不良代码都会影响运行它的浏览器。它根本不应该影响他们的服务器。
jsFiddle只运行客户端代码(JavaScript) - 它可以伤害的唯一机器是你的(或者查看你的小提琴的人)。
大多数浏览器都有适当的位置来检测无响应的脚本(如无限循环),并为您提供暂停脚本的选项。
然后有像这样的网站 codepad.org 和 ideone.com , 哪一个 做 在本地计算机上运行代码。
代码执行由基于geordi的主管处理。策略是在ptrace下运行所有内容,不允许或忽略许多系统调用。编译器和最终可执行文件都在chroot jail中执行,具有严格的资源限制。 当您的应用程序是远程代码执行时,您必须预料到安全问题。我没有依赖chroot和ptrace主管,而是采取了一些额外的预防措施: 管理程序进程在防火墙的虚拟机上运行 这样他们就无法制作 传出连接。 运行虚拟机的机器也严重防火墙, 并从他们的源图像恢复 定期。
代码执行由基于geordi的主管处理。策略是在ptrace下运行所有内容,不允许或忽略许多系统调用。编译器和最终可执行文件都在chroot jail中执行,具有严格的资源限制。
当您的应用程序是远程代码执行时,您必须预料到安全问题。我没有依赖chroot和ptrace主管,而是采取了一些额外的预防措施:
该特定站点看起来像是在客户端运行其代码。所以你不能伤害他们的服务器。
其他站点采用在虚拟机中运行代码的方法。您可以限制虚拟机可以占用的资源,并限制可能造成的潜在损害。