在没有强制重定向到HTTPS的情况下启用HSTS?

时间:2013-08-31 06:46:00

标签: security http https protocols hsts

这似乎是一个愚蠢的问题,但我想知道:

  • 如果没有强制将用户重定向到HTTPS ,如何部署HSTS?
  • 如何使用与使用HSTS的域相同的域提供HTTP内容? (整个网站或混合内容)
  • 为什么有人会这样做?

我正在阅读from the EFF site

  

我们最近为eff.org启用了HSTS。设置时间不到一个小时,我们找到了一种方法,无需强制将用户重定向到HTTPS,因此我们可以说明对HTTPS访问的明确偏好,同时仍然可以在HTTP中使用该站点。它就像一个魅力,我们的用户中有很大一部分现在通过HTTPS自动访问我们的网站,可能甚至不知道它。

据我所知,HSTS通过发送HTTP标头来工作:

Strict-Transport-Security: max-age=31536000

因此,如果我访问发送该标头的https://example.net/上的页面,则以后31536000秒对域example.net的所有未来请求都将使用HTTPS,如果(响应?)是HTTP,则浏览器将显示巨大的红色警告。

有人可以帮我解释一下吗?我对HSTS的理解是准确还是我遗漏了什么?

1 个答案:

答案 0 :(得分:3)

HSTS标头只应通过HTTPS发布,并且只有用户代理才能通过HTTPS接收。用户代理应忽略通过HTTP发送的HSTS标头,因为攻击者可能会恶意注入它。

这意味着该网站可以继续通过HTTP提供服务,用户可以根据自己的选择继续浏览HTTP。但是,如果他们手动将https://插入地址栏,他们将收到HSTS标头,然后用户代理将其视为HSTS主机。

这是逐步引入强制HTTPS流量的好方法,而不会在第一天强制执行。当用户意识到安全选项时,由于HSTS,HTTPS流量将增加并保持不变。也许EFF正在逐步推出它,并且只要他们满意就可以容纳它,可能只需轻弹大型“HTTPS Switch”。

相关问题