(57)【特許請求の範囲】
【請求項１】
所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報とを記憶する記憶手段と、
ネットワーク上の攻撃の対象となった装置のIPアドレスまたはドメイン名を検索のキーとして前記第１の情報を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名と一致するIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得する検索手段と、
を備えたことを特徴とするトレースバック装置。
【請求項２】
所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報とを記憶する記憶手段と、
前記第１の情報が示すIPアドレスまたはドメイン名のハッシュ値を算出する算出手段と、
攻撃元のIPアドレスの追跡の依頼元である装置から、ネットワーク上の攻撃の対象となったIPアドレスまたはドメイン名のハッシュ値を受信するハッシュ値受信手段と、
前記受信手段が受信したIPアドレスまたはドメイン名のハッシュ値を検索のキーとして、前記算出手段が算出したハッシュ値を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名のハッシュ値と一致したハッシュ値を算出する元となったIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得する検索手段と、
を備えたことを特徴とするトレースバック装置。
【請求項３】
前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記攻撃の対象となった装置のIPアドレスまたはドメイン名を示す第３の情報を送信する送信手段をさらに備えたことを特徴とする請求項１に記載のトレースバック装置。
【請求項４】
前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記攻撃の対象となった装置のIPアドレスまたはドメイン名のハッシュ値を送信する送信手段をさらに備えたことを特徴とする請求項２に記載のトレースバック装置。
【請求項５】
前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記第１の情報および前記第２の情報の取得を要求する要求情報を送信する送信手段と、
前記要求情報を受信した装置から送信された前記第１の情報および前記第２の情報を受信する受信手段と、
をさらに備えたことを特徴とする請求項１または請求項２に記載のトレースバック装置。
【請求項６】
前記記憶手段はさらに、検索時刻を記憶し、
前記検索手段はさらに、取得した前記第２の情報が示すIPアドレスを検索のキーとして、攻撃時刻以前の前記検索時刻に対応した前記第２の情報を検索し、一致するIPアドレスを示す前記第２の情報に対応した前記第１の情報を取得する
ことを特徴とする請求項１に記載のトレースバック装置。
【請求項７】
前記検索手段が取得した前記第１の情報を他のトレースバック装置へ送信する送信手段と、
複数の他のトレースバック装置から前記第１の情報を受信する受信手段と、
前記受信手段が受信した複数の前記第１の情報の中から、共通するIPアドレスまたはドメイン名を示す前記第１の情報を抽出する抽出手段と、
をさらに備えたことを特徴とする請求項６に記載のトレースバック装置。
【請求項８】
ネットワーク上の攻撃の発信元のIPアドレスを追跡するトレースバックを実行する複数のトレースバック装置と、当該トレースバック装置と通信を行うサーバとを備えたトレースバックシステムであって、
前記トレースバック装置は、
所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報と、検索時刻とを記憶する記憶手段と、
ネットワーク上の攻撃の対象となった装置のIPアドレスまたはドメイン名を検索のキーとして前記第１の情報を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名と一致するIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得し、取得した前記第２の情報が示すIPアドレスを検索のキーとして、攻撃時刻以前の前記検索時刻に対応した前記第２の情報を検索し、一致するIPアドレスを示す前記第２の情報に対応した前記第１の情報を取得する検索手段と、
前記検索手段が取得した前記第１の情報を前記サーバへ送信する送信手段とを有し、
前記サーバは、
前記複数のトレースバック装置から前記第１の情報を受信する受信手段と、
前記受信手段が受信した複数の前記第１の情報の中から、共通するIPアドレスまたはドメイン名を示す前記第１の情報を抽出する抽出手段とを有する
ことを特徴とするトレースバックシステム。
【請求項９】
請求項１〜請求項７のいずれかに記載のトレースバック装置を備えたDNSサーバ。
【請求項１０】
請求項１〜請求項７のいずれかに記載のトレースバック装置としてコンピュータを機能させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上の攻撃の発信元のIPアドレスを追跡するトレースバックを実行するトレースバック装置に関する。また、本発明は、トレースバック装置を備えたDNSサーバにも関する。また、本発明は、トレースバック装置としてコンピュータを機能させるためのプログラム、およびそのプログラムを記録した記録媒体にも関する。
【背景技術】
【０００２】
詐称されたIPアドレス（Source IP）から発信される攻撃パケットに対する脅威が高まっている。そこで、詐称されたSource IPを追跡するトレースバック技術に関する研究が進められてきた。例えば、非特許文献１，２には以下のことが記載されている。パケットの監視とハッシュ値の算出とを行う専用のプローブ装置をネットワークの各所に予め設置しておく。このプローブ装置は、ネットワークを流れるパケットを監視して、パケットの変化しない箇所を取り出し、そのハッシュ値を算出する。このハッシュ値は、プローブ装置に一定期間保存される。
【０００３】
下流側にあるプローブ装置からパケット通過に関する問合せを受けた場合にプローブ装置は、下流側のプローブ装置から通知されたハッシュ値と同一のハッシュ値を持つパケットの通過の有無を回答する。そして、着信側のIPアドレス（Destination IP）に届いたパケットの通過の有無を上流のプローブ装置へ順に問い合わせることにより、詐称されたIPアドレスの追跡が行われる。
【非特許文献１】A. C. Snoeren, C. Partridge, L. A. Sanchez, C. E. Jones, F. Tchakountio, S. T. Kent, and W. T. Strayer, “Hash-Based IP Traceback”, Proceeding of Sigcomm 2001, August, 2001.
【非特許文献２】Luis A. Sanchez, Walter C. Milliken, Alex C. Snoeren, Fabrice Tchakountio, Christine E. Jones, Stephen T. Kent, Craig Partrige, and W. Timothy Strayer, “Hardware Support for a Hash-Based IP Traceback”, Proceedings of the 2nd DARPA Information Survivability Conference and Exposition (DISCEX II), pp. 146-152, Anaheim, CA, June 2001.
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、非特許文献１，２に記載されたトレースバック技術では、多数のプローブ装置をネットワークに設置するため、プローブ装置の設置にコストや時間がかかるという問題があった。また、ネットワークでは多量のパケットが送受信されるので、プローブ装置が各パケットのハッシュ値を長期間管理できず、時間の経過と共にハッシュ値が消去されてしまい、追跡が失敗するという問題があった。
【０００５】
本発明は、上述した課題に鑑みてなされたものであって、ネットワーク上のパケットを監視するプローブ装置の設置にかかるコストや時間を削減し、IPアドレスの追跡が失敗する可能性を低減することができるトレースバック装置、トレースバックシステム、DNSサーバ、プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
攻撃元の装置は、攻撃を行う前に攻撃対象の装置のドメイン名に対応したIPアドレスの検索（名前解決）をDNSサーバ等に依頼する。したがって、この検索結果に関する情報を参照し、攻撃対象の装置のドメイン名の名前解決を依頼した装置のIPアドレスを探すことによって、攻撃元の装置のIPアドレスを追跡することができる。本発明はこれを利用したものであり、その具体的な内容は以下の通りである。
【０００７】
本発明は、所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報とを記憶する記憶手段と、ネットワーク上の攻撃の対象となった装置のIPアドレスまたはドメイン名を検索のキーとして前記第１の情報を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名と一致するIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得する検索手段とを備えたことを特徴とするトレースバック装置である。
【０００８】
上記のトレースバック装置を用いることによって、ネットワーク上の各所にプローブ装置を設置する必要がなくなるので、プローブ装置の設置にかかるコストや時間を削減することができる。また、第１の情報および第２の情報の情報量は、ネットワークで送受信される全パケットの情報量よりもはるかに少量であるため、第１の情報および第２の情報を記憶可能な期間が長くなり、時間的な制約によってIPアドレスの追跡が失敗する可能性を低減することができる。
【０００９】
また、本発明は、所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報とを記憶する記憶手段と、前記第１の情報が示すIPアドレスまたはドメイン名のハッシュ値を算出する算出手段と、攻撃元のIPアドレスの追跡の依頼元である装置から、ネットワーク上の攻撃の対象となったIPアドレスまたはドメイン名のハッシュ値を受信するハッシュ値受信手段と、前記受信手段が受信したIPアドレスまたはドメイン名のハッシュ値を検索のキーとして、前記算出手段が算出したハッシュ値を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名のハッシュ値と一致したハッシュ値を算出する元となったIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得する検索手段とを備えたことを特徴とするトレースバック装置である。
【００１０】
上記のトレースバック装置は、以下の事項に対応したものである。攻撃元の装置のIPアドレスの追跡を依頼するため、攻撃の対象となった装置のIPアドレスまたはドメイン名が装置間で送受信されると、個人のプライバシーに関わる情報が送受信されることになり好ましくない。上記のトレースバック装置は、攻撃の対象となった装置のIPアドレスまたはドメイン名のハッシュ値を用いることによって、攻撃元の装置のIPアドレスの追跡を可能とするものである。
【００１１】
また、本発明のトレースバック装置は、前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記攻撃の対象となった装置のIPアドレスまたはドメイン名を示す第３の情報を送信する送信手段をさらに備えたことを特徴とする。
【００１２】
また、本発明のトレースバック装置は、前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記攻撃の対象となった装置のIPアドレスまたはドメイン名のハッシュ値を送信する送信手段をさらに備えたことを特徴とする。
【００１３】
上記のトレースバック装置は、以下の事項に対応したものである。検索手段が取得した第２の情報が示すIPアドレスを有する装置が攻撃元の装置とは一致しない場合がある。例えば、反復検索（詳細は本発明の実施形態を参照）のDNSログを用いて、検索を依頼した装置のIPアドレスを検索した場合に、攻撃元の装置から再帰検索（詳細は本発明の実施形態を参照）の依頼を受けたDNSサーバ等（リゾルバ）のIPアドレスが見つかる場合がある。このような場合に、そのDNSサーバ等に攻撃元の装置のIPアドレスの検索を依頼することによって、攻撃元の装置のIPアドレスを追跡することができる。
【００１４】
また、本発明のトレースバック装置は、前記検索手段が取得した前記第２の情報が示すIPアドレスを有する装置へ、前記第１の情報および前記第２の情報の取得を要求する要求情報を送信する送信手段と、前記要求情報を受信した装置から送信された前記第１の情報および前記第２の情報を受信する受信手段とをさらに備えたことを特徴とする。
【００１５】
上記のトレースバック装置は、以下の事項に対応したものである。前述したように、検索手段が取得した第２の情報が示すIPアドレスを有する装置が攻撃元の装置とは一致しない場合がある。このような場合に、例えば攻撃元の装置から再帰検索の依頼を受けたDNSサーバ等から受信手段が第１の情報および第２の情報を受信し、その第１の情報および第２の情報に基づいて検索手段が再度検索を行うことによって、攻撃元の装置のIPアドレスを追跡することができる。
【００１６】
また、本発明のトレースバック装置において、前記記憶手段はさらに、検索時刻を記憶し、前記検索手段はさらに、取得した前記第２の情報が示すIPアドレスを検索のキーとして、攻撃時刻以前の前記検索時刻に対応した前記第２の情報を検索し、一致するIPアドレスと一致するIPアドレスを示す前記第２の情報に対応した前記第１の情報を取得することを特徴とする。
【００１７】
上記のトレースバック装置は、以下の事項に対応したものである。近年、ウィルスに感染したコンピュータに悪質な動作を実行させる、ボットと呼ばれるウィルスによる被害が拡大している。ボットは、外部の指令サーバに通信セッションを確立して新たなコードをダウンロードする機能や、攻撃のための指令を受ける機能、指令に従って攻撃する機能などを持つ悪意のコードで構成されている。攻撃元の装置は、ボットに感染している場合、攻撃の直前に指令サーバと通信を行うために、指令サーバのドメイン名に対応したIPアドレスの検索（名前解決）をDNSサーバ等に依頼する。したがって、この検索結果に関する情報から、指令サーバのIPアドレスまたはドメイン名を追跡することが可能となる。
【００１８】
前述した検索手段が最初に取得する第２の情報は攻撃元の装置のIPアドレスを示している。この攻撃元の装置は攻撃時刻以前に指令サーバの名前解決を依頼している可能性がある。この名前解決の記録を取得するため、検索手段は、攻撃元の装置のIPアドレスを検索のキーとして、攻撃時刻以前の検索時刻に対応した他の第２の情報を検索する。検索のキーとしたIPアドレスと一致するIPアドレスを示す第２の情報を検索できた場合、その第２の情報に対応した第１の情報は指令サーバのIPアドレスまたはドメイン名を示している。
【００１９】
また、本発明のトレースバック装置は、前記記憶手段はさらに、検索時刻を記憶し、前記検索手段はさらに、取得した前記第２の情報が示すIPアドレスを検索のキーとして、攻撃時刻以前の前記検索時刻に対応した前記第２の情報を検索し、一致するIPアドレスを示す前記第２の情報に対応した前記第１の情報を取得することを特徴とする。
【００２０】
上記のトレースバック装置は、以下の事項に対応したものである。前述したように、検索手段が取得した第１の情報はボットの指令サーバのIPアドレスまたはドメイン名を示している。しかし、攻撃元の装置が攻撃前に正規の名前解決を依頼している可能性がある。ボットでは、複数の攻撃元の装置が同一の指令サーバと通信を行う特徴があるので、この特徴を利用して、複数のトレースバック装置で検索できた第１の情報の中から共通するIPアドレスまたはドメイン名を示す第１の情報を抽出することによって、指令サーバのIPアドレスまたはドメイン名の追跡精度を向上することができる。
【００２１】
また、本発明は、上記のトレースバック装置を備えたDNSサーバである。
【００２２】
また、本発明は、上記のトレースバック装置としてコンピュータを機能させるためのプログラムである。
【００２３】
また、本発明は、ネットワーク上の攻撃の発信元のIPアドレスを追跡するトレースバックを実行する複数のトレースバック装置と、当該トレースバック装置と通信を行うサーバとを備えたトレースバックシステムであって、前記トレースバック装置は、所定のドメイン名に対応したIPアドレスを検索して取得したIPアドレス、または当該IPアドレスに対応したドメイン名を示す第１の情報と、検索を依頼した装置のIPアドレスを示す第２の情報と、検索時刻とを記憶する記憶手段と、ネットワーク上の攻撃の対象となった装置のIPアドレスまたはドメイン名を検索のキーとして前記第１の情報を検索し、前記攻撃の対象となった装置のIPアドレスまたはドメイン名と一致するIPアドレスまたはドメイン名を示す前記第１の情報に対応した前記第２の情報を取得し、取得した前記第２の情報が示すIPアドレスを検索のキーとして、攻撃時刻以前の前記検索時刻に対応した前記第２の情報を検索し、一致するIPアドレスを示す前記第２の情報に対応した前記第１の情報を取得する検索手段と、前記検索手段が取得した前記第１の情報を前記サーバへ送信する送信手段とを有し、前記サーバは、前記複数のトレースバック装置から前記第１の情報を受信する受信手段と、前記受信手段が受信した複数の前記第１の情報の中から、共通するIPアドレスまたはドメイン名を示す前記第１の情報を抽出する抽出手段とを有することを特徴とするトレースバックシステムである。
【００２４】
また、本発明は、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００２５】
本発明によれば、プローブ装置の設置にかかるコストや時間を削減し、IPアドレスの追跡が失敗する可能性を低減することができるという効果が得られる。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照し、本発明の実施形態を説明する。
【００２７】
（第１の実施形態）
まず、本発明の第１の実施形態を説明する。本実施形態は、ドメイン名に対応したIPアドレスを検索する名前解決を行うDNSサーバのログに注目して、詐称されたSource IPを追跡する方法を実現したものである。攻撃元の通信装置は、攻撃パケットを送信する前に攻撃先のドメイン名（ホスト名）の名前解決をDNSサーバに依頼する。したがって、DNSサーバが保持するログを参照し、攻撃先の通信装置のドメイン名の名前解決を依頼した通信装置のIPアドレス（Source IP）の記録を探すことによって、Source IPを追跡することができる。
【００２８】
本実施形態は以下の事項を前提としているものとする。すなわち、Source IPの追跡対象となる攻撃は、DNSサーバを利用してドメイン名からIPアドレスを取得する過程を含むものであるものとする。したがって、IPアドレスを直接指定してパケットを送信する攻撃は対象外とする。また、攻撃元の通信装置がDNSサーバに名前解決を依頼する場合、攻撃元の通信装置自身がDNSサーバからの回答を受け取る必要があるため、名前解決の依頼時点では攻撃元の通信装置のIPアドレスは詐称されていないものとする。
【００２９】
次に、Source IPを詐称して攻撃を行う前に攻撃元の通信装置がDNSサーバに名前解決を依頼する方法を説明する。図２に示すように、攻撃元の通信装置１（Source）と、攻撃対象の通信装置２（Destination）と、DNSサーバ３ａ〜３ｅとがネットワーク上に存在しているものとする。通信装置１のドメイン名は「www.YYY.co.kr」であり、IPアドレスは「yyy.yyy.yyy.yyy」である。ただし、IPアドレス中の「y」は０〜９の任意の数字である。また、通信装置２のドメイン名は「www.XXX.co.jp」であり、IPアドレスは「xxx.xxx.xxx.xxx」である。ただし、IPアドレス中の「x」は０〜９の任意の数字である。
【００３０】
DNSサーバ３ａは通信装置１と同一のドメイン「YYY.co.kr」に属している。また、DNSサーバ３ｂ〜３ｅは、ドメイン毎の階層構造を示すドメイン・ツリーを構成しており、DNSサーバ３ｂはルートドメインに属し、DNSサーバ３ｃはドメイン「.jp」に属し、DNSサーバ３ｄはドメイン「.co.jp」に属し、DNSサーバ３ｅはドメイン「XXX.co.jp」に属している。
【００３１】
まず、通信装置１はドメイン名「www.XXX.co.jp」のIPアドレスをDNSサーバ３ａに問い合わせる（ステップＳ１００）。この問合せの意味は、ドメイン名「www.XXX.co.jp」のIPアドレスの検索の依頼と同等である。また、この問合せは、一般的に再帰検索（リカーシブ：Recursive）と呼ばれるタイプの問合せである。再帰検索の依頼を受けたDNSサーバ３ａは、名前解決が完了するまで以下のようにドメイン・ツリーをたどって検索を行い、最終結果を通信装置１に返信する。このように、再帰検索の依頼を受けて名前解決が完了するまで検索を行うDNSサーバは一般的にリゾルバと呼ばれる。
【００３２】
再帰検索の依頼を受けたDNSサーバ３ａは、ドメイン・ツリーの最上位のルートドメインに属するDNSサーバ３ｂ（ルート・ネーム・サーバ）に対して、ドメイン「.jp」の情報を管理するDNSサーバのIPアドレスを問い合わせる（ステップＳ１１０）。この問合せは、一般的に反復検索（イテレイティブ：Iterative）と呼ばれるタイプの問合せである。反復検索の依頼を受けたDNSサーバ３ｂは、自身が管理しているドメインの情報のみを返答し、他のDNSサーバに対する問合せは行わない。DNSサーバ３ｂは、自身が管理しているドメインの情報の中から、ドメイン「.jp」の情報を管理するDNSサーバのIPアドレスを検索し、DNSサーバ３ｃのIPアドレスをDNSサーバ３ａに返信する（ステップＳ１２０）。
【００３３】
続いて、DNSサーバ３ａは、DNSサーバ３ｃに対して、ドメイン「.co.jp」の情報を管理するDNSサーバのIPアドレスを問い合わせる（ステップＳ１３０）。この問合せも反復検索である。反復検索の依頼を受けたDNSサーバ３ｃは、自身が管理しているドメインの情報の中から、ドメイン「.co.jp」の情報を管理するDNSサーバのIPアドレスを検索し、DNSサーバ３ｄのIPアドレスをDNSサーバ３ａに返信する（ステップＳ１４０）。
【００３４】
続いて、DNSサーバ３ａは、DNSサーバ３ｄに対して、ドメイン「XXX.co.jp」の情報を管理するDNSサーバのIPアドレスを問い合わせる（ステップＳ１５０）。この問合せも反復検索である。反復検索の依頼を受けたDNSサーバ３ｄは、自身が管理しているドメインの情報の中から、ドメイン「XXX.co.jp」の情報を管理するDNSサーバのIPアドレスを検索し、DNSサーバ３ｅのIPアドレスをDNSサーバ３ａに返信する（ステップＳ１６０）。
【００３５】
続いて、DNSサーバ３ａは、DNSサーバ３ｅに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスを問い合わせる（ステップＳ１７０）。この問合せも反復検索である。反復検索の依頼を受けたDNSサーバ３ｅは、自身が管理しているIPアドレスの中から、ドメイン名「www.XXX.co.jp」に対応するIPアドレスを検索し、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」をDNSサーバ３ａに返信する（ステップＳ１８０）。DNSサーバ３ａは、名前解決の結果として、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を通信装置１に返信する（ステップＳ１９０）。
【００３６】
各DNSサーバは、以上の処理の結果をDNSログとして保存する。図３および図４はDNSログの一例を示している。図３は、図２のDNSサーバ３ａが記憶するDNSログを示している。このDNSログには、DNSサーバ３ａが再帰検索を行ったときの検索結果が含まれている。DNSサーバ３ａは他のDNSサーバから反復検索の依頼を受けることもあり、その場合には図４に示す反復検索のDNSログを記憶する。
【００３７】
図３に示すDNSログには、時刻３００、リゾルバIP３１０、Source IP３２０、Destination Domain３３０、Destination IP３４０が含まれている。時刻３００は、通信装置から再帰検索の依頼を受けた時刻を示している。リゾルバIP３１０は、再帰検索の依頼を受けてリゾルバとして処理を行ったDNSサーバ、すなわち自身のIPアドレスを示している。Source IP３２０は、再帰検索の依頼を行った通信装置のIPアドレスを示している。Destination Domain３３０は、名前解決の対象となったドメイン名を示している。Destination IP３４０は、Destination Domain３３０に対応したIPアドレスを示している。
【００３８】
図２の通信装置１から依頼された再帰検索の結果はレコード３５０に記録されている。したがって、図２の通信装置２が攻撃を受けた場合、通信装置２のIPアドレスまたはドメイン名を検索のキーとしてDestination IP３４０またはDestination Domain３３０を検索し、通信装置２のIPアドレスまたはドメイン名に対応したSource IPを取得することによって、攻撃元の通信装置１のIPアドレスを追跡することができる。
【００３９】
図４は、図２のDNSサーバ３ｂ〜３ｅが記憶するDNSログの一例を示している。このDNSログには、DNSサーバ３ｂ〜３ｅが反復検索を行ったときの検索結果が含まれている。図４（ａ）は、DNSサーバ３ｂが記憶するDNSログを示し、図４（ｂ）は、DNSサーバ３ｃが記憶するDNSログを示し、図４（ｃ）は、DNSサーバ３ｄが記憶するDNSログを示し、図４（ｄ）は、DNSサーバ３ｅが記憶するDNSログを示している。
【００４０】
図４に示すDNSログには、時刻４００、リゾルバIP４１０、Destination Domain４２０、Destination IP４３０が含まれている。時刻４００は、他のDNSサーバから反復検索の依頼を受けた時刻を示している。リゾルバIP４１０は、反復検索を依頼したリゾルバとしてのDNSサーバのIPアドレスを示している。Destination Domain４２０は、名前解決の対象となったドメイン名を示している。Destination IP４３０は、Destination Domain４２０に対応したIPアドレスを示している。
【００４１】
図２のDNSサーバ３ａから反復検索の依頼を受け、通信装置２のIPアドレスを回答した結果は図４（ｄ）のレコード４４０に記録されている。したがって、通信装置２が攻撃を受けた場合、通信装置２のIPアドレスまたはドメイン名を検索のキーとしてDestination IP４３０またはDestination Domain４２０を検索し、通信装置２のIPアドレスまたはドメイン名に対応したリゾルバIPを取得することによって、再帰検索を行ったDNSサーバ３ａのIPアドレスを取得することができる。さらに、DNSサーバ３ａの再帰検索のDNSログを用いて、前述した検索を行うことにより、攻撃元の通信装置１のIPアドレスを追跡することができる。
【００４２】
次に、Source IPの追跡方法を説明する。図１は、本実施形態によるトレースバック装置の構成を示している。記憶部１０はDNSログを記憶する。このDNSログには、DNSサーバが再帰検索または反復検索により取得した通信装置のIPアドレス（Destination IP）、またはそのIPアドレスに対応したドメイン名（Destination Domain）と、再帰検索を依頼した通信装置のIPアドレス（Source IP）とが少なくとも含まれている。検索部１１は、上記のDNSログに基づいて、攻撃元の通信装置のIPアドレスを検索する。
【００４３】
検索部１１は以下の検索を行う。すなわち、検索部１１は、攻撃対象となった通信装置のIPアドレスまたはドメイン名を検索のキーとして、DNSログ中のDestination IPまたはDestination Domainを検索し、攻撃対象となった通信装置のIPアドレスまたはドメイン名と一致するDestination IPまたはDestination Domainを抽出する。さらに、検索部１１は、抽出したDestination IPまたはDestination Domainと対応関係を有するSource IPをDNSログから抽出する。このSource IPが、攻撃元の通信装置のIPアドレスである。
【００４４】
攻撃元の通信装置とは無関係の通信装置が、攻撃対象となった通信装置のドメイン名に関する名前解決を行うことも十分考えられるので、上記の処理では、攻撃元の通信装置のIPアドレスを誤検出する可能性がある。しかし、攻撃が行われる場合には攻撃の直前に名前解決が行われるので、攻撃が行われた時刻の直前の所定時間内で行われた名前解決の結果のみを検索の対象とすることによって、このような誤検出の発生を低減することができる。以下、上記のトレースバック装置の動作の具体例を説明する。
【００４５】
＜第１の動作例＞
まず、第１の動作例を説明する。図５は、第１の動作例に係るトレースバックシステムの構成を示している。通信装置１，２およびDNSサーバ３ａ〜３ｅについては前述した通りである。DNSログ管理装置４は、DNSサーバ３ａ〜３ｅからDNSログを収集して一括管理し、そのDNSログに基づいて攻撃元の通信装置のIPアドレスの検索を行う。すなわち、DNSログ管理装置４は、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。
【００４６】
Source IPの追跡は以下のようにして行われる。通信装置２は、攻撃を受けた時刻と自身のIPアドレス（Destination IP）を含む情報５００をDNSログ管理装置４へ送信し、DNSログ管理装置４にSource IPを問い合わせる。DNSログ管理装置４の制御装置（CPU等）は、通信装置２からSource IPの問合せを受けたとき、または定期的に、図３および図４に示した情報を有するDNSログ５１０〜５５０をDNSサーバ３ａ〜３ｅから受信し、内部の記憶装置（ハードディスクドライブ等）に保存する。
【００４７】
通信装置２からSource IPの問合せを受けたDNSログ管理装置４の制御装置は記憶装置から再帰検索のDNSログを読み出す。DNSログ管理装置４の制御装置は、再帰検索のDNSログに記録されている時刻と通信装置２から通知された時刻とを比較し、通信装置２から通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。このNは適宜決定すればよい。
【００４８】
続いて、DNSログ管理装置４の制御装置は、通信装置２のIPアドレスを検索のキーとして、再帰検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのSource IPを取得する。このSource IPが攻撃元の通信装置１のIPアドレスである。DNSログ管理装置４の制御装置は、検索により取得したSource IPを含む情報５６０を通信装置２へ送信し、攻撃元の通信装置１のIPアドレスを通知する。上記のDestination IPの代わりにDestination Domainを用いても同様の処理を実現することが可能である。
【００４９】
再帰検索のDNSログを用いて検索を行っても、該当するDestination IPを有するレコードが存在しない場合、反復検索のDNSログを用いて同様の検索が行われる。この検索では、リゾルバとなったDNSサーバのIPアドレスは判明するが、そのDNSサーバから既に取得しているDNSログには所望のレコードが存在していなかったため、所望のSource IPの完全な追跡は達成できない。したがって、判明したリゾルバのIPアドレスは参考情報となる。
【００５０】
上記の処理では、DNSログ管理装置４が大量のDNSログを管理する必要がある。そこで、以下のようにして、DNSログ管理装置４が管理するDNSログの量を削減してもよい。以下ではDNSログ管理装置４は、各ドメインを管理するDNSサーバのIPアドレス等の情報を予め記憶しているものとする。通信装置２からSource IPの問合せを受けたDNSログ管理装置４の制御装置は、通信装置２から通知されたドメイン名に基づいて、通信装置２が属するドメインを管理するDNSサーバのIPアドレスを検索する。
【００５１】
続いて、DNSログ管理装置４の制御装置は、検索により見つかったIPアドレスを有するDNSサーバから反復検索のDNSログを受信する。DNSログ管理装置４の制御装置は、受信したDNSログを参照し、通信装置２のIPアドレスまたはドメイン名と一致する情報を有するレコードを検索する。通信装置２のIPアドレスまたはドメイン名と一致する情報を有するレコードがあった場合、そのレコードに含まれるリゾルバのIPアドレスは、攻撃元の通信装置１から名前解決の依頼を受けたリゾルバのIPアドレスを示している。DNSログ管理装置４の制御装置は、リゾルバとして名前解決を行ったDNSサーバから再帰検索のDNSログを受信し、前述した処理と同様の処理を行い、攻撃元の通信装置のSource IPを特定する。この動作によれば、DNSログ管理装置４は、全てのDNSサーバからDNSログを収集する必要はなく、DNSログ管理装置４が管理するDNSログの量を削減することができる。
【００５２】
＜第２の動作例＞
次に、第２の動作例を説明する。図６は、第２の動作例に係るトレースバックシステムの構成を示している。通信装置１，２およびDNSサーバ３ｅについては前述した通りである。通信装置１は、自身がリゾルバとなって再帰検索を行う。また、DNSサーバ３ｅは、自身が記憶するDNSログに基づいて攻撃元の通信装置のIPアドレスの検索を行う。すなわち、DNSサーバ３ｅは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。
【００５３】
攻撃元の通信装置１は、前述したDNSサーバ３ａと同様にドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｅに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスの反復検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報６００をDNSサーバ３ｅへ送信する。反復検索の依頼を受けたDNSサーバ３ｅは、自身が管理しているIPアドレスの中から、ドメイン名「www.XXX.co.jp」に対応するIPアドレスを検索し、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む反復検索結果の情報６１０を通信装置１へ送信する。以上によって、通信装置１は通信装置２のIPアドレスを取得することができる。
【００５４】
Source IPの追跡は以下のようにして行われる。通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と自身のIPアドレス（Destination IP）を含む情報６２０をDNSサーバ３ｅへ送信し、DNSサーバ３ｅにSource IPを問い合わせる。通信装置２からSource IPの問合せを受けたDNSサーバ３ｅの制御装置は記憶装置から反復検索のDNSログを読み出す。DNSサーバ３ｅの制御装置は、反復検索のDNSログに記録されている時刻と通信装置２から通知された時刻とを比較し、通信装置２から通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００５５】
続いて、DNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。このリゾルバIPが攻撃元の通信装置１のIPアドレスである。DNSサーバ３ｅの制御装置は、検索により取得したリゾルバIPを含む情報６３０を通信装置２へ送信し、攻撃元の通信装置１のIPアドレスを通知する。
【００５６】
上記のDestination IPの代わりにDestination Domainを用いても同様の処理を実現することが可能である。また、上記では、Destination IPをリゾルバに通知したDNSサーバ３ｅがSource IPの追跡を行っているが、通信装置２がDNSサーバ３ｅから反復検索のDNSログを収集し、そのDNSログに基づいてSource IPの追跡を行ってもよい。
【００５７】
＜第３の動作例＞
次に、第３の動作例を説明する。図７は、第３の動作例に係るトレースバックシステムの構成を示している。通信装置１，２およびDNSサーバ３ａ，３ｅについては前述した通りである。DNSサーバ３ａはリゾルバとなって再帰検索を行い、DNSサーバ３ｅはDNSサーバ３ａから反復検索の依頼を受けて反復検索を行う。また、DNSサーバ３ａ，３ｅは、自身が記憶するDNSログに基づいて攻撃元の通信装置のIPアドレスの検索を行う。すなわち、DNSサーバ３ａ，３ｅは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。
【００５８】
攻撃元の通信装置１は、DNSサーバ３ａに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報７００をDNSサーバ３ａへ送信する。再帰検索の依頼を受けたDNSサーバ３ａは、前述したようにドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｅに反復検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報７１０をDNSサーバ３ｅへ送信する。
【００５９】
反復検索の依頼を受けたDNSサーバ３ｅは、自身が管理しているIPアドレスの中から、ドメイン名「www.XXX.co.jp」に対応するIPアドレスを検索し、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む反復検索結果の情報７２０をDNSサーバ３ａへ送信する。DNSサーバ３ａは、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む再帰検索結果の情報７３０を通信装置１へ送信する。以上によって、通信装置１は通信装置２のIPアドレスを取得することができる。
【００６０】
Source IPの追跡は以下のようにして行われる。通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と自身のIPアドレス（Destination IP）を含む情報７４０をDNSサーバ３ｅへ送信し、DNSサーバ３ｅにSource IPを問い合わせる。通信装置２からSource IPの問合せを受けたDNSサーバ３ｅの制御装置は記憶装置から反復検索のDNSログを読み出す。DNSサーバ３ｅの制御装置は、反復検索のDNSログに記録されている時刻と通信装置２から通知された時刻とを比較し、通信装置２から通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００６１】
続いて、DNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。DNSサーバ３ｅの制御装置は、リゾルバIPを有するDNSサーバ３ａにSource IPを問い合わせるため、通信装置２から通知された時刻と通信装置２のIPアドレスを含む情報７５０をDNSサーバ３ａへ送信する。
【００６２】
問合せを受けたDNSサーバ３ａの制御装置は記憶装置から再帰検索のDNSログを読み出す。DNSサーバ３ａの制御装置は、再帰検索のDNSログに記録されている時刻とDNSサーバ３ｅから通知された時刻とを比較し、DNSサーバ３ｅから通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００６３】
続いて、DNSサーバ３ａの制御装置は、通信装置２のIPアドレスを検索のキーとして、再帰検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのSource IPを取得する。このSource IPが攻撃元の通信装置１のIPアドレスである。DNSサーバ３ａの制御装置は、検索により取得したSource IPを含む情報７６０をDNSサーバ３ｅへ送信する。この情報７６０を受信したDNSサーバ３ｅの制御装置は情報７７０を通信装置２へ転送し、攻撃元の通信装置１のIPアドレスを通知する。
【００６４】
上記において、Destination IPの代わりにDestination Domainを用いても同様の処理を実現することが可能である。また、上記では、Destination IPの反復検索を行ったDNSサーバ３ｅが、リゾルバとしてのDNSサーバ３ａにSource IPの問合せを行っているが、DNSサーバ３ｅがDNSサーバ３ａから再帰検索のDNSログを収集し、そのDNSログに基づいてSource IPの追跡を行ってもよい。その場合には、DNSサーバ３ｅは、反復検索のDNSログに基づく検索により取得したリゾルバIPを有するDNSサーバ３ａへ、再帰検索のDNSログの取得を要求する情報を送信する。DNSサーバ３ａは、その情報に基づいて再帰検索のDNSログをDNSサーバ３ｅへ送信する。DNSサーバ３ｅは再起検索のDNSログをDNSサーバ３ａから受信し、そのDNSログに基づいてSource IPの追跡を行う。
【００６５】
また、通信装置２がDNSサーバ３ｅから反復検索のDNSログを収集し、そのDNSログに基づいて特定したリゾルバとしてのDNSサーバ３ａから再帰検索のDNSログを収集し、そのDNSログに基づいてSource IPの追跡を行ってもよい。
【００６６】
次に、本実施形態の変形例を説明する。図８は、本実施形態によるトレースバック装置の他の構成を示している。上記では、Source IPの問合せを行うため、通信装置とDNSサーバの間、またはDNSサーバ同士の間で、個人のプライバシーに関わるDestination IPまたはDestination Domainが送受信されてしまう。そこで、図８に示すトレースバック装置は、他の装置との間でDestination IPやDestination Domainの送受信を行うことなく、Source IPの追跡を行う。
【００６７】
図８において、ハッシュ値算出部１２は、Destination IPのハッシュ値、Destination Domainのハッシュ値、Destination IPとDestination Domainを結合した情報のハッシュ値のいずれかを算出する。以下では、ハッシュ値算出部１２がDestination IPのハッシュ値を算出する場合のみについてSource IPの追跡方法を説明するが、他の場合についてもSource IPの追跡方法は同様である。
【００６８】
ハッシュ値算出部１２は記憶部１０からDNSログを読み出し、DNSログ中の全てのDestination IPのハッシュ値を算出する。ハッシュ値算出部１２は、DNSログに記録されている情報にハッシュ値を追加した状態で、DNSログを記憶部１０に格納する。検索部１１は、このDNSログを用いて攻撃元の通信装置のIPアドレスを検索することになる。
【００６９】
続いて、検索部１１は、攻撃対象となった通信装置のIPアドレスのハッシュ値を検索のキーとして、DNSログ中のハッシュ値を検索し、攻撃対象となった通信装置のIPアドレスのハッシュ値と一致するハッシュ値をDNSログから抽出する。さらに、検索部１１は、このハッシュ値を算出する元となったDestination IPと対応関係を有するSource IPをDNSログから抽出する。このSource IPが、攻撃元の通信装置のIPアドレスである。
【００７０】
Source IPの問合せを行う場合、通信装置やDNSサーバはDestination IPやDestination Domainの代わりにそれらのハッシュ値を送信する。ハッシュ値を受信したDNSサーバやDNSログ管理装置は、上記と同様にして、ハッシュ値をキーにした検索を行い、Source IPを取得する。
【００７１】
次に、その他の変形例を説明する。プローブ装置の設置にかかるコストや時間を許容するならば、再帰検索や反復検索のパケットのみを収集するプローブ装置を用いてもよい。このプローブ装置は、ネットワークで送受信される全パケットではなく、再帰検索や反復検索のパケットのみを収集するため、管理する情報量を大幅に削減することができる。再帰検索や反復検索のパケットを受信したプローブ装置は、受信したパケットに含まれる情報から再帰検索および反復検索のDNSログを生成する。攻撃対象の通信装置や他のプローブ装置からSource IPの問合せを受けた場合、プローブ装置は、DNSログに基づいてSource IPの検索を行う。
【００７２】
上述したように、本実施形態によれば、ネットワーク上の各所にプローブ装置を設置する必要がなくなるので、プローブ装置の設置にかかるコストや時間を削減することができる。また、DNSサーバが再帰検索や反復検索の依頼のために送信するパケットの数は、ネットワークで送受信される全パケットの数よりもはるかに少ないので、DNSログの情報量は、ネットワークで送受信される全パケットの情報量よりもはるかに少量である。したがって、DNSサーバがDNSログを記憶可能な期間が長くなり、時間的な制約によってIPアドレスの追跡が失敗する可能性を低減することができる。
【００７３】
（第２の実施形態）
次に、本発明の第２の実施形態を説明する。本実施形態は、DNSサーバのログに注目して、ボットの指令サーバのIPアドレスまたはドメイン名を追跡する方法を実現したものである。図１４は、ボットによる通信のモデルを示している。ボットによる通信には、攻撃を行う加害者PC（Personal Computer）１４００，１４０１と、攻撃を受ける被害者PC１４１０，１４１１，１４１２，１４１３と、攻撃コード（実行ファイル）の配信や攻撃指示を行う指令サーバ１４２０，１４２１とが関係している。外部の加害者PC１４００は、ボットをダウンロードする初期コードを加害者PC１４０１に埋め込む。この初期コードには、指令サーバのドメイン名も含まれている。加害者PC１４０１は、この初期コードに従って指令サーバ１４２０から新たなコードを受信する。さらに、加害者PC１４０１は、指令サーバ１４２１から指令を受け取り、被害者PCに対して各種攻撃を行う。
【００７４】
攻撃元の通信装置は、ボットに感染している場合には、攻撃の直前に指令サーバと通信を行うために、指令サーバの名前解決をDNSサーバに依頼する。したがって、この検索結果に関する情報から、指令サーバのIPアドレスまたはドメイン名を追跡することが可能となる。
【００７５】
本実施形態によるトレースバック装置の構成は、図１に示した構成と同様である。以下、図１に示した構成に基づいて、本実施形態によるトレースバック装置の機能を説明する。記憶部１０はDNSログを記憶する。このDNSログには、DNSサーバが再帰検索または反復検索により取得した通信装置のIPアドレス（Destination IP）、またはそのIPアドレスに対応したドメイン名（Destination Domain）と、再帰検索を依頼した通信装置のIPアドレス（Source IP）と、通信装置から検索の依頼を受けた時刻（検索時刻）とが少なくとも含まれている。検索部１１は、上記のDNSログに基づいて、攻撃元の通信装置のIPアドレスを検索し、さらに攻撃元の通信装置が名前解決を依頼した指令サーバのIPアドレスまたはドメイン名を検索する。
【００７６】
検索部１１は以下の検索を行う。すなわち、検索部１１は、攻撃対象となった通信装置のIPアドレスまたはドメイン名を検索のキーとして、DNSログ中のDestination IPまたはDestination Domainを検索し、攻撃対象となった通信装置のIPアドレスまたはドメイン名と一致するDestination IPまたはDestination Domainを抽出する。さらに、検索部１１は、抽出したDestination IPまたはDestination Domainと対応関係を有するSource IPをDNSログから抽出する。このSource IPが、攻撃元の通信装置のIPアドレスである。上記の処理は第１の実施形態と同様である。
【００７７】
さらに、本実施形態の検索部１１は、記憶部１０に格納されているDNSログのうち、検索時刻として攻撃時刻以前の時刻が記録されているレコードを処理対象として、以下の検索を行う。すなわち、検索部１１は、攻撃元の通信装置のIPアドレスとして取得したSource IPを検索のキーとして、DNSログ中のSource IPを検索する。攻撃元の通信装置のIPアドレスとして取得したSource IPと一致するSource IPがDNSログ中にあった場合、そのSource IPと対応関係を有するDestination IPまたはDestination DomainをDNSログから抽出する。このDestination IPまたはDestination Domainが、指令サーバのIPアドレスまたはドメイン名である。
【００７８】
上記の攻撃時刻は、別途他の装置からトレースバック装置に報告されるものであってもよいし、攻撃元の通信装置が攻撃対象の通信装置の名前解決を依頼した時刻であってもよい。攻撃元の通信装置が攻撃対象の通信装置の名前解決を依頼した時刻は、攻撃元の通信装置のSource IPと攻撃対象の通信装置のDestination IPまたはDestination Domainとを含むレコード、すなわち上記の検索によって見つかるレコードに記録されている検索時刻である。
【００７９】
攻撃元の通信装置は、ボットに感染している場合、指令サーバとの通信を行う以外に、攻撃対象の通信装置への攻撃も行う。ボットに感染した通信装置が指令サーバとの通信と、攻撃対象の通信装置への攻撃とを非同期に繰り返し行う場合があるため、上記の検索では、攻撃対象の通信装置のIPアドレスまたはドメイン名を指令サーバのIPアドレスまたはドメイン名として誤検出する可能性もある。
【００８０】
攻撃元の通信装置がスパムメールの送信を行う場合には、メールサーバの名前解決をDNSサーバに依頼する。DNSサーバは、MXレコードと呼ばれるレコードでメールサーバの情報を管理しており、MXレコードを検索した結果はDNSログに記録される。したがって、DNSログに記録されているレコードのうち、文字列MXを含むレコードを検索対象から除外して検索を行うことによって、指令サーバのIPアドレスまたはドメイン名の追跡精度を向上することができる。
【００８１】
以下、上記のトレースバック装置の動作の具体例を説明する。
【００８２】
＜第１の動作例＞
まず、第１の動作例を説明する。図９は、第１の動作例に係るトレースバックシステムの構成を示している。通信装置１，２およびDNSサーバ３ａ，３ｅについては前述した通りである。DNSサーバ３ｆはドメイン「VVV.co.jp」に属しており、DNSサーバ３ａから反復検索の依頼を受けて反復検索を行う。DNSサーバ３ａ，３ｅ，３ｆは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。また、指令サーバ５のドメイン名は「www.VVV.co.jp」であり、IPアドレスは「vvv.vvv.vvv.vvv」である。ただし、IPアドレス中の「v」は０〜９の任意の数字である。
【００８３】
通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名の追跡は以下のようにして行われる。攻撃の前段階において、通信装置１は指令サーバ５のドメイン名に対応したIPアドレスの検索（名前解決）をDNSサーバ３ａに依頼する。まず、通信装置１は、DNSサーバ３ａに対して、ドメイン名「www.VVV.co.jp」に対応するIPアドレスの再帰検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報９００をDNSサーバ３ａへ送信する。再帰検索の依頼を受けたDNSサーバ３ａは、前述したようにドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｆに反復検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報９１０をDNSサーバ３ｆへ送信する。
【００８４】
反復検索の依頼を受けたDNSサーバ３ｆは、自身が管理しているIPアドレスの中から、ドメイン名「www.VVV.co.jp」に対応するIPアドレスを検索し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」を含む反復検索結果の情報９２０をDNSサーバ３ａへ送信する。DNSサーバ３ａは、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」を含む再帰検索結果の情報９３０を通信装置１へ送信する。以上によって、通信装置１は指令サーバ５のIPアドレスを取得することができる。
【００８５】
続いて、通信装置１は指令サーバ５と通信を行い、攻撃用のコードを受信する。さらに、通信装置１は、受信したコードに従って攻撃を開始する。通信装置１は、DNSサーバ３ａに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報（情報９００と同様の情報）をDNSサーバ３ａへ送信する。再帰検索の依頼を受けたDNSサーバ３ａは、前述したようにドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｅに反復検索を依頼するため、自身のIPアドレスおよび検索対象のドメイン名を含む情報９４０をDNSサーバ３ｅへ送信する。
【００８６】
反復検索の依頼を受けたDNSサーバ３ｅは、自身が管理しているIPアドレスの中から、ドメイン名「www.XXX.co.jp」に対応するIPアドレスを検索し、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む反復検索結果の情報９５０をDNSサーバ３ａへ送信する。DNSサーバ３ａは、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む再帰検索結果の情報（情報９３０と同様の情報）を通信装置１へ送信する。以上によって、通信装置１は通信装置２のIPアドレスを取得することができる。
【００８７】
トレースバックは以下のようにして行われる。通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と自身のIPアドレス（Destination IP）を含む情報９６０をDNSサーバ３ｅへ送信し、DNSサーバ３ｅにトレースバックを依頼する。本実施形態ではDestination IPを用いるが、Destination Domainを用いてもよい。通信装置２からトレースバックの依頼を受けたDNSサーバ３ｅの制御装置は記憶装置から反復検索のDNSログを読み出す。DNSサーバ３ｅの制御装置は、反復検索のDNSログに記録されている時刻と通信装置２から通知された時刻とを比較し、通信装置２から通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００８８】
続いて、DNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。DNSサーバ３ｅの制御装置は、リゾルバIPを有するDNSサーバ３ａにトレースバックを依頼するため、通信装置２から通知された時刻と通信装置２のIPアドレスを含む情報９７０をDNSサーバ３ａへ送信する。
【００８９】
DNSサーバ３ｅからトレースバックの依頼を受けたDNSサーバ３ａの制御装置は記憶装置から再帰検索のDNSログを読み出す。DNSサーバ３ａの制御装置は、再帰検索のDNSログに記録されている時刻とDNSサーバ３ｅから通知された時刻とを比較し、DNSサーバ３ｅから通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００９０】
続いて、DNSサーバ３ａの制御装置は、通信装置２のIPアドレスを検索のキーとして、再帰検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのSource IPを取得する。このSource IPが攻撃元の通信装置１のIPアドレスである。図１０は、DNSサーバ３ａが記憶するDNSログの一例を示している。レコード１０００には、Destination IPとして通信装置２のIPアドレス「xxx.xxx.xxx.xxx」が記録されている。したがって、レコード１００に記録されている情報は、通信装置１から依頼された通信装置２の再帰検索の結果を示しており、このレコード１０００のSource IPが通信装置１のIPアドレスである。
【００９１】
続いて、DNSサーバ３ａの制御装置は攻撃時刻（図１０ではレコード１０００に記録されている時刻）よりも前の時刻が記録されているレコードを対象とし、通信装置１のIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードを検索する。通信装置１のIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードがあった場合、DNSサーバ３ａの制御装置はそのレコードのDestination IPまたはDestination Domainを取得する。このDestination IPまたはDestination Domainが指令サーバ５のIPアドレスまたはドメイン名である。図１０では、レコード１０１０のSource IPとして通信装置１のIPアドレス「yyy.yyy.yyy.yyy」が記録されている。したがって、レコード１０１０に記録されている情報は、通信装置１から依頼された指令サーバ５の再帰検索の結果を示しており、このレコード１０１０のDestination Domainが指令サーバ５のドメイン名であり、Destination IPが指令サーバ５のIPアドレスである。
【００９２】
DNSサーバ３ａの制御装置は、検索により取得した通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を含む情報９８０をDNSサーバ３ｅへ送信する。この情報９８０を受信したDNSサーバ３ｅの制御装置は情報９９０を通信装置２へ転送し、攻撃元の通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を通知する。
【００９３】
＜第２の動作例＞
次に、第２の動作例を説明する。図１１は、第２の動作例に係るトレースバックシステムの構成を示している。通信装置１，２、DNSサーバ３ａ，３ｅ，３ｆ、および指令サーバ５については前述した通りである。DNSサーバ３ａ，３ｅ，３ｆは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。トレースバック管理装置６は、トレースバックに係る一連の通信を管理する。
【００９４】
通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名の追跡は以下のようにして行われる。通信装置１は第１の動作例と同様にして、DNSサーバ３ａに対して、ドメイン名「www.VVV.co.jp」に対応するIPアドレスおよびドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」および通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を取得しているものとする。また、通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と、自身のIPアドレス（Destination IP）と、受信したパケットに含まれる送信元の通信装置のIPアドレス（Source IP）と、DNSサーバ３ｅのIPアドレスとを含む情報１１００をトレースバック管理装置６へ送信し、トレースバックを依頼する。
【００９５】
情報１１００を受信したトレースバック管理装置６は、通信装置２のIPアドレスに関する再帰検索を行ったDNSサーバ（リゾルバ）を問い合わせる情報１１１０をDNSサーバ３ｅへ送信する。この情報１１１０には、通信装置２のIPアドレスが含まれている。情報１１１０を受信したDNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。DNSサーバ３ｅの制御装置は、取得したリゾルバIPを含む情報１１２０をトレースバック管理装置６へ送信する。
【００９６】
情報１１２０を受信したトレースバック管理装置６は、情報１１２０に含まれるリゾルバIPを有するDNSサーバ３ａにトレースバックを依頼するため、通信装置２から受信した情報１１００と同様の情報１１３０をDNSサーバ３ａへ送信し、トレースバックを依頼する。情報１１３０を受信したDNSサーバ３ａの制御装置は記憶装置から再帰検索のDNSログを読み出す。DNSサーバ３ａの制御装置は、再帰検索のDNSログに記録されている時刻と、情報１１３０に含まれる時刻とを比較し、情報１１３０に含まれる時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【００９７】
続いて、DNSサーバ３ａの制御装置は、通信装置２のIPアドレスを検索のキーとして、再帰検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのSource IPを取得する。このSource IPが攻撃元の通信装置１のIPアドレスである。
【００９８】
さらに、DNSサーバ３ａの制御装置は攻撃時刻よりも前の時刻が記録されているレコードを対象とし、通信装置１のIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードを検索する。通信装置１のIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードがあった場合、DNSサーバ３ａの制御装置はそのレコードのDestination IPまたはDestination Domainを取得する。このDestination IPまたはDestination Domainが指令サーバ５のIPアドレスまたはドメイン名である。
【００９９】
DNSサーバ３ａの制御装置は、トレースバック結果を示す情報１１４０をトレースバック管理装置６へ送信する。この情報１１４０を受信したトレースバック管理装置６は情報１１５０を通信装置２へ転送し、攻撃元の通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を通知する。
【０１００】
上記では、DNSサーバ３ａ，３ｅが、自身のDNSログに基づいてトレースバックを行っているが、トレースバック管理装置６がDNSサーバ３ａ，３ｅからDNSログを収集し、上記と同様のトレースバックを行ってもよい。
【０１０１】
上述したように、本実施形態によれば、攻撃元の通信装置のIPアドレスを追跡すると共に、指令サーバのIPアドレスまたはドメイン名を追跡することができる。
【０１０２】
（第３の実施形態）
次に、第３の実施形態を説明する。攻撃元の通信装置が攻撃前（ボットに感染する前など）に正規の名前解決を依頼している可能性があるため、第２の実施形態で説明した方法では、正規の通信の相手が指令サーバとして誤検出される可能性もある。ボットでは、複数の攻撃元の通信装置が同一の指令サーバと通信を行う特徴があるので、本実施形態ではこの特徴を利用して、指令サーバのIPアドレスまたはドメイン名を追跡する。以下、本実施形態の動作の具体例を説明する。
【０１０３】
＜第１の動作例＞
まず、第１の動作例を説明する。図１２は、第１の動作例に係るトレースバックシステムの構成を示している。通信装置２、DNSサーバ３ａ，３ｅ、および指令サーバ５については前述した通りである。通信装置１ａ，１ｂは攻撃元の通信装置である。通信装置１ａのドメイン名は「www.YYY.co.kr」であり、IPアドレスは「yyy.yyy.yyy.yyy」である。ただし、IPアドレス中の「y」は０〜９の任意の数字である。また、通信装置１ｂのドメイン名は「www.UUU.co.kr」であり、IPアドレスは「uuu.uuu.uuu.uuu」である。ただし、IPアドレス中の「u」は０〜９の任意の数字である。DNSサーバ３ｇはドメイン「UUU.co.kr」に属している。DNSサーバ３ａ，３ｅ，３ｇは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。
【０１０４】
攻撃の前段階において、通信装置１ａは指令サーバ５のドメイン名に対応したIPアドレスの検索（名前解決）を依頼するための情報１２００をDNSサーバ３ａへ送信し、DNSサーバ３ａに指令サーバ５の名前解決を依頼する。名前解決の依頼を受けたDNSサーバ３ａは、第２の実施形態と同様の動作により指令サーバ５のIPアドレスを取得し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」を含む再帰検索結果の情報１２０５を通信装置１ａへ送信する。以上によって、通信装置１ａは指令サーバ５のIPアドレスを取得することができる。
【０１０５】
同様に、攻撃の前段階において、通信装置１ｂは指令サーバ５のドメイン名に対応したIPアドレスの検索（名前解決）を依頼するための情報１２１０をDNSサーバ３ｇへ送信し、DNSサーバ３ｇに指令サーバ５の名前解決を依頼する。名前解決の依頼を受けたDNSサーバ３ｇは、DNSサーバ３ａと同様の動作により指令サーバ５のIPアドレスを取得し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」を含む再帰検索結果の情報１２１５を通信装置１ｂへ送信する。以上によって、通信装置１ｂは指令サーバ５のIPアドレスを取得することができる。
【０１０６】
続いて、通信装置１ａ，１ｂは指令サーバ５と通信を行い、攻撃用のコードを受信する。さらに、通信装置１ａ，１ｂは、受信したコードに従って攻撃を開始する。第２の実施形態と同様の動作により、通信装置１ａは、DNSサーバ３ａに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼するための情報（情報１２００と同様の情報）をDNSサーバ３ａへ送信する。再帰検索の依頼を受けたDNSサーバ３ａは、前述したようにドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｅに反復検索を依頼するための情報１２２０をDNSサーバ３ｅへ送信する。
【０１０７】
反復検索の依頼を受けたDNSサーバ３ｅは、第２の実施形態と同様のIPアドレスの検索により取得した通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む反復検索結果の情報１２２５をDNSサーバ３ａへ送信する。DNSサーバ３ａは、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む再帰検索結果の情報（情報１２０５と同様の情報）を通信装置１ａへ送信する。以上によって、通信装置１ａは通信装置２のIPアドレスを取得することができる。
【０１０８】
上記と同様に通信装置１ｂは、DNSサーバ３ｇに対して、ドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼するための情報（情報１２１０と同様の情報）をDNSサーバ３ｇへ送信する。再帰検索の依頼を受けたDNSサーバ３ｇは、前述したようにドメイン・ツリーをたどって他のDNSサーバに反復検索を依頼し（図示せず）、最後にDNSサーバ３ｅに反復検索を依頼するための情報１２３０をDNSサーバ３ｅへ送信する。
【０１０９】
反復検索の依頼を受けたDNSサーバ３ｅは、第２の実施形態と同様のIPアドレスの検索により取得した通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む反復検索結果の情報１２３５をDNSサーバ３ｇへ送信する。DNSサーバ３ｇは、通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を含む再帰検索結果の情報（情報１２１５と同様の情報）を通信装置１ｂへ送信する。以上によって、通信装置１ｂは通信装置２のIPアドレスを取得することができる。
【０１１０】
通信装置１ａ，１ｂのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名の追跡は以下のようにして行われる。通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と自身のIPアドレス（Destination IP）を含む情報１２４０をDNSサーバ３ｅへ送信し、DNSサーバ３ｅにトレースバックを依頼する。本実施形態ではDestination IPを用いるが、Destination Domainを用いてもよい。通信装置２からトレースバックの依頼を受けたDNSサーバ３ｅの制御装置は記憶装置から反復検索のDNSログを読み出す。DNSサーバ３ｅの制御装置は、反復検索のDNSログに記録されている時刻と通信装置２から通知された時刻とを比較し、通信装置２から通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【０１１１】
続いて、DNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。DNSサーバ３ｅの制御装置は、リゾルバIPを有するDNSサーバ３ａ，３ｇにトレースバックを依頼するため、通信装置２から通知された時刻と通信装置２のIPアドレスを含む情報１２４５をDNSサーバ３ａ，３ｇへ送信する。
【０１１２】
DNSサーバ３ｅからトレースバックの依頼を受けたDNSサーバ３ａの制御装置は記憶装置から再帰検索のDNSログを読み出す。DNSサーバ３ａの制御装置は、再帰検索のDNSログに記録されている時刻とDNSサーバ３ｅから通知された時刻とを比較し、DNSサーバ３ｅから通知された時刻の直前N（Ｎ＞０）秒の範囲内の時刻が記録されているレコードのみを検索対象とする。
【０１１３】
続いて、DNSサーバ３ａの制御装置は、通信装置２のIPアドレスを検索のキーとして、再帰検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのSource IPを取得する。このSource IPが攻撃元の通信装置１ａのIPアドレスである。
【０１１４】
続いて、DNSサーバ３ａの制御装置は攻撃時刻よりも前の時刻が記録されているレコードを対象とし、通信装置１ａのIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードを検索する。通信装置１ａのIPアドレス「yyy.yyy.yyy.yyy」がSource IPに記録されているレコードがあった場合、DNSサーバ３ａの制御装置はそのレコードのDestination IPまたはDestination Domainを取得する。このDestination IPまたはDestination Domainが指令サーバ５のIPアドレスまたはドメイン名である。DNSサーバ３ａの制御装置は、検索により取得した通信装置１ａのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を含む情報１２５０をDNSサーバ３ｅへ送信する。
【０１１５】
上記と同様に、DNSサーバ３ｅからトレースバックの依頼を受けたDNSサーバ３ｇの制御装置は、DNSログの検索により、攻撃元の通信装置１ｂのIPアドレスを取得すると共に、指令サーバ５のIPアドレスまたはドメイン名を取得する。続いて、DNSサーバ３ｇの制御装置は、取得した通信装置１ｂのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を含む情報１２５５をDNSサーバ３ｅへ送信する。
【０１１６】
情報１２５０，１２５５を受信したDNSサーバ３ｅの制御装置は、情報１２５０に含まれる指令サーバ５のIPアドレスまたはドメイン名と、情報１２５５に含まれる指令サーバ５のIPアドレスまたはドメイン名とが一致するか否かを判定する。両者が一致した場合、DNSサーバ３ａ，３ｇから通知された指令サーバ５のIPアドレスまたはドメイン名は信頼度が高いものとなる。DNSサーバ３ｅの制御装置は、通信装置１ａのIPアドレス、通信装置１ｂのIPアドレス、および指令サーバ５のIPアドレスまたはドメイン名を含む情報１２６０を通信装置２へ送信し、攻撃元の通信装置１ａ，１ｂのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を通知する。
【０１１７】
＜第２の動作例＞
次に、第２の動作例を説明する。図１３は、第２の動作例に係るトレースバックシステムの構成を示している。通信装置１ａ，１ｂ、通信装置２、DNSサーバ３ａ，３ｅ，３ｇ、および指令サーバ５については前述した通りである。DNSサーバ３ａ，３ｅ，３ｇは、トレースバックを実現する図１の記憶部１０と検索部１１の機能を備えている。トレースバック管理装置６は、トレースバックに係る一連の通信を管理する。
【０１１８】
通信装置１のIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名の追跡は以下のようにして行われる。通信装置１ａは第１の動作例と同様にして、DNSサーバ３ａに対して、ドメイン名「www.VVV.co.jp」に対応するIPアドレスおよびドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」および通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を取得しているものとする。同様に、通信装置１ｂは、DNSサーバ３ｇに対して、ドメイン名「www.VVV.co.jp」に対応するIPアドレスおよびドメイン名「www.XXX.co.jp」に対応するIPアドレスの再帰検索を依頼し、指令サーバ５のIPアドレス「vvv.vvv.vvv.vvv」および通信装置２のIPアドレス「xxx.xxx.xxx.xxx」を取得しているものとする。
【０１１９】
通信装置２は、自身が属するドメインの情報を管理するDNSサーバ３ｅのIPアドレスを予め記憶しているものとする。通信装置２は、攻撃を受けた時刻と、自身のIPアドレス（Destination IP）と、受信したパケットに含まれる送信元の通信装置のIPアドレス（Source IP）と、DNSサーバ３ｅのIPアドレスとを含む情報１３００をトレースバック管理装置６へ送信し、トレースバックを依頼する。
【０１２０】
情報１３００を受信したトレースバック管理装置６は、通信装置２のIPアドレスに関する再帰検索を行ったDNSサーバ（リゾルバ）を問い合わせる情報１３１０をDNSサーバ３ｅへ送信する。この情報１３１０には、通信装置２のIPアドレスが含まれている。情報１３１０を受信したDNSサーバ３ｅの制御装置は、通信装置２のIPアドレスを検索のキーとして、反復検索のDNSログに記録されているDestination IPを検索し、通信装置２のIPアドレスと一致するDestination IPを有するレコードのリゾルバIPを取得する。DNSサーバ３ｅの制御装置は、取得したリゾルバIPを含む情報１３２０をトレースバック管理装置６へ送信する。
【０１２１】
情報１３２０を受信したトレースバック管理装置６は、情報１３２０に含まれるリゾルバIPを有するDNSサーバ３ａ，３ｇにトレースバックを依頼するため、通信装置２から受信した情報１３００と同様の情報１３４０をDNSサーバ３ａ，３ｇへ送信し、トレースバックを依頼する。情報１３４０を受信したDNSサーバ３ａの制御装置は第１の動作例と同様の検索により、通信装置１ａのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を取得する。続いて、DNSサーバ３ａの制御装置は、取得したこれらの情報を含む情報１３５０をトレースバック管理装置６へ送信する。
【０１２２】
同様に、情報１３４０を受信したDNSサーバ３ｇの制御装置は第１の動作例と同様の検索により、通信装置１ｂのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を取得する。続いて、DNSサーバ３ｇの制御装置は、取得したこれらの情報を含む情報１３６０をトレースバック管理装置６へ送信する。情報１３５０，１３６０を受信したトレースバック管理装置６は、これらの情報を統合した情報１３７０を通信装置２へ送信し、攻撃元の通信装置１ａ，１ｂのIPアドレスおよび指令サーバ５のIPアドレスまたはドメイン名を通知する。
【０１２３】
上記では、DNSサーバ３ａ，３ｅ，３ｇが、自身のDNSログに基づいてトレースバックを行っているが、トレースバック管理装置６がDNSサーバ３ａ，３ｅ，３ｇからDNSログを収集し、上記と同様のトレースバックを行ってもよい。
【０１２４】
上述したように、本実施形態によれば、指令サーバのIPアドレスまたはドメイン名の追跡精度を向上することができる。
【０１２５】
（付加説明）
次に、上述した第２および第３の実施形態に関する付加説明を行う。以下、正規の名前解決によるDNSログの記録と、ボットに従う名前解決によるDNSログの記録とに現れる特徴の差異に注目してボットの活動を検出する手法を説明する。リゾルバとしてのDNSサーバのDNSログに現れる特徴を以下に列挙する。
（１）様々な国のドメインに指令サーバが設置されているため、多数の国名を表すドメイン（jp，dk等）が記録される。
（２）同じドメイン名についての名前解決を短時間に頻繁に繰り返す。
（３）多数の「.」が含まれた異常に長いドメイン名の名前解決を依頼するため、検索の失敗が多い。
（４）指令サーバのIPアドレスが頻繁に変更されるため、検索の失敗が多い。
（５）スパムメールを送信するために、前述したMXレコードを検索する。
上記のような特徴をDNSログから検出することによって、ボットの活動を検出することもできる。
【０１２６】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、上述した実施形態によるトレースバック装置の動作および機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行させてもよい。
【０１２７】
ここで、「コンピュータ」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１２８】
また、上述したプログラムは、このプログラムを記憶装置等に格納したコンピュータから、伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように、情報を伝送する機能を有する媒体のことをいう。また、上述したプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能を、コンピュータに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【図面の簡単な説明】
【０１２９】
【図１】本発明の第１の実施形態によるトレースバック装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態によるトレースバックシステムの動作を説明するための構成図である。
【図３】本発明の第１の実施形態によるトレースバックシステムで使用されるDNSログの内容を示す参考図である。
【図４】本発明の第１の実施形態によるトレースバックシステムで使用されるDNSログの内容を示す参考図である。
【図５】本発明の第１の実施形態によるトレースバックシステムの第１の動作例を説明するための構成図である。
【図６】本発明の第１の実施形態によるトレースバックシステムの第２の動作例を説明するための構成図である。
【図７】本発明の第１の実施形態によるトレースバックシステムの第３の動作例を説明するための構成図である。
【図８】本発明の第１の実施形態によるトレースバック装置の構成の変形例を示すブロック図である。
【図９】本発明の第２の実施形態によるトレースバックシステムの第１の動作例を説明するための構成図である。
【図１０】本発明の第２の実施形態によるトレースバックシステムで使用されるDNSログの内容を示す参考図である。
【図１１】本発明の第２の実施形態によるトレースバックシステムの第２の動作例を説明するための構成図である。
【図１２】本発明の第３の実施形態によるトレースバックシステムの第１の動作例を説明するための構成図である。
【図１３】本発明の第３の実施形態によるトレースバックシステムの第２の動作例を説明するための構成図である。
【図１４】ボットによる通信のモデルを示す参考図である。
【符号の説明】
【０１３０】
１，１ａ，１ｂ，２・・・通信装置、３ａ，３ｂ，３ｃ，３ｄ，３ｅ，３ｆ，３ｇ・・・DNSサーバ、４・・・DNSログ管理装置、５・・・指令サーバ、６・・・トレースバック管理装置、１０・・・記憶部、１１・・・検索部
【図１】
0004999787.tif 000002
【図２】
0004999787.tif 000003
【図３】
0004999787.tif 000004
【図４】
0004999787.tif 000005
【図５】
0004999787.tif 000006
【図６】
0004999787.tif 000007
【図７】
0004999787.tif 000008
【図８】
0004999787.tif 000009
【図９】
0004999787.tif 000010
【図１０】
0004999787.tif 000011
【図１１】
0004999787.tif 000012
【図１２】
0004999787.tif 000013
【図１３】
0004999787.tif 000014
【図１４】
0004999787.tif 000015