知っ得!セキュワード

クッキー(Cookie)

作成者: Admin|Feb 6, 2026 5:29:26 AM

クッキー(Cookie)とは、Webサイトの閲覧時に端末上のWebブラウザに保存されるテキストデータのこと。ユーザーのログイン状態や設定内容などを維持するためのしくみで、ほとんどのWebサイトで使われています。便利な反面、扱い方を誤ると不正アクセスや情報漏えいの原因にもなります。


例えば、Webサイトにログインすると、サーバーは「この人は認証済みです」という情報にアクセスするためのIDをクッキーとして送信し、Webブラウザはその値を保存します。次のページを開くとき、そのクッキーをWebブラウザがサーバーに送り返すことで、再びログイン操作をすることなく利用できるしくみです。


しかし、もしそのクッキーを第三者に盗まれたらどうなるでしょうか。攻撃者は本人になりすまして、同じ権限で操作できてしまうかもしれません。これを防ぐために、クッキーにはいくつかのセキュリティ設定を行うことが重要です。


まず大切なのが、「Secure属性」と「HttpOnly属性」の設定です。Secure属性を付けると、クッキーはHTTPS通信時にしか送信されません。つまり、暗号化されていない通信経路から盗み見られる心配を減らせます。


また、HttpOnly属性を付けると、JavaScriptからクッキーの内容を取得できなくなります。これにより、XSS(クロスサイトスクリプティング)攻撃によるクッキー窃取を防ぐ効果があります。


さらに、近年は「SameSite属性」も欠かせません。これは、外部サイトからのリクエストにクッキーを送るかどうかを制御するしくみです。「Lax」や「Strict」といった値を設定することで、CSRF(クロスサイトリクエストフォージェリ)攻撃のリスクを減らせます。


もう一つの視点として、クッキーにどんな情報を保存するかにも注意が必要です。個人情報やパスワードなどの機密データを直接入れてはいけません。保存が必要な場合は、暗号化やトークン化などの対策を組み合わせましょう。また、有効期限を適切に設定し、長期間放置されないようにすることも基本です。


クッキーは小さなデータですが、その扱い方ひとつで安全性が大きく変わります。利便性を保ちながら、どの設定をどう組み合わせるか。それを考えることが、Webアプリケーションの信頼性を守る第一歩ではないでしょうか。

用語解説の監修:増井 敏克