戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

情報処理安全確保支援士 2022年 春期 午前214


問題文

HTTP Strict Transport Security(HSTS)の動作はどれか。

選択肢

HTTP over TLS(HTTPS)によって接続しているときEV SSL証明書であることを利用者が容易に識別できるようにWebブラウザのアドレス表示部分を緑色に表示する。
Webサーバからコンテンツをダウンロードするときどの文字列が秘密情報かを判定できないように圧縮する。
WebサーバとWebブラウザとの間のTLSのハンドシェイクにおいて一度確立したセッションとは別の新たなセッションを確立するとき既に確立したセッションを使って改めてハンドシェイクを行う。
WebサイトにアクセスするとWebブラウザは以降の指定された期間当該サイトには全てHTTPSによって接続する。(正解)

🔒 解説は解答すると表示されます

HSTSの動作【午前2解説】

正解の理由

選択肢は、HTTP Strict Transport Security(HSTS)の本質を正しく示しています。HSTSはWebブラウザに対して「当該サイトへは一定期間、必ずHTTPSで接続するようにせよ」というポリシーをサーバ側が通知する仕組みです。サーバがHTTPSレスポンスで返す Strict-Transport-Security ヘッダに含まれる max-age(と任意の includeSubDomains 等)に従い、ブラウザはその期間中に当該サイトへの接続をHTTPSに限定します。したがって「以降の指定された期間当該サイトには全てHTTPSによって接続する」という記述が該当します。
重要な実務上の注意点として、ブラウザは原則として平文のHTTPで受け取った Strict-Transport-Security ヘッダを信用しません。HSTSが有効になるには
  • 初回アクセスが既にHTTPSでヘッダを受け取ること、または
  • ドメインがブラウザのプリロードリストに登録されていて初回からHTTPSに誘導されること のいずれかが必要です(プリロードは別途登録手続きが必要)。

解法ステップ

  1. 問題文から「HSTS」がテーマであると特定する。HSTSはセキュリティ関連のHTTPヘッダであることを思い出す。
  2. 各選択肢を「HSTSの機能か?」で評価する:
    • HSTSは表示色やEV表示、コンテンツ圧縮、TLSセッション管理を行わない点を確認する。
  3. HSTSの動作(ブラウザ側の接続強制)に一致する選択肢を選ぶ。
  4. 余力があれば「初回アクセスの挙動」「プリロード」「includeSubDomains」などの例外条件を思い出す。

選択肢別の誤答解説

  • ア: EV証明書の表示(緑色のバーなど)はブラウザ固有のUI仕様であり、HSTSとは無関係です。HSTSは接続方式の強制(HTTPS限定)を行うもので、証明書の表示装飾は含みません。
  • イ: コンテンツの圧縮により「どの文字列が秘密情報か判定できないようにする」という表現は意味的に不適当です。圧縮はサイズ削減や転送効率のためであり、秘密情報の判別防止のための手段ではなく、またこれはHSTSの機能ではありません。
  • ウ: TLSのハンドシェイクやセッション確立・再利用(セッション再開、セッションチケット等)はTLSプロトコルの内部仕様です。HSTSは通信の暗号化の有無(HTTPSを使うかどうか)をブラウザに指示するもので、TLSセッション管理を指示する仕組みではありません。
  • エ: Webサイトにアクセスするとブラウザは以降の指定期間そのサイトへは全てHTTPSで接続する、という点がHSTSの役割に合致します(ただし初回で平文HTTPのみの場合やプリロードに関する前述の例外に注意)。

よくある誤解

  1. HSTSが初回アクセスのHTTP→HTTPS自動切替を保障すると思い込む
    • 実際はブラウザは平文HTTPで受け取った Strict-Transport-Security を信頼しないため、初回がHTTPで攻撃者に改ざんされ得る状況ではHSTSは効かない。初回を確実にHTTPSにするにはサーバ側がプリロードリストに登録するか、外部手段で初回をHTTPSに誘導する必要があります。
  2. HSTSが証明書の有効性やEV表示を担保すると思い込む
    • HSTSは接続方式(HTTPSの使用)を強制するのみで、証明書の妥当性チェックや表示ルールは別(TLS/ブラウザの証明書検証やUI)です。
  3. HSTSが自動的にサブドメインを保護すると誤解する
    • サブドメイン保護は includeSubDomains 指定が必要。指定しない場合は当該ホスト名のみが対象。

補足コラム

  • ヘッダの例(HTTPSレスポンス内で返す):
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
  • max-age=31536000 は1年間(秒)を意味します。includeSubDomains を付けるとサブドメインにも適用されます。preload はプリロード申請のための指示で、実際にプリロードされるにはブラウザベンダのリストに登録する必要があります。
  • プリロード(HSTS preload)
    • ドメイン所有者が https://hstspreload.org などを通じて登録申請を行い、承認されると主要ブラウザのビルトインリストに追加され、初回アクセスからHTTPSに限定されます。これにより「初回HTTP攻撃」のリスクを低減できます。
  • HSTSとリダイレクトの違い
    • サーバがHTTPでアクセスされた際に301/302でHTTPSへリダイレクトする手法は有効だが、MITM による中間改ざんのリスクがある。HSTSはブラウザ側に再接続ポリシーを保存するため、より強い保護を提供する(ただし初回の問題は前述の通り)。

FAQ

Q1: 初回アクセスがHTTPの場合、HSTSは効きますか?
A1: 原則効きません。ブラウザは安全なHTTPSで受け取った Strict-Transport-Security を信頼して記憶します。初回を安全にするにはプリロード登録または初回URLをHTTPSに限定する必要があります。
Q2: サブドメインもHTTPSにしたいときは?
A2: includeSubDomains をヘッダに追加します。ただし適用前にサブドメインがHTTPSでアクセス可能であることを確認してください。
Q3: HSTSは証明書の失効チェック(OCSPなど)に代わりますか?
A3: いいえ。HSTSは接続をHTTPSに限定するだけで、証明書の妥当性検証や失効チェックは別途行われます。
Q4: プリロードから除外したいときは?
A4: プリロードリストからの削除はサイト所有者が申請できますが、反映に時間がかかる場合があります。

関連キーワード: HSTS、Strict-Transport-Security、HTTPS、プリロード、includeSubDomains、max-age、MITM対策、HTTPヘッダ、TLS、セキュリティヘッダ
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

情報処理安全確保支援士
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について