HSTS
https://e-words.jp/w/HSTS.html
HSTSとは、WebサーバがHTTPヘッダの中で指定する項目の一つで、Webブラウザに対して以降は常にHTTPSによる通信を行うよう指示するもの。RFC 6797として標準化されている。
webアプリケーション側でhttpsにリダイレクトはよくやることだが、そもそも初回のアクセスでhttpを使ってしまっているので、ここで攻撃を受けてしまう危険がある
なので、ブラウザ側でhttpsに置き換えてしまえ、というもの
ブラウザ内で307 Internal Redirectが起きる
この挙動をHSTS preloadという
これを行うドメインのリストを、HSTS preload listという
ブラウザがHSTS preload listを持っているのだが
このリストには、2種類の流入源がある
webサーバからの自己申告でいれるもの
webサーバからのHTTPヘッダ Strict-Transport-Securityで自己申告して入れてもらう
これはブラウザ使ってる人が設定から消すこともできる
ブラウザにハードコードされてるもの
トップレベルドメインは、.appと.dev等が入ってる
.devドメインと.appドメインがHTTPSを強制する仕組み - Qiita
chroniumの場合、ハードコードされているものは消せない
chroniumに入っているHSTS preloadリストを調べる
リストからの削除は
chromeの場合 chrome://net-internals/#hsts からできる
https://laboradian.com/disable-hsts-for-domain/
しかし、上記の通り、ハードコード入ってるpreload listは、設定操作で消すことが出来ない
上記の設定画面から実際にやってみたが、特に何もエラーが出てこなくてわかりにくいが、消えなかった
開発時にmy-awesome-app.devみたいなドメインを/etc/hostsに書いて使うと、httpsじゃないと開発ができなくなる
参考
.devドメインと.appドメインがHTTPSを強制する仕組み - Qiita
HSTSプリロードリストの採用を進めるGoogle | TECH+
いつから入り始めたかと言うと、2017あたりから
https://lara-bell.com/2017/12/forces-domain/
購入自体は2015あたり?