説明

検疫制御装置、検疫制御コンピュータプログラム、通信妨害方法、端末装置、エージェントコンピュータプログラム、コンピュータプログラムセット、及び誤学習処理方法

【課題】端末装置への疑似ARP応答パケット送信をユニキャストで行いつつも、パケットの通信量や検疫制御装置の処理量の増加を抑える。
【解決手段】通信の妨害処理を行う通信妨害部を備えた検疫制御装置であって、前記通信妨害部は、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが検疫制御装置のMACアドレスである疑似ARP応答パケットをブロードキャスト送信する第1疑似ARP応答送信部と、疑似ARP応答パケットをユニキャスト送信する第2疑似ARP応答送信部と、第1疑似ARP応答送信部によってブロードキャスト送信された疑似ARP応答パケットでは、妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置を識別する識別部と、を備え、第2疑似ARP応答送信部は、誤学習不能端末装置に対して、疑似ARP応答パケットをユニキャスト送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク検疫に用いられる検疫制御装置等に関するものである。
【背景技術】
【0002】
ネットワーク検疫は、許可のない不正なPC等の端末装置によるネットワークアクセスを排除するものである。このようなネットワーク検疫を行うものとしては、非特許文献1に記載のものがある。
【非特許文献1】InterSec/NQ30b,[online],NEC,[2008年10月1日検索],インターネット<http://www.express.nec.co.jp/pcserver/products/appliance/nq/index.html>
【発明の開示】
【発明が解決しようとする課題】
【0003】
ここで、本出願人は、先の出願(特願2007−119127号)において、検疫制御装置が、通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行うことを開示している。
前記先の出願における妨害処理は、送信元IPアドレスが妨害対象端末装置のIPアドレスであり、送信元MACアドレスが偽MACアドレスである疑似ARP応答を、検疫制御装置がブロードキャスト送信することによって行われる。
【0004】
疑似ARP応答がブロードキャスト送信されることで、ネットワーク内の他の端末装置は、妨害対象端末装置のMACアドレスを誤って学習する。この結果、妨害対象端末装置への通信が妨害される。
【0005】
さて、本発明者らの更なる検討の結果、疑似ARP応答のブロードキャスト送信では、妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置があり、意図した通信妨害を行えないことがあることを見出した。ただし、誤学習不能端末装置であっても、疑似ARP応答をユニキャストで送信すれば、妨害対象端末装置のMACアドレスを誤学習させることができた。
【0006】
疑似ARP応答のブロードキャスト送信では誤学習をしない現象は、端末装置に搭載されているOSが、WindowsVista及びWindowsServer2008(以下、「Vista系OS」という)である場合に生じた(Windows、WindowsVista、及びVistaは登録商標、以下同様)。
Vista系OSにて実際に送受信されるパケットから推測すると、Vista系OSでは、ブロードキャストされたARP応答を受け取った場合、そのARP応答に含まれるMACアドレスを直ちに学習せず、そのARP応答の送信元IPアドレスを手がかりに、ARP応答の送信元に対してMACアドレスを確認する処理を行うためではないかと推察される。
なお、WindowsXP(登録商標)など、Vista系OSよりも前のバージョンのOSやVista系以外のその他のOSでは、ブロードキャスト疑似ARPにより誤学習をさせることができた。
【0007】
Vista系OSのように疑似ARP応答のブロードキャスト送信では、妨害対象端末装置のMACアドレスを誤学習させることができないOSを持つ端末装置が、ネットワーク内に存在することを前提とすると、疑似ARP応答は、ユニキャストで送信する必要がある。
しかし、各端末装置へユニキャストで疑似ARP応答を送信すると、パケットの通信量や検疫制御装置の処理量が増加するという問題が発生する。つまり、妨害対象端末装置が1台存在するごとに、ネットワーク内の全端末装置にユニキャスト疑似ARP応答を送信することになり、ネットワーク内の端末装置数と妨害対象端末装置の積に比例して負荷が増加する。
【0008】
そこで、本発明は、端末装置への疑似ARP応答送信をユニキャストで行いつつも、パケットの通信量や検疫制御装置の処理量の増加を抑えることを目的とする。
【課題を解決するための手段】
【0009】
[検疫制御装置]
(1)本発明は、ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害部を備えた検疫制御装置であって、前記通信妨害部は、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ブロードキャスト送信する第1疑似ARP応答送信部と、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信する第2疑似ARP応答送信部と、前記第1疑似ARP応答送信部によってブロードキャスト送信された前記疑似ARP応答では、前記妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置を識別する識別部と、を備え、前記第2疑似ARP応答送信部は、前記識別部によって誤学習不能端末装置であると識別された端末装置に対して、前記疑似ARP応答をユニキャスト送信することを特徴とする検疫制御装置である。
【0010】
上記本発明によれば、疑似ARP応答のブロードキャスト送信とユニキャスト送信が併用され、疑似ARP応答のブロードキャスト送信では、誤学習させることができない誤学習不能端末装置に対して、ユニキャストを送信すれば足りるため、端末装置への疑似ARP応答送信をユニキャストで行っても、通信量や処理量の増加を抑えることができる。
【0011】
(2)前記識別部は、前記誤学習不能端末装置のうち所定の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外する除外手段を備えるのが好ましい。この場合、ユニキャスト疑似ARP応答の必要のない端末装置を、ユニキャスト送信の対象から除外でき、通信量や処理量の増加を抑えることができる。
【0012】
(3)前記除外手段が除外する端末装置は、エージェントが搭載された誤学習不能端末装置であり、前記エージェントは、当該エージェントが搭載された誤学習不能端末装置に対して妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行うものであるのが好ましい。この場合、エージェントが、端末装置に対する誤学習処理を行えるため、エージェントが搭載されている端末装置は、ユニキャスト送信の対象から除外でき、通信量や処理量の増加を抑えることができる。なお、エージェントは、ネットワーク配下の各端末装置に常駐する専用プログラムである。
【0013】
(4)前記疑似ARP応答をユニキャスト送信する対象から除外する除外端末装置を示す除外端末装置リストを備え、前記除外手段が除外する端末装置は、前記除外端末装置リストに示される除外端末装置であるのが好ましい。この場合、ユニキャスト疑似ARP応答の送信が不要な端末装置を、除外端末装置リストに登録しておけば、誤学習不能端末装置であっても、ユニキャスト送信の対象から除外でき、通信量や処理量の増加を抑えることができる。
【0014】
(5)前記除外手段が除外する端末装置は、前記妨害対象端末装置の通信相手以外の端末装置であるのが好ましい。妨害対象端末装置の通信相手以外の端末装置は、疑似ARP応答をユニキャスト送信しなくても、直ちに問題が生じるわけではない。そこで、前記妨害対象端末装置の通信相手以外の端末装置を、ユニキャスト送信の対象から除外することで、通信量や処理量の増加を抑えることができる。
【0015】
(6)前記除外手段は、妨害対象端末装置が、妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置に状態遷移した後の最初の妨害処理の際には、前記妨害対象端末装置の通信相手以外の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外せず、前記状態遷移した後の2回目以降の妨害処理の際には、前記妨害対象端末装置の通信相手以外の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外するものであるのが好ましい。
妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置に状態遷移した後の最初の妨害処理の際には、ネットワーク上の各端末装置が、妨害対象端末装置のMACアドレスを既に認識しているおそれがある。このため、状態遷移した後の最初の妨害処理の際には、妨害対象端末装置の通信相手以外の端末装置を、疑似ARP応答をユニキャスト送信する対象から除外せず、2回目以降において除外することで、確実な妨害が行える。
【0016】
(7)妨害対象端末装置と、その通信相手とを記憶するための通信相手テーブルを備え、前記除外手段は、前記通信相手テーブルを参照することで、前記妨害対象端末装置の通信相手を認識するのが好ましい。この場合、容易に通信相手を把握できる。
【0017】
(8)前記第2疑似ARP応答送信部は、前記妨害対象端末装置のMACアドレスを誤学習している端末装置が妨害対象端末装置のMACアドレスを確認するARP要求を行ったときに、当該ARP要求を送信した前記端末装置に対して、前記疑似ARP応答を送信するのが好ましい。この場合、検疫制御装置は、上記確認に対して、疑似ARP応答で応答することができ、誤学習状態を維持することができる。
【0018】
(9)前記通信妨害部は、妨害処理を、前記妨害対象端末装置の通信検出時に実行するとともに、定期的に実行するよう構成され、前記妨害対象端末装置の通信検出時における妨害処理では、前記疑似ARP応答のブロードキャスト送信とともに、前記疑似ARP応答のユニキャスト送信を行い、定期的に実行する妨害処理では、前記疑似ARP応答のユニキャスト送信は行わずに、前記疑似ARP応答のブロードキャスト送信を行うのが好ましい。この場合、定期的な妨害処理ではユニキャスト送信がされないため、通信量や処理量を抑えることができる。
【0019】
(10)前記端末装置が前記誤学習不能端末装置であるか否かを識別するための識別情報を、前記端末装置から取得する取得手段を備え、前記識別部は、前記取得手段によって取得した識別情報に基づいて、誤学習不能端末装置を識別するのが好ましい。この場合、検疫制御装置は、誤学習不能端末装置を容易に識別することができる。
【0020】
(11)前記識別部は、前記端末装置が有するOSの種別によって、誤学習不能端末装置を識別するのが好ましい。
【0021】
(12)妨害対象端末装置を示す情報を、端末装置に搭載された前記エージェントに対して送信する送信手段を備えているのが好ましい。この場合、エージェントは、妨害対象端末装置を示す情報に基づいて、誤学習処理を行うことができる。
【0022】
(13)前記送信手段は、端末装置が、妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置へ状態遷移したとき、又は、妨害が必要な妨害対象端末装置から妨害が必要ではない非妨害対象端末装置へ状態遷移したときに、妨害対象端末装置を示す情報を送信するのが好ましい。この場合、エージェントは、状態遷移が生じたときに、妨害対象端末装置を示す情報を取得でき、適切なタイミングで誤学習処理を行える。
【0023】
[検疫制御コンピュータプログラム]
(14)他の観点からみた本発明は、コンピュータを、前記(1)〜(13)のいずれか1項に記載の検疫制御装置として機能させるための検疫制御コンピュータプログラムである。
【0024】
[通信妨害方法]
(15)他の観点からみた本発明は、ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害方法であって、前記妨害処理では、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ブロードキャスト送信するとともに、前記第1疑似ARP応答送信部によってブロードキャスト送信された前記疑似ARP応答では、前記妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置に対して、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信することを特徴とする通信妨害方法である。なお、ブロードキャスト送信とユニキャスト送信の送信順序は特に限定されない。
【0025】
(16)前記妨害処理では、前記端末装置が誤学習不能端末装置であるか否かを示す情報を、当該端末装置から取得することで、前記誤学習不能端末装置を識別するのが好ましい。
【0026】
[端末装置]
(17)他の観点からみた本発明は、エージェントが搭載された端末装置であって、前記エージェントは、通信の妨害が必要とされる妨害対象端末装置のMACアドレス以外の偽MACアドレスが、前記妨害対象端末装置のMACアドレスであるとする誤学習を、当該エージェントが搭載された端末装置に対して行わせる誤学習処理部を備えていることを特徴とする端末装置である。この場合、エージェントが端末装置に対して、妨害対象端末装置のMACアドレスを誤学習させることができる。したがって、エージェントが搭載された端末装置に対しては、疑似ARP応答のユニキャスト送信をする必要がなく、通信量や処理量の増加を抑えることができる。
【0027】
(18)前記エージェントは、妨害対象端末装置を示す情報を、ネットワークを通じて端末装置外部から取得する手段を備えているのが好ましい。この場合、エージェントは、妨害対象端末装置を示す情報を容易に取得できる。
【0028】
(19)前記エージェントは、前記(12)又は(13)に記載の検疫制御装置から、妨害対象端末装置を示す情報を取得するのが好ましい。この場合、エージェントは、妨害対象端末装置を示す情報を容易に取得できる。
【0029】
(20)他の観点からみた本発明は、エージェントが搭載された端末装置であって、前記(1)〜(13)のいずれか1項に記載の検疫制御装置に対し、当該エージェントが搭載された端末装置が、前記誤学習不能端末装置であるか否かを示す情報を送信する送信手段を備えていることを特徴とする端末装置である。この場合、検疫制御装置は、誤学習不能端末装置であるか否かを示す情報を、端末装置から取得することができる。
【0030】
(21)前記送信手段は、当該エージェントが搭載された端末装置が前記誤学習不能端末装置であるか否かを示す情報として、当該エージェントが搭載された端末装置が有するOSの種別を送信するのが好ましい。
【0031】
[エージェントコンピュータプログラム]
(22)他の観点からみた本発明は、コンピュータを、前記(17)〜(21)のいずれか1項に記載のエージェントとして機能させるためのエージェントコンピュータプログラムである。
【0032】
[コンピュータプログラムセット]
(23)他の観点からみた本発明は、コンピュータを、前記(1)〜(13)のいずれか1項に記載の検疫制御装置として機能させるための検疫制御コンピュータプログラムと、コンピュータを、前記(17)〜(21)のいずれか1項に記載のエージェントとして機能させるためのエージェントコンピュータプログラムと、を含むコンピュータプログラムセットである。
【0033】
[誤学習処理方法]
(24)他の観点からみた本発明は、エージェントが搭載された端末装置における誤学習処理方法であって、前記エージェントは、通信の妨害が必要とされる妨害対象端末装置のMACアドレス以外の偽MACアドレスが、前記妨害対象端末装置のMACアドレスであるとする誤学習を、当該エージェントが搭載された端末装置対して行わせることを特徴とする誤学習処理方法である。
【0034】
[通信妨害方法]
(25)他の観点からみた本発明は、検疫制御装置と端末装置とがネットワークを介して接続された検疫システムにおいて、前記端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害を行う方法であって、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、前記検疫制御装置がユニキャスト送信するユニキャスト送信ステップと、前記端末装置に搭載されたエージェントが、当該エージェントが搭載された端末装置に対して前記妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行う誤学習処理ステップと、を含み、前記ユニキャスト送信ステップでは、前記妨害対象端末装置以外の端末装置であって、かつエージェントが搭載されていない端末装置へ、前記疑似ARP応答をユニキャスト送信することを特徴とする通信妨害方法である。
上記発明によれば、エージェントが搭載された端末装置へは、ユニキャスト疑似ARP応答の送信が行われず、エージェントによって端末装置における誤学習が行われる。したがって、疑似ARP応答をユニキャスト送信が必要な端末装置の数を少なくできる。よって、端末装置への疑似ARP応答送信をユニキャストで行っても、通信量や処理量の増加を抑えることができる。
【0035】
[検疫制御装置]
(26)他の観点からみた本発明は、ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害部を備えた検疫制御装置であって、前記通信妨害部は、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信する疑似ARP応答送信部を備え、前記疑似ARP応答送信部は、妨害対象端末装置以外の端末装置であって、かつエージェントが搭載されていない端末装置へ、前記疑似ARP応答を送信するものであり、前記エージェントは、当該エージェントが搭載された端末装置に対して妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行うものであることを特徴とする検疫制御装置である。上記本発明によれば、エージェントが搭載された端末装置へは、ユニキャスト疑似ARP応答の送信が行われず、エージェントによって端末装置における誤学習が行われる。したがって、疑似ARP応答をユニキャスト送信が必要な端末装置の数を少なくできる。よって、端末装置への疑似ARP応答送信をユニキャストで行っても、通信量や処理量の増加を抑えることができる。
【発明の効果】
【0036】
本発明によれば、端末装置への疑似ARP応答送信をユニキャストで行っても、通信量や処理量の増加を抑えることができる。
【発明を実施するための最良の形態】
【0037】
以下、本発明の実施形態を図面に基づいて説明する。
[1.検疫システムの全体構成]
図1は、検疫システム1の全体を示している。この検疫システム1は、LAN等のネットワーク(TCP/IPネットワーク)に、ネットワーク検疫制御を行う検疫制御装置2、ネットワーク検疫の対象となるPC等の検疫対象となる端末装置3a,3b、及び検疫管理サーバ4を接続して構成されている。なお、複数の検疫対象端末装置3a,3bを特に区別しない場合には、「検疫対象端末装置3」と総称する。
【0038】
また、検疫制御装置2による検疫対象となる同一ネットワークセグメントN内には、前記検疫対象端末装置3a,3bとしては機能しないが検疫の対象にできるプリンタ7等の什器や、同じく検疫対象端末装置3a,3bとしては機能しないが検疫の対象にできるPC等の端末装置8が存在していてもよい。また、検疫対象端末装置3、プリンタ7等の什器、及び端末装置8は、ネットワークにおける「端末装置」という点では共通しているため、必要に応じて、これらを総称して、「端末装置」ということもある。
また、図1には、社内サーバ5、ルータ6を示しているが、これらは検疫システム1には直接関係のない構成要素である。
【0039】
[2.検疫システムコンピュータプログラムセット]
検疫制御装置2、検疫対象端末装置3、及び検疫管理サーバ4は、コンピュータプログラムを実行可能なコンピュータによって構成されており、それぞれ、コンピュータプログラムが記憶されるハードディスクやメモリ等の記憶部(図示省略)と、コンピュータプログラムを実行するためのCPU等の演算部(図示省略)とを有している。
【0040】
図1に示すように、検疫制御装置2には検疫制御コンピュータプログラムP1がインストールされている。検疫対象端末装置3にはエージェントコンピュータプログラムP2がインストールされている。エージェントコンピュータプログラムPが端末装置3にインストールされることで、端末装置3がエージェントとして機能する。
また、検疫管理サーバ4には検疫管理コンピュータプログラムP3がインストールされている。
これらのコンピュータプログラムP1,P2、及び必要であればP3、を総称して、検疫システムコンピュータプログラムセットという。
なお、ネットワークセグメントN内の装置のうち、プリンタ7等の什器や端末装置8には、エージェントコンピュータプログラムP2がインストールされていない。
【0041】
図2に示すように、検疫システムコンピュータプログラムセットは、1又は複数のコンピュータ読み取り可能な記録媒体(CD−ROM等)C1,C2,C3に記録されて、検疫システムのユーザに提供される。なお、検疫システムコンピュータプログラムセット又は個々のコンピュータプログラムP1,P2,P3のユーザへの提供は、インターネット上の図示しないプログラム提供サーバから、装置2,3,4がコンピュータプログラムP1,P2,P3をダウンロードすることによって行っても良い。
また、検疫制御コンピュータプログラムP1は、CD−ROM等の可搬型記録媒体C2ではなく、検疫制御装置2にプリインストールされた状態で、ユーザに提供することも可能である。
【0042】
[3.検疫制御装置2]
検疫制御装置2は、TCP/IPによるネットワーク通信をサポートするOS(例えばWindows(登録商標),Linux(登録商標))がインストールされたコンピュータに、検疫制御コンピュータプログラムP1をインストールして構成されている。なお、検疫制御装置2のOSとしてWindows(登録商標)を採用した場合、そのバージョンは特に限定されない。
【0043】
図3は、検疫制御コンピュータプログラムP1がコンピュータによって実行されることで、当該コンピュータが発揮する検疫制御装置2としての様々な機能を示している。
図3に示すように、検疫制御装置2は、検査部210、判定部220、端末情報テーブル230、テーブル更新部240、通信監視部(ARP要求監視部)250、通信妨害部260、通信正常化部270、例外通信部280、未登録端末装置処理部290、及び第1端末情報テーブル送信部295を備えている。
【0044】
[3.1 端末情報テーブル230]
図3の端末情報テーブル230の詳細を図4に示す。端末情報テーブル230は、ネットワーク上の端末装置の通信の妨害処理の要否を判定するために用いられるものであり、第1端末情報テーブル230a及び第2端末情報テーブル230bを有している。
なお、第2端末情報テーブル230bは、許可端末情報テーブル233、禁止端末情報テーブル234、及び例外情報テーブル235を有して構成されている。
【0045】
[3.1.1 第1端末情報テーブル230a]
第1端末情報テーブル230aは、後述するエージェントpingによって、端末装置から取得した情報を保持する領域である。
この第1端末情報テーブル230aには、端末装置のIPアドレスを記憶する領域230a−1、端末装置のMACアドレスを記憶する領域230a−2、端末装置に搭載されているエージェントのIDを記憶する領域230a−3、端末装置が合格端末であるか隔離端末であるかを示す情報(端末情報)を記憶する領域230a−4、端末装置が有するOSの種別を示す情報(OS情報)を記憶する領域230a−5、及びエージェントping応答の有無を示す情報を記憶する領域230a−6を有している。
【0046】
前記領域230a−4の端末情報は、検疫対象端末装置3がその内部状態を所定の検査ポリシーに従って検査した検査結果が「合格」であるか、「隔離」(=「不合格」)であるかを示す情報である。以下、前記領域230a−4の端末情報として、「合格」が記録されている端末装置は、「合格端末」というものとする。また、以下、前記領域230a−4の端末情報として、「隔離」が記録されている端末装置は、「隔離端末」というものとする。
なお、端末装置の検査結果(検査ポリシーチェック結果)は、後述する「エージェントping」機能により、検疫対象端末装置(エージェントコンピュータプログラムP2)3から取得する。
また、前記領域230a−4の端末情報が「隔離」となるのは、端末装置の検査結果が「隔離」であった場合のほか、エージェントコンピュータプログラムP2がインストールされていない場合や、その他隔離して通信を妨害すべき場合である。
【0047】
前記領域230a−5のOS情報は、「エージェントping」機能により、検疫対象端末装置(エージェントコンピュータプログラムP2)3から取得する。このOS情報は、端末装置が、誤学習不能端末装置であるか否かの識別に用いられる(詳細は後述)。
【0048】
前記領域230a−6は、エージェントping機能による端末装置の確認時に、端末装置のエージェント機能(エージェントコンピュータプログラムP2による機能)からの応答があったか否かを記録するためのものである。この領域230a−6を設けることで、隔離端末が、検査結果に基づいて隔離されたものか、エージェントコンピュータプログラムP2がインストールされていないためにエージェントping応答ができないことから、隔離されたものかを区別することができる。
【0049】
[3.1.2 第2端末情報テーブル]
[3.1.2.1 許可端末情報テーブル233]
許可端末情報テーブル233は、常に、通常のネットワーク通信を許可する端末装置の一覧情報(MACアドレス又はIPアドレスの一覧)を保持する領域である。ここで、許可端末情報テーブル233に登録されている端末装置は、「許可端末」というものとする。
【0050】
許可端末には、プリンタ7等の什器や、エージェントコンピュータプログラムP2をサポートしないOSを搭載する端末装置8などがなり得る。また、許可端末には、検疫対象端末装置3を含めても良い。許可端末とされている端末装置については、検査結果の如何又は検査結果の有無にかかわらず、通信が許可される。
なお、許可端末情報は、後述する「管理用通信機能」により、検疫管理サーバ4から取得する。
【0051】
[3.1.2.2 禁止端末情報テーブル234]
禁止端末情報テーブル234には、無条件に通常の通信を禁止する(妨害する)端末装置の一覧情報(MACアドレス又はIPアドレスの一覧)を保持する領域である。ここで、禁止端末情報テーブル234に登録されている端末装置は、「禁止端末」というものとする。禁止端末とされている端末装置については、当該端末装置から受信した検査結果にかかわらず、妨害処理が必要であると判定される。
なお、禁止端末情報は、後述する「管理用通信機能」により、検疫管理サーバ4から取得する。
【0052】
[3.1.2.3 例外情報テーブル235]
例外情報テーブル235は、検疫対象端末装置の検査結果が「隔離」(=「不合格」)であった検疫対象端末装置3からでも通信できる、例外的な通信相手の一覧情報(IPアドレスの一覧)を保持する領域である。
なお、例外情報テーブルは、後述する「管理用通信機能」により、検疫管理サーバ4から取得する。
【0053】
[3.1.3 端末情報テーブルについての補捉説明]
第1端末情報テーブル230aは、エージェントping応答に基づいて、テーブルの内容が更新されるものである。
これに対し、第2端末情報テーブル230bを構成する、許可端末情報テーブル233、禁止端末情報テーブル234、及び例外情報テーブル235は、検疫管理サーバ4から取得されるものである。
【0054】
[3.2検疫制御装置の主要な機能]
検疫制御装置2の主要な機能は、エージェントping機能、検疫管理サーバ4との間で行う管理用通信機能、及びネットワーク内の通信妨害処理等を行うネットワーク通信制御機能であり、これらの機能は、図3に示す各部によって実現される。
【0055】
[3.2.1 検疫制御装置のエージェントping機能(検査結果送信要求機能)]
検疫制御装置2は、独自のネットワークプロトコルとして、「エージェントping」を有している。エージェントpingは、検疫対象端末装置3に対し、検査結果の送信を要求するものである。
エージェントpingに関する処理は、図3に示す検査部(エージェントping機能部)210によって行われる。
【0056】
検査部210は、エージェントping(検査結果送信要求)を送信するエージェントping送信部(検査結果送信要求部)211を備えている。このエージェントping送信部211は、検査結果が必要な端末装置に対してエージェントpingを送信する。
【0057】
エージェントping送信のタイミング等は、エージェントping送信管理部212によって管理される。エージェントping送信は、例えば、第1端末情報テーブル230aに登録されている端末装置に対して定期的に行われる他、検疫制御装置2にとって未知の端末装置(いずれの端末情報テーブルにも登録されていない端末装置)による通信データがネットワーク上に流れていることを通信監視部250が補捉したときにも行われる。これらの、エージェントping送信のタイミングの詳細については後述する。
【0058】
検疫対象端末装置3(のエージェントコンピュータプログラムP2)は、エージェントpingによる要求を受け付けると、検査結果を「エージェントping応答」として送信する。この応答は、検査部210のエージェントping応答受信部(検査結果受信部)213によって受信される。エージェントping応答は、第1端末情報テーブル230aに登録すべき情報である、端末装置のIPアドレス、MACアドレス、エージェントID、端末情報(検査結果)、OS情報を含むものである。
なお、エージェントping応答受信部213は、端末装置のOS情報も受信するため、OS情報(学習不能端末であるか否かを識別するための識別情報)を取得する取得手段でもある。
【0059】
検疫制御装置2は、エージェントping応答を解析して、受信した端末情報(検査結果)に基づいて、端末装置の状態(合格/隔離)を判定する。また、検疫制御装置2は、エージェントping応答に含まれるIPアドレス、MACアドレス、エージェントID、端末情報(検査結果)、OS情報、及びエージェントping応答有の情報を、第1端末情報テーブル230aに登録する。また、エージェントpingを送信しても、エージェントping応答のない端末装置8については、その端末装置8を、隔離端末とするとともに、エージェントping応答無の情報を含めて、第1端末情報テーブル230aに登録される。
なお、端末装置の判定は検疫制御装置2の判定部220によって行われ、第1端末情報テーブル230aへの登録は、テーブル更新部240によって行われる(図3参照)。
【0060】
また、検査部210は、検疫対象端末装置3からエージェントpingの送信開始の要求を受信するエージェントping開始要求受信部(開始要求受信部)214を有している。検疫制御装置2がエージェントping開始要求を受信すると、当該開始要求を送信した検疫対象端末装置3に対し、エージェントpingを送信する。
【0061】
[3.2.2 検疫制御装置2の管理用通信機能]
検疫制御装置2は、検疫管理サーバ4との間で、端末情報テーブル230のうち、第2端末情報テーブル230b(許可端末情報テーブル233,禁止端末情報テーブル234,例外情報テーブル235)及び後述の静的リストテーブル263の各内容のやりとりを行うことができる。第2端末情報テーブル230b及び静的リストテーブル263のやりとりは、検疫制御装置2の第2端末情報テーブル&静的リストテーブル更新部(管理用通信部)242によって行われる(図3参照)。
第2端末情報テーブル&静的リストテーブル更新部242は、検疫管理サーバ4から取得した第2端末情報テーブル230bの内容を検疫制御装置2の第2端末情報テーブル230bの各テーブル領域233,234,235に保存するとともに、検疫管理サーバ4から取得した静的リストテーブル263の内容を検疫制御装置2の静的リストテーブル263に保存する。
【0062】
第2端末情報テーブル230b及び静的リストテーブル263の内容は、後述のように検疫管理サーバ4上で、管理者によってメンテナンスされ、管理者からの要求によって検疫管理サーバ4から、検疫制御装置2に送信される。また、検疫制御装置2(の第2端末情報テーブル&静的リストテーブル更新部242)が必要に応じて、検疫管理サーバ4から第2端末情報テーブル230bを取得してもよい。
【0063】
[3.2.3 検疫制御装置2の通信妨害機能]
検疫制御装置2は、通信の妨害処理が必要な端末装置に対して、通信妨害を行う通信妨害部260を備えている(図3参照)。通信妨害処理は、MACアドレス又はIPアドレスが許可端末情報テーブル233に登録されている端末装置(許可端末)、又は検査結果が合格である端末装置(合格端末)に対しては、行わない。
逆に、禁止端末情報テーブル234に登録されている端末装置(禁止端末)、検査結果が隔離(=不合格)である端末装置(隔離端末)、又はエージェントpingに応答せず検査結果を特定できない端末装置(隔離端末)には、通信妨害処理を行う。
【0064】
ただし、禁止端末又は隔離端末の通信相手が、例外情報テーブル235に登録されている装置である場合には、その通信に限り、通信妨害処理は行わない。このような例外的な通信許可のため検疫制御装置2は、例外通信部280を備えている(図3参照)。
【0065】
また、検疫制御装置2は、一旦、通信妨害処理を行った端末装置について妨害処理の必要がなくなった場合には、通信を正常化することができる。このような通信正常化のため、検疫制御装置2は、通信正常化部270を備えている(図3参照)。
【0066】
さらに、検疫制御装置2は、端末装置に搭載されたエージェントによっても通信妨害処理を行わせるため、第1端末情報テーブル230aの内容を、各エージェントへ送信するための第1端末情報テーブル送信部295を備えている。エージェントによる通信妨害処理については後述する。
【0067】
[4.検疫対象端末装置3]
検疫対象端末装置3は、TCP/IPによるネットワーク通信をサポートするOSがインストールされたコンピュータに、当該コンピュータの内部状態を所定の検査ポリシーに従って検査するためのエージェントコンピュータプログラムP2をインストールして構成されている。
本システムのネットワーク内の検疫対象端末装置3及びその他の端末装置7,8には、WindowsVistaやWindowsServer2008等のVista系OSを有する端末装置と、WindowsXPなどの非Visita系OSを有する端末装置とか混在している。ただし、端末装置のOSは、上記したものに限定されるわけではない。なお、Windows、WindowsVista、及びVistaは登録商標であり、以下同様である。
【0068】
図5は、エージェントコンピュータプログラムP2がコンピュータによって実行されることで、当該コンピュータが発揮する検疫対象端末装置3としての様々な機能(エージェントとしての機能)を示している。
図5に示すように、検疫対象端末装置3は、検査制御部310、検査ポリシー受信部320、検査部330、及び誤学習処理部340を備えている。
【0069】
検査制御部310は、検疫対象端末装置3が、所定の検査ポリシーに従って検査するタイミング等の検査処理に関する制御を行う。検査は、例えば、定期的又は必要に応じて随時行われる。
検査ポリシー受信部320は、予め検疫管理サーバ4から検査ポリシーを取得する。なお、検査ポリシー受信部320は、検査を行うときに、検査ポリシーを取得してもよい。また、検査時に検疫対象端末装置3と検疫管理サーバ4が直接通信を行う必要はない。
【0070】
検査部330は、所定の検査ポリシー(検疫ポリシー)に従って、エージェントコンピュータプログラムP2がインストールされたコンピュータ(検疫対象端末装置3)の内部状態の検査を行う。
【0071】
検査ポリシーとしては、例えば、エージェントコンピュータプログラムP2が最新かどうか、エージェントから検疫管理サーバ4へインベントリ送信が行われているかどうか、OSの自動ログオン設定が無効になっているかどうか、OSのスクリーンセーバ設定及びパスワードロックが有効になっているかどうか、管理者により指定されたソフトウェアが検疫対象端末装置3にインストールされているかどうか、管理者により使用禁止に指定されているソフトウェアが検疫対象端末装置3にインストールされていないかどうか、ウィルス対策ソフトウェアのリアルタイムスキャン機能が有効になっているかどうか、ウィルス対策ソフトウェア・当該ソフトウェアのエンジン及び当該ソフトウェアのパターンファイルがそれぞれ最新かどうか、OSのUpdateが実施されているかどうか、最新のOS月例パッチが適用されているかどうか、検疫対象端末装置3上の指定のファイルが存在するかどうか(或いは存在しないかどうか)、検疫対象端末装置3の指定のOSレジストリ・キーが存在するかどうか(或いは存在しないかどうか)、が挙げられる。
【0072】
検疫対象端末装置3における検査部330の検査実行部331は、前記検査ポリシーに従って、検疫対象端末装置3の内部状態の検査を行う。この検査は、定期的又は必要に応じて随時行われる。
【0073】
前記検査部330は、検疫制御装置2からエージェントpingをネットワーク経由で受信するエージェントping受信部(検査結果送信要求受信部)332と、検査結果からエージェントping応答を生成するエージェントping応答生成部333と、エージェントpingを受信するとエージェントping応答を前記検疫制御装置2へ送信するエージェントping応答送信部(検査結果送信部)334を備えている。
エージェントping応答送信部334は、エージェントping応答として、前記検査結果(端末情報)の他、端末IPアドレス、MACアドレス、エージェントID、及びOS情報を送信する。つまり、エージェントping応答送信部は、エージェントが搭載されている端末装置が有するOSの種別を送信する手段でもある。
【0074】
検疫対象端末装置3の検査部330は、検疫制御装置2に対し、エージェントpingの送信開始を積極的に要求するエージェントping開始要求送信部(開始要求送信部)335を有している。検疫対象端末装置3は、一度、エージェントpingを受信すると、当該エージェントpingから検疫制御装置2のMACアドレス及びIPアドレスを取得することができるので、それ以降は、検疫対象端末装置3から、エージェントping送信開始の要求を、検疫制御装置2に対して行うことができる。
【0075】
エージェントping送信開始の要求は、例えば、検疫対象端末装置3が自らを検査したときに、その結果が前回の検査結果と異なる度に行うことができる。検疫対象端末装置3が、積極的に、エージェントping送信開始の要求を行うことで、検査結果が変化した場合、直ちに、検疫制御装置2に結果変化を把握させることができる。
【0076】
誤学習処理部340は、検疫制御装置2から第1端末情報テーブル230aの内容を受信するための端末情報受信部341と、ARPテーブルを操作して端末装置(に搭載されたOS)に妨害対象端末装置のMACアドレスを誤学習させるためのARPテーブル操作部342とを備えている。エージェントによる誤学習処理については後述する。
【0077】
[5.検疫管理サーバ4]
検疫管理サーバ(検疫管理コンピュータ)4は、TCP/IPによるネットワーク通信をサポートするOSがインストールされたコンピュータに、検疫管理コンピュータプログラムP3をインストールして構成されている。
【0078】
図6は、検疫管理コンピュータプログラムP3がコンピュータによって実行されることで、当該コンピュータが発揮する検疫管理サーバ4としての様々な機能を示している。
図6に示すように、検疫管理サーバ4は、テーブル生成部410、テーブル送信部420、検査ポリシー生成部430、及び検査ポリシー送信部440を備えている。
【0079】
テーブル生成部410は、管理者が、第2端末情報テーブル230b(許可端末情報テーブル233、禁止端末情報テーブル234、例外情報テーブル235)及び静的リストテーブル263の生成及び/又は管理を行うためのものである。
テーブル送信部420は、生成された第2端末情報テーブル230b及び静的リストテーブル263を検疫制御装置2へ送信するためのものである。
【0080】
検査ポリシー生成部430は、管理者が、検査ポリシーの生成及び/又は管理を行うためのものである。
検査ポリシー送信部440は、生成された検査ポリシーを検疫対象端末装置2へ送信するためのものである。
【0081】
[6.検疫システムにおける各種処理]
[6.1 ARP:Address Resolution Protocol]
検疫制御装置2及び検疫対象端末装置3に搭載されたOSがサポートするTCP/IPにおけるプロトコルの一つとしてARP(Address Resolution Protocol;アドレス解決プロトコル)がある。このARPは、ある端末装置のIPアドレスから、当該端末装置のMACアドレスを取得するためのプロトコルである。ARPは、OSがサポートする機能であるが、検疫システム1において用いられるため、以下で説明する。
【0082】
図7は、ARPの概要シーケンスを示している。ここでは、図7に示すIPアドレス及びMACアドレスを有する端末A及び端末Bを想定する。図7は、端末Aが、端末BのIPアドレスから端末BのMACアドレスを取得する過程を示している。なお、端末Aは、端末BのIPアドレスをDNSなどから予め取得しているものとする。
【0083】
まず、端末Aは、自分のARPテーブルに端末Bに関するエントリがあるかどうかを確認する。エントリがなければ、端末BのMACアドレスを取得するため、ARP要求パケットを載せたイーサフレームをネットワークにブロードキャストする(ステップS1−1)。
【0084】
端末Bを含む同一ネットワークセグメント内の全端末は、(端末Aからの)ARP要求パケットを受信した時点で、自身のARPテーブルに送信元(=端末A)のIPアドレス及びMACアドレスをエントリする。このエントリは、端末Aとの間の通信が一定時間なければ削除される。なお、すでに端末Aがエントリされていた場合は、MACアドレスを最新の情報に上書きする(ステップS1−2)。
【0085】
ARPを要求されている端末(=端末B)は、送信元情報に自身のIPアドレス及びMACアドレスを設定したARP応答パケットを作成し、当該ARP応答パケットを元々の送信元(=端末A)に対して送信する(ステップS1−3)。
【0086】
端末Aは、(端末Bからの)ARP応答パケットを受信した時点で、自身のARPテーブルに送信元(=端末B)のIPアドレス及びMACアドレスをエントリする(ステップS1−4)。
以上によって、ある端末Aが、ネットワーク上の他の端末BのMACアドレスを取得することができる。
【0087】
[6.2 ARP要求パケット監視処理]
図8及び図9は、検疫制御装置2の通信監視部250がネットワーク上を流れるARPパケットを監視・補捉し、通信妨害部260による通信の妨害の要否を、判定部220が判定する処理の流れを示している。
【0088】
検疫制御装置2の通信監視部(ARP要求監視部)250は、ネットワーク上を流れるブロードキャストARP要求パケットを補捉するARP要求補捉部251を備えている(図3参照)。このARP要求補捉部251が、ブロードキャストARP要求パケットを受信すると(ステップS2−1)、通信監視部250のARP要求解析部252が受信したARP要求パケットから、そのパケットの送信元IPアドレス及びMACアドレス、そして送信先IPアドレスをそれぞれ取得する(ステップS2−2)。なお、ARP要求パケットから、送信先MACアドレスを知ることはできない。
【0089】
ARP要求解析部252が、送信元情報及び送信先情報を取得すると、送信元確認処理(ステップS2−3)、及び送信先確認処理(ステップS2−4,S2−5)が、検疫制御装置2の判定部220等によって行われ、ARP要求パケットの送信元及び送信先のそれぞれについて通信の妨害が必要か否か判定され、必要であれば妨害処理が行われる。
【0090】
また、判定部220は、端末情報テーブル230を用いた判定を行う第1判定部220aと、エージェントpingを用いた判定を行う第2判定部220bを備えており、送信元確認処理と送信先確認処理では、それぞれの判定部220a,220bによる判定が行われる。
なお、送信先確認処理としては、送信先IPアドレス確認処理(ステップS2−4)と、送信先MACアドレス確認処理(ステップS2−5)が行われる。
【0091】
[6.2.1 送信元確認処理(ステップS2−3)]
送信元確認処理では、まず、第1判定部220aが、ARP要求パケットの送信元IPアドレス又はMACアドレスが、禁止端末情報テーブル234に登録されているかどうかを確認する(ステップS2−3−1)。すなわち、送信元が禁止端末であるか否かを判定する。
登録されていれば、ステップS2−3−7に進み、登録されていなければステップS2−3−2に進む。
【0092】
ステップS2−3−2では、ARP要求パケットの送信元IPアドレス又はMACアドレスに基づいて、その送信元が、第1端末情報テーブル230aにおいて隔離端末として登録されているかどうかを第1判定部220aが確認する。
隔離端末として登録されていれば、ステップS2−3−7に進み、登録されていなければ、ステップS2−3−3に進む。
【0093】
ステップS2−3−3では、ARP要求パケットの送信元IPアドレス又はMACアドレスが、許可端末情報テーブル233に登録されているかどうかを第1判定部220aが確認する。すなわち、送信元が許可端末であるか否かを判定する。
登録されていれば、ステップS2−4−1(送信先IPアドレス確認処理)に進み、送信元に対する妨害処理は行わない。登録されていなければ、ステップS2−3−4へ進む。
【0094】
ステップS2−3−4では、ARP要求パケットの送信元IPアドレス又はMACアドレスに基づいて、その送信元が、第1端末情報テーブル230aにおいて合格端末として登録されているかどうかを第1判定部220aが確認する。
合格端末として登録されていれば、ステップS2−4−1(送信先IPアドレス確認処理)に進み、送信元に対する妨害処理は行わない。登録されていなければ、ステップS2−3−5へ進む。
【0095】
処理がステップS2−3−5に来た場合、送信元は、端末情報テーブル230に登録されていない、検疫制御装置2にとって未知の端末装置であったと判定されたことになる。
そこで、ステップS2−3−5では、未知の送信元に対して、エージェントpingを行って、通信妨害すべきか否かを判定するのに必要な送信元(端末装置)の検査結果の取得を試みる。なお、ステップS2−3−5の処理の詳細については後述する。
【0096】
ARP要求パケットの送信元に対してエージェントpingを行った結果は、第2判定部220bによって判定される。判定結果が、隔離判定であればステップS2−3−7へ進み、合格判定であればステップS2−4−1(送信先IPドレス確認処理)に進み、送信元に対する妨害処理は行わない。
【0097】
ステップS2−3−7では、検疫制御装置2の通信妨害部260によって疑似ARP応答パケットを送信する処理が行われる。この処理を行うため、通信妨害部260は、疑似ARP応答送信部261と、疑似ARP応答送信管理部262を備えている。
【0098】
図28に示すように、疑似ARP応答送信部261は、疑似ARP応答パケットをブロードキャスト送信する第1疑似ARP応答送信部261aと、疑似ARP応答パケットをユニキャスト送信する第2疑似ARP応答送信部261cと、疑似ARP応答パケットをユニキャスト送信する対象となる端末装置(誤学習不能端末装置)を識別する識別部261bと、を備えている。
【0099】
疑似ARP応答送信部261において生成される疑似ARP応答パケットは、アドレス部分が図10(a)(b)に示すように設定されたARP応答パケットとして生成される。
図10(a)(b)に示される疑似ARP応答パケットは、いずれも、「送信元IPアドレス」としてARP要求パケットの送信元端末(妨害対象端末装置)のIPアドレスが設定され、「送信元MACアドレス」として検疫制御装置2のMACアドレス(偽MACアドレス)が設定される。
ここで、第1疑似ARP応答送信部261aにおいて生成される疑似ARP応答パケットは、図10(a)に示すように、ブロードキャスト送信用であり、疑似ARP応答パケットの「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれブロードキャストアドレスが設定される。したがって、疑似ARP応答パケットは、ネットワークに対してブロードキャスト送信される。
一方、第2疑似ARP応答送信部261cにおいて生成される疑似ARP応答パケットは、図10(b)に示すように、第1疑似ARP応答送信部261aによってブロードキャスト送信された疑似ARP応答パケットでは、妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置(Vista系OSを有する端末装置)に対してユニキャスト送信されるものである。したがって、図10(b)では、疑似ARP応答パケットの「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれ誤学習不能端末装置であるVista系OS端末装置のIPアドレス及びMACアドレスが設定される。
【0100】
通信妨害の際には、第1疑似ARP応答送信部261aが、図10(a)の疑似ARP応答パケットをブロードキャスト送信するとともに、第2疑似ARP応答送信部261cが、図10(b)の疑似ARP応答パケットを、Vista系OSを有する端末装置に送信する。
これにより、ARP要求パケットの送信元端末(妨害対象端末装置)が通信する可能性のある通信相手の端末装置に対して、送信元端末のMACアドレスを誤って学習させる結果となる。つまり、非Vista系OSを有する端末装置であれば、図10(a)のブロードキャスト疑似ARP応答パケットによって妨害対象端末装置のMACアドレスを誤学習し、Vista系OSを有する端末装置であれば、図10(b)のユニキャスト疑似ARP応答パケットによって妨害対象端末装置のMACアドレスを誤学習する。
【0101】
そのため、前記通信相手の端末装置から送信された送信元端末向けのパケットはすべて送信先として検疫制御装置2のMACアドレスが誤って設定されることになる。ARP要求パケットの送信元端末では、MACアドレスが誤っているのでパケットを受信できなくなる。 一方、ARP要求パケットの送信元端末向けのパケットは、MACアドレスが検疫制御装置2のものであるから、すべて検疫制御装置2で受信可能である。検疫制御装置2は、このような自己のMACアドレスが送信先に設定されたパケットを収集、破棄する。よって、ARP要求パケットの送信元端末(妨害対象端末装置)とその相手先の通信を妨害することができる。
しかも、検疫制御装置2は、妨害処理として、疑似ARP「応答」パケットを送るので、他の端末装置3からのARP応答パケットを受ける必要がなく、通信負荷の増加を避けることができる。
なお、この妨害処理の更なる詳細については、後述する。
【0102】
ステップS2−3−7の疑似ARP応答送信が終了すると、送信元確認処理(ステップS2−3)は終了し、送信先IPアドレス確認処理S2−4に移行する。
【0103】
[6.2.2 送信先IPアドレス確認処理(ステップS2−4)]
送信先IPアドレス確認処理では、まず、第1判定部220aが、ARP要求パケットの送信先IPアドレスが、禁止端末情報テーブル234に登録されているかどうかを確認する(ステップS2−4−1)。すなわち、送信先が禁止端末であるか否かを判定する。
登録されていれば、ステップS2−6に進み、登録されていなければステップS2−4−2に進む。
【0104】
ステップS2−4−2では、ARP要求パケットの送信先IPアドレスに基づいて、送信先が、第1端末情報テーブル230aにおいて、隔離端末として登録されているかどうかを第1判定部220aが確認する。
登録されていれば、ステップS2−6に進み、登録されていなければ、ステップS2−4−3に進む。
【0105】
ステップS2−4−3では、ARP要求パケットの送信先IPアドレスが、許可端末情報テーブル233に登録されているかどうかを第1判定部220aが確認する。すなわち、送信先が許可端末であるか否かを判定する。
登録されていれば、送信先に対する妨害処理が不要であるのでARP要求パケット監視処理を終了する。登録されていなければ、ステップS2−4−4へ進む。
【0106】
ステップS2−4−4では、ARP要求パケットの送信先IPアドレスに基づいて、送信先が、第1端末情報テーブル230aにおいて、合格端末として登録されているかどうかを第1判定部220aが確認する。
登録されていれば、送信先に対する妨害処理が不要であるのでARP要求パケット監視処理を終了する。登録されていなければ、ステップS2−4−5へ進む。
【0107】
処理がステップS2−4−5に来た場合、送信先は、端末情報テーブル230に登録されていない、検疫制御装置2にとって未知の端末装置であったと判定されたことになる。
そこで、ステップS2−4−5では、未知の送信先に対して、図11に示すARP要求パケットを送信する。ステップS2−4−5の処理は、検疫制御装置2の未登録端末装置処理部290(図3参照)が行う。未登録端末装置処理部290は、ARP要求送信部291を備えており、このARP要求送信部291は、未知の送信先のMACアドレスを得るため、図11に示すようにアドレス設定したARP要求パケットをブロードキャスト送信する。
【0108】
検疫制御装置2は、図11の前記ARP要求パケットを送信した後、ARP要求パケットに対するARP応答パケットを一定期間待つ(ステップS2−4−6)。検疫制御装置2が、一定期間待っても、ARP応答パケットを受信しなかった場合は、ARP要求パケット監視処理を終了し、一定期間内にARP応答パケットを受信すれば、ステップS2−4−8に進む。
【0109】
ステップS2−4−6において、ARP応答パケットを受信した場合、検疫制御装置2は、当該ARP応答パケットから、未知の送信先のMACアドレスを取得し(ステップS2−4−8)、送信先MACアドレス確認処理S2−5へ移行する。
【0110】
[6.2.3 送信先MACアドレス確認処理(ステップS2−5)]
送信先MACアドレス確認処理では、まず、第1判定部220aが、ARP要求パケットの送信先MACアドレスが、禁止端末情報テーブル234に登録されているかどうかを確認する(ステップS2−5−1)。すなわち、送信先が禁止端末であるか否かを判定する。
登録されていれば、ステップS2−6に進み、登録されていなければステップS2−5−2に進む。
【0111】
ステップS2−5−2では、ARP要求パケットの送信先MACアドレスに基づいて、送信先が、第1端末情報テーブル230aにおいて、隔離端末として登録されているかどうかを第1判定部220aが確認する。
登録されていれば、ステップS2−6に進み、登録されていなければ、ステップS2−5−3に進む。
【0112】
ステップS2−5−3では、ARP要求パケットの送信先MACアドレスが、許可端末情報テーブル233に登録されているかどうかを第1判定部220aが確認する。すなわち、送信先が許可端末であるか否かを判定する。
登録されていれば、送信先に対する妨害処理を行う必要がないので、ARP要求パケット監視処理を終了する。登録されていなければ、ステップS2−5−4へ進む。
【0113】
ステップS2−5−4では、ARP要求パケットの送信先MACアドレスに基づいて、送信先が、第1端末情報テーブル230aにおいて、合格端末として登録されているかどうかを第1判定部220aが確認する。
登録されていれば、送信先に対する妨害処理を行う必要がないので、ARP要求パケット監視処理を終了する。登録されていなければ、ステップS2−5−5へ進む。
【0114】
処理がステップS2−5−5に来た場合、送信先は、端末情報テーブル230にIPアドレスもMACアドレスも登録されていない、検疫制御装置2にとって未知の端末装置であったと判定されたことになる。
そこで、ステップS2−5−5では、未知の送信先に対して、エージェントpingを行って、通信妨害すべきか否かを判定するのに必要な送信先(端末装置)の検査結果の取得を試みる。なお、ステップS2−5−5の処理の詳細については後述する。
【0115】
ARP要求パケットの送信先に対してエージェントpingを行った結果は、第2判定部220bによって判定される。判定結果が、隔離判定であればステップS2−6へ進み、合格判定であれば、送信先に対する妨害処理を行う必要がないので、ARP要求パケット監視処理を終了する。
【0116】
ステップS2−6では、通信妨害部260の疑似ARP応答送信部261によって疑似ARP応答パケットを送信する処理が行われる。
【0117】
ここで送信される疑似ARP応答パケットは、アドレス部分が図12(a)(b)に示すように設定されたARP応答パケットとして生成される。図12(a)が第1疑似ARP応答送信部261aによって生成されるブロードキャスト疑似ARP応答パケットであり、図12(b)が第2疑似ARP応答送信部261cによって生成されるユニキャスト疑似ARP応答パケットである。
これらの疑似ARP応答パケットでは、「送信元IPアドレス」としてARP要求パケットの送信先端末(妨害対象端末装置)のIPアドレスが設定され、疑似ARP応答パケットの「送信元MACアドレス」として検疫制御装置2のMACアドレス(偽MACアドレス)が設定される。
図12(a)の疑似ARP応答パケットの場合、「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれブロードキャストアドレスが設定される。したがって、疑似ARP応答パケットは、ネットワークに対してブロードキャスト送信される。
一方、第2疑似ARP応答送信部261cにおいて生成される疑似ARP応答パケットは、図12(b)に示すように、誤学習不能端末装置(Vista系OSを有する端末装置)に対してユニキャスト送信されるものである。したがって、図12(b)では、疑似ARP応答パケットの「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれ誤学習不能端末装置であるVista系OS端末装置のIPアドレス及びMACアドレスが設定される。
【0118】
通信妨害の際には、第1疑似ARP応答送信部261aが、図12(a)の疑似ARP応答パケットをブロードキャスト送信するとともに、第2疑似ARP応答送信部261cが、図12(b)の疑似ARP応答パケットを、Vista系OSを有する端末装置に送信する。
これにより、ARP要求パケットの送信先端末(妨害対象端末装置)が通信する可能性のある通信相手の端末装置に対して、送信先端末のMACアドレスを誤って学習させる結果となる。
【0119】
そのため、前記通信相手の端末装置から送信された送信先端末向けのパケットはすべて送信先として検疫制御装置2のMACアドレスが誤って設定されることになる。ARP要求パケットの送信先端末では、MACアドレスが誤っているのでパケットを受信できなくなる。
一方、ARP要求パケットの送信先端末向けのパケットは、MACアドレスが検疫制御装置2のものであるから、すべて検疫制御装置2で受信可能である。検疫制御装置2は、このような自己のMACアドレスが送信先に設定されたパケットを収集、破棄する。よって、ARP要求パケットの送信先端末(妨害対象端末装置)とその相手先の通信を妨害することができる。
しかも、検疫制御装置2は、妨害処理として、疑似ARP「応答」を送るので、他の端末装置3からのARP応答パケットを受ける必要がなく、通信負荷の増加を避けることができる。
なお、この妨害処理の更なる詳細については、後述する。
【0120】
ステップS2−6の疑似ARP応答送信が終了すると、ARP要求パケット監視処理は終了する。
【0121】
[6.2.4 エージェントping実行処理(ステップS2−3−5,S2−5−5等)]
図13は、エージェントping実行処理を示している。エージェントping実行処理では、まず、エージェントping送信部211が、隔離すべきかどうかの判断の対象である端末装置(のエージェントコンピュータプログラムP2)に向けて、エージェントpingを送信する(ステップS3−1)。
【0122】
エージェントping応答受信部213は、端末装置のエージェントコンピュータプログラムP2からの応答(エージェントping応答)を一定期間待つ(ステップS3−2)。一定期間内に応答があればステップS3−3に進み、一定期間待っても応答が無い場合にはステップS3−7に進む。
【0123】
ステップS3−2で受信したエージェントping応答パケットが正常であれば、ステップS3−4に進む。エージェントping応答が不正であれば、ステップS3−7へ進む。
【0124】
エージェントping応答受信部213が受信した、エージェントping応答は、判定部220の第2判定部220b(図3参照)によって、隔離すべきか否か判定される。第2判定部220bは、エージェントping応答に含まれる「検査結果」を確認することで、隔離すべきか否かを判定する(ステップS3−4)。
受信した検査結果が、「合格」を示している場合には、ステップS3−5へ進み、「隔離」(=「不合格」)を示している場合には、ステップS3−7へ進む。
【0125】
ステップS3−5では、第1テーブル更新部241が、エージェントping応答を送信してきた検疫対象端末装置3を、合格端末として、第1端末情報テーブル230aに登録し、ステップS3−6へ進む。なお、ステップS3−5において、第1端末情報テーブル230aに登録しようとする端末装置が、既に第1端末情報テーブル230aに合格端末として登録されている場合には、最新の情報で第1端末情報テーブル230aを上書きする。
【0126】
処理がステップS3−6に来ると、第2判定部220bは、エージェントping応答を送信してきた検疫対象端末装置3は、「合格」であると判定し、エージェントping実行処理を終了する。
【0127】
ステップS3−7では、第1テーブル更新部241が、エージェントping応答を送信してきた検疫対象端末装置3を、隔離端末として、第1端末情報テーブル230aに登録し、ステップS3−8へ進む。なお、ステップS3−7において、第1端末情報テーブル230aに登録しようとする端末装置が、既に第1端末情報テーブル230aに隔離端末として登録されている場合には、最新の情報で第1端末情報テーブル230aを上書きする。
【0128】
処理がステップS3−8に来ると、第2判定部220bは、エージェントping応答を送信してきた検疫対象端末装置3は、「隔離」であると判定し、エージェントping実行処理を終了する。
【0129】
[6.2.4.1 エージェントpingプロトコル]
図14は、エージェントpingプロトコルのシーケンスと、エージェントpingのデータ構造を示している。
なお、ここでは、検疫制御装置2が送出するエージェントpingを、「エージェントping要求」というものとする。
【0130】
エージェントpingパケットの実体は、通常のIPパケットのデータ部に、後述のタイプや検査結果(チェック結果)等の必要な情報を格納したものである。
【0131】
エージェントpingパケットには、エージェントping要求パケット(ステップS4−2)、エージェントping応答パケット(ステップS4−3)、及びエージェントping開始要求パケット(ステップS4−1)の計3種類がある。
これら3つのパケットを区別するため、エージェントpingは、そのデータ構造として「タイプ」というフラグ値領域を有している。図15に示すように、タイプには、「要求」「応答」「開始要求」の3種類を示す情報があり、いずれかの情報がエージェントpingパケットの「タイプ」領域に格納される。
【0132】
なお、図14に示すエージェントpingデータ構造のうち、プロトコルバージョンは、エージェントpingプロトコルのバージョン情報を示す。
また、エージェントping応答には、プロトコルバージョン及びタイプ以外に、検査結果に関する情報、及び、エージェントが搭載された端末装置が有するOSの種別を示す情報(OS情報)が含まれる。
【0133】
図14に示すように、検査結果に関する情報には、エージェントID、チェック結果(検査結果)、ポリシーファイル更新日時が含まれる。エージェントIDは、エージェントコンピュータプログラムP2の識別子であり、任意長のASCII文字列によって構成されている。チェック結果は、検疫対象端末装置3による検査結果を示すフラグ値であり、図16に示すように「合格」と「隔離」を示す情報があり、いずれかの情報が「チェック結果」領域に格納される。ポリシーファイル更新日時は、検査に用いた検査ポリシーの更新日時を示したものである。
なお、エージェントpingには、通常のパケットと同様に、送信元及び送信先のIPアドレス及びMACアドレスが格納されている。
【0134】
[6.2.4.2 エージェントping開始要求]
エージェントpingは、検疫制御装置2が定期的に実施するものである。しかしそれだけでは、検疫対象端末装置3が定期的に又は必要時に行う検査の結果が、前回値と異なった場合(隔離すべき状態から合格の状態に遷移した場合、又は合格の状態から隔離すべき状態に遷移した場合)、検疫制御装置2は、それに応じた検疫制御の変更を瞬時に行うことができない。
【0135】
そのため、検疫対象端末装置3は、このような検査結果の変化が起きた場合、またはその他必要な場合に、検疫制御装置2に対して、エージェントpingの送信開始を要求することができる。
特に、検疫対象端末装置3において、エージェントコンピュータプログラムP2が起動した時、及び、検疫対象端末装置3の利用者が、エージェントコンピュータプログラムP2に対して、検査の実施を要求し、その検査が終了した時には、必ず、エージェントping開始要求送信部335は、エージェントping開始要求を行う。図17は、このエージェントping開始要求のシーケンスを示している。
【0136】
[6.3 合格端末に対する定期的なエージェントping実行処理]
図18に示すように、検疫制御装置2のエージェントping送信管理部212(図3参照)は、合格端末情報テーブル231に登録されている端末装置に対して定期的にエージェントpingを行うことで、妨害処理の要否を判断すると共に、端末情報テーブル230をメンテナンスする。
【0137】
定期的エージェントping実行処理では、まず、エージェントping送信管理部212が、第1端末情報テーブル230aにおける複数の端末情報のうち、端末情報領域230a−4に、合格端末であることを示す情報が登録されているもの(合格端末情報)を参照する(ステップS5−1)。
合格端末のうち、内部状態を確認すべき合格端末がある場合には、ステップS5−3に進み、第1端末情報テーブル230a上のすべての合格端末の状態を確認した場合は、定期的エージェントping実行処理を終了する(ステップS5−2)。
【0138】
ステップS5−3では、エージェントping送信部211が、状態確認が必要な端末装置(状態確認対象端末装置)に対して、エージェントping要求を送信する(ステップS5−3)。
【0139】
エージェントping応答受信部213は、状態確認が必要な端末装置(状態確認対象端末装置)からのエージェントping応答を一定期間待つ(ステップS5−4)。一定期間待っても応答が無ければ、ステップ5−5に進み、一定期間内に応答があればステップS5−7へ進む。
【0140】
ステップS5−5では、応答がない状態確認対象端末装置に対して、エージェントping要求を再送するかどうか判断する。当該シーケンスにおける再送回数が、検疫制御装置2の外部から指定された最大送出回数未満であれば、ステップS5−3に戻る。一方、当該シーケンスにおける再送回数が、前記最大送出回数に達していれば、ステップS5−6へ進む。
【0141】
処理がステップS5−6に来た場合、合格端末であった状態確認対象端末装置からエージェントping応答がなかったことになるので、当該端末装置の端末情報を、第1端末情報テーブル230aから削除し、ステップS5−2に戻る。
【0142】
ステップS5−7では、受信したエージェントping応答が正常であるかどうかを判断する。正常であれば、ステップS5−8へ進み、不正であれば、ステップS5−9へ進む。
【0143】
ステップS5−8では、第2判定部220bが、エージェントping応答に含まれる「ポリシーチェック結果」を確認する。「ポリシーチェック結果」が「合格」を意味している場合は、ステップS5−2に戻り、「隔離」を意味している場合は、ステップS5−9へ進む。
【0144】
ステップS5−9では、状態確認対象端末装置の端末情報(合格端末情報)を第1端末情報テーブル230aから削除し、ステップS5−10へ進む。
ステップS5−10では、状態確認対象端末装置を、隔離端末として、第1端末情報テーブル230aに登録する。このとき、エージェントping応答に基づき、当該隔離端末に関するその他の情報も登録される。
【0145】
ステップS5−11では、隔離と判定された状態確認対象端末装置の通信を妨害するため、疑似ARP応答パケットを送信し、ステップS5−2に戻る。
ここで送信される疑似ARP応答パケットは、アドレス部分が図19(a)(b)に示すように設定されたARP応答パケットとして生成される。図19(a)が第1疑似ARP応答送信部261aによって生成されるブロードキャスト疑似ARP応答パケットであり、図19(b)が第2疑似ARP応答送信部261cによって生成されるユニキャスト疑似ARP応答パケットである。
これらの疑似ARP応答パケットでは、「送信元IPアドレス」として状態確認対象端末装置(妨害対象端末装置)のIPアドレスが設定され、疑似ARP応答パケットの「送信元MACアドレス」として検疫制御装置2のMACアドレス(偽MACアドレス)が設定される。
図19(a)の疑似ARP応答パケットの場合、「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれブロードキャストアドレスが設定される。したがって、疑似ARP応答パケットは、ネットワークに対してブロードキャスト送信される。
一方、第2疑似ARP応答送信部261cにおいて生成される疑似ARP応答パケットは、図19(b)に示すように、誤学習不能端末装置(Vista系OSを有する端末装置)に対してユニキャスト送信されるものである。したがって、図19(b)では、疑似ARP応答パケットの「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれ誤学習不能端末装置であるVista系OS端末装置のIPアドレス及びMACアドレスが設定される。
これにより、状態確認対象端末装置(妨害対象端末装置)が通信する可能性のある通信相手の端末装置が、送信先端末のMACアドレスを誤って認識・学習することになる。
【0146】
[6.5 隔離端末に対する定期的なエージェントping実行処理]
図20に示すように、検疫制御装置2のエージェントping送信管理部212(図3参照)は、第1端末情報テーブル230aに隔離端末として登録されている端末装置に対して定期的にエージェントpingを行うことで、妨害処理の要否を判断すると共に、端末情報テーブル230をメンテナンスする。
【0147】
まず、エージェントping送信管理部212は、第1端末情報テーブル230aにおいて、端末情報230a−4が隔離端末を示す情報となっているもの(隔離端末情報)を参照し、ステップS6−2に進む(ステップS6−1)。
第1端末情報テーブル230aにおいて、内部状態を確認すべき隔離端末がある場合は、ステップS6−3に進み、第1端末情報テーブル230aにおけるすべての隔離端末の状態を確認した場合は、定期的エージェントping実行処理を終了する(ステップS6−2)。
【0148】
ステップS6−3では、エージェントping送信部211が、状態を確認する必要がある端末(状態確認対象端末装置)に対して、エージェントping要求を送信し、ステップS6−4に進む。
【0149】
ステップS6−4では、状態確認対象端末装置からのエージェントping応答を一定期間待つ。一定期間待っても応答がなければ、ステップS6−5へ進み、一定期間内に応答があれば、ステップS6−8へ進む。
【0150】
ステップS6−5では、状態確認対象端末装置に対して、エージェントping要求を再送するかどうか判断する。当該シーケンスにおける再送回数が、検疫制御装置2の外部から指定する最大送出回数未満ならば、ステップS6−3に戻る。当該シーケンスにおける再送回数が、前記最大送出回数に達していれば、ステップS6−6に進む。
【0151】
ステップS6−6では、状態確認対象端末装置が、前回のポーリングで応答無しだった場合(つまり、第1端末情報テーブル230aの「エージェントping応答の有無」欄230a−6の値が、「応答無し」を示している場合)、ステップS6−2に戻る。なお、ここで、「前回のポーリング」とは、前回行った「隔離端末に対する定期的なエージェントping実行処理」をいい、以下同様である。
状態確認対象端末装置が、前回のポーリングで応答有りだった場合(つまり、第1端末情報テーブル230aの「エージェントping応答の有無」欄230a−6の値が、「応答有り」を示している場合)、ステップS6−7に進む。
【0152】
処理がステップS6−7に来た場合、第1端末情報テーブル230aから、状態確認対象端末装置の端末情報を削除し、ステップS6−2に戻る。前回のポーリングで「応答有り」であった端末装置については、夜間マシン停止など、正常オペレーションの範囲で応答できなかった可能性が高い。したがって、前回のポーリングで「応答有り」であった端末装置については、第1端末情報テーブル230aから削除することで、当該端末装置を隔離端末として記憶し続けるのを避けることができる。
【0153】
ステップS6−8では、受信したエージェントping応答が正常であるかどうかを判断する。正常であれば、ステップS6−9へ進み、不正であれば、ステップS6−2に戻る。
【0154】
ステップS6−9では、第2判定部220bが、エージェントping応答に含まれる「ポリシーチェック結果」を確認する。「ポリシーチェック結果」が「隔離」を意味している場合は、ステップS6−10に進み、「合格」を意味している場合は、ステップS6−11へ進む。
【0155】
ステップS6−10では、隔離端末情報テーブル232にある状態確認端末装置について、「エージェントping応答の有無の欄」の値を、「応答有り」を示す値に更新し、ステップS6−2に戻る。
【0156】
ステップS6−11では、状態確認対象端末装置の端末情報(隔離端末情報)を第1端末情報テーブル230aから削除し、ステップS6−12へ進む。
ステップS6−12では、状態確認対象端末装置を、合格端末として、第1端末情報テーブル230aに登録し、ステップS6−13へ進む。このとき、エージェントping応答に基づき、当該隔離端末に関するその他の情報も登録される。
【0157】
以上によって、隔離端末と判定されていた状態確認対象端末装置が合格端末に状態遷移したことから、ステップS6−13では、状態確認対象端末に対する妨害処理を解除するため、通信正常化部270の正常ARP応答送信部271(図3参照)によって、正常ARP応答パケットを送信し、ステップS6−2にもどる。
【0158】
ここで送信される正常ARP応答パケットは、図21(a)(b)に示すように、「送信元IPアドレス」に状態確認対象端末装置のIPアドレス、「送信元MACアドレス」に状態確認対象端末装置のMACアドレスを設定したものである。
正常ARP応答送信部271は、図29に示すように、疑似ARP応答送信部261と同様な構成を持つ。つまり、正常ARP応答送信部271は、正常ARP応答パケットをブロードキャスト送信する第1正常ARP応答送信部271aと、正常ARP応答パケットをユニキャスト送信する第2正常ARP応答送信部271cとを備え、さらに、正常ARP応答パケットをユニキャスト送信する対象を識別する端末装置を識別する識別部271bを備えている。
【0159】
図21(a)が第1正常ARP応答送信部271aによって生成されるブロードキャスト正常ARP応答パケットであり、図21(b)が第2正常ARP応答送信部271cによって生成されるユニキャスト正常ARP応答パケットである。
これらの正常ARP応答パケットでは、「送信元IPアドレス」及び「送信元MACアドレス」として状態確認対象端末装置(妨害対象でなくなった端末装置)のIPアドレス及びMACアドレスが正しく設定される。
図21(a)の正常ARP応答パケットの場合、「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれブロードキャストアドレスが設定される。したがって、正常ARP応答パケットは、ネットワークに対してブロードキャスト送信される。
一方、第2正常ARP応答送信部271cにおいて生成される正常ARP応答パケットは、図21(b)に示すように、Vista系OSを有する端末装置に対してユニキャスト送信されるものである。したがって、図21(b)では、正常ARP応答パケットの「送信先IPアドレス」及び「送信先MACアドレス」としては、それぞれVista系OS端末装置のIPアドレス及びMACアドレスが設定される。
正常ARP応答パケットの送信により、ネットワーク内の端末装置は、状態確認対象端末装置のMACアドレスを正しく学習できるため、状態確認対象端末装置との間の通信が正常に行える。
【0160】
なお、正常ARP応答パケットがユニキャスト送信される対象は、識別部271bによって識別される。この識別部271bは、妨害対象でなくなった端末装置が、妨害対象であったときに、通信の妨害のためにユニキャスト疑似ARP応答パケットを送信した端末装置のリストを記憶している。識別部271bは、妨害対象端末装置が妨害対象でなくなった場合には、このリストが示す端末装置を、正常ARP応答パケットの送信対象とする。
【0161】
[6.6 検疫対象端末装置における内部状態の検査]
図22は、検疫対象端末装置3の検査制御部310による、検査ポリシーに従った検査の処理手順を示している。
【0162】
所定の検査トリガが発生すると(ステップS7−1)、検査実行部331が、検査ポリシーに従って、検疫対象端末装置3の内部状態の検査(ポリシーチェック)を実行する(ステップS7−2)。
【0163】
検査トリガとしては、例えば、エージェントコンピュータプログラムP2の起動時、検疫対象端末装置3の利用者による手動実行、エージェントコンピュータプログラムP2の検査制御部310による定期的実行、などがある。
【0164】
検査(ポリシーチェック)結果が、前回検査時と異なっていた場合(ステップS7−3)、エージェントping開始要求送信部335は、エージェントping開始要求を、検疫制御装置2に送信する(ステップS7−5)。ただし、検疫制御装置2のIPアドレス及びMACアドレスは、検疫制御装置2からのエージェントpingによって取得するため、それまでにエージェントpingを受信していなければ、エージェントping開始要求を送信できない(ステップS7−4)。
その後、検疫制御装置2からエージェントping要求を受信したら、エージェントping応答として、検査結果を検疫制御装置2に送信する。
【0165】
[6.7 第2端末情報テーブルの登録処理]
図23に示すように、検疫管理サーバ4のテーブル生成部410(図6参照)では、管理者が、第2端末情報テーブル230b及び静的リストテーブル263のテーブル情報を入力装置から入力することができる(ステップS8−1)。
入力された第2端末情報テーブル230b及び静的リストテーブル263のテーブル情報は、テーブル送信部420(図6参照)によって、検疫制御装置2に送信される(ステップS8−2)。
【0166】
図24に示すように、検疫制御装置2では、第2端末情報テーブル&静的リストテーブル更新部232(図3参照)が、第2端末情報テーブル230b及び静的リストテーブル263を受信し(ステップS9−1)、第2端末情報テーブル領域230b及び静的リストテーブル263の内容を更新する(ステップS9−2)。
【0167】
[6.8 通信妨害処理]
[6.8.1 妨害の実現方法]
図25(a)(b)は、ステップS2−3−7,S2−6,S5−11において送信される既述の疑似ARP応答パケットのデータ構造を示している。図25(a)は、ブロードキャスト疑似ARP応答パケットを示す、図25(b)は、ユニキャスト疑似ARP応答パケットを示す。
【0168】
図25(a)のブロードキャスト疑似ARP応答パケットは、送信元IPアドレスを格納する第1領域D1に妨害対象端末装置のIPアドレスが格納され、送信元MACアドレスを格納する第2領域D2に検疫制御装置2のMACアドレスが格納され、送信先IPアドレスを格納する第3領域D3及び送信先MACアドレスを格納する第4領域D4に、それぞれ、ブロードキャストアドレスが格納されている。
検疫制御装置2が、この疑似ARP応答パケットをブロードキャストすることで、妨害対象端末装置の通信妨害がおこなわれる。なお、送信元MACアドレスが格納される第2領域D2には、検疫制御装置2のMACアドレスに代えて、パケット収集・破棄用の別の装置のMACアドレスであってもよい。すなわち、第2領域には、妨害対象端末装置の正しいMACアドレス以外の偽MACアドレスが格納されていればよい。
【0169】
疑似ARP応答パケットのブロードキャスト送信によって、検疫制御装置2の周囲にある端末装置は、疑似ARP応答パケットを受信して、妨害対象端末装置のMACアドレスとして、検疫制御装置2のMACアドレス(又は別の装置のMACアドレス)を誤って認識・学習する。
これにより、周囲の端末装置から妨害対象端末装置へ向けて送信されたデータパケットはすべて検疫制御装置2(又は別の装置)に届くようになる。検疫制御装置は、そのデータパケットを破棄することにより、データパケットが妨害対象端末装置に届かなくなる。その結果、妨害対象端末装置とその通信相手との間での双方向通信(TCP)或いは通信相手から妨害対象端末装置への片方向通信(UDP)が成立せず、妨害となる。
【0170】
ただし、上記は、ブロードキャスト疑似ARP応答パケットを受信する端末装置が有するOSが、非Vista系である場合であり、当該端末装置が有するOSがVista系である場合には、当該端末装置がブロードキャスト疑似ARP応答パケットを受信しても、妨害対象端末装置のMACアドレスとして、検疫制御装置のMACアドレス(又は別の装置のMACアドレス)を誤って認識・学習せず、妨害対象端末装置のMACアドレスを正しく認識したままとなる。
【0171】
なお、端末装置が、誤学習をしない原因は、実際に送受信されるパケットから推測すると、Vista系OSでは、ブロードキャストされたARP応答パケットを受け取った場合、そのARP応答パケットに含まれるMACアドレスを直ちに学習せず、そのARP応答パケットの送信元IPアドレスを手がかりに、ARP応答パケットの送信元に対してMACアドレスを確認する処理を行うためではないかと推察される。なお、ここでの「誤学習しない」とは、Vista系OSが、MACアドレスを誤学習しても、正しいMACアドレスを確認して誤学習が阻害される場合のように、結果的に誤学習しない場合をすべて含む意である。
【0172】
ただし、Vista系OSを有する端末装置であっても、疑似ARP応答パケットをユニキャスト送信すれば、誤学習させることができる。
つまり、図25(b)のユニキャスト疑似ARP応答パケットは、Vista系OSを有する端末装置(OSの種別が不明なものを含む)に対して送信されるものであり、送信先IPアドレスを格納する第3領域D3及び送信先MACアドレスを格納する第4領域D4に、それぞれ、Vista系OSのIPアドレス及びMACアドレスが格納されている。
疑似ARP応答パケットのブロードキャスト送信とユニキャスト送信を併用することで、ネットワーク内の端末装置のOS種別にかかわらず、ネットワーク内の端末装置に妨害対象端末装置のMACアドレスを誤学習させることができる。
また、ネットワーク内の全端末装置に、疑似ARP応答パケットをユニキャスト送信せず、Vista系OSを有する端末装置に限定して、ユニキャスト送信することで、通信負荷・処理負荷を低減することができる。
【0173】
図26は、妨害すべき端末(妨害対象端末装置)Aから、ARP要求パケットが送出されてから、妨害対象端末装置Aへの妨害が成立するまでのARPの流れを示している。なお、妨害対象端末装置Aから送信されたARP要求パケットの監視は、図8及び図9に示す方法によって行われる。
まず、端末Aから端末BのMACアドレスを取得するためのARP要求パケットが送出される(ステップS10−1)。これにより、端末Bは、一旦は、端末AのMACアドレスを正しく学習する。
なお、このARP要求パケットは、検疫制御装置2によって補捉される(ステップS10−2)。
【0174】
端末Bは、通常のARP応答パケットを、端末Aに送信する(ステップS10−3)。これにより、端末Aは、端末BのMACアドレスを学習する。
【0175】
検疫制御装置2は、補捉したARP要求パケットに基づき、必要であればエージェントpingを行って、端末Aは妨害が必要な妨害対象端末装置であると判定する(ステップS10―4)。
すると、検疫制御装置2は、図26に示すように、送信元MACアドレスを、自己のMACアドレスとし、送信元IPアドレスを端末AのIPアドレスとした、疑似ARP応答パケットをブロードキャスト送信及びユニキャスト送信する(ステップS10−5)。これにより、端末Bを含むネットワーク上の端末(端末Aを除く)は、端末が有するOSの種別にかかわらず、端末AのMACアドレスを誤って学習し、妨害が成立する。
【0176】
なお、疑似ARP応答パケットは、妨害対象端末装置へもブロードキャストされるものの、妨害対象端末装置のIPアドレスが送信元IPアドレスに設定されるため、妨害対象端末装置は受信できない。
【0177】
図27は、図26とは逆に、通信相手(非妨害対象端末装置)B側が、妨害対象端末装置Aと通信するために、当該通信相手BがARP要求パケットを送出してから、妨害が成立するまでのARPの流れを示している。なお、通信相手Bから送信されたARP要求パケットの監視は、図8及び図9に示す方法によって行われる。
【0178】
まず、通信相手である端末Bから端末AのMACアドレスを取得するためのARP要求パケットが送出される(ステップS11−1)。このARP要求パケットは、検疫制御装置2によって補捉される。
【0179】
端末Aは、通常のARP応答パケットを、端末Bに送信する(ステップS11−2)。これにより、端末Bは、一旦は、端末AのMACアドレスを正しく学習する。
【0180】
検疫制御装置2は、端末AのMACアドレスが不明であるので、未登録端末装置処理部290のARP要求送信部291(図3参照)により、ARP要求パケットを端末Aに送信する(ステップS11−3)。
すると、端末Aは、ARP応答パケットを検疫制御装置2に送信してくる(ステップS11−4)ので、これをARP応答受信部292により受信する。これにより、検疫制御装置2は、端末AのMACアドレスを取得できる。
【0181】
そして、検疫制御装置2は、必要であればエージェントpingを行って、端末Aは妨害が必要な妨害対象端末装置であると判定する(ステップS11―5)。
すると、検疫制御装置2は、図27に示すように、送信元MACアドレスを、自己のMACアドレスとし、送信元IPアドレスを端末AのIPアドレスとした、疑似ARP応答パケットをブロードキャスト送信及びユニキャスト送信する(ステップS11−6)。これにより、端末Bを含むネットワーク上の端末(端末Aを除く)は、端末が有するOSの種別にかかわらず、端末AのMACアドレスを誤って学習し、妨害が成立する。
【0182】
なお、疑似ARP応答パケットは、妨害対象端末装置へもブロードキャストされるものの、妨害対象端末装置のIPアドレスが送信元IPアドレスに設定されるため、妨害対象端末装置は受信できない。
【0183】
上記のような妨害処理を行うことで、妨害対象端末装置のARPテーブルが静的に設定されており、妨害対象端末装置がARP要求パケットを送出しないようにされている場合であっても、通信相手に誤学習させることで、通信を妨害できる。
【0184】
図30は、妨害処理のさらに詳細な処理内容を示している。図30は、検疫制御装置2によるユニキャスト疑似ARPの送信回数を削減するため、疑似ARP応答パケットの送信対象を制限するための処理を示している。
妨害処理の際には、疑似ARP応答送信部261は、まず、疑似ARP応答パケットのブロードキャスト送信を行う(ステップS12−1)。続いて、疑似ARP応答送信部261は、ユニキャスト送信処理(ステップS12−2〜S12−7)を行う。
ユニキャスト送信処理には、ユニキャスト送信の対象(誤学習不能端末装置)を識別する処理(ステップS12−2)、ユニキャスト送信の対象から所定の端末装置を除外する除外処理(ステップS12−3〜S12−6)、ユニキャスト疑似ARP応答パケットを送信する処理(ステップS12−7)が含まれる。
【0185】
このユニキャスト送信処理は、第1端末情報テーブル230aに登録されている端末装置など、検疫制御装置2が、ネットワーク内における存在を把握している全端末に対して、それぞれ行われる。
ステップS12−2のユニキャスト送信の対象(誤学習不能端末装置)を識別する処理では、端末装置が有するOSがVista系であるか否かの判定を行う。この判定は、識別部216bが、第1端末情報テーブル230aのOS情報230a−5を参照することで行う。端末装置のOSが非Vista系である場合には、その端末装置へはユニキャスト送信せずに終了する。
端末装置のOSがVista系である場合は、ステップS12−3へ進む。なお、ステップS12−2において、OS情報が不明な場合(第1端末情報テーブル230aにOS情報230a−5が無い場合)は、Vista系OSとみなし、ステップS12−3へ進む。OSが不明な場合はVista系OSとみなすことで、端末装置の誤学習を確実に行わせることができる。
【0186】
ステップS12−2において、端末装置のOSがVista系であると判定された場合、識別部261bは、Vista系OS端末装置のうち、所定の端末装置を、ユニキャスト送信の対象から除外する除外処理(ステップS12−3〜S12−6)を行う。除外処理では、まず、端末装置にエージェントが搭載されているか否かを判定する(ステップS12−3)。この判定では、第1端末情報テーブル230aを参照することで行え、第1端末情報テーブル230aにエージェントID230a−3が記憶されている端末装置は、エージェントが搭載されていると判断できる。
【0187】
ステップS12−3において、端末装置にエージェントが搭載されていると判断された場合、端末装置の誤学習処理は、端末装置に搭載されたエージェントに委ね(ステップS12−4)、Vista系OS端末装置であっても、疑似ARP応答パケットをユニキャスト送信せず、終了する。
エージェントが搭載されている端末装置を、疑似ARP応答パケットのユニキャスト送信の対象から除外することで、通信量・処理量を低減することができる。なお、エージェントによる誤学習処理については後述する。
【0188】
ステップS12−3において、端末装置にエージェントが搭載されていないと判断された場合、識別部261bは、除外処理として、端末装置が静的リストテーブル(除外端末装置リスト)263に登録されているか否かを判定する(ステップS12−5)。静的リストテーブル263は、ユニキャスト疑似ARP応答パケットを送信しない端末装置のリストである。ここで、OSの種別が不明な端末装置は、ステップS12−2において、Vista系OSとみなされ、基本的には、ユニキャスト疑似ARP応答パケットの送信対象となる。ところが、プリンタのように、エージェントが搭載できないため、OSが不明となっているが、本来はユニキャスト疑似ARP応答パケットの不要な端末装置も存在する。図31(a)に示すように、検疫制御装置2には、このような端末装置のIPアドレス及びMACアドレスが、静的リストテーブル263に登録されている。
ステップS12−5において、端末装置が静的リストテーブル263に登録されていると判定された場合、Vista系OSであっても、疑似ARP応答パケットをユニキャスト送信せず、終了する。
このように、本来的にユニキャスト疑似ARP応答パケットの送信が不要な端末装置を、ユニキャスト送信の対象から除外することで、通信量・処理量を低減することができる。
【0189】
ステップS12−5において、端末装置が静的リストに登録されていないと判断された場合、識別部261bは、端末装置が、「隔離対象端末が新規隔離でない」かつ「隔離対象端末の通信相手以外の合格端末である」であるか否かを判定する(ステップS12−6)。
ここで、隔離対象端末が「新規隔離」であるときは、隔離端末(妨害対象端末装置)が、妨害が必要ではない合格端末(非妨害対象端末装置)から、妨害が必要な隔離端末(妨害対象端末装置)に状態遷移した後の最初の妨害処理のときをいう。また、「新規隔離でない」のは、隔離端末(妨害対象端末装置)が、妨害が必要ではない合格端末(非妨害対象端末装置)から、妨害が必要な隔離端末(妨害対象端末装置)に状態遷移した後の2回目以降の妨害処理のときをいう。
【0190】
ステップS12−6における除外処理の基本的な考え方は、ユニキャスト疑似ARP応答パケットの送信対象として、隔離端末(妨害対象端末装置)の通信相手ではない端末装置(合格端末)を除外することである。通信相手ではない端末装置には、MACアドレスを誤学習させなくても直ちには問題が生じないからである。このように、隔離端末の通信相手ではない端末装置を、ユニキャスト送信の対象から除外することで、通信量・処理量を低減できる。
【0191】
ただし、隔離端末(妨害対象端末装置)の通信相手ではない端末装置(合格端末)をユニキャスト送信の対象から一律に除外すると、確実に妨害処理が行えなくなる。
つまり、端末装置が隔離端末となる前に、当該端末装置が、他の端末装置と通信しており、当該端末装置又は当該他の端末装置のARPテーブルに、互いのMACアドレスが残っている場合、当該端末装置が隔離端末となっても、当該端末装置と当該他の端末装置との間でARP要求パケットが送信されず、検疫制御装置2は、隔離端末が関与する通信を検出することができない。したがって、検疫制御装置2は、新規隔離端末の通信を妨害するためのユニキャスト疑似ARP応答パケットを送信せず、通信相手がVista系OSの場合には妨害が行えない。
そのため、端末装置が合格端末から隔離端末に状態遷移した場合には、状態遷移後最初の妨害処理の際に、全Vista系OS端末に対して、ユニキャスト疑似ARP応答パケットを送信し、妨害漏れを防ぐ。
一方、端末装置が合格端末から隔離端末に状態遷移した後の2回目以降の妨害処理の際には、上記のように、隔離端末の通信相手ではない合格端末を、ユニキャスト疑似ARP応答送信の対象から除外するため、通信量・処理量を低減することができる。
【0192】
このように、ステップS12−6において、「隔離対象端末が新規隔離でない」かつ「隔離対象端末の通信相手以外の合格端末である」であると判定された場合、端末装置は、ユニキャスト疑似ARP応答送信対象から除外される。
一方、「隔離対象端末が新規隔離である」場合や、「隔離対象端末が新規隔離でない」場合(2回目以降の妨害処理の場合)であっても、隔離対象端末の通信相手である場合には除外せず、ユニキャスト疑似ARP応答パケットを送信する(ステップS12−7)。
【0193】
なお、識別部261aは、隔離対象端末の通信相手を、ユニキャスト疑似ARP情報テーブル(通信相手テーブル)264を参照することによって識別する。このユニキャスト疑似ARP情報テーブル264は、通信監視部250のARP要求捕捉部251が捕捉したARP要求パケットやその後のエージェントpingの結果に基づき生成される。このユニキャスト疑似ARP情報テーブル264は、図31(b)に示すように、隔離端末のIPアドレス及びMACアドレス、並びに、隔離端末の通信相手のMACアドレスから構成されている。
【0194】
[6.8.2 疑似ARP応答パケットの定期的な送信]
妨害処理は、図26及び図27のように、妨害対象端末装置の通信検出時に実行するだけでなく、図26及び図27のステップS10−6及びステップS11−7に示したように、検疫制御装置2は、定期的に疑似ARP応答パケットのブロードキャスト送信を行う。各端末装置が学習したARPテーブルの内容は、その通信相手との通信が一定期間以上無いと自動的に削除されてしまう。そのため、検疫制御装置2の疑似ARP応答送信管理部262は、禁止端末情報テーブル234又は隔離端末情報テーブル232に登録されている端末装置の通信を妨害するための疑似ARP応答パケットを定期的にブロードキャスト送信する。
【0195】
この疑似ARP応答パケットの定期的な送信においては、疑似ARP応答パケットのブロードキャスト送信だけを行い、ユニキャスト送信は行わない。これにより、通信量・処理量を低減することができる。
ここで、Vista系OSには、自身のARPテーブルを定期的に確認する機能がある。すなわち、妨害対象端末装置のMACアドレスを誤学習している端末装置は、そのARPテーブルに、「隔離端末のIPアドレス,検疫制御装置2のMACアドレス」が記録されている。この端末装置は、図32に示すARP要求パケットを定期的にユニキャスト送信する。このARP要求パケットは、送信先IPアドレスが、妨害対象端末装置のIPアドレスとなっているが、送信先MACアドレスが検疫制御装置のMACアドレスとなっているため、妨害対象端末装置は、ARP応答パケットを返さない。
その代わり、検疫制御装置2の第2疑似ARP応答送信部271cは、図32のARP要求パケットへの応答として、図25(b)に示す疑似ARP応答パケットを、前記端末装置へ送信する。これにより、妨害対象端末装置のMACアドレスを誤学習している端末装置における、誤学習状態が維持される。
【0196】
このように、Vista系OSでは、ARPテーブルの内容を定期的に他の端末装置に問い合わせて確認する機能があるが、検疫制御装置2では、その確認(ARP要求パケット)に対して、疑似ARP応答パケットでもって答えることができる。したがって、検疫制御装置2が定期的に行う疑似ARP応答パケットの送信においては、疑似ARP応答パケットのブロードキャスト送信だけを行えば足り、積極的にユニキャスト送信を行う必要がない。
【0197】
[6.8.2 エージェントによる誤学習処理]
前述のように、端末装置にエージェントが搭載されていると判断された場合、端末装置の誤学習処理は、端末装置に搭載されたエージェントに委ねられ(ステップS12−4)、Vista系OS端末であっても、疑似ARP応答パケットはユニキャスト送信されない。
エージェントに誤学習処理を行わせるため、図3に示すように、検疫制御装置2は、第1端末情報テーブル送信部295を備えている。この第1端末情報テーブル送信部295は、各端末装置それぞれのエージェントに対して、妨害対象端末装置である隔離端末を示す情報(第1端末情報テーブル230a)を送信する送信手段である。
【0198】
この送信部295は、端末装置が、妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置へ状態遷移したときと、妨害が必要な妨害対象端末装置から妨害が必要ではない非妨害対象端末装置へ状態遷移したときに、第1端末情報テーブル230aの内容を送信する。
つまり、この送信部295は、図13のエージェントping実行処理によって、第1端末情報テーブル230aの内容が更新されたときに、その第1端末情報テーブル230aの内容を、エージェントへ送信する。これにより、エージェントは、新たに端末が隔離された場合や、端末が合格となった場合には、その最新情報を直ちに入手することができる。
【0199】
そして、端末装置に搭載されたエージェントの誤学習処理部340(図5参照)の端末情報受信部340は、検疫制御装置2から送信された第1端末情報テーブル230aの内容を受信し、妨害対象端末装置(隔離端末)を把握する。さらに、誤学習処理部340のARPテーブル操作部342は、OSが有するARPテーブルを操作して、妨害対象端末装置に対する妨害を行う。
つまり、妨害対象端末装置に搭載されたエージェントのARPテーブル操作部342は、自端末のARPテーブルにおけるMACアドレスを、全端末について、検疫制御装置2のMACアドレス(偽MACアドレス)に書き換える。
また、非妨害対象端末装置に搭載されたエージェントのARPテーブル操作部342は、自端末のARPテーブルの内容のうち、全ての妨害対象端末装置のMACアドレスを、検疫制御装置のMACアドレス(偽MACアドレス)に書き換える処理を行う。これらの処理により、隔離端末からの通信、隔離端末への通信が、ともに検疫制御装置2へ流れるようになる。
【0200】
以上のように、端末装置に搭載されたエージェントが誤学習処理を行うことで、端末装置は、ユニキャスト疑似ARP応答パケットを受信しなくても、誤学習を行うことができる。
なお、妨害対象端末装置を示す情報は、検疫制御装置2から送信された第1端末情報テーブル230aの内容である必要はない。例えば、検疫制御装置2から送信されたブロードキャスト疑似ARP応答パケットを端末装置が受信すると、そのブロードキャスト疑似ARP応答パケットをエージェントが取得し、そのブロードキャスト疑似ARP応答パケットの送信元IPアドレスに基づいて、エージェントが妨害対象端末装置を把握してもよい。
【0201】
[6.8.3 中継機能]
妨害対象端末装置宛として検疫制御装置2(又は他の収集・破棄用装置)に送られてくるデータパケットのうち、送信元(=検疫制御装置の周囲の端末装置)のIPアドレスが、例外情報テーブル235に登録されている場合、検疫制御装置2(又は他の収集・破棄用装置)の通信中継部281は、そのデータパケットを破棄せずに、妨害対象端末装置に転送する。つまり、妨害対象端末装置であっても、例外に指定された端末装置との間だけは通信を成立させる(妨害しない)。
【0202】
例外通信を許可することで、隔離端末と判断された検疫対象端末装置3の内部状態を改善するためのリソース(OSの月例パッチ(Hotfix))やウィルス対策ソフトウェアのパターンファイルなど)が、特定の社内サーバやインターネット上のサーバにある場合に、隔離端末が当該リソース又はファイル等を取得することができる。
つまり、当該リソース又はファイル等があるサーバを例外情報テーブルに登録しておくことで、当該リソース又はファイル等を当該サーバからネットワーク経由で取得することができ、隔離端末の内部状態改善を容易に行える。
【0203】
仮に、例外通信を許可しない場合、内部状態を改善するためのリソース等は、CD−ROMなどオフラインで入手するほか無く、内部状態改善のための手間が著しく増加するが、例外通信を許可することで、こうした手間が低減される。
【0204】
なお、本発明は上記実施形態に限定されるものではなく、様々な変形が可能である。例えば、通信監視部250は、ネットワークを流れるARP要求パケットではなく、他種類のIPパケットを監視してもよい。この場合、他の種類のIPパケットの送信元及び/又は送信先に対して、妨害の要否を判定すればよい。
また、誤学習不能端末装置のOSは、WindowsXPやWindowsServer2008に限定されるものではなく、ブロードキャスト送信された疑似ARP応答パケットでは妨害対象端末装置のMACアドレスを誤学習させることができないすべてのOSが含まれる。
【図面の簡単な説明】
【0205】
【図1】検疫システムの全体図である。
【図2】検疫システムコンピュータプログラムセットが記録された記録媒体を示す図である。
【図3】検疫制御装置のブロック図である。
【図4】検疫制御装置の端末情報テーブルのデータ構造図である。
【図5】検疫対象端末装置のブロック図である。
【図6】検疫管理サーバのブロック図である。
【図7】ARP概要シーケンスである。
【図8】ARP要求パケット監視処理のフローチャートの前半である。
【図9】ARP要求パケット監視処理のフローチャートの後半である。
【図10】疑似ARP応答パケットのアドレス部分の設定内容を示すデータ構造図である。
【図11】ARP要求のアドレス部分の設定内容を示すデータ構造図である。
【図12】疑似ARP応答パケットのアドレス部分の設定内容を示すデータ構造図である。
【図13】エージェントping実行処理のフローチャートである。
【図14】エージェントpingプロトコルのシーケンスである。
【図15】エージェントping「タイプ」の一覧である。
【図16】エージェントping「チェック結果」のフラグ値を示す図である。
【図17】エージェントping開始要求プロトコルシーケンスである。
【図18】合格端末に対する定期的なエージェントping実行処理のフローチャートである。
【図19】疑似ARP応答パケットのアドレス部分の設定内容を示すデータ構造図である。
【図20】隔離端末に対する定期的なエージェントping実行処理のフローチャートである。
【図21】正常ARP応答パケットのアドレス部分の設定内容を示すデータ構造図である。
【図22】検疫対象端末装置における検査処理のフローチャートである。
【図23】検疫管理サーバによる第2端末情報テーブル情報送信処理のフローチャートである。
【図24】検疫制御装置による第2端末情報テーブル情報受信処理のフローチャートである。
【図25】疑似ARP応答パケットのアドレス部分の設定内容を示すデータ構造である。
【図26】妨害成立までのARPシーケンスである。
【図27】妨害成立までの他のARPシーケンスである。
【図28】疑似ARP応答パケット送信部の詳細ブロック図である。
【図29】正常ARP応答パケット送信部の詳細ブロック図である。
【図30】妨害処理を示すフローチャートである。
【図31】(a)は静的リストテーブルを示し、(b)はユニキャスト疑似ARP情報テーブルを示す。
【図32】妨害対象端末装置のMACアドレスを誤学習している端末装置が、妨害対象端末装置のMACアドレスを確認するためのARP要求のアドレス部分を示すデータ構造である。
【符号の説明】
【0206】
1:検疫システム,2:検疫制御装置,210:検査部(エージェントping機能部),211:エージェントping要求送信部(検査結果送信要求部),212:エージエントping要求送信管理部,213:エージェントping応答受信部(検査結果受信部),
214:エージェントping開始要求受信部(開始要求受信部),220:判定部,220a:第1判定部,220b:第2判定部(エージェントping利用の判定部),230:端末情報テーブル,230a:第1端末情報テーブル,231:合格端末情報テーブ(非妨害対象情報),232:隔離端末情報テーブル(妨害対象情報),230b:第2端末情報テーブル,233:許可端末情報テーブル(非妨害対象情報),234:禁止端末情報テーブル(妨害対象情報),235:例外情報テーブル(例外的通信許可情報),240:テーブル更新部,241:第1テーブル更新部,242:第2端末情報テーブル&静的リストテーブル更新部(管理用通信部),250:通信監視部(ARP要求監視部),251:ARP要求補捉部,252:ARP要求解析部(送信元及び送信先のアドレス取得部),260:通信妨害部,261:疑似ARP応答送信部,261a:第1疑似ARP応答送信部,261b:識別部,261c:第2疑似ARP応答送信部,262:疑似ARP応答送信管理部,263:静的リストテーブル,264:ユニキャスト疑似ARP情報テーブル,270:通信正常化部,271:正常ARP応答送信部,271a:第1正常ARP応答送信部,271b:識別部271b,第2正常ARP応答送信部272c,280:例外通信部,281:通信中継部,290:未登録端末装置処理部,291:ARP応答送信部,292:ARP応答受信部,295:第1端末情報テーブル送信部,3:検疫対象端末装置,310:検査制御部,320:検査ポリシー受信部,330:検査部,331:検査実行部,332:エージェントping要求受信部(検査結果送信要求受信部),333:エージェントping応答生成部,334:エージェントping応答送信部(検査結果送信部),335:エージェントping開始要求送信部(送信開始要求),340:誤学習処理部,341:端末情報受信部341,342:ARPテーブル操作部342,4:検疫管理サーバ(検疫管理コンピュータ),410:テーブル生成部,420:テーブル送信部,430:検査ポリシー生成部,440:検査ポリシー送信部,5:社内サーバ,6:ルータ,7:プリンタ,8:エージェントコンピュータプログラム未搭載の端末装置,P1:検疫制御コンピュータプログラム,P2:エージェントコンピュータプログラム,P3:検疫管理コンピュータプログラム,D1:第1領域,D2:第2領域,D3:第3領域,D4:第4領域

【特許請求の範囲】
【請求項1】
ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害部を備えた検疫制御装置であって、
前記通信妨害部は、
送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ブロードキャスト送信する第1疑似ARP応答送信部と、
送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信する第2疑似ARP応答送信部と、
前記第1疑似ARP応答送信部によってブロードキャスト送信された前記疑似ARP応答では、前記妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置を識別する識別部と、
を備え、
前記第2疑似ARP応答送信部は、前記識別部によって誤学習不能端末装置であると識別された端末装置に対して、前記疑似ARP応答をユニキャスト送信する
ことを特徴とする検疫制御装置。
【請求項2】
前記識別部は、前記誤学習不能端末装置のうち所定の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外する除外手段を備える請求項1記載の検疫制御装置。
【請求項3】
前記除外手段が除外する端末装置は、エージェントが搭載された誤学習不能端末装置であり、
前記エージェントは、当該エージェントが搭載された誤学習不能端末装置に対して妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行うものである請求項2記載の検疫制御装置。
【請求項4】
前記疑似ARP応答をユニキャスト送信する対象から除外する除外端末装置を示す除外端末装置リストを備え、
前記除外手段が除外する端末装置は、前記除外端末装置リストに示される除外端末装置である請求項2又は3に記載の検疫制御装置。
【請求項5】
前記除外手段が除外する端末装置は、前記妨害対象端末装置の通信相手以外の端末装置である請求項2〜4のいずれか1項に記載の検疫制御装置。
【請求項6】
前記除外手段は、
妨害対象端末装置が、妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置に状態遷移した後の最初の妨害処理の際には、前記妨害対象端末装置の通信相手以外の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外せず、
前記状態遷移した後の2回目以降の妨害処理の際には、前記妨害対象端末装置の通信相手以外の端末装置を、前記疑似ARP応答をユニキャスト送信する対象から除外するものである
請求項5記載の検疫制御装置。
【請求項7】
妨害対象端末装置と、その通信相手とを記憶するための通信相手テーブルを備え、
前記除外手段は、前記通信相手テーブルを参照することで、前記妨害対象端末装置の通信相手を認識する請求項5又は6記載の検疫制御装置。
【請求項8】
前記第2疑似ARP応答送信部は、前記妨害対象端末装置のMACアドレスを誤学習している端末装置が妨害対象端末装置のMACアドレスを確認するARP要求を行ったときに、当該ARP要求を送信した前記端末装置に対して、前記疑似ARP応答を送信する請求項1〜7のいずれか1項に記載の検疫制御装置。
【請求項9】
前記通信妨害部は、妨害処理を、前記妨害対象端末装置の通信検出時に実行するとともに、定期的に実行するよう構成され、
前記妨害対象端末装置の通信検出時における妨害処理では、前記疑似ARP応答のブロードキャスト送信とともに、前記疑似ARP応答のユニキャスト送信を行い、
定期的に実行する妨害処理では、前記疑似ARP応答のユニキャスト送信は行わずに、前記疑似ARP応答のブロードキャスト送信を行う請求項1〜8のいずれか1項に記載の検疫制御装置。
【請求項10】
前記端末装置が前記誤学習不能端末装置であるか否かを識別するための識別情報を、前記端末装置から取得する取得手段を備え、
前記識別部は、前記取得手段によって取得した識別情報に基づいて、誤学習不能端末装置を識別する請求項1〜9のいずれか1項に記載の検疫制御装置。
【請求項11】
前記識別部は、前記端末装置が有するOSの種別によって、誤学習不能端末装置を識別する請求項1〜10のいずれか1項に記載の検疫制御装置。
【請求項12】
妨害対象端末装置を示す情報を、端末装置に搭載された前記エージェントに対して送信する送信手段を備えている請求項3記載の検疫制御装置。
【請求項13】
前記送信手段は、端末装置が、妨害が必要ではない非妨害対象端末装置から妨害が必要な妨害対象端末装置へ状態遷移したとき、又は、妨害が必要な妨害対象端末装置から妨害が必要ではない非妨害対象端末装置へ状態遷移したときに、妨害対象端末装置を示す情報を送信する請求項12記載の検疫制御装置。
【請求項14】
コンピュータを、請求項1〜13のいずれか1項に記載の検疫制御装置として機能させるための検疫制御コンピュータプログラム。
【請求項15】
ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害方法であって、
前記妨害処理では、
送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ブロードキャスト送信するとともに、
前記第1疑似ARP応答送信部によってブロードキャスト送信された前記疑似ARP応答では、前記妨害対象端末装置のMACアドレスを誤学習させることができない誤学習不能端末装置に対して、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信する
ことを特徴とする通信妨害方法。
【請求項16】
前記妨害処理では、前記端末装置が誤学習不能端末装置であるか否かを示す情報を、当該端末装置から取得することで、前記誤学習不能端末を識別することを特徴とする請求項15記載の通信妨害方法。
【請求項17】
エージェントが搭載された端末装置であって、
前記エージェントは、通信の妨害が必要とされる妨害対象端末装置のMACアドレス以外の偽MACアドレスが、前記妨害対象端末装置のMACアドレスであるとする誤学習を、当該エージェントが搭載された端末装置に対して行わせる誤学習処理部を備えていることを特徴とする端末装置。
【請求項18】
前記エージェントは、妨害対象端末装置を示す情報を、ネットワークを通じて端末装置外部から取得する手段を備えている請求項17記載の端末装置。
【請求項19】
前記エージェントは、請求項12又は13に記載の検疫制御装置から、妨害対象端末装置を示す情報を取得する請求項18記載の端末装置。
【請求項20】
エージェントが搭載された端末装置であって、
請求項1〜13のいずれか1項に記載の検疫制御装置に対し、当該エージェントが搭載された端末装置が、前記誤学習不能端末装置であるか否かを示す情報を送信する送信手段を備えていることを特徴とする端末装置。
【請求項21】
前記送信手段は、当該エージェントが搭載された端末装置が前記誤学習不能端末装置であるか否かを示す情報として、当該エージェントが搭載された端末装置が有するOSの種別を送信することを特徴とする請求項20記載の端末装置。
【請求項22】
コンピュータを、請求項17〜21のいずれか1項に記載のエージェントとして機能させるためのエージェントコンピュータプログラム。
【請求項23】
コンピュータを、請求項1〜13のいずれか1項に記載の検疫制御装置として機能させるための検疫制御コンピュータプログラムと、
コンピュータを、請求項17〜21のいずれか1項に記載のエージェントとして機能させるためのエージェントコンピュータプログラムと、
を含むコンピュータプログラムセット。
【請求項24】
エージェントが搭載された端末装置における誤学習処理方法であって、
前記エージェントは、通信の妨害が必要とされる妨害対象端末装置のMACアドレス以外の偽MACアドレスが、前記妨害対象端末装置のMACアドレスであるとする誤学習を、当該エージェントが搭載された端末装置対して行わせることを特徴とする誤学習処理方法。
【請求項25】
検疫制御装置と端末装置とがネットワークを介して接続された検疫システムにおいて、前記端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害を行う方法であって、
送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが前記妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、前記検疫制御装置がユニキャスト送信するユニキャスト送信ステップと、
前記端末装置に搭載されたエージェントが、当該エージェントが搭載された端末装置に対して前記妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行う誤学習処理ステップと、を含み、
前記ユニキャスト送信ステップでは、前記妨害対象端末装置以外の端末装置であって、かつエージェントが搭載されていない端末装置へ、前記疑似ARP応答をユニキャスト送信する
ことを特徴とする通信妨害方法。
【請求項26】
ネットワークに接続された端末装置のうち通信の妨害が必要とされる妨害対象端末装置について、通信の妨害処理を行う通信妨害部を備えた検疫制御装置であって、
前記通信妨害部は、送信元IPアドレスが前記妨害対象端末装置のIPアドレスであり、送信元MACアドレスが妨害対象端末装置のMACアドレス以外の偽MACアドレスである疑似ARP応答を、ユニキャスト送信する疑似ARP応答送信部を備え、
前記疑似ARP応答送信部は、妨害対象端末装置以外の端末装置であって、かつエージェントが搭載されていない端末装置へ、前記疑似ARP応答を送信するものであり、
前記エージェントは、当該エージェントが搭載された端末装置に対して妨害対象端末装置のMACアドレスを誤学習させる誤学習処理を行うものである
ことを特徴とする検疫制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate