如何安全地允许用户将JavaScript添加到您域中的页面

时间:2014-06-13 22:24:52

标签: javascript xss

我很想学习允许用户在不打开安全漏洞的情况下向应用中的网页添加javascript的最佳技术。

很长一段时间以来,我认为这是不可能的,但我在托管的电子商务产品Tictail上开玩笑,他们的自定义工具允许您添加任何标记和您想要的JavaScript。我非常好奇他们如何做到这一点而不会受到攻击。

下面是我添加到页面的一些测试脚本以及结果。

<script>
  alert(document.cookie)
</script>

有效,触发警报 - 页面会运行吗?

<script>
    document.body.style.display = 'none';
</script>

不起作用 - 脚本标签按原样加载到页面中,但控制台中显示错误:Uncaught TypeError: Cannot read property 'style' of null

感谢您的任何想法/见解。

1 个答案:

答案 0 :(得分:0)

如果用户只是将HTML或Scripts反馈给创建它们的同一个人,那么有什么不安全感呢?

保证会打赌这个电子商务产品不会让你向其他用户提供任意的html /脚本。

您网页的任何用户都可以随时将任何脚本/ html添加到页面旁边。 XSS脚本编写的全部内容是让用户插入HTML /脚本,然后将其提供给其他用户。只需看看像Grease monkey或firebug这样的工具。