Pages Menu
TwitterRssFacebook
Categories Menu

Posted by on 6月 29, 2005 in ハッキング | 0 comments

セッションハイジャックとは?(2)

HTTPの通信で、ある特定のセッションと、別のセッションを、同じユーザのセッションとして紐付けるために使われるのが、Cookie(セッションID)でしたね。

会員ページなどにログインした時には、その時にWebサーバから渡されたCookieを毎回Webサイトに渡すことで、ログイン状態を継続できるわけです。

でもそのCookieが盗まれた場合、第三者がそのCookieを使って、あなたになりすまして接続をすることができます。

これがセッションハイジャックです。

それでは、Cookieはどうやって盗まれるのか?

代表的な例を見てみましょう。

■推測される

ユーザに渡されるCookieは、秘密情報なので、他人に推測されやすい文字列であると危険です。

でも、Webサイトによっては、Cookieをユーザのメールアドレスにしていたりすることもあります。

その場合、メールアドレスは基本的には秘密にしている情報ではないため、簡単に外部に漏れてしまう可能性がありますね。

または、Cookieが「1001」「1002」「1003」のように、連番になっている場合も、簡単にCookieが推測できてしまうので危険です。

また、ブルートフォース攻撃によって手当たり次第にCookieを推測されてしまう場合もあり得ますので、あまり短いCookieも問題だと思います。

■盗聴される

会社のネットワークなどでは、パケットキャプチャソフトをネットワーク上に仕込んでおくことで、ネットワークを流れる情報を盗聴することが出来る場合があります。

でも、HTTPSなどで暗号化されているときは、Cookieの情報も基本的には解読できないため、安全だといえるでしょうね。

■スパイウェア、ウイルスによる漏えい

上で述べているように、HTTPSを使って通信している時は、通信上ではCookieは暗号化されているので安心です。

でも、自分のローカルディスク上には、普通は暗号化されないで、そのままの形で保存されています。

もしスパイウェアやウイルスで、Cookieの情報をインターネット上に流すような動作をするものに感染してしまった場合は、簡単に第三者にCookieがばれてしまいます。

このようなセッションハイジャックの防ぎ方ですが、Webサーバー側がまずい場合も多々あるので、個人だけで対策するのはなかなか難しいんですが、まずはやはりスパイウェアやウイルス対策をすること。

それから不要なCookieは定期的に消した方がいいですね。

前にも紹介しましたが、以下のようなツールを使うのも良いと思います。


■ IECookiesView