【发布时间】:2015-05-18 18:34:36
【问题描述】:
我想我明白same-origin policy 是什么。它表示脚本和 AJAX 请求必须来自同一来源,这意味着它们必须具有相同的协议、主机、域和端口。
我不明白它实际保护的是什么。例如,假设我们有两个站点:attacker.com 和 bank.com。我知道attacker.com 不能有脚本或AJAX 请求访问bank.com。但是……
您可以使用 cURL 向 bank.com 发出任何请求。
您可以使用浏览器向 bank.com 发出任何类型的 GET 请求
鉴于这些情况,同源策略真正保护的是什么?
【问题讨论】:
-
我写了this story进一步解释。
-
它没有这么说。它可以防止 direct access to resources via scripting 由不同的 Origin 拥有,而他们没有选择加入。It does not prevent AJAX requests from being made, only their responses read.
标签: ajax security http curl same-origin-policy