経路のセキュリティと同時にセキュアなセッション管理を

  • SSL/TLS でクッキーを使うときは secure 属性を付けるのを基本とする –

http://www.ipa.go.jp/security/ciadr/20030808cookie-secure.html

経路のセキュリティと同時にセキュアなセッション管理を行う必要性について

なぜクッキーを secure モードで発行する必要があるのか?

同じ Web サーバーに SSL/TLS 通信で見るページ(https://…)と SSL/TLS 通信を使わないで見るページ(http://…)が混在している場合、secure モードでない通常のクッキーは、SSL/TLS による経路のセキュリティ保護を受けることができないから

対策

セッション管理のためのクッキーは、 secure 属性付きで発行しましょう。

Set-Cookie: id=ipa; path=/; secure

方法 A: すべてのページを https://…にしてセッション管理用のクッキーに secure 属性をつける
方法 B: 2つのクッキーを使い分ける

サイトの設計上、http://… の画面と https://… の画面をまたがってセッション管理を行う必要がある場合は、2つのクッキーを発行し、一方を「secure 属性なし」にし、一方を「secure 属性付き」にします。

このとき、暗号化で保護が必要な画面(https:// を使うことにした画面)に対して、http:// でアクセスされても情報を表示しないように作る必要があります。そうしないと、攻撃者が、盗聴で盗み出した http:// 用のクッキーを使って、重要情報にアクセスできてしまうからです。