解説:ドメイン乗っ取り問題とは何か?(1/2 ページ)

6月末に一部で話題になった、管理の不備に起因するドメイン乗っ取り問題の本質はどこにあるのか。DNSの仕組みを振り返りながら、改めて解説しよう。

» 2005年08月12日 11時00分 公開
[金澤喬,ITmedia]

 2005年8月4日、JPRS(日本レジストリサービス)が「DNSサーバの不適切な管理による危険性解消のための取り組みについて」という方針文書を発表した。これに関する内容はさまざまなメディアで取り上げられたので目にされた方も多いと思う(関連記事)

 しかし、この話題の本質は意外と正しく理解されていないようだ。そこで、この問題についてもう少し掘り下げてみたいと思う。

何が起きたのか?

 インターネットでは、ドメイン名によってアクセス先を指定し、内部的にはそのドメイン名がIPアドレスに変換されて通信ができるようになっている。このときに、ドメイン名とIPアドレスの変換を行うのが「DNSサーバ」である。

 このDNSサーバがきちんと動いているからこそインターネットは正しく動作するわけだが、しかし、そのDNSサーバが悪意のある第三者によって嘘をつくようになったらどうだろう。今回の問題の本質は、まさにこの点にある。

 ことの発端は、中京大学の鈴木氏によって発見されたVISAジャパン(visa.co.jp)問題だろう。経緯は、彼によって開設されたサイトで詳しく説明されているのでそちらを参照いただきたいが、要は、間違ったドメインの管理・運用のために、そのドメインが乗っ取られる可能性があるということを示したものだ(関連記事)

 DNSに詳しい読者であれば、この問題は以前から話題になっているlameのことであるということはご理解いただけると思うが、ここであらためて簡単に復習してみよう。

DNSサーバの動作を確認してみよう

 DNSサーバは、それぞれが自分が扱う範囲(ゾーン)を持っており、上位と下位で連携をしながら動作する。総論的なことは他の記事を参照していただくとして、ここでは肝となる部分だけを抜き出して説明してみよう。

図1 図1●DNSの動作

 図1の@は、example.jpというドメインをインターネットからアクセス可能にするために必要な手続きである。「NS」とはネームサーバ(DNSサーバを示すタイプ指定)のことで、その文字に続く部分でexample.jpドメインに関する情報を保持しているDNSサーバの名前を上位であるJPドメインのDNSサーバに登録する。

 次に、Aのように、JPドメインのDNSサーバに対して「www.example.jpのIPアドレスを教えてほしい」というリクエストが来た場合に、JPドメインのDNSサーバは自身のデータベースを検索して「example.jpドメインについてはns.example.jpかns1.example.comに聞いてください」という答えを返す。@の手続きが必要なのは、このためだ。

 問い合わせをした側は、JPドメインのDNSサーバから返ってきた情報から、Bのようにns.example.jpかns1.example.comに対して「www.example.jpのIPアドレスを教えてほしい」というリクエストを継続する。通常なら、ここで「www.example.jpのIPアドレスはxxx.xxx.xxx.xxxです」という答えが返り、一件落着である。

なぜドメインが乗っ取られるのか?

 おそらく多くの場合、自分が使っているドメイン、この例ではexample.jpに対してはかなりの割合できちんとした管理がされていると思う。しかし、ここでのns1.example.comのようなケースはどうであろうか?

 DNSサーバのセカンダリとして他の事業者のサービスを利用するケースは珍しくない。普通なら相手を信用して、初期の契約から一貫して継続利用するのが一般的だろう。逆に言うと、定期的に「大丈夫か?」という確認を入れることのほうが珍しいと思う。

 だがここに、落とし穴かあった。

 サービス提供会社の倒産。不手際。原因はともかく、何らかの理由でexample.comドメインの運用が停止し、example.comというドメイン名の有効期限が切れたとしよう。すると、多くの場合、一定の猶予期間もしくは削除保留期間を経て他者によるexample.comドメイン名の登録が可能になる。もちろん、そのことを察知し、example.comに関する設定をexample.jpドメインの管理者が削除するなりの対処をすれば問題は起こらないが、実際には通知がなければそのままということになる。

 このとき、example.jpドメインの管理は依然としてns.example.jpとns1.example.comであるという情報がJPドメインのDNSデータベースに登録されたままになっている状態で、example.comドメイン名を悪意のある第三者が登録したとしよう。悪意のある第三者は、当然のようにns1.example.comというDNSサーバを独自に立て、example.jpドメインへのアクセスの一部を本来とは別のサイト、たとえばフィッシングサイトへと誘導する。

 DNSの仕組みでは、DNSサーバにおいてプライマリとセカンダリの区別はなく、すべて均等にアクセスされる。このため、このケースのように2台のDNSサーバで運用されていれば2分の1の確率でアクセスが奪われることになる。3台体制なら3分の1、5台体制なら5分の1の確率だ。

発覚のしにくさ、第三者による調査の難しさ

 この問題のいやらしい部分は、問題自体がすぐには発覚しにくいという点にもある。正しいIPアドレスを返すか否かは別にして、DNSという仕組み的には、どちらの答えも正しいものだからだ。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.