情報処理安全確保支援士試験 2018年 春期 午前211


cookie に secure 属性を設定しなかったときと比較した, 設定したときの動作の差として,適切なものはどれか。
cookie に設定された有効期間を過ぎると, cookie が無効化される。
JavaScript による cookie の読出しが禁止される。
URLのスキームが https のときだけ, Web ブラウザから cookie が送出される。(正解)
Web ブラウザがアクセスする URL 内のパスと cookie に設定されたパスのプレフィックスが一致するとき, Web ブラウザから cookie が送出される。

解説

cookie に secure 属性を設定しなかったときと比較した, 設定したときの動作の差【午前2 解説】

要点まとめ

  • 結論:secure 属性を設定すると、cookie は HTTPS 通信時のみブラウザから送信されます。
  • 根拠:secure 属性は通信の安全性を確保するため、暗号化された HTTPS 接続でのみ cookie を送信する仕様です。
  • 差がつくポイント:HTTP と HTTPS の違いを理解し、secure 属性が通信経路の安全性に関わることを押さえることが重要です。

正解の理由

secure 属性を設定した cookie は、通信の安全性を確保するために HTTPS(暗号化通信)でのアクセス時にのみブラウザから送信されます。これにより、HTTP(非暗号化通信)経由での cookie の漏洩リスクを防止します。選択肢ウはこの動作を正確に表しているため正解です。

よくある誤解

secure 属性は cookie の有効期限や JavaScript からのアクセス制限には影響しません。これらは別の属性(Expires, HttpOnly)で制御されます。

解法ステップ

  1. cookie の secure 属性の意味を確認する。
  2. secure 属性が設定された場合の通信条件(HTTPSのみ)を理解する。
  3. 選択肢の内容と照らし合わせて、通信スキームに関する説明が正しいか判断する。
  4. 他の属性(有効期間、JavaScriptアクセス、パス制限)との違いを区別する。
  5. 最も正確に secure 属性の動作を説明している選択肢を選ぶ。

選択肢別の誤答解説

  • ア: cookie の有効期間は Expires や Max-Age 属性で制御され、secure 属性とは無関係です。
  • イ: JavaScript による cookie の読み出し制限は HttpOnly 属性で行い、secure 属性ではありません。
  • ウ: URLのスキームが https のときだけ cookie が送出されるため正解です。
  • エ: パス制限は Path 属性で制御され、secure 属性の役割ではありません。

補足コラム

secure 属性は、cookie の送信を HTTPS 通信に限定することで、中間者攻撃(MITM)などによる cookie の盗聴リスクを軽減します。これにより、ユーザーの認証情報やセッション情報の安全性が向上します。なお、secure 属性だけでは JavaScript からのアクセス制限はできないため、HttpOnly 属性と併用することが推奨されます。

FAQ

Q: secure 属性が設定された cookie は HTTP でも送信されますか?
A: いいえ、secure 属性が設定された cookie は HTTPS 通信時のみ送信され、HTTP では送信されません。
Q: JavaScript から cookie を読み取れなくするにはどうすればよいですか?
A: HttpOnly 属性を設定することで、JavaScript からの cookie 読み取りを禁止できます。
Q: cookie の有効期限はどの属性で設定しますか?
A: Expires または Max-Age 属性で cookie の有効期限を設定します。

関連キーワード: cookie, secure属性, HTTPS, HTTP, Webセキュリティ, セッション管理, HttpOnly, Path属性
← 前の問題へ次の問題へ →

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