Lazy Diary @ Hatena Blog

PowerShell / Java / miscellaneous things about software development, Tips & Gochas. CC BY-SA 4.0/Apache License 2.0

HSTSのmax-ageの推奨値が資料によってバラバラ

HTTP Strict Transport Security (HSTS)では、HSTSの結果をキャッシュする期間(max-age)をパラメータで指定できる。ただし、このmax-ageの推奨値は資料によってバラバラ。

  • hstspreload.org (ブラウザのHSTS preload listの管理元*1
  • Mozilla Web Security guidelines (OWASP Cheat Sheet Series*2はこれを参照してる)
  • Qualys (TLSの設定に問題がないかチェックするときによく使うQualys SSL Labs*3の提供元)
# Reference Minimum requirement Rrecommendation
1 hstspreload.org 1 year (31536000)*4 2 years (63072000)*5
2 Mozilla Web Security guidelines*6 6 months (15768000) 2 years (63072000)
3 Qualys*7 120 days (10368000) 1 year (31536000)
  • 他にもAppScanがHSTSのmax-ageをチェックしてる*8ようなのだが、最低要件などは不明。上がった指摘に対して1 year(31536000)を設定している例*9や2 years(63072000)を設定している例*10が見つかった。
  • 組織ではないがOWASPのスライドで最低18 weeks (10886400) としているものがあった*11
  • Ruby on Railsのデフォルト値は2 years (63072000) *12*13
  • 2020年の調査では、1年以上を設定しているものが半数以上*14