【发布时间】:2017-07-04 16:56:34
【问题描述】:
我知道默认情况下,其他域上的 HTML 页面无法访问我的图像、视频。他们只能展示他们。但遗憾的是,他们仍然可以运行我的脚本。如果我的脚本将一些变量暴露给全局范围,那么内部逻辑可能会被其他人知道。
我有一个其他人无法访问的私人网站。只有我可以通过向服务器发送 Cookie 中的令牌来访问它。如果 Cookie 中不包含令牌,则每个请求都会导致 500 服务器错误响应。这是安全的,因为一切都在 HTTPS 上。
但不幸的是,我发现这在我自己的机器上不是很安全,因为在我访问了我的站点然后访问了一个恶意站点之后,这个恶意站点可以使用以下方法来运行我的脚本:
<script src="https://my-website.com/main.js"></script>
这是因为我机器上的网站 Cookie 将作为第 3 方 Cookie 发送到我的服务器。
如何预防? access-control-allow-origin可以吗?
附:我不想在浏览器设置中禁用所有 3rd-party cookie。 Cookie 的SameSite 也没有意义,因为现在只有 Chrome 支持它。
【问题讨论】:
标签: javascript cookies cors xss same-origin-policy