弹出窗口的Cookie安全性

时间:2009-07-22 09:32:57

标签: javascript security

我去过一些css / html / js讨论板,它提供了一个输入html的文本框和一个“Run it!”。按钮在新弹出窗口中运行html。

我也想制作一个,这在jQuery中很容易:

function try_show_result() {
  var code = $("#try-input").val();
  if (code !== "") {
    var newwin = window.open('','','');
    newwin.opener = null; // 防止代ç 修改主页
    newwin.document.write(code);
    newwin.document.close();
  }
}

但后来我发现了一个安全问题:弹出窗口具有运行任意javascript的所有功能。因此,当另一个经过身份验证的用户在页面上运行给定的代码时,它可以窃取cookie或仅通过ajax帖子访问仅针对指定用户的URL。

有没有一种简单的方法可以避免这种情况?

更新:我在打开窗口之前添加了newwin.document.cookie =“”,不确定这是否更好。

1 个答案:

答案 0 :(得分:0)

  

有没有一种简单的方法可以避免这种情况?

没有

这就是为什么Facebook出去编写自己的JavaScript版本[FBJS]。