【情報処理安全確保支援士】HTTPレスポンスヘッダとは?

こんにちはリユウです。

情報処理安全確保支援士の試験でも出題される、HTTPレスポンスヘッダについてです。

HTTPレスポンスヘッダは、クライアント(ブラウザ)がHTTPリクエストを送信すると、HTTPレスポンスがWebサーバから返ってきますが、そのHTTPレスポンスの構成要素の一つです。

HTTPレスポンスヘッダの種類

ヘッダ 詳細
Set-C∞kie Webサーバが発行したCookieをブラウザへ送ります。
X-Frame-Options クリックジャッキング攻撃対策のために指定します。

設定できるパラメタは下記のとおりです。

  • DENY・・・フレーム内に表示することができません。
  • SAMEORIGIN・・・同一生成元の画面のみのフレーム内に表示可能です。
  • ALLOW-FROM [URL]・・・指定した生成元の画面のみのフレーム内に表示可能です。
Location ブラウザに対してリダイレクト先のURLを通知します。
HSTS ブラウザに対してHTTPS通信を強制します。

ブラウザは次回からHTTPSで接続するようになりますが、初回のアクセスがHTTPになる可能性があります。

そのため「HSTSプリロード」という機能で、初回のアクセスからHTTPSで接続させるため、あらかじめサイトのリストを登録して公開しておきます。HSTSプリロードに対応するブラウザは、リストに従い初回からHTTPSで接続します。

ヘッダ内のmax-ageフィールドでHTTPS接続の有効期間を指定します。

Cache-Control 経路中の装置に対するキャッシュ動作を通知します。経路中の装置は
プロキシサーバなどです。Cache-Controlは、HTTPリクエストヘッダにおいて指定することもあります。キャッシュを有効にすると、ブラウザからのインターネットアクセスが早くなるといった効果がありますが、下記のようなセキュリティ上の問題があります。

  • 特定の利用者しか閲覧できないページがキャッシュされた場合、キャッシュされたページが第三者に閲覧される可能性があります。
  • HTTPヘッダインジェクション攻撃などによって、攻撃されたWebページがキャッシュされてしまうと、そのページを閲覧する人が増え、被害が拡大する可能性があります。

上記の問題に対しては、キャッシュを制限することが有効です。
そのために下記のようなパラメタがあります。

  • private・・・Webサーバから返ってくるコンテンツが、一人の利用者のためのものであることを示しています。
  • no-store・・・Webサーバから返ってくるコンテンツのキャッシュへの記録を禁止します。
  • no-cache・・・Webサーバ(オリジンサーバ)に有効性を問い合わせ、確認がとれない限り、キャッシュに記録されたコンテンツを再利用してはならないことを示しています。
  • max-age・・・キャッシュの有効時間を指定します。

 

タイトルとURLをコピーしました