Javascript 在同一选项卡中打开的其他网站可访问的全局变量

Javascript 在同一选项卡中打开的其他网站可访问的全局变量,javascript,html,google-chrome,security,firefox,Javascript,Html,Google Chrome,Security,Firefox,今天我发现Chrome浏览器或者其他我还没有测试过的浏览器存在安全问题。一旦您打开一个站点,然后在同一选项卡中打开另一个站点,则该选项卡中的当前站点可以访问上一个站点的全局变量。我在这段视频中演示了这一点: 浏览器应该解决这个问题,但是有没有其他方法来保护我们的全局变量 这是您复制它的方式: 我登录到exotel.com网站,他们正在使用name变量存储当前登录的用户名。您可以在控制台中使用它并检查其值 现在转到同一选项卡中的任何其他站点,并尝试从exotel访问该变量。将显示您的姓名,或者只需

今天我发现Chrome浏览器或者其他我还没有测试过的浏览器存在安全问题。一旦您打开一个站点,然后在同一选项卡中打开另一个站点,则该选项卡中的当前站点可以访问上一个站点的全局变量。我在这段视频中演示了这一点:

浏览器应该解决这个问题,但是有没有其他方法来保护我们的全局变量

这是您复制它的方式:

我登录到exotel.com网站,他们正在使用name变量存储当前登录的用户名。您可以在控制台中使用它并检查其值

现在转到同一选项卡中的任何其他站点,并尝试从exotel访问该变量。将显示您的姓名,或者只需在inspector中的HTML中添加一个按钮,然后单击该按钮即可显示姓名变量。

请参阅

您正在重命名窗口,而不是创建新的全局变量

有没有其他方法来保护我们的全局变量

不要将值指定给预定义的属性,除非你是认真的

首先还要避免使用全局变量


当您需要使用全局变量时,不要使它们成为隐式全局变量。使用let或const声明它们。

问题不应依赖于外部资源来理解。告诉我们如何在这里重现这个问题。“别逼我们去看录像。”昆汀更新。也值得你花时间。好的,那是窗户的名字。谢谢你的清理。其他变量不可访问。