HSTS (HTTP Strict Transport Security) 是一种安全机制,通过 Strict-Transport-Security HTTP 响应头告诉浏览器:在指定的时间内,只能通过 HTTPS 连接访问该网站。即使用户输入 HTTP URL 或点击 HTTP 链接,浏览器也会自动将其升级为 HTTPS。
HSTS 的主要目的是防止 SSL 剥离攻击 (SSL Stripping)。在这种攻击中,中间人将用户的 HTTPS 连接降级为 HTTP,从而窃听通信内容。HSTS 确保浏览器始终使用 HTTPS,即使在首次访问后也不会回退到 HTTP。欢迎参阅在 Amazon 搜索 HTTPS 安全书籍。
HSTS 头的关键参数包括:max-age (策略有效期,以秒为单位)、includeSubDomains (是否包含子域名) 和 preload (是否加入浏览器的 HSTS 预加载列表)。
在 URL 缩短服务中,启用 HSTS 确保所有短链接的访问都通过加密连接进行,保护用户免受中间人攻击。HSTS 预加载列表可以进一步增强安全性,确保即使是首次访问也使用 HTTPS。在 Amazon 搜索传输安全书籍深入探讨了这些安全机制。