使用已设置安全标志的cookie获取GET请求

时间:2016-01-27 13:05:42

标签: javascript html security cookies

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

1 个答案:

答案 0 :(得分:4)

  

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

这是正确的。 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/的{​​{1}}无法保护的连接将Cookie注入https://www.example.com/的可能性,我们可以采取的措施是仅使用https: 。在http端口上提供重定向到https:并设置HTTP Strict Transport Security标头,以防止浏览器在将来连接到http:地址。