あらためて言うまでもありませんが,インターネットは,とっても便利なものですね。でも,インターネットには,ウイルス,情報漏洩,なりすましによる詐欺など,様々な危険が潜んでいます。「危険の存在を知り,十分に注意して使いましょう!」とはよく言われることですが,存在を知っているだけでは,危険から身を守ることができません。危険が生じる仕組みを知っておく必要もあります。
今回は,インターネットで使われている「Cookie(クッキー)」の仕組みを知るための実験をやってみます。Cookieは,便利なものなのですが,ちょっと危険なものでもあります。
Cookieの実体は,どこにある?
はじめに,Cookieとは何かを,簡単に説明しておきましょう。
何らかのWebページを閲覧すると,Webサーバーが皆さんのパソコンのメモリーやハードディスクに情報を書き込むことがあります。書き込むデータは,どのサイトにいつアクセスしたかという「履歴」や,一度読み込んだHTMLや画像などの情報を再アクセスするときに高速に読み出すための「キャッシュ」などがあります。今回のテーマの「Cookie」も,こうした閲覧しているパソコンのメモリーやハードディスクに書き込まれるデータの一種です。
メモリーに書き込まれたCookie(一時的なCookie)は,Webページの閲覧が終われば自動的に消去されます。一方,ハードディスクに書き込まれたCookie(有効期限付きのある程度永続的なCookie)は,そのまま残り,次に同じWebページを閲覧した際に,Webサーバーによって参照されます。今回の実験は,後者のCookieを対象としています。
Cookieは,便利なものです。Webページの種類によって異なりますが,Cookieには,ユーザーの識別情報やアクセスの履歴などが記憶されています。Cookieのおかげで,同じページを閲覧する際に,毎回ユーザー情報を入力しなくて済みます。ショッピング・サイトの買い物カゴに商品を追加したままの状態でWebブラウザを終了しても,後で同じサイトにアクセスすれば買い物カゴの記録が残っています。
ハードディスクに書き込まれたCookieは,閲覧したWebページごとに独立したファイルとして保存されています。最初の実験として,このファイルを見てみましょう。ここでは,Windows XPを使っているものとして話を進めます。
C:\Documents and Settingsというフォルダの中に,ユーザー名のフォルダがあるでしょう。私の場合は「矢沢久雄」というフォルダです。さらに,このフォルダの中にCookiesというフォルダがあるはずです。この中に,Cookieの実体であるいくつかのファイルがあります。皆さんのパソコンで,Cookieの存在を確認してください(図1)。
| |
図1●これらのファイルがCookieの実体だ [画像のクリックで拡大表示] |
現在保存されているCookieを削除する
便利なCookieですが,危険性もあります。Cookieの実体は,ファイル名の拡張子が.txtとなっていることからもわかるように,単純なテキストファイルです。ファイルをダブルクリックすれば,メモ帳(Notepad.exe)などのテキストエディタが開き,内容を見ることができます(やってみよう)。
Webページによっては,Cookieの内容を暗号化していない場合もあります。また,Cookieがあるだけで「ユーザーはログイン済み」と判断してしまうWebサイトもあります。したがって,Cookieの内容を盗まれると,悪意のある誰かが,皆さんになりすましてWebページを閲覧することが可能になる場合があるのです。
Cookieのファイル名には,「矢沢久雄@nikkeibp.co[1].txt」のようにWebページのURLが含まれているので,自分が閲覧したWebページがわかってしまうというのも,ちょっと嫌な感じですね。Webブラウザ(ここではInternet Explorer 6.0を使っています)には,Cookieを削除したり,Cookieの書き込みに関する設定を行う機能があります。差し障りのない範囲で,やってみましょう。
まず,Cookieの削除です。Cookieを削除しても問題ないという人(もしくは,ぜひ削除してしまいたい人)だけ,実験をしてください。Webブラウザの[ツール]メニューから,「インターネットオプション」を選択し,表示されたウィンドウの[全般]タブページを見てください。
中段左側に[Cookieの削除]というボタンがあるはずです。このボタンをクリックすれば,現在保存されているCookieが削除されます(図2)。やってみた人は,C:\Documents and SettingsにあるCookiesフォルダの中が空になったことを確認してください。
|
|
図2●現在保存されているCookieを削除する |
Cookieの書き込みを禁止する
[Cookieの削除]ボタンをクリックしたことで,現在保存されているCookieは削除されましたが,Cookieの書き込みを禁止したわけではありません。またWebページを閲覧すれば,今まで通りにCookieが書き込まれます。
Cookieの書き込みを禁止したい場合は,同じウィンドウの[プライバシー]タブページにある[詳細設定]ボタンをクリックします。「プライバシー設定の詳細」というタイトルのウィンドウが表示されたら,「自動Cookie処理を上書きする」のチェックボックスをクリックし,その下にある「ファーストパーティのCookie」と「サードパーティのCookie」で,「ブロックする」をクリックして選択状態にしてから,[OK]ボタンをクリックします。
ファーストパーティとは,ユーザーが直接閲覧しているドメイン(例えば,nikkeibp.co.jp)のことです。サードパーティとは,そのWebページにあるドメインではないドメイン(例えば,example.comなど,広告主やアクセス情報収集事業者などのドメインのことが多い)です(図3)。
|
|
図3●Cookieの書き込みを禁止する |
いくつかWebページを閲覧して,Cookieが書き込まれないことを確認してみましょう。どうやって確認すればよいか,わかりますね。Webページを閲覧しても,C:\Documents and SettingsのCookiesフォルダの中が空のままであることを確認すればよいのです。
Cookieをすべて消去し,今後もCookieが書き込まれないように設定しました。これで,Cookieの内容を盗まれる不安はありません(もはやCookieがないのですから)。めでたし! めでたし!……と言っていいのでしょうか? 不安が解消された代わりに,便利さを失ってしまったのです。
実験として,いつも皆さんが利用しているショッピング・サイトにアクセスしてみてください。かつては「○○○○さん,ようこそ」とか「○○○○さんに,お勧めの商品があります」といったメッセージが表示されたのに,全く初めてアクセスしたユーザー扱いになってしまいます(ログインすれば,元に戻る場合がほとんどです)。これはWebサイトがCookieを利用して「アクセスしてきているのはどのブラウザなのか」を判定しているためです。
Cookieの書き込みタイミングを確認する
いよいよ,最後の実験です。書き込みを禁止しなければ,Webページを閲覧する際に自動的にCookieが書き込まれることがあるわけですが,この「自動的」というのが,何となく気持ちよくありませんね。
Cookieが書き込まれる前に,メッセージが表示されるようにしてみましょう。そうすれば,「おっ! このWebページは,Cookieを書き込もうとしているんだな」ということがわかります。そのためには,先ほど示した「プライバシー設定の詳細」ウィンドウの「ファストパーティのCookie」と「サードパーティのCookie」で,「ダイアログを表示する」をクリックして選択状態にしてから,[OK]ボタンをクリックします。やってみよう(図4)。
|
|
図4●Cookieの書き込み時にメッセージを表示させる |
設定が完了したら,お好きなWebページをアクセスしてみましょう。図5に示した小さなウィンドウが開いて,その中にメッセージが表示されるはずです。筆者は,ITproのトップページにアクセスしてみました。ITproのトップページが,筆者のパソコンにCookieを書き込もうとしているのがわかります。
|
|
図5●書き込まれようとしているCookieの内容 |
ここで,[Cookieを許可]ボタンをクリックすれば,Cookieが書き込まれます。[Cookieをブロック]ボタンをクリックすれば,Cookieは書き込まれません。[詳細情報]ボタンをクリックすれば,書き込まれようとしているCookieの内容を見ることができます。「このWebサイトからのCookieにすべてこの設定を適用する」にチェックマークを付けておけば,WebサイトごとにCookieの許可またはブロックを設定できます。
[Cookieを許可ボタン]を押してみましょう。C:\Documents and SettingsのCookiesフォルダを見れば,Cookieの実体であるファイルが書き込まれたことがわかります。
それでは,今回の実験のまとめです。Cookieは,便利なものですが,危険なものでもあります。便利さと安全性のどちらを優先するか? この判断は,皆さんにおまかせします。いずれにしても,インターネットにある危険の存在と,その仕組み,さらに危険を回避する方法を知っておくことが重要なのです。
それでは,次回もやってみよう!
|