将域名加入 HSTS Preload List

admin 2024年4月4日17:00:35评论2 views字数 1853阅读6分10秒阅读模式

将域名加入 HSTS Preload List

什么是 HSTS

大家可以参考我之前写的博文,里面有对 HSTS 的简介

Chrome 通过 HSTS 强制使用 HTTPS

RFC 6797

一点小小的不足

以我的网站为例,我来讲讲不足的地方。

假设一个用户从来没有访问过我的网站,并且他第一次访问的时候访问的是 http://imlonghao.com ,在正常的情况下,我的服务器就会给这位用户返回一个 301 跳转到 https://imlonghao.com ,并且带上 HSTS 头

将域名加入 HSTS Preload List

在用户下次访问我的博客时,只要 HSTS 还在有效期中,浏览器就会直接响应一个 HTTP 307 头,并跳转到相对应的 https 页面,并且这是不需要经过数据传输的,直接在本地浏览器进行的处理

将域名加入 HSTS Preload List

这似乎没什么问题,对吧。

但是,当他第一次访问的时候就可能有问题了,由于是 http 协议进行的数据传输,因此这里就可能被别人进行链路挟持了,他就可以改掉你的 HSTS 规则,然后给你直接挟持到他们指定的网站上去,那么用户可能就无法正常访问到我的博客了。

于是乎,HSTS Preload List 似乎就是一种机制来解决这个问题

HSTS Preload List

简介

(我就直接翻译官方的原话吧)

HSTS Preload List 是一个站点的列表,他将会被通过硬编码写入 Chrome 浏览器中,列表中的站点将会默认使用 HTTPS 进行访问,此外,Firefox 、Safari 、IE 11 和 Edge 也同样一份 HSTS 站点列表,其中包括了 Chrome 的列表

申请要求

Expiry must be at least eighteen weeks (10886400 seconds).
The includeSubdomains token must be specified.
The preload token must be specified.
If you are serving an additional redirect from your HTTPS site, that redirect must still have the HSTS header (not the page it redirects to).

  • 有一张有效的证书(如果是使用了 SHA-1 证书签名算法的必须在 2016 年前失效)
  • 重定向所有的 HTTP 流量到 HTTPS ( HTTPS ONLY )
  • 全部子域名的流量均通过 HTTPS ,如果子域名的 www 存在的话也同样需要通过 HTTPS 传输。例如我的子域名是 subdomain.imlonghao.com,并且 www.subdomain.imlonghao.com 也存在,所以 www.subdomain.imlonghao.com 也需要通过 HTTPS 传输
  • 在相应的域名中输出 HSTS 响应头
  • 过期时间至少大于 18 周(10886400 秒)
  • 必须声明 includeSubdomains
  • 必须声明 preload
  • 跳转过去的那个页面也需要有 HSTS 头,应该指的是 http://imlonghao.com

一个例子:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

开始申请

很简单,我们需要打开这个页面,HSTS Preload Submission

然后输入你的域名按 ENTER

将域名加入 HSTS Preload List

然后就会提示你你的域名已经在等待审核了,预计有几个星期甚至是一个多月才可以审核通过

查看结果

如果你的域名已经通过审核的话,页面会是这样的

将域名加入 HSTS Preload List

而且这个时候在 chromium 的源代码中是可以找的到你的域名的了

参考这个,https://code.google.com/p/chromium/codesearch#chromium/src/net/http/transport_security_state_static.json

一点好玩的想法

如果我的域名在这个列表里面,并且大多数浏览器都已经更新到新的列表,那么我就可以去用国内的 VPS 之类的,不打开 80 端口,只打开 443 ,浏览器同样会跳转过来,这样就可以免备案了~

不过似乎这样对搜索引擎不太友好~

将域名加入 HSTS Preload List

Update in 2016.1.10 23:50

本站已经成功加入 HSTS Preload List ,预计几个月之后就可以进 stable 了!

并且,十分幸运的是,和一个我挺喜欢的博客 (imququ.com) 并排

#chromium/src/net/http/transport_security_state_static.json&q=imlonghao.com&sq=package:chromium&type=cs&l=5201

将域名加入 HSTS Preload List - source:imlonghao.com

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月4日17:00:35
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   将域名加入 HSTS Preload Listhttps://cn-sec.com/archives/2631308.html

发表评论

匿名网友 填写信息