这似乎是一个愚蠢的问题,但我想知道:
我正在阅读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的理解是准确还是我遗漏了什么?
答案 0 :(得分:3)
HSTS标头只应通过HTTPS发布,并且只有用户代理才能通过HTTPS接收。用户代理应忽略通过HTTP发送的HSTS标头,因为攻击者可能会恶意注入它。
这意味着该网站可以继续通过HTTP提供服务,用户可以根据自己的选择继续浏览HTTP。但是,如果他们手动将https://插入地址栏,他们将收到HSTS标头,然后用户代理将其视为HSTS主机。
这是逐步引入强制HTTPS流量的好方法,而不会在第一天强制执行。当用户意识到安全选项时,由于HSTS,HTTPS流量将增加并保持不变。也许EFF正在逐步推出它,并且只要他们满意就可以容纳它,可能只需轻弹大型“HTTPS Switch”。