【发布时间】:2015-02-15 20:18:34
【问题描述】:
我在理解 CORS 概念时遇到问题...
我认为同源策略保护应用程序免于对“不受信任的域”进行 ajax 调用的方式。因此,mydomain.com 对 somedomain.com 进行 ajax 调用,并且不会检索资源 JSON/Script。
我认为这是为了在发现一些 XSS 漏洞并且有人将使用该标签的代码放入您的页面内容时保护 Web 应用程序,现在可以对其他域进行 ajax 调用。 - 我说的对吗?
如果我是对的,那么 CORS 不会提供任何保护,因为服务器策略规定如果来自 mydomain.com 的请求到达 somedomain.com,则应该允许它。现在,如果我正在攻击,我会添加我的脚本并在我的服务器中设置 CORS 策略以允许这些请求。据我所知,CORS 可以完全绕过同源策略
:|
更新:
阅读更多内容后,我发现声称 CORS 不是为了保护 mydomain.com 应用程序,而是保护 somedomain.com 的答案。假设 somedomain.com 是您的银行,它提供 API 来进行银行转账。银行将允许来自加载了其应用程序的浏览器(同一域)的 API 调用。在他们的 CORS 政策中,他们可以说来自 mydomain.com 的脚本可以调用他们的 API。请注意,客户端的浏览器可以设置银行的 cookie,从而使银行受到来自 mydomain.com
的脚本的攻击【问题讨论】:
标签: cors