【问题标题】:Why does a browser attach cookies to requests originating from another origin?为什么浏览器会将 cookie 附加到来自另一个来源的请求?
【发布时间】:2017-02-06 10:55:45
【问题描述】:

来自 RFC6265 第 8.2 节:

使用 cookie 对用户进行身份验证的服务器可能会受到安全性影响 漏洞,因为一些用户代理让远程方发出 来自用户代理的 HTTP 请求(例如,通过 HTTP 重定向或 HTML 形式)。发出这些请求时,用户代理甚至会附加 cookie 如果远程方不知道 cookie 的内容, 可能让远程方在粗心的情况下行使权力 服务器。

在尝试理解 SOP 时,很明显是这种情况,但我找不到任何关于为什么会出现这种情况的信息。将每个请求的所有 cookie 盲目附加到源 A 会带来什么好处,即使该请求来自不同且可能是恶意的源 B?

【问题讨论】:

    标签: http cookies browser same-origin-policy


    【解决方案1】:

    嗯,一开始可能看起来很奇怪,也许这不是最好的主意,但在大多数情况下,这应该不是问题:

    • 请求的响应被 SOP 阻塞,所以无论如何都不会泄露任何信息

    • POST 请求(以及任何改变状态的请求)无论如何都应该受到 CSRF 保护方法的保护

    另外,如果浏览器不这样做,具有许可 CORS 规则的服务器将被阻止正常运行。

    【讨论】:

      猜你喜欢
      • 2014-06-16
      • 1970-01-01
      • 1970-01-01
      • 2020-02-29
      • 2018-05-22
      • 2011-04-07
      • 2017-05-07
      • 2017-01-27
      • 2013-07-09
      相关资源
      最近更新 更多