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