#author("2025-05-18T11:24:26+09:00","default:k1rou","k1rou") #author("2025-05-18T11:28:39+09:00","default:k1rou","k1rou") *HSTS [#f5a633b9] **名称 [#e256dc02] -HTTP Strict Transport Security **概要 [#nf3da73c] -WebサーバからWebブラウザに対して、次回以降は[[HTTPS]]でアクセスするように通知する仕組み -HTTPヘッダ(応答)で通知され、[[HTTPS]]接続が求められる有効期限が指定される -同一ドメインでの接続がすべて[[HTTPS]]になる。 -[[中間者攻撃]]対策 -RFC6797~ https://tools.ietf.org/html/rfc6797 *使い方 [#i90fcc5a] **HTTPレスポンスヘッダの指定 [#t2f60de2] -Strict-Transport-Security Strict-Transport-Security:max-age=有効期間(秒数);includeSubDomains Strict-Transport-Security:max-age=有効期間(秒数);includeSubDomains;preload *問題点 [#l6148baf] -初回の接続が[[HTTP]]の場合は、HSTSが有効にならずに通信が盗聴される可能性がある。 --[[HTTP]]での接続に対しては、強制的に[[HTTPS]]にリダイレクトさせる。 *HSTS Preloading [#h787e5ba] -HSTSプリロード -HSTS対応しているWebサーバへの初回の接続を強制的に[[HTTPS]]にするWebブラウザの機能 -Webブラウザ本体にHSTSで接続するドメインのリストを持つことで最初から[[HTTPS]]で接続する。 -Preloaded HSTS(Chrome) -hstspreload.org でドメインを申請して登録する必要がある -HSTSプリロードリストにドメインを登録する必要がある --hstspreload.org でドメインを申請して登録する **登録条件 [#f01e754d] -HTTPリクエストヘッダーのStrict-Transport-Security --max-age が"31536000"(1年)以上 --includeSubDomains、preload が含まれている -HTTPからHTTPSへのリダイレクトが設定されている -有効なサーバー証明書が設定されている *関連サイト [#ue3fb1d8] -Strict-Transport-Security - MDN web docs~ https://developer.mozilla.org/ja/docs/Web/HTTP/Reference/Headers/Strict-Transport-Security -HSTS preload list - Googleが運営~ https://hstspreload.org/ -HTTP Strict Transport Security - The Chrome Projects~ https://www.chromium.org/hsts/ *関連用語 [#ge588971] -[[HTTPS]] -[[SSL]] -[[中間者攻撃]]