この概念が出た関連問題

この試験の対策ガイド

情報処理安全確保支援士試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は ウ

解説

CookieのSecure属性は、Webサーバが発行するCookieに付与できる属性の一つで、これを設定すると、そのCookieは通信が暗号化されている場合(URLのスキームがhttps、すなわちHTTPS通信)のときだけ、WebブラウザからWebサーバへCookieが送出されるようになります。逆に言えば、暗号化されていないhttp通信ではCookieが送られなくなるため、通信経路上での盗聴によってCookie(セッションIDなどの重要情報を含む)が漏えいするリスクを低減できます。選択肢cの「URL内のスキームがhttpsのときだけ、WebブラウザからCookieが送出される」が、Secure属性を設定したときの動作として正しく、正解です。他の選択肢を確認すると、有効期間を過ぎるとCookieが無効になるのはExpires/Max-Age属性に関する動作、JavaScriptによるCookieの読出しが禁止されるのはHttpOnly属性の動作、URLパスとCookieのパスのプレフィックスがマッチするときだけCookieが送られるのはPath属性の動作であり、いずれもSecure属性とは別の属性の機能です。各Cookie属性(Secure・HttpOnly・Path・Domain・Expires)の役割を区別して覚えましょう。

なぜ他の選択肢は違うのか

選択肢 ア
「Cookieに設定された有効期間を過ぎると、Cookieが無効化される」は、Expires属性やMax-Age属性に関する動作です。Cookieの有効期限を制御する属性の話であり、HTTPS通信時だけCookieを送出するSecure属性の動作とは異なります。Cookieの有効期限を制御するExpires属性やMax-Age属性に関する動作であり、HTTPS通信時だけCookieを送出するSecure属性の動作とは異なる属性の機能です。
選択肢 イ
「JavaScriptによるCookieの読出しが禁止される」は、HttpOnly属性に関する動作です。HttpOnly属性は、スクリプトからのCookieへのアクセスを禁止してクロスサイトスクリプティングによるCookie窃取を防ぐもので、HTTPS時だけ送出するSecure属性とは異なります。スクリプトからのCookieへのアクセスを禁止してXSSによるCookie窃取を防ぐHttpOnly属性の動作であり、HTTPS時だけ送出するSecure属性とは異なる属性です。
選択肢 エ
「URL内パスとCookieに設定されたパスのプレフィックスが一致するときだけCookieが送出される」は、Path属性に関する動作です。Cookieをどのパスのリクエストに送るかを制御する属性であり、HTTPS通信時だけ送出するSecure属性とは異なります。Cookieをどのパスのリクエストに送るかを制御するPath属性に関する動作であり、HTTPS通信時だけCookieを送出するSecure属性とは異なる属性の機能です。

解くときのポイント

CookieのSecure属性=HTTPS(暗号化)通信のときだけCookieを送出し、平文通信での盗聴漏えいを防ぐ。混同注意:HttpOnly(スクリプトからの読出し禁止)、Path(送出パスの制御)、Expires/Max-Age(有効期限)。