情報処理安全確保支援士 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攻撃対策

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

