情報処理安全確保支援士 2019年 秋期 午前2 問11
問題文
CookieにSecure属性を設定しなかったときと比較した、設定したときの動作として適切なものはどれか。
選択肢
ア:Cookieに設定された有効期間を過ぎると、Cookieが無効化される。
イ:JavaScriptによるCookieの読出しが禁止される。
ウ:URL内のスキームがhttpsのときだけ、WebブラウザからCookieが送出される。(正解)
エ:WebブラウザがアクセスするURL内のパスとCookieに設定されたパスのプレフィックスが一致するときだけ、WebブラウザからCookieが送出される。
🔒 解説は解答すると表示されます
CookieのSecure属性【午前2解説】
正解の理由
ウ: URL内のスキームがhttpsのときだけ,WebブラウザからCookieが送出される。
Secure属性を付与したCookieは、通信の安全性を保つためにHTTPS接続時のみブラウザからサーバへ送信されます。HTTP接続では送信されず、盗聴や改ざんのリスクを低減します。これがSecure属性の本質的な動作です。
Secure属性を付与したCookieは、通信の安全性を保つためにHTTPS接続時のみブラウザからサーバへ送信されます。HTTP接続では送信されず、盗聴や改ざんのリスクを低減します。これがSecure属性の本質的な動作です。
解法ステップ
- Cookieの属性の役割を整理する(Secure, HttpOnly, Path, Expiresなど)。
- Secure属性が通信経路の暗号化(HTTPS)に関係することを確認する。
- 選択肢の内容を属性の役割と照らし合わせて検証する。
- HTTPS通信時のみ送信されるという特徴を持つ選択肢を選ぶ。
選択肢別の誤答解説
- ア: 有効期間の過ぎたCookieは無効化されるが、これはExpiresやMax-Age属性の役割でありSecure属性とは無関係です。
- イ: JavaScriptによるCookieの読み出し制限はHttpOnly属性の役割であり、Secure属性ではありません。
- ウ: 正解。Secure属性はHTTPS通信時のみCookieを送信する制約を付けます。
- エ: パス属性はCookieの送信対象パスを制限しますが、Secure属性とは別の機能です。
よくある誤解
Secure属性はJavaScriptのアクセス制限やCookieの有効期間には影響しません。パス属性の制約とも異なり、通信経路の安全性に関わる設定です。
補足コラム
Secure属性は、Cookieの送信をHTTPS通信に限定することで、中間者攻撃(MITM)などによるCookieの盗聴リスクを軽減します。これに対し、HttpOnly属性はJavaScriptからのアクセスを禁止し、クロスサイトスクリプティング(XSS)攻撃対策に役立ちます。両者はセキュリティ強化の異なる側面を担っています。
FAQ
Q: Secure属性が設定されたCookieはHTTPでも送信されますか?
A: いいえ、Secure属性が設定されたCookieはHTTPS通信時のみ送信され、HTTPでは送信されません。
A: いいえ、Secure属性が設定されたCookieはHTTPS通信時のみ送信され、HTTPでは送信されません。
Q: Secure属性はJavaScriptからのアクセスを制限しますか?
A: いいえ、JavaScriptからのアクセス制限はHttpOnly属性の役割であり、Secure属性は通信経路の安全性に関わる設定です。
A: いいえ、JavaScriptからのアクセス制限はHttpOnly属性の役割であり、Secure属性は通信経路の安全性に関わる設定です。
関連キーワード: Cookie, Secure属性、HTTPS, Webセキュリティ、HTTP通信、HttpOnly属性、パス属性、クロスサイトスクリプティング、MITM攻撃対策

\ せっかくなら /
情報処理安全確保支援士を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

