2011-09-27

クッキーモンスター

「オ゛ー、ミ゛ー ラ゛フ゛ ク゛ッキ゛ー オ゛ー イ゛ェア゛」
~都道府県ドメインについて、クッキーモンスター

「ちょっと待てや」
~都道府県ドメインについて、高木 浩光

高木浩光@自宅の日記 - JPRSに対する都道府県型JPドメイン名新設に係る公開質問

以下は素人丸出しの説明である。

cookieは、今日のWebサイトにとって、非常に重要であると同時に、プライバシー、セキュリティ上、気を付けなければならない機能でもある。あるWebサイトによって設定されたcookieが、全く別のWebサイトによって読み込まれることがあってはならない。このため、cookieにはsame origin policyがある。異なるドメイン間では、基本的にcookieを共有できないのだ。example.comで設定されたcookieは、example.orgからは読み込むことはできない。

ところで、今私がexample.comというドメインを取得し、Webサイトを運営したいとする。この場合、第三レベル以降のドメインは、自由に名付けることができる。自作の音楽は、music.example.comで公開し、ブログはblog.example.comで公開するとしよう。この二つのドメインは、異なるものであるから、cookieは共有できない。しかし、このドメインは、どちらもexample.com下にあるものであり、私の所有するドメインであり、私の運営するWebサイトである。したがって、このふたつのドメイン間でcookieを共有できたとしても、セキュリティ上の問題にはならない。

そこで登場するのが、super cookieである。このcookieは名前の通りスーパーなクッキーなので一部ドメインを指定しないことができる。たとえば、.example.comを指定すれば、music.example.com、blog.example.comまた他のあらゆる、「任意.example.com」で共有することができる。

しかし、もしこのスーパーなcookieを、.comに対して指定すればどうなるだろうか。この場合、私の所有するexample.comだけではなく、トップレベルドメインがcomでさえあれば、どのドメインからでもスーパークッキーの読み書きができる。これはまずい。

もちろん、問題はcomだけではない。トップレベルドメインはもっとたくさんある。では、トップレベルドメインに対するスーパークッキーを禁止すれば、問題は解決するのだろうか。

例えば、example.co.jpは、co.jpまでがパブリックなサフィックスである。トップレベルドメインの禁止だけでは、この問題を解決できない。

問題の解決方法とは、パブリックなサフィックスのリストを作成し、スーパークッキーの指定が、そのリストに該当するときは、使用を禁止することである。これは、クソなサイトからユーザーを守るためにも、ブラウザー側で対処する必要がある。

今、都道府県のサブドメインを導入するということは、日本全国の47都道府県の分だけ、パブリックサフィックスが相当に増えることになる。もし市町村も導入ということになれば、1722市町村。もちろん、これはブラウザーをアップデートすることで対処しなければならない。誰がやるというのか。アップデートされないブラウザーはどうしようもない。

明らかに、極東の小国は非常に重要なので、時にはこんな乱暴も許されるのだろう。

No comments: