【发布时间】:2015-02-08 19:29:33
【问题描述】:
我有一个关于托管在域(例如:CDN 的域,例如 example.com)但从不同域(例如 example.net)下的网站加载的 JavaScript 的潜在安全问题/限制的问题.
现在想象一下,加载的 JavaScript 只会读取/修改具有特定 ID 的 div 中的文本,所以没有什么“复杂”的。
一个例子:我从http://example.com/myscript.js加载了脚本,并在http://example.net/index.html上执行:[注意不同的TLD!]
<!-- Page example.net/index.html -->
<script src="http://example.com/myscript.js"></script>
我知道我无法从 JavaScript 访问 mysite.com 下的 Cookie,但我可以访问页面上的所有 DOM,以防万一,修改它。 这不是一个可能的安全问题吗?这不应该触发同源策略保护吗?
是否存在阻止托管在不同域中的 JavaScript 访问页面中执行脚本的元素的用户代理?
此外,上面的示例是否也适用于 HTTPS 页面? (例如:https://example.net/index.html 从https://example.com/myscript.js 加载脚本)
【问题讨论】:
标签: javascript security xss same-origin-policy