为什么同源策略会阻止阅读GET响应?

时间:2016-12-16 20:34:21

标签: web cors same-origin-policy

我已经在网上做了一些研究,并搜索了一些关于SOP的问题以及它减轻了哪些滥用行为,但大多数答案都集中在防止被盗资料上。这对我来说很有意义。

对我来说没有意义的是为什么遵循SOP规则的浏览器会彻底阻止响应,而不是阻止cookie和本地存储访问。

换句话说,如果cookie和本地存储不存在,是否仍然需要阻止阅读GET响应?据推测,这已经是<img><script><iframe>在某种程度上发生的情况。

1 个答案:

答案 0 :(得分:3)

根据Mozilla Developer Network

  

同源策略限制从一个源加载的文档或脚本如何与来自另一个源的资源交互。它是隔离潜在恶意文档的重要安全机制

根据RFC 6454

  

虽然用户代理将URI分组为源,但不是每个资源      一个起源具有相同的权威(在安全意义上)      word&#34;权限&#34;,而不是[RFC3986]意义上的。例如,图像      是被动内容,因此,没有任何权威,这意味着      image无法访问其可用的对象和资源      起源。相比之下,HTML文档具有完整的权限      它的来源和文件中的脚本(或导入)可以      访问其来源的每个资源

要回答您的问题,即使cookie和本地存储不存在,在文档的上下文中执行未知脚本仍然是危险的。这些脚本可以使用与授权脚本相同的IP发出XHR请求,并且表现不佳。