带有设置了安全标志的 cookie 的 GET 请求

GET request with cookies having secure flag set

本文关键字:cookie GET 请求 标志 安全 设置      更新时间:2023-09-26

我已经保存了设置安全标志的会话cookie。由于浏览器将在每个 XHR 发送 cookie,我可以看到正在发送的 cookie 没有设置安全=安全标志。如何确保在发送 XHR 时,cookie 也使用安全标志发送?(即安全=安全)

我可以看到正在发送的 cookie 没有设置安全 = 安全标志

这是正确的。cookie 规范要求客户端只发送 Cookie: 标头中的 cookie 值,而不是元数据(securedomain 等)。这适用于所有HTTP请求,XHR或其他请求。

这种设计的一个缺点是您无法从服务器端分辨出 cookie 最初设置的位置。https://www.example.com/ 上发送给您的 cookie 实际上可能是从 http://www.example.com/ 设置的,但没有 secure 标志。它也可能来自http://other-subdomain.example.com/,将domain设置为example.com。没有办法知道。

为了降低中间人攻击者使用不受保护的连接http://www.example.com/将 cookie 注入https://www.example.com/的可能性,您所能做的就是专门使用https:。在http端口上,改为提供重定向到https:并设置 HTTP 严格传输安全标头,以尝试阻止浏览器将来连接到http:地址。