今年中には正式版がリリースされると目されているFirefox 3.5だが、現時点でリリースされている3.5b4のベータバージョンで確認したところ、browser.identity.ssl_domain_display の初期設定値が「1」となるようだ。つまり、たとえば、楽天のログイン画面に移行すると、アドレスバー*1が図1のようになる。
これにより、パスワードやクレジットカード番号などを入力する前に、今訪れているサイトが本物であるかどうかを、アドレスバーに表示されるドメイン名で確認できるようになる。
この機能はFirefox 3.0でも実装されていたが、初期設定ではオフにされていた。従来は図2のように、青くなるだけでドメイン名は表示されず、クリックしてドメイン名を確認する必要があった(URL中のドメイン名を確認してもよいが、慣れない人には不確実だった)。
この機能は、日本の地域型ドメイン名にも対応しており*2、たとえば、東京都江戸川区のサイトを訪れると、図3のように、「city.edogawa.tokyo.jp」と正しくドメイン名が表示される。
江戸川区立図書館のサイトは「www.library.city.edogawa.tokyo.jp」にあり、URLでは若干判別しにくいという問題があったが、図4のように、ドメイン名「city.edogawa.tokyo.jp」だけが表示され、区の管轄下にあるサイトであることを確認しやすくなっている。
一方、Internet Explorer はどうなっているかというと、Internet Explorer 8 の新機能として、アドレスバーのURL表示でドメイン名を強調表示する機能が搭載された。図5のように、URL中のドメイン名以外の部分が灰色で表示され、ドメイン名部分だけが黒で表示される。(これは http:// のページでもそのように機能する。)
ところが、これは日本の地域型ドメイン名に対応していない。図6のように、江戸川区のサイトが「tokyo.jp」というドメイン名として扱われてしまっている。したがって、Internet Explorer 8 のこの機能はまだオススメできるものではない。*3
これがなぜまずいかというと、地域型ドメイン名は、行政機関にだけ割り当てられるわけではなく、その地域の個人その他にも割り当てられているからだ。悪意ある者に、個人で地域型ドメイン名を取得され、その地域の地方公共団体のフィッシングサイトが仕掛けられる可能性があるので、この方法を本物サイトの見分け方としてオススメすることはできない。
たとえば、図7は、東京都大田区にある病院のサイトであるが、Internet Explorer 8 では「tokyo.jp」のドメインとして表示されており、これでは、大田区のサイト(city.ota.tokyo.jp)と区別がつかないし、東京都のサイト(metro.tokyo.jp)との区別もつかない。
これが、Firefox 3.5では図8のように表示される。
というわけで、Firefox 3.5が普及した暁には、自分が使うサイトのドメイン名を覚えておけば、重要な情報を入力する前に(重要な情報を入力する画面は https:// のページになっているはず*4だから)アドレスバーのこの部分で本物サイトであることを確認できるようになる。
また、従来より、EV SSLが使われているサイトでは、図9のように緑色で会社名が表示されるようになっているので、会社名を覚えていれば確認できる。緑なら会社名、青ならドメイン名で確認するという、単純な手順でフィッシング詐欺から防御できるようになる。
楽天やYahoo! JAPANのようなフィッシングのターゲットになりやすいサイトが、現時点でEV SSLを導入していないわけだが、ドメイン名自体がブランドとして既に周知されたサイト(しかも co.jp のドメイン)では、EV SSLを使わずとも、このようにして本物サイトを確認できるので、EV SSLを導入しないというのも正当な選択であると言える。(Firefox 3.5が普及した暁には。)
同様に、go.jp のドメインや、lg.jp のドメイン、ac.jp のドメイン*5でも、EV SSLを導入しない(EVでないSSL*6を使用する)選択も正当であると言える。(Firefox 3.5が普及した暁には。)
図8の例で、「ebara-hp.ota.tokyo.jp」というドメイン名を見たときに、行政機関(大田区)の管理下なのかそうでないのかは、そう簡単にはわからない。「city」等が含まれていなければ行政機関でないと判別できるかというと、そうでもないからだ。たとえば、新宿区立図書館の場合は、図10のように、「library.shinjuku.tokyo.jp」のドメイン名でサーバを設置している。
「city」の他に何が行政機関なのかという点について、都の「metro」、県の「pref」、町の「town」、村の「vill」が該当することについては、JPRSの「属性型(組織種別型)・地域型JPドメイン名登録等に関する技術細則」に書かれているが、「library」についての記述が見当たらない。
ならば、「library.shinjuku.tokyo.jp」は、個人でも取得できるドメイン名として取得したものなのだろうか。しかし、whoisでこのドメイン名を調べると、「組織種別」が「地方公共団体の下部組織」となっている。JPRSの「属性型(組織種別型)・地域型JPドメイン名登録等に関する技術細則」を見ても、どうもよくわからない。
そもそも、こんな複雑なドメイン構造を一般の人々に理解せよというのは無理がある。ドメイン名は、セキュリティの拠り所として近年益々その重要性が高まっているのであるから、JPRSなり、JPNICが、一般のWeb利用者向けにドメイン名の読み取り方を講説してしかるべきと思うが、そのような活動は行われていない。
加えてこの際に言えば、政令指定都市についての地域ドメイン名は破綻している。
札幌市のドメイン名は、「city.sapporo.hokkaido.jp」ではなく「city.sapporo.jp」であるが、姫路市のドメイン名は、「city.himeji.jp」ではなく「city.himeji.hyogo.jp」であり、「www.city.himeji.jp」というサイトが存在したときに、それが行政機関のサイトであるか否かは、その地方公共団体が政令指定都市であるか否かを知っていなければならない。
そして、2003年のさいたま市誕生以降、静岡市、堺市、新潟市、浜松市、岡山市が新たに政令指定都市となったのだが、県名と一致しない浜松の hamamatsu.jp と、堺の sakai.jp のドメイン名は、他の者によって既に取得されてしまっていた。
今後も同様に、政令指定都市移行を計画している神奈川県相模原市用の sagamihara.jp、兵庫県姫路市用の himeji.jp の各ドメイン名でも同様の問題が生ずるであろう。
私は、日本の地域型ドメイン名は、アプリケーションレイヤのセキュリティ機構の動向を見誤った、設計上の失敗であり、廃止するべきであると思う。地方公共団体は lg.jp ドメインに移行したらいいし、その他の地域ドメインは数が少ないので、廃止も可能なのではないか。
JPNICの「2007年度インターネット資源の管理体制と活用に関する調査研究」を眺めてみたが、ドメイン名についてセキュリティに関する検討が全くなされていない。
*1 Firefoxの用語では「ロケーションバー」。
*2 これが解決できたということは、Cookie Monster問題も解決されているのではないかと思われるが、まだ確認していない。誰か確認した?
*3 私がIE 8のこの機能の存在を知ったときは、もうIE 8正式版が出る直前の段階だった。ベータテストの早い時期に気付いていれば、バグ報告をMicrosoft社に届けることでこのような事態は防げたかもしれないわけで、悔やまれる。ずいぶん時間が経ってしまったが、Microsoft社の知人に通報しておこうと思う。
*4 そうなっていないサイトは使わないようにする。また、入力画面を https:// にしているサイトであっても、通信路上の改竄攻撃によって、http:// ページに誘導されることもあるので、いずれにせよ https:// であることを確認せずに入力してはいけない。
*5 ac.jp のドメインでは、学生が自由にコンテンツを作れてしまうサーバが同居し得るので、ドメイン名だけで確認することに危険性が生じ得る。SSLのサーバ証明書が学生では取得できないようになっているならば、SSL接続できるWebサーバの全てで学生のコンテンツを作成できないように管理すればよく、学生を信用できないならば、そのようにするべきである。(EV SSLを用いる場合も同様。)
*6 もちろん、オレオレ証明書は論外。格安の証明書を買えばいい話。
もう何をいっても無駄。そもそも「ドメイン名は、セキュリティの拠り所」になりえないでしょ。