我想在我的应用程序中使用基于浏览器的代码编辑器,例如Monaco或Ace,以允许用户在浏览器中编写一些将由其他用户执行的代码。你可以想象 jsfiddle 或类似的。但是,我不想公开跨站点脚本漏洞。我没有找到太多关于如何在应用程序中正确实现这些工具并防止 XSS 的信息。
有没有办法在运行时将这些工具中编写的javascript“沙箱化”?JSFiddle、CodePen 和在线编辑器等工具如何防范恶意脚本?一般来说,在我的应用程序中使用基于浏览器的代码编辑器时,我应该使用哪些技术来防止 XSS 漏洞?