(57)【要約】      （修正有）【課題】ＩＰ網等のパケット網内に存するＴＣＰ／ＩＰワーム等のワームを特定及び不活性化する。【解決手段】非常事態対処用集中監視システムにリンクできるワームプローブを分散配置する。それらのワームプローブは、宛先到達不能エラーパケットを送信元ＩＰアドレス毎に追跡する。その種のエラーの個数がそのワームプローブにおいて例えば所定ローカル時限内に例えば所定ローカルしきい値を上回った場合、そのエラー個数計数値及び対応する送信元ＩＰアドレスをネットワーク内の他の全てのワームプローブに警報送信する。その種のエラーの個数が例えば所定グローバル時限内において所定グローバルしきい値を上回った場合、ワーム感染と認定された送信元ＩＰアドレスが割り当てられている末端装置からのトラフィックを遮断することによって、その末端装置からの更なるワーム放散を防止する。【選択図】図２
2006319982.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを通る宛先到達不能パケットの個数をその送信元アドレス毎に計数し、
所定時限内におけるパケット個数計数値が所定しきい値を上回った送信元アドレスを検知することにより、
ワームに感染したと見られるアドレスを上記通信ネットワーク内で検知する方法。
【請求項２】
請求項１記載の方法であって、更に、上記通信ネットワーク内に複数個のワームプローブを展開配備し、各ワームプローブにより当該通信ネットワーク内の随所で上記パケット計数を実行する方法。
【請求項３】
請求項２記載の方法であって、更に、あるワームプローブが求めたローカルなパケット個数計数値が所定ローカルしきい値を上回った送信元アドレス及び当該計数値を、上記通信ネットワーク内にある上記複数個のワームプローブのうち残りのものに送信する方法。
【請求項４】
請求項３記載の方法であって、更に、そのグローバルなパケット個数計数値が所定グローバルしきい値を上回った送信元アドレスが割り当てられている末端装置からのトラフィックを遮断する方法。
【請求項５】
請求項４記載の方法であって、上記グローバルなパケット個数計数値が、上記複数個のワームプローブのうち１個又は複数個から入手した上記ローカルなパケット個数計数値の総和である方法。
【請求項６】
請求項４記載の方法であって、上記末端装置に最も近いルータ又はスイッチを識別し、その末端装置に発したトラフィックを遮断せよとのコマンドをそのルータ又はスイッチに送信することにより、上記遮断を実行する方法。
【請求項７】
請求項４記載の方法であって、更に、上記末端装置に発するパケットの個数のグローバルな計数値がグローバルしきい値を上回った場合にネットワークアドミニストレータに警報送信する方法。
【請求項８】
請求項１記載の方法であって、上記通信ネットワークがパケット網である方法。
【請求項９】
請求項８記載の方法であって、上記パケット網がＩＰ網である方法。
【請求項１０】
請求項２記載の方法であって、上記通信ネットワーク内の随所に展開配備された上記複数個のワームプローブが、何れもその通信ネットワーク内にあるＬＡＮ−ＩＰサブネット及びトラフィックハブのうち少なくとも何れかを含む方法。
【請求項１１】
請求項１記載の方法であって、ＩＣＭＰタイプ３パケットに基づき計数を行う方法。
【請求項１２】
請求項１記載の方法であって、ネットワーク到達不能エラー、ホスト到達不能エラー、プロトコル到達不能エラー、ポート到達不能エラー及びＩＡＮＡ予約アドレス空間内宛先のうち、何れかに係る情報を含むパケットに基づき計数を行う方法。
【請求項１３】
請求項１記載の方法であって、上記通信ネットワーク内で使用可能なＩＰアドレスの総数をＬ、当該通信ネットワーク内の現用システムに割り当てられているＩＰアドレスの総数をＭ、当該通信ネットワーク内でワームが侵入可能なＩＰアドレスの総数をＮとして、パラメータＸ＝（Ｌ／Ｎ）−１及びパラメータＹ＝（Ｌ−Ｍ）／Ｎのうち少なくとも何れかに従い上記所定しきい値が定められた方法。
【請求項１４】
複数個の命令が格納されたコンピュータ可読媒体であって、当該複数個の命令に含まれる命令をプロセッサにより実行したとき、
通信ネットワークを通る宛先到達不能パケットの個数をその送信元アドレス毎に計数し、所定時限内におけるパケット個数計数値が所定しきい値を上回った送信元アドレスを検知することにより、ワームに感染したと見られるアドレスを上記通信ネットワーク内で検知する方法が、
そのプロセッサによって実行されることとなるコンピュータ可読媒体。
【請求項１５】
請求項１４記載のコンピュータ可読媒体であって、上記方法が、上記通信ネットワーク内に展開配備された複数個のワームプローブにより当該通信ネットワーク内の随所で上記パケット計数を実行させる方法であるコンピュータ可読媒体。
【請求項１６】
請求項１５記載のコンピュータ可読媒体であって、上記方法が、あるワームプローブが求めたローカルなパケット個数計数値が所定ローカルしきい値を上回った送信元アドレス及び当該計数値を、上記通信ネットワーク内にある上記複数個のワームプローブのうち残りのものに送信する方法であるコンピュータ可読媒体。
【請求項１７】
請求項１６記載のコンピュータ可読媒体であって、上記方法が、そのグローバルなパケット個数計数値が所定グローバルしきい値を上回った送信元アドレスが割り当てられている末端装置からのトラフィックを遮断する方法であるコンピュータ可読媒体。
【請求項１８】
請求項１７記載のコンピュータ可読媒体であって、上記グローバルなパケット個数計数値が、上記複数個のワームプローブのうち１個又は複数個から入手した上記ローカルな計数値の総和であるコンピュータ可読媒体。
【請求項１９】
請求項１７記載のコンピュータ可読媒体であって、上記方法が、上記末端装置に最も近いルータ又はスイッチを識別し、その末端装置に発したトラフィックを遮断せよとのコマンドをそのルータ又はスイッチに送信することにより、上記遮断を実行する方法であるコンピュータ可読媒体。
【請求項２０】
通信ネットワークを通る宛先到達不能パケットの個数をその送信元アドレス毎に計数する手段と、
所定時限内におけるパケット個数計数値が所定しきい値を上回った送信元アドレスを検知する手段と、
を備え、ワームに感染したと見られるアドレスを上記通信ネットワーク内で検知する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、大まかには通信ネットワークに関し、より詳細には、ＩＰ(Internet Protocol)網等のパケット網内に存するＴＣＰ／ＩＰ(Transport Control Protocol/Internet Protocol)ワーム等のワームを特定及び不活化する方法及び装置に関する。
【背景技術】
【０００２】
小規模企業や家庭内ＰＣユーザは、自分のシステムがハッカーによって真剣に狙われるとは思わず、真剣なハッカーの興味を引くのはより重要なインフラストラクチャ及びシステムであると信じている。また、あまり重要でないシステムであっても、かなりの準備をした熟練したハッカーでなければ潜り込むことはできないであろう。しかし、重大な脅威となっているのは熟練ハッカーではない。最大の脅威として立ち現れているのは、むしろ、ＴＣＰ／ＩＰワーム等のインターネットワームである。それらは、侵入したシステム内に身を置きながら、ネットワークとの接続を介し日常的且つ自動的に他のコンピュータシステムへの侵入を窺い、狙ったコンピュータシステムを自分に感染させて同じく攻撃拠点マシンに仕立て上げる。ＴＣＰ／ＩＰワームは熟練ハッカーにより作成されたソフトウェアであり、ハッカーはインターネット上の未感染システム(infect-able system)をマニュアルでＴＣＰ／ＩＰワームに感染させる。その後、このＴＣＰ／ＩＰワーム感染済システムは、インターネット上にある他の数多くのコンピュータシステムにそのワームを侵入させるべく、億万に上る個数のＴＣＰ／ＩＰワームＩＰパケットの送信を開始する。このＴＣＰ／ＩＰワームＩＰパケットを受信した他の未感染システムはそのワームに自動感染し、他のシステムに同じワームを侵入させるべく億万に上る個数のＴＣＰ／ＩＰワームＩＰパケットの送信を開始する。そのため、未感染システムによるＴＣＰ／ＩＰワームＩＰパケット受信が拡がり、ＴＣＰ／ＩＰワーム感染済システムが増え、ＴＣＰ／ＩＰワームＩＰパケット送信個数がますます増える、というドミノ効果が生じる。しかもこの侵入攻撃は、多数の潜在的犠牲者を対象として、人間によるハッキング努力はほとんど無しで自動実行される。インターネット上にファイアウォールを設けたからといって、ＴＣＰ／ＩＰワームによる攻撃とは無縁な筋目正しいＩＰパケットしかやってこないとは、思ってはいけない。インターネットに接続されているシステムであれば、攻撃される危険は数分に１回程度はやってくるし、インターネット上のどこかにいるＴＣＰ／ＩＰワームは、そうしたチャンスを捉えてそのシステムへの侵入を試みるものである。その試みは熟練ハッカーによるワーム送出もさしたる時間及び手間の支出もなしで行われる。システムへの侵入が試みられ続ける限り、そのワームはいずれはそのシステム内に侵入してしまう。
【０００３】
【非特許文献１】"The National Strategy to Secure Cyberspace", United State Government.
【非特許文献２】"IANA reserved IP address space", [online],<URL : http://www.iana.org/assignments/ipv4-address-space>
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＴＣＰ／ＩＰワームなるものは皆、インターネット上にある膨大な個数のシステムが抱える種々雑多な多数の弱点を攻撃するよう、作成されるものである。従って、何れかのワームが一群の弱点を見つけ出すのに成功し、その弱点を利用してコンピュータシステム内に侵入し、そのコンピュータシステムを短時間の間にＴＣＰ／ＩＰワームの攻撃拠点マシンに仕立て上げる可能性は、極めて高い。ときに見受けられることであるが、多数のコンピュータシステムがＴＣＰ／ＩＰワームに感染し、それらのワーム感染済システムから攻撃性のワームＩＰパケットが送信され、その送信によって莫大なネットワークトラフィックが発生し、このトラフィックによるＤＯＳ(Denial of Service)を通じて顕著なダメージを負うこともある。ＴＣＰ／ＩＰワーム感染済システムが有線ＬＡＮ(Local Area Network)、無線ＬＡＮ、ＶＰＮ(Virtual Private Network)、ダイアルアップネットワークその他の手段を介して社内ネットワークに接続されていれば、そのＴＣＰ／ＩＰワームはその社内ネットワークも同様にして攻撃し、その社内ネットワークに対して顕著な危害を負わせることであろう。
【０００５】
上層インターネットサービスプロバイダ、大企業、ネットワークアウトソーシングサービスプロバイダ、それから数多くの小企業も含め、ＩＰ網サービスプロバイダは皆、この厳しい問題に直面している。ＴＣＰ／ＩＰワームは即座に対策しなければならない由々しき問題である。
【０００６】
このように、各種ＩＰ網にてワーム例えばＴＣＰ／ＩＰワームを特定及び不活化する方法及び装置が必要とされている。
【課題を解決するための手段】
【０００７】
本発明の一実施形態においては、ネットワークセキュリティサービス及びネットワークセキュリティインフラストラクチャにてＴＣＰ／ＩＰワーム等のワームを検知、特定、沈静化、無効化及び不活化できるようにするため、非常事態対処用集中監視システムにリンクできるワームプローブを分散配置している。それらのワームプローブは、ワームへの感染が疑わしい送信元ＩＰアドレス毎に、その送信元ＩＰアドレスから複数のＩＰアドレスに宛てられた宛先到達不能エラーパケット(packets with destination unreachable errors)の個数の計数値や、その送信元ＩＰアドレスから複数のＩＡＮＡ(Internet Assigned Numbers Authority)予約ＩＰアドレスに宛てられた全てのＩＰパケットの個数の計数値を、追跡する。あるワームプローブにて、こうした計数値が所定ローカル時限内に所定ローカルしきい値を上回った送信元ＩＰアドレスについては、そのエラー計数値と、ワームに感染したと見られるその送信元アドレスとを、そのワームプローブからネットワーク内にある他の全てのワームプローブへと警報送信する。また、ワームへの感染が疑わしいある送信元ＩＰアドレスのうち、そうした計数値を合計した値が所定グローバル時限内に所定グローバルしきい値を上回った送信元アドレスについては、その送信元ＩＰアドレスが割り当てられている末端装置をワーム送信元として特定し、そのワーム送信元末端装置からのトラフィックを遮断することによって、そのワーム送信元末端装置からの更なるワーム放散を防止する。
【発明を実施するための最良の形態】
【０００８】
本発明の思想は、別紙図面と照らし合わせて以下の詳細な説明を検討することにより、直ちに理解されるであろう。
【０００９】
なお、理解の容易化のため、複数の図面に共通して現れる同一の部材に対しては、可能な限り同一の参照符号を付してある。
【００１０】
ＴＣＰ／ＩＰワーム等のワームは、インターネット上にあり弱点を有するコンピュータシステムに対してダメージを与えるだけでなく、膨大な量のネットワークトラフィックを発生させることによりネットワークにＤＯＳ攻撃をしかける。
【００１１】
ＴＣＰ／ＩＰワーム等のワームは自己複製型コンピュータプログラムであるという点でコンピュータウイルスに似ているが、ウイルスが自分自身を他の実行可能プログラムに添付しそれと一体になるのに対して、ワームはそれ自体で完結しており他のプログラムの一部分にならずとも繁殖することができる。また、ワームは、数多くのコンピュータに組み込まれているデータ送信機能、例えばＴＣＰ／ＩＰプロトコルをこき使うように設計されることが多い。主立った攻撃型ＴＣＰ／ＩＰワームとしては、悪名高きＣｏｄｅＲｅｄ、Ｓｌａｐｐｅｒ及びＳＱＬ／Ｓｌａｍｍｅｒがあり、これらが近年においてグローバルネットワークに及ぼした衝撃は甚大なものである。アメリカ合衆国政府が指導文書として発表した非特許文献１には、ＴＣＰ／ＩＰワームによって数十億ドルの損害が生じコンピュータネットワークに依存しきっていた国民にとり警鐘になった、と記載されている。
【００１２】
インターネット又は社内イントラネットに接続されたコンピュータは、どのような企業にも、また家庭内ネットワークの多くにも、存在している。これまでは、ＴＣＰ／ＩＰワームが新たに作成されたとき、それを検知できる効果的な方法が開発されるまでの間に、そのＴＣＰ／ＩＰワームが幾千ものコンピュータを攻撃して自分の攻撃拠点マシンに仕立て上げてしまうことがあった。即ち、ネットワークセキュリティ業界を形成しているインターネットセキュリティ企業やコンピュータセキュリティ企業がこれまでに実現した方法や装置は効果的なものではなく、未知のシグネチャを有しており主たるインターネットハブノードを襲撃してダウンさせる新たなＴＣＰ／ＩＰワームを、十分迅速に特定及び抑圧することができなかった。
【００１３】
ワームに感染したコンピュータは、標的とするＩＰアドレスをランダムに選択し、選択したＩＰアドレスが割り当てられているコンピュータ内に侵攻しようと試みる。従って、例えばワームＳＱＬ／Ｓｌａｍｍｅｒに感染したＰＣが、５００ＭＨｚのＩｎｔｅｌ（登録商標）Ｐｅｎｔｉｕｍ（登録商標）ＩＩＩプロセッサ及びｇｉｇａｂｉｔＥｔｈｅｒｎｅｔ（商標）規格のＮＩＣ(Network Interface Card)が実装されたＰＣであり、１０００００パケット毎秒即ち３００メガビット毎秒（Ｍｂｐｓ）以上のトラフィックを発生させることができる場合、インターネットに直結されているそのたった１台のマシンによって、１２時間以内にインターネット全体が攻撃されつくすことなりかねない。例えば、１０／１００ＭｂｐｓのＮＩＣが実装されているコンピュータシステム内にワームが侵入しＴＣＰ／ＩＰワーム感染済マシンに転化すると、それからまもなくの間にそのマシンによって１０／１００Ｍｂｐｓネットワークの全帯域幅が使い切られ、Ｔ１（１．５Ｍｂｐｓ）若しくはＴ３（４５Ｍｂｐｓ）インタフェース接続を用いたＷＡＮ(Wide Area Network)接続のアウトゴー方向帯域幅の大部分又は全てが使い切られてしまうであろう。また、ＴＣＰ／ＩＰワームに感染したのがデータセンター内に置かれた数台のハイエンドシステムであれば、ＯＣ３（１５５Ｍｂｐｓ）更にはＯＣ１２（６２２Ｍｂｐｓ）ＷＡＮインタフェース接続の全アウトゴー方向帯域幅が、それらのハイエンドシステムによりたやすく使い切られてしまうことにもなりかねない。こうした輻輳中のＷＡＮインタフェースにおいては、ワーム感染済コンピュータシステムが存するネットワークへと向かうインカム方向のＩＰパケットが、ほとんど全て、そのネットワークに到達できなくなる。しかも、リモートＩＰトラフィック制御によってこの問題を緩和するには、そのＷＡＮ接続に接続されているルータ又はスイッチにフィルタを適用するほかなく、それ以外には、感染済コンピュータシステムを物理的にシャットダウンするか、そのコンピュータシステムのネットワーク接続を物理的に切断するしか手だてがない。更に、今日においてさえ、ＷＡＮ接続を輻輳させるＴＣＰ／ＩＰワームが次から次へとしかけてくるＤＯＳ攻撃を回避する術は、ほとんど存在していない。何故なら、そうしたＴＣＰ／ＩＰワームの新変種が非常に数多く作成されており、ＴＣＰ／ＩＰ網上の膨大な個数のコンピュータシステムをそれらのワームが幾千もの様々な弱点を通じて日常的且つ自動的に攻撃しているから、である。
【００１４】
図１に、本発明を実施できるグローバルＩＰ網の一例を示す。即ち、図１に例示されているネットワークは本発明を実施できるパケット網等であり、例えばＩＰ網、ＡＴＭ(asynchronous transfer mode)網、フレームリレー網等がこれに該当しうる。ＩＰ網とは、広義には、ＩＰを用いてデータパケットを交換するネットワークのことである。
【００１５】
図１に示されている社内（組織内）グローバルＩＰ網１１０は、ルータ１３１及び１３２を介してインターネット１２０に接続されており、例えばアジア太平洋（ＡＰ）、欧州（ＥＭＥＡ）、合衆国（ＵＳＡ）、カナダ、ラテンアメリカ（ＬＡ）といった諸地域にちらばった複数の場所をカバーしている。様々な国の要所要所には、ワーム例えばＴＣＰ／ＩＰワームに由来する活動を検知するため、ワームプローブ１１１、１１２及び１１３が展開配備されている。テーブル１４０内に例示されているのは、ワーム活動と覚しきグローバルな活動についての計数値と、ワーム感染が疑われるＩＰアドレスとの対応関係である。ワーム活動と覚しき活動についての計数値が所定時限内に所定グローバルしきい値を上回った場合、当該ワーム活動と覚しき活動の発信源となっている送信元ＩＰアドレスに最も近いルータ又はスイッチに対し、その送信元ＩＰアドレスが割り当てられているワーム送信元たるマシンに発する全トラフィックを遮断せよ、という通知が発せられる。このトラフィック遮断によって、そのＴＣＰ／ＩＰワームが放散されるのを阻止することができ、またネットワークトラフィックの渋滞を招く大量のワームＩＰパケットを遮断することができる。
【００１６】
本発明の根本原理は、ＴＣＰ／ＩＰワーム感染済システムから送り出されるワームパケットの宛先ＩＰアドレスの中に、ＩＡＮＡ予約ＩＰドレスが含まれるほか、対応する現用システム(live system)のない数多くのＩＰアドレスも含まれることである。これは、その種のパケットの宛先ＩＰアドレスが、当該システムがランダム発生させたアドレスであるためである。例えば、ＩＰｖ４(IP version 4)によるアドレス空間内には全部で４２９４９６７２９６個のＩＰアドレスがあるが、その中にはプライベートＩＰアドレス、ブロードキャスティングＩＰアドレス、マルチキャスティングＩＰアドレス、ループバックＩＰアドレス及びＩＡＮＡ予約ＩＰアドレスが含まれている。また、そのＩＰアドレスが割り当てられている現用システムがある場合でも、それらのシステム全てでワーム侵入口となるプロトコルやポートがサービス中であるわけではなく、例えばＳＭＴＰ(Simple Mail Transfer Protocol)サーバではＴＣＰポート８０番が開いていないであろう。更に、あるＩＰアドレスが割り当てられている現用システムにおいて特定のポートが開いていたとしても、それがワーム侵入を許す弱点になる場合は限られている。例えば、ＣｏｄｅＲｅｄとして知られるワームが侵入できるのは、ドットドットバックスラッシュタイプの弱点を有するＭｉｃｒｏｓｏｆｔ（登録商標）ＩＩＳ（Internet Information Server;商標）ウェブサーバだけである。従って、ワーム感染済システムから他のコンピュータシステムにワームが侵入する前に既に、ＩＡＮＡ予約ＩＰアドレスや、現用システムに割り当てられていない多数のＩＰアドレスや、問題となるプロトコル及びポートがサービス中でないシステムへと、数多くのワームパケットが送信されている筈であり、そしてそれらは、ワーム攻撃によるＩＰトラフィックの痕跡をそのＩＰ網内に残している筈である。何故なら、ＩＰ網を構成するデバイスは、その種のパケットの送信元システムに宛てて、ＩＣＭＰ(Internet Control Message Protocol)到達不能通知パケット例えばＩＣＭＰタイプ３パケットを返信するよう、デフォルト設定されているからである。なお、ＩＣＭＰタイプ３パケットはコードフィールドに０、１、２又は３が設定されるパケットであり、ワーム感染済システムに対しては、このコードによって、そのＩＰアドレスがルーティング可能なＩＰアドレスでないこと、そのＩＰアドレスが割り当てられている現用システムが存在していないこと、又はそのＩＰアドレスが割り当てられているシステムでは要求されたプロトコル及びポートがサービス中でないことが通知される。
【００１７】
こうしたＩＣＭＰ到達不能通知パケットの痕跡を調べることができる特別なワームプローブデバイスがあれば、複数のシステムからＩＣＭＰ到達不能通知パケットを受信するシステムを直ちに特定することができる。特定されるシステムの中にはＴＣＰ／ＩＰワーム感染済システムだけでなくそのＩＰ網内でＩＰアドレススキャンを実行しているシステムも含まれているが、正当権限を有するＩＰアドレススキャンシステムは既知である。従って、当該特殊なワームプローブデバイスにて、そのＩＰ網内のハブ、ファイアウォール、ルータ及びスイッチとの通信を自動実行し、ワーム感染済コンピュータシステムに発するトラフィックを遮断させ又はワーム感染済コンピュータシステムにシャットダウン指令を与えることが可能である。このようにすることによって、それまで知られていなかった特徴を有する新変種も含め、即ちどのようなポート、プロトコル、ＯＳ(Operating System)、アプリケーション又は弱点を介して侵入してくるかやどのようなシグネチャを有しているかが分かっていないワームも含め、ワームを数秒の間に自動的に無効化及び不活化することができる。それは、ＩＡＮＡ予約ＩＰアドレスや、現用システムに割り当てられていないＩＰアドレスや、問題となるプロトコル及びポートがサービス中でないシステムに宛ててワームパケットを送信している限り、そうした疑わしいシステムが、複数のシステムから到来するＩＣＭＰ到達不能通知パケットに係るトラフィック、という痕跡を残すからである。
【００１８】
本発明の統計数学的土台は、
・あるネットワーククラウド内で使用可能なＩＰアドレスの総数Ｌ；
・そのネットワーククラウド内の現用システムに割り当てられているＩＰアドレスの総数Ｍ；
・そのネットワーククラウド内でワームが侵入可能なＩＰアドレスの総数Ｎ；
・そのネットワーククラウド内のコンピュータシステムへの侵入に成功するまでに、そのワームが攻撃するであろうＩＰアドレスの平均個数Ｘ；並びに
・そのネットワーククラウド内のコンピュータシステムへの侵入に成功するまでに、そのワームが攻撃するであろう到達不能なＩＰアドレス、即ち攻撃の痕跡を残すであろうＩＰアドレスの平均個数Ｙ；
を用いる点にある。
【００１９】
その一例はＸ＝（Ｌ／Ｎ）−１及びＹ＝（Ｌ−Ｍ）／Ｎである。例えば、あるＩＰ網のサブネットワークとして、合計１６７７７２１６個の有効ＩＰアドレスを有するクラスＡサブネットを考える。また、そのプレフィクスが９．ｘ．ｘ．ｘであるとし、そのＩＰアドレスのうち１０００００個がコンピュータシステム群により使用されており、それらのコンピュータシステム群のうち、半分即ち５００００個にてＷｉｎｄｏｗｓ（登録商標）ＯＳが使用されており、他の半分にてＵｎｉｘ（登録商標）その他のＯＳが使用されているとする。また、使用ＩＰアドレス個数で見て１０００００個のコンピュータシステムのうちＷｉｎｄｏｗｓＯＳを使用する５００００個の更に半分の２５０００個が、ワーム侵入及びワーム感染につながる弱点を有しているとする。加えて、別の１０００００個のＩＰアドレスが、ルータ、スイッチ、ハブ等のネットワーキングデバイスによって使用されているとする。従って、この例においては、コンピュータシステム用の１０００００個とネットワーキングデバイス用の１０００００個とを合わせ全部で２０００００個のＩＰアドレスが現用システムによって使用されており、ＩＰアドレスベースで５００００個のＷｉｎｄｏｗｓＯＳマシンのうちの更に２５０００個のＷｉｎｄｏｗｓＯＳシステムに、ワーム侵入及びワーム感染の危険がある。いま、誰かがインターネット内に解き放った新しいワームがランダムに攻撃をしかけ、サブネット９．ｘ．ｘ．ｘに対するインタフェースを有するマルチホームコンピュータシステムＡに侵入したとする。この例によれば、先に示した統計式からＸ＝（１６７７７２１６／２５０００）−１＝６７０、Ｙ＝（１６７７７２１６−２０００００）／２５０００＝６６３である。即ち、システムＡからサブネット９．ｘ．ｘ．ｘ内にある他のシステムＢへとワームが侵入するまでに、サブネット９．ｘ．ｘ．ｘ内にあるＩＰアドレスのうち平均して６７０個のＩＰアドレスがシステムＡから攻撃を受け、且つ到達不能ＩＰアドレスに対するシステムＡからの攻撃の痕跡トラフィックが平均して６６３個発生すると見込まれる。ここで、サブネット９．ｘ．ｘ．ｘ内に本発明に係るワームプローブデバイスを何個か配置すれば、それらのワームプローブデバイスによって、システムＡからの攻撃の平均試行回数に基づき且つシステムＡが他のシステムＢに侵入するより前に、到達不能ＩＰアドレスに対するワーム攻撃の痕跡のうち幾ばくかを検知しシステムＡをワーム感染済システムとして特定することが、可能になる。数秒ほどあれば、これらワームプローブデバイスは、システムＡに発するトラフィックを遮断するようファイアウォール、ルータ、スイッチ及びハブに指示する通信や、システムＡに対するシャットダウン指令を、自動実行することができる。６６３という数字は他のシステムがワームに感染するまでに行われる平均的侵入試行回数を統計的に求めたものに過ぎないから、現実には、システムＡがワーム感染済システムとして特定される前にシステムＡからシステムＢへとワームが侵入してしまうこともあり得るが、そうした場合でも、システムＡに対するワーム感染済特定後即座にシステムＡに発する全トラフィックが遮断されることとなるし、仮にシステムＢがワームに感染してしまっても、その事実を認識しシステムＢに発するトラフィックを遮断する動作を、それらのワームプローブデバイスにより同じ手法で行うことができる。また、先に記した数式から理解できるように、Ｙの値を大きくすれば、ワーム感染済システムから到達不能ＩＰアドレスへの攻撃の後に残される痕跡を早期に、即ちそのワームが他のシステムに侵入する前に検知することができるが、それには、［使用可能なＩＰアドレスの個数］対［現用アドレスに割り当てられているＩＰアドレスの個数］の比を十分に大きくしなければならないであろう。この比の値が大きければ大きい程、ワーム感染済システムＡから未感染システムＢへのワーム侵入は起きにくくなる。全体の１／１０のシステムが未感染システムである１０Ｍｂｐｓネットワークにて、ワーム未感染システムＢへのワーム侵入に先んじワーム感染済システムＡを不活化するには、この比の値を最小でも２０：１（ワームがＣｏｄｅＲｅｄである場合）とする必要がある。この比の値が例えば２：１のような非常に小さい値であっても、ワームプローブデバイスはなお、ワーム感染済システムＡを特定し不活化することができる。比の値が大きい場合と小さい場合との違いは、比が大きい場合ワーム未感染システムＢがワームに侵入されないですむ可能性が高いのに対して、比が小さい場合は侵入されない可能性が低くそのワームに感染して別の未感染システムを攻撃するシステムになってしまう可能性が高いことにある。
【００２０】
図２に、本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順の主手順のフローチャートを示す。本手順２００は、ステップ２１０で開始された後まずステップ２１５へと進む。注記すべきことに、ワームプローブデバイスの戦略的展開配備重点は、トラフィック負荷が重いＩＰノードである。特に、ＬＡＮ−ＩＰサブネットの大部分や、メイントラフィックアグリゲーションハブ又は交換ポイントのうちネットワーク内で重いＩＰトラフィック負荷がかかるものを、展開配備上の要とする（但しこれらに限られるものではない）。後者の例としては、ボーダルータ、ファイアウォール、プロキシ、ＶＰＮコンセントレータ、ＩＤＳ(Intrusion Detection System)、ＩＰＳ(Intrusion Prevention System)等のセグメントがある。なお、ＩＤＳとはネットワークトラフィック解析技術を用いネットワーク上での侵入行為を検知してユーザに警報を発するシステムであり、ＩＰＳとはアクセス制御を実行して無権限ユーザによる不当利用からコンピュータを守るシステムである。
【００２１】
本手順２００においては、ステップ２１５にて、ワームプローブのＮＩＣを通過していくネットワーク上の全ＩＰパケット、例えばＴＣＰ、ＵＤＰ、ＩＣＭＰ等のプロトコルＩＰパケットが、ワームプローブデバイスにより監視され、ステップ２２０にて、そのＩＰパケットがＩＡＮＡ予約ＩＰアドレス空間内のＩＰアドレス宛であるかどうかがチェックされる。注記すべきことに、ＴＣＰ／ＩＰワームは、標的とするＩＰアドレスをランダム発生させそのＩＰアドレスが割り当てられているマシンを攻撃するものであり、他方でＩＡＮＡ予約ＩＰアドレス空間は通常は使用されないものであるから、その空間内のアドレス宛のパケットがあったら調査解析を要する。そのため、本手順では、そのＩＰパケットの宛先ＩＰアドレスがＩＡＮＡ予約ＩＰアドレス空間内であったらステップ２２５へと進み、そうでなければステップ２３５へと進む。
【００２２】
本手順２００においては、ステップ２２５にて、ＩＡＮＡ予約ＩＰアドレス空間内にあるそのＩＰパケットの宛先ＩＰアドレスが、許容ＩＡＮＡ予約ＩＰアドレスとして許容ＩＡＮＡ予約ＩＰアドレスメモリテーブルに登録されているかどうかが、チェックされる。ＩＡＮＡ予約ＩＰアドレス空間内の許容アドレスであったらステップ２３５へと進み、そうでなければステップ２３０へと進む。ステップ２３０では、図４に示す副手順即ちワーム感染疑いリスト追加手順４００が実行される。この手順４００においては、そのＩＰパケットはＩＡＮＡ予約ＩＰアドレス性違背として扱われ、その送信元ＩＰアドレスエントリに対応する累算的計数値エントリが１インクリメントされると共に現在日時がタイムスタンプエントリに記録される。これを終えたらステップ２５５へと進む。次の表１に、ＩＡＮＡ予約ＩＰアドレスの例を示す。最新のＩＡＮＡ予約ＩＰアドレスについては非特許文献２を参照されたい。
【表１】
2006319982.tif 000003
【００２３】
本手順２００においては、ステップ２３５にて、そのパケットが、そのコードフィールドに０、１、２又は３がセットされたＩＣＭＰタイプ３パケットかどうかがチェックされる。コードフィールドが０ならネットワーク、１ならホスト、２ならプロトコル、３ならポートへの到達不能を通知するパケットである。なお、ＩＣＭＰタイプ３パケットのフォーマットは図６に示す通りである。そのコードフィールドに０、１、２又は３がセットされたＩＣＭＰタイプ３パケットであった場合はステップ２４０へと進み、そうでなければステップ２１５に戻る。ステップ２４０では、そのパケットの宛先ＩＰアドレスが正当権限スキャンシステムＩＰアドレスメモリテーブル内にあるかどうかがチェックされる。そのパケットの宛先ＩＰアドレスが正当権限スキャンシステムＩＰアドレスメモリテーブル内にあった場合はテップ２１５に戻り、そうでなければステップ２４５へと進む。
【００２４】
本手順２００においては、ステップ２４５にて、そのＩＣＭＰタイプ３パケットに埋め込まれている原ＩＰパケットのヘッダが抽出され、原ＩＰパケットの送信元ＩＰアドレス、宛先ＩＰアドレス、プロトコル情報及びポート情報が取得される。本手順２００においては、この原ＩＰパケットがＩＣＭＰ到達不能通知性違背として扱われその個数が計数される。そのコードフィールドに０、１、２又は３がセットされるＩＣＭＰタイプ３パケットのフォーマットは図６に示した通りである。これを終えたらステップ２５０へと進む。注記すべきことに、本手順２００では、このステップ以降の動作に際し、ＩＣＭＰ到達不能通知パケットのコンテンツの一部である原ＩＰパケットのヘッダから抽出された送信元ＩＰアドレス及び宛先ＩＰアドレスが使用される。これを使用できるのは、ＩＣＭＰ到達不能通知パケットが、宛先とされたネットワーク、ホスト、プロトコル又はポートに到達できない場合に送り返されるパケットであるから、である。また、ワーム感染済システムは様々な宛先にパケットを送信するものであるが、それへの返信である個々のＩＣＭＰ到達不能通知パケットは、ある１個の送信元ＩＰアドレスから送られたパケットの宛先ＩＰアドレスのうち１個が到達不能なＩＰアドレスであった、ということでしかない。ＩＣＭＰ到達不能通知パケットのコンテンツの一部である原ＩＰパケットから原ＩＰパケットの送信元ＩＰアドレス及び宛先ＩＰアドレスを抽出しているのは、この矛盾を克服するためである。こうすることによって、原ＩＰパケット群が単一のＩＰアドレスを送信元とし複数のＩＰアドレスを宛先として送信されたものであるかどうかを、判別することができる。例えば、ＩＰアドレス９．２００．２００．５のワーム感染済コンピュータからＩＰアドレス９．１００．１００．１１１及び９．１００．１００．２２２宛にワームパケットが送信されたとする。それらのＩＰアドレスが何れの現有システムにも割り当てられていない場合、ＩＰアドレス９．１００．１００．１の末端ルータは２個のホスト到達不可能通知パケットをそのワーム感染済コンピュータに送信する。これら、ＩＰアドレス９．１００．１００．１の末端ルータからの返信である２個のホスト到達不可能通知パケットには、何れも、ワーム感染済コンピュータのＩＰアドレス９．２００．２００．５が埋め込まれている。それら２個のＩＣＭＰパケットの違いは専らそのコンテンツにあり、一方のパケットには９．１００．１００．１１１を宛先とする原パケットのヘッダが、他方のパケットには９．１００．１００．２２２を宛先とする原パケットのヘッダが、コンテンツとして埋め込まれている。
【００２５】
本手順２００においては、ステップ２５０にて、図４に示したワーム感染疑いリスト追加副手順４００が実行され、宛先ＩＰアドレス到達不能（ネットワーク到達不能、ホスト到達不能又はその双方）、プロトコル到達不能又はポート到達不能を示すエラーコードを含むＩＣＭＰ到達不能通知ＩＰパケットの個数の計数値のうち、その送信元ＩＰアドレスに対応する累算的計数値が１インクリメントされる。ステップ２５５では、何れかのワームプローブデバイスが調べた送信元ＩＰアドレスの中に、その送信元ＩＰアドレスに対応する累算的パケット個数計数値が所定グローバル時限内に所定グローバルしきい値を上回るに至った送信元ＩＰアドレスがあるかどうか、チェックされる。累算的計数値についてのこの所定グローバルしきい値は、そのワームプローブのオペレータが指定する可変なパラメタであり、例えばワームプローブ個数の１０倍にデフォルト設定しておく。所定グローバル時限は、例えば２秒にデフォルト設定しておく。ある同じＩＰアドレスを送信元とするＩＰパケット群が引き起こしたＩＣＭＰ到達不能通知性違背又はＩＡＮＡ予約ＩＰアドレス性違背を何れかのワームプローブデバイスが計数した結果、その累算的ＩＰパケット個数計数値が所定グローバル時限内に所定グローバルしきい値を上回るに至った場合、ステップ２６０へと進み、そうでなければステップ２９０へと進む。
【００２６】
本手順２００においては、ステップ２６０にて、この送信元ＩＰアドレス即ちワームのＩＰアドレスｘが、現在日時を示すタイムスタンプＵＴＣｘと共に、グローバルテーブル内に記録され、他のワームプローブに送信され、更に電子メール、ページャ等複数の手段（但しこれらに限るものではない）を用いてオペレータたる人間に通知される。次いで進むステップ２６５では、そのワームプローブがワーム感染済システム特定専門モードで動作しているのかそれともワーム感染済システム特定兼不活化モードで動作しているのかが、チェックされる。ワーム感染済システム特定専門モードならステップ２１５に戻り、そうでなければそのワーム感染済システムを不活化するためステップ２７０へと進む。ワーム感染済システム特定専門モードとは、そのワームプローブによってワーム感染済システムが特定されるけれども不活化まではされないモードのことであり、ワーム感染済システム特定兼不活化モードとは、そのワームプローブによってワーム感染済システムが特定及び不活化されるモードのことである。グローバルテーブルとは、グローバル的に見てワームへの感染が疑わしいシステム及びワーム感染と認定したシステムのＩＰアドレスと、それに関連する累算的計数値やタイムスタンプ等のデータとを、追跡的に保持するテーブルのことである。
【００２７】
図９にグローバルテーブルのデータ構造を示す。このデータ構造９００はテーブルへのエントリポイントを５個有している。エントリポイント９０１はＩＡＮＡ予約ＩＰアドレス性違背用の、エントリポイント９０２はＩＣＭＰネットワーク到達不能通知性違背用の、エントリポイント９０３はＩＣＭＰホスト到達不能通知性違背用の、エントリポイント９０４はＩＣＭＰプロトコル到達不能通知性違背用の、エントリポイント９０５はＩＣＭＰポート到達不能通知性違背用の、エントリポイントである。これらエントリポイントには、それぞれ、同様の構成を有する下部データ構造が一組ずつ対応付けられている。例えばエントリポイント９０３に対応付けられているのは、８個一組のデータ構造９０１〜９１７であり、これらはそれぞれ送信元ＩＰアドレスエントリ、累算的計数値エントリ及びタイムスタンプエントリから構成されており、また送信元ＩＰアドレスエントリに従いソートされてその順番に並んでいる。
【００２８】
本手順２００においては、ステップ２７０にて、今回ワーム感染済システムとして特定したシステムを遮断するようワームプローブからルータ又はスイッチに命令したことが、以前にあったかどうかが、チェックされる。まだ遮断命令を下したことがなければステップ２８５へと進み、そうでなければステップ２７５へと進む。ステップ２７５では、この遮断要求が発せられてからの経過時間が遮断タスク完遂所要時間を上回っているかどうかがチェックされる。上回っている場合はステップ２８０へと進み、そうでなければステップ２１５に戻る。ステップ２８０では、ワーム送信元ＩＰアドレスｘの遮断に失敗したことが、現在日時即ち遮断失敗日時を示すタイムスタンプＵＴＣｘと共に、グローバルテーブル内に記録され、他のワームプローブに送信され、更に電子メールやページャ等複数の手段（但しこれらに限るものではない）を用いてオペレータたる人間に通知される。この場合、ワームが遮断されないとはいえシステムによりワームが検知されオペレータに報告されるので、報告を受けたオペレータ等が検討・解明を行いワーム感染済システムをマニュアルで切り離すことができる。この処理の後はステップ２１５に戻る。
【００２９】
本手順２００においては、ステップ２８５にて、トレースルートコマンドと同様の手法を用い、ワームの送信元として特定されたＩＰアドレスを有するコンピュータシステムに今なお到達可能なルータ又はスイッチのうちそのシステムに最も近いものが特定され、そのルータ又はスイッチに対し、当該特定されたＩＰアドレスを有するコンピュータシステムに発する全トラフィックを遮断するよう命令が下される。その後に進むステップ２８７では、ワーム送信元ＩＰアドレスｘについてその遮断に成功したことが、現在日時即ち遮断成功日時を示すタイムスタンプＵＴＣｘと共に、グローバルテーブル内に記録され、他のワームプローブに送信され、更に電子メールやページャ等複数の手段（但しこれらに限るものではない）を用いてオペレータたる人間に通知される。この後はステップ２１５に戻る。
【００３０】
本手順２００においては、ステップ２９０にて、何れかのワームプローブデバイスが調べた送信元ＩＰアドレスの中に、その送信元ＩＰアドレスに対応する累算的パケット個数計数値が所定ローカル時限内に所定ローカルしきい値を上回るに至った送信元ＩＰアドレスがあるかどうか、チェックされる。この所定ローカルしきい値はそのワームプローブのオペレータが指定する可変パラメタであり、例えば１０にデフォルト設定しておく。ローカル時限は例えば１秒にデフォルト設定しておく。ある同じＩＰアドレスを送信元とするＩＰパケット群が引き起こしたＩＣＭＰ到達不能通知性違背又はＩＡＮＡ予約ＩＰアドレス性違背を何れかのワームプローブデバイスが計数した結果、その累算的ＩＰパケット個数計数値が所定ローカル時限内に所定ローカルしきい値を上回るに至った場合は、ステップ２９５へと進み、そうでなければステップ２１５に戻る。
【００３１】
本手順２００においては、ステップ２９５にて、所定時間内における累算的計数値が所定ローカルしきい値を上回ったためワーム送信元とされたこのＩＰアドレスが、そのしきい値超過を検知したワームプローブデバイスから、ネットワーク内の他の全てのワームプローブへと送信される。この後はステップ２１５に戻る。
【００３２】
図３に、本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順のうち、周期的ワーム感染疑いＩＰアドレステーブルクリア副手順のフローチャートを示す。この副手順は非常に重要な手順である。それは、ＩＡＮＡ予約ＩＰアドレス性違背及びＩＣＭＰ到達不能通知性違背が皆ＴＣＰ／ＩＰワームによって引き起こされるわけではなく、ＴＣＰ／ＩＰワームやスキャンマシンから発せられたと言えるのはＩＡＮＡ予約ＩＰアドレス性違背及びＩＣＭＰ到達不能通知性違背を引き起こしたパケットのうち単一のアドレスを送信元とし複数のアドレスを宛先として短時間の間に送信されるパターンを有するパケット群だけであるので、古くさくなった送信元ＩＰアドレスエントリを削除するこのクリア副手順なしで主手順２００を実行すると、ワーム感染済システムでないシステムが誤ってワーム感染済システムとして特定されてしまいかねないからである。ワームプローブによる主手順２００の実行が開始された後、ＩＡＮＡ予約ＩＰアドレス性違背又はＩＣＭＰ到達不能通知性違背を引き起こしたＩＰアドレスが登録されていくのは、ローカルワーム感染疑いリストＩＰアドレステーブル（以下「ローカルテーブル」）及びグローバルワーム感染疑いリストＩＰアドレステーブル（以下「グローバルテーブル」）である。グローバルテーブルはグローバルに見て、またローカルテーブルはローカルに見て、そのワームに感染している疑いがあり又はワーム感染済と特定できるシステムのＩＰアドレスと、これに関連するデータ例えば累算的計数値及びタイムスタンプと、のリストを、追跡的に保持する。副手順３００は、メモリ上にあるこれらのテーブルへの送信元ＩＰアドレスエントリのうち、時間が超過したものをクリアするのに用いられる。本手順３００はステップ３０５にて開始された後ステップ３１０へと進む。
【００３３】
図８にローカルテーブルのデータ構造を示す。このデータ構造８００はテーブルへのエントリポイントを５個有している。エントリポイント８０１はＩＡＮＡ予約ＩＰアドレス性違背用の、エントリポイント８０２はＩＣＭＰネットワーク到達不能通知性違背用の、エントリポイント８０３はＩＣＭＰホスト到達不能通知性違背用の、エントリポイント８０４はＩＣＭＰプロトコル到達不能通知性違背用の、エントリポイント８０５はＩＣＭＰポート到達不能通知性違背用の、エントリポイントである。これらエントリポイントには、それぞれ、同様の構成を有する下部データ構造が一組ずつ対応付けられている。例えばエントリポイント８０３には、それぞれ送信元ＩＰアドレスエントリ及び累算的計数値エントリから構成される３個の送信元ＩＰアドレスデータ構造８１０、８２０及び８３０が対応付けられている。送信元ＩＰアドレスデータ構造８１０、８２０及び８３０には、それぞれ宛先ＩＰアドレスエントリ及びタイムスタンプエントリから構成される宛先ＩＰアドレスデータ構造が下部データ構造として１個又は複数個対応付けられている。例えば、送信元ＩＰアドレスＡについての送信元ＩＰアドレスデータ構造８１０には下部データ構造として３個の宛先ＩＰアドレスデータ構造８１１、８１２及び８１３が対応付けられており、送信元ＩＰアドレスＢについての送信元ＩＰアドレスデータ構造８２０にも同じく下部データ構造として８個の宛先ＩＰアドレスデータ構造８２１〜８２８が対応付けられており、送信元ＩＰアドレスＣについての送信元ＩＰアドレスデータ構造８３０にも下部データ構造として２個の宛先ＩＰアドレスデータ構造８３１及び８３２が対応付けられている。送信元ＩＰアドレス構造は送信元ＩＰアドレスに従いソートされてその順番に並んでおり、下部構造たる宛先ＩＰアドレス構造は宛先ＩＰアドレスに従いソートされてその順番に並んでいる。
【００３４】
図９にグローバルテーブルのデータ構造を示す。このデータ構造９００はテーブルへのエントリポイントを５個有している。エントリポイント９０１はＩＡＮＡ予約ＩＰアドレス性違背用の、エントリポイント９０２はＩＣＭＰネットワーク到達不能通知性違背用の、エントリポイント９０３はＩＣＭＰホスト到達不能通知性違背用の、エントリポイント９０４はＩＣＭＰプロトコル到達不能通知性違背用の、エントリポイント９０５はＩＣＭＰポート到達不能通知ＩＰパケット性違背用の、エントリポイントである。これらエントリポイントには、それぞれ、同様の構成を有する下部データ構造が一組ずつ対応付けられている。例えばエントリポイント９０３には、８個一組のデータ構造９０１〜９１７が対応付けられている。データ構造９０１〜９１７は、それぞれ送信元ＩＰアドレスエントリ、累算的計数値エントリ及びタイムスタンプエントリから構成されており、送信元ＩＰアドレスエントリに従いソートされてその順番に並んでいる。
【００３５】
本手順３００においては、ステップ３１０にてコンピュータシステム時刻がアクセスされる。コンピュータシステム時刻は、ＮＴＰ(Network Time Protocol)を用いＵＴＣ(Universal Time Clock)と同期されている。なおＮＴＰはインターネット上にあるコンピュータ間で時刻を同期させるのに使用されるプロトコルである。ステップ３１５では、ローカルテーブル内にある宛先ＩＰアドレスエントリのうち最初の１個がアクセスされる。ステップ３２０では、［現在日時]−［ローカルテーブル内でその宛先ＩＰアドレスに対応付けられているタイムスタンプ］の値が、この宛先ＩＰアドレスについての所定ローカル時限を上回っているかどうかが、チェックされる。上回っている場合はステップ３２５へと進みそうでなければステップ３４０へと進む。ステップ３２５では、この宛先ＩＰアドレスエントリが削除され、システムメモリプールにてこの宛先ＩＰアドレスに割り当てられていたメモリ構造が解放される。ローカルテーブル内でこの宛先ＩＰアドレスエントリがぶら下がっていた送信元ＩＰアドレスデータ構造の累算的計数値エントリは、この削除に伴い１デクリメントされる。ステップ３３０では、ローカルテーブル内におけるこの累算的計数値エントリが０であるかどうかがチェックされる。０である場合はステップ３３５へ、そうでなければステップ３４０へと進む。
【００３６】
本手順３００においては、ステップ３３５にて、累算的計数値エントリが０になった送信元ＩＰアドレスエントリが削除され、システムメモリプールにてその送信元ＩＰアドレスに割り当てられていたメモリ構造が解放される。これは、このアドレスを送信元とし複数のＩＰアドレスを宛先とするＩＰパケット、特にＩＡＮＡ予約ＩＰアドレス空間内にあるか到達不能な多数のアドレスを宛先とするＩＰパケットが、所定ローカル時限内に送信されなかった、ということである。ステップ３４０では、この送信元ＩＰアドレスエントリを処理したことでローカルテーブル内の最後の宛先ＩＰアドレスエントリが処理されたのかどうかが、チェックされる。最後であればローカルテーブルクリア処理を終えてグローバルテーブルクリア処理を実行するためステップ３５０へと進み、そうでなければステップ３４５へと進む。ステップ３４５ではローカルテーブル内の次の宛先ＩＰアドレスエントリがアクセスされ、それが終わるとステップ３２０に戻る。
【００３７】
本手順３００においては、ステップ３５０にてグローバルテーブル内の最初の送信元ＩＰアドレスエントリがチェックされ、ステップ３５５にて、その送信元ＩＰアドレスエントリに対応して、グローバルテーブル内にワーム送信元として特定済、遮断成功又は遮断失敗との記録があるかどうかがチェックされる。特定済、遮断成功又は遮断失敗との記録がある場合はステップ３７０へと進み、そうでなければステップ３６０へと進む。ステップ３６０では、［現在日時］−［グローバルテーブル内でその送信元アドレスに対応付けられているタイムスタンプ］の値が、その送信元ＩＰアドレスについての所定グローバル時限を上回っているかどうかが、チェックされる。上回っている場合はステップ３６５へと進み、そうでなければステップ３７０へと進む。ステップ３６５ではこの送信元ＩＰアドレスエントリが削除され、システムメモリプールにてこの送信元ＩＰアドレスエントリに割り当てられていたメモリ構造が解放される。
【００３８】
本手順３００においては、ステップ３７０にて、これがグローバルテーブル内の最後の送信元ＩＰアドレスエントリかどうかがチェックされる。最後ならステップ３８０へと進みそうでなければステップ３７５へと進む。ステップ３７５ではグローバルテーブル内の次の送信元ＩＰアドレスエントリがアクセスされ、それが済んだらステップ３５５に戻る。ステップ３８０では所定ローカル時限終期待ちが実行され、終期が来たらステップ３１０に戻る。
【００３９】
図４に、本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順のうちワーム感染疑いリスト追加副手順のフローチャートを示す。本手順４００は主手順２００からの呼出により実行され、ワーム送信元と疑わしきＩＰアドレスをローカルテーブル及びグローバルテーブルに追加する副手順である。本手順４００はステップ４０５にて開始され、ステップ４１０へと進む。
【００４０】
本手順４００においては、ステップ４１０にて、ＩＡＮＡ予約ＩＰアドレス性違背か、ＩＣＭＰネットワーク到達不能通知性違背か、ＩＣＭＰホスト到達不能通知性違背か、ＩＣＭＰプロトコル到達不能通知性違背か、それともＩＣＭＰポート到達不能通知性違背かに応じて、ローカルテーブル内のエントリポイントが選択される。ステップ４１５では、その送信元ＩＰアドレスについてのエントリがローカルテーブル内に既にあるかどうかが、ローカルテーブル内のソート済ＩＰアドレスエントリ群を調べることによってチェックされる。その送信元ＩＰアドレスエントリが見つかった場合はステップ４２５へと進み、そうでなければステップ４２０へと進む。ステップ４２０では、システムメモリプール内のメモリ構造が１個、その送信元ＩＰアドレスに対し送信元ＩＰアドレスデータ構造として割り当てられ、その送信元ＩＰアドレスデータ構造内の送信元ＩＰアドレスエントリにはその送信元ＩＰアドレスが、また累算的計数値エントリには対応する累算的計数値＝１が、それぞれセットされる。同ステップでは、更に、システムメモリプール内のメモリ構造が１個ずつ、その送信元ＩＰアドレスに対応する個々の宛先ＩＰアドレスに対し宛先ＩＰアドレスデータ構造として割り当てられ、その宛先ＩＰアドレスデータ構造内の宛先ＩＰアドレスエントリにはその宛先ＩＰアドレスが、またタイムスタンプエントリには現在日時を示すタイムスタンプが、それぞれセットされる。同ステップでは、そして、これらデータ構造として割り当てられたメモリ構造が、送信元ＩＰアドレスに従いソートされつつ、ローカルテーブル内に組み込まれる。なお、送信元ＩＰアドレスデータ構造１個に対して宛先ＩＰアドレスデータ構造の個数が１個の場合もあるが複数個の場合もある。そのため、ローカルテーブル実施時には、例えば、それぞれ現在日時を示すタイムスタンプエントリを有する宛先ＩＰアドレスデータ構造を１個の送信元ＩＰアドレスデータ構造に複数個対応付けられるよう、また各送信元ＩＰアドレスデータ構造にて自分に対応する宛先ＩＰアドレスデータ構造の個数の計数値を保持するようにする。
【００４１】
本手順４００においては、ステップ４２５にて、その送信元ＩＰアドレスに対応する宛先ＩＰアドレスに係るエントリがローカルテーブル内で既にその送信元ＩＰアドレスに係るエントリに対応付けられているかどうかが、ローカルテーブル内のソート済ＩＰアドレスエントリ群を調べることによりチェックされる。既に対応付けられていることが分かった場合はステップ４３０へと進み、そうでなければステップ４４０へと進む。ステップ４３０ではその宛先ＩＰアドレスエントリに係るタイムスタンプエントリを更新して現在日時を示すタイムスタンプとし、その後ステップ４３５へと進んで主手順２００に戻る。他方のステップ４４０では、その送信元ＩＰアドレスに対応付けられている累算的計数値エントリが１インクリメントされる一方、対応する宛先ＩＰアドレスに対してシステムメモリプール内のメモリ構造１個が宛先ＩＰアドレスデータ構造として割り当てられる。同ステップでは、その宛先ＩＰアドレスデータ構造内の宛先ＩＰアドレスエントリにはその宛先ＩＰアドレスが、また対応するタイムスタンプエントリには現在日時を示すタイムスタンプが、それぞれセットされる。同ステップでは、そして、その宛先ＩＰアドレスデータ構造が、対応する送信元ＩＰアドレスに係るデータ構造の下に且つ宛先ＩＰアドレスに従いソートされつつ、ローカルテーブル内に組み込まれる。
【００４２】
本手順４００においては、ステップ４４５にて、ＩＡＮＡ予約ＩＰアドレス性違背か、ＩＣＭＰネットワーク到達不能通知性違背か、ＩＣＭＰホスト到達不能通知性違背か、ＩＣＭＰプロトコル到達不能通知性違背か、それともＩＣＭＰポート到達不能通知性違背かに応じて、グローバルテーブル内のエントリポイントが選択される。ステップ４５０では、その送信元ＩＰアドレスに係るエントリがグローバルテーブル内に既にあるかどうかが、グローバルテーブル内のソート済ＩＰアドレスエントリ群を調べることによってチェックされる。その送信元ＩＰアドレスに係るエントリが見つかった場合はステップ４５５へと進み、そうでなければステップ４６５へと進む。ステップ４５５では、グローバルテーブル内でその送信元アドレスエントリに対応付けられている累算的計数値エントリが１インクリメントされ、同じく対応付けられているタイムスタンプエントリが更新される。この後はステップ４６０へと進み更に主手順２００に戻る。
【００４３】
本手順４００においては、ステップ４６５にて、ローカルテーブル内でその送信元ＩＰアドレスエントリに対応付けられている累算的計数値エントリが所定ローカルしきい値を上回っているかどうかが、チェックされる。上回っている場合はステップ４７５へと進み、そうでなければステップ４７０へと進んで主手順２００に戻る。ステップ４７５では、システムメモリプール内のメモリ構造が１個、その送信元ＩＰアドレスに対し割り当てられ、そのメモリ構造内には、その送信元ＩＰアドレス及び対応する累算的計数値がコピーされ且つ現在日時を示すタイムスタップがセットされる。同ステップでは、このメモリ構造が、送信元ＩＰアドレスに従いソートされつつ、グローバルテーブル内に組み込まれる。その後はステップ４８０へと進んで主手順２００に戻る。
【００４４】
図５に、本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順のうちグローバル変化受信副手順のフローチャートを示す。本手順５００は、他のワームプローブから送られてきた変化情報を受信し更新する副手順であり、ステップ５０５における開始後ステップ５１０へと進む。
【００４５】
本手順５００においては、ステップ５１０にて、他のワームプローブからのグローバル変化情報を待って受信する動作が実行される。ステップ５１５では、受信したグローバル変化情報が他のワームプローブから送信されたグローバルワーム感染疑いリストアドレス変化情報であるのかグローバル設定変更情報であるのか、チェックされる。グローバル設定変更情報であった場合はステップ５２０へと進みそうでなければステップ５２５へと進む。
【００４６】
本手順５００においては、ステップ５２０にてグローバル設定変更情報がワームプローブ設定メモリテーブル内にコピーされその後ステップ５１０に戻る。他方のステップ５２５では、ＩＡＮＡ予約ＩＰアドレス性違背か、ＩＣＭＰネットワーク到達不能通知性違背か、ＩＣＭＰホスト到達不能通知性違背か、ＩＣＭＰプロトコル到達不能通知性違背か、それともＩＣＭＰポート到達不能通知性違背かに応じて、グローバルテーブル内のエントリポイントが選択される。
【００４７】
本手順５００においては、ステップ５３０にて、受信したＩＰアドレスがグローバルテーブル内に既にあるかどうかがチェックされる。既にあるならステップ５５０へと進みそうでなければステップ５３５へと進む。ステップ５３５では、システムメモリプール内のメモリ構造が１個、その送信元ＩＰアドレスに割り当てられ、そのメモリ構造内には、その送信元ＩＰアドレス及び対応する累算的計数値がコピーされ且つ現在日時を示すタイムスタンプがセットされる。同ステップでは、そのメモリ構造が、送信元ＩＰアドレスに従いソートされつつグローバルテーブルに組み込まれる。
【００４８】
本手順５００においては、ステップ５４０にて、ＩＡＮＡ予約ＩＰアドレス性違背か、ＩＣＭＰネットワーク到達不能通知性違背か、ＩＣＭＰホスト到達不能通知性違背か、ＩＣＭＰプロトコル到達不能通知性違背か、それともＩＣＭＰポート到達不能通知性違背かに応じて、ローカルテーブル内のエントリポイントが選択される。ステップ５４５では、受信したＩＰアドレスがローカルテーブル内にも既にあるかどうかがチェックされる。既にあるならステップ５５５へと進み、そうでなければステップ５１０に戻る。
【００４９】
本手順５００においては、ステップ５５０にて、グローバルテーブルの送信元ＩＰアドレスエントリ内の累算的計数値に、受信した累算的計数値即ち同じ送信元ＩＰアドレスについての累算的計数値が加算され、グローバルテーブル内のタイムスタンプが更新される。ステップ５５５においては、ローカルテーブル内でその送信元ＩＰアドレスに対応付けられている累算的計数値が、グローバルテーブル内に新たに設けた同じ送信元ＩＰアドレスについてのエントリに加算される。ステップ５６０では、ローカルテーブル内でその送信元ＩＰアドレスに対応付けられている累算的計数値が他のワームプローブに送信される。ステップ５６５では、その送信元ＩＰアドレスに対応付けられている累算的計数値が所定グローバルしきい値を上回っているかどうかがチェックされる。上回っていなければステップ５１０に戻り上回っていればステップ５７０へと進む。ステップ５７０では、主手順２００中のステップ２６０、２６５、２７０、２７５、２８０、２８５、２８７の実行を通じて、その送信元ＩＰアドレスがワーム送信元として特定及び遮断される。その後はステップ５１０に戻る。
【００５０】
本発明に係るアーキテクチャを形づくるコンポーネントは、例えば次のようなものである。
【００５１】
・各ワームプローブデバイスは、３．０ＧＨｚのＩｎｔｅｌ社製ＰｅｎｔｉｕｍＩＶプロセッサ、最低１ＧＢのＲＡＭ(random access memory)及びｇｉｇａｂｉｔＥｔｈｅｒｎｅｔＮＩＣを備えており、ＯＳとしてはＬＩＮＵＸ（登録商標）をまたアプリケーションとしてはＳｎｉｆｆｅｒ（登録商標）アプリケーションを実行する能力があるシステムか、或いはこれと比肩する処理能力があるシステムであれば、どのような汎用コンピュータシステムによっても実現することができる。Ｓｎｉｆｆｅｒアプリケーションとは、そのコンピュータのＮＩＣがプラグインしているネットワークセグメント上を通過中のデータパケット全てを監視するプログラム、デバイス又はその組合せである。どのワームプローブデバイスも、ＮＴＰピアサービスを利用してＵＴＣに同期させられるよう、構成・設定しておく必要がある。ワームプローブにて実行されるアプリケーションは、例えばＣ言語により記述された実行可能なアプリケーションとして作成すればよい（但しこれに限られるものではない）。
【００５２】
・ワームプローブデバイスは、１個の組織例えば企業内に設けられている複数のネットワーク例えばＬＡＮや、ネットワーク内で重いＩＰトラフィック負荷がかかるメイントラフィックアグリゲーションハブや交換ポイント、例えばボーダルータ、ファイアウォール、プロキシ、ＶＰＮコンセントレータ、ＩＤＳ及びＩＰＳセグメントに展開配備される。配備単位となる個々のネットワークでは、それぞれ、重いトラフィックがかかるＩＰノード毎に少なくとも１個のワームプローブデバイスを配備するとよい。グローバルに展開している巨大なネットワークであれば、その内部に多数のワームプローブが展開配備されることとなろう。
【００５３】
・社内ネットワーク内に展開配備されるルータは、ＩＥＴＦ(internet Engineering Task Force)ＲＦＣ(Request For Comments)７９２に従うものとするか、ＩＡＮＡ予約ＩＰアドレスを考慮してルーティングするものとするか、或いはこれらの条件を共に満たすものとすべきである。
【００５４】
・ワームプローブは、ＴＡＣＡＣＳ＋メソッドを用いてルータ及びスイッチと通信し感染済コンピュータシステムを遮断させる。ＴＡＣＡＣＳ＋は、ルータ又はネットワークアクセスサーバにアクセスしようと試みるユーザに対して中央集権的に認証を与えるセキュリティアプリケーションである。
【００５５】
図７に、本願記載の機能を実現するのに適した汎用コンピュータの大略構成部材群を示す。この図に示されているシステム７００は、プロセッサ要素７０２、メモリ７０４、ＴＣＰ／ＩＰワーム特定不活化モジュール７０５及び各種入出力（Ｉ／Ｏ）デバイス７０６を備えている。プロセッサ要素７０２は例えばＣＰＵであり、メモリ７０４は例えばＲＡＭ、ＲＯＭ(read only memory)又はその双方である。入出力（Ｉ／Ｏ）デバイス７０６は、例えば、テープドライブ、フロッピー（登録商標）ディスクドライブ、ハードディスクドライブ、コンパクトディスクドライブ（但しこれらに限られるものではない）といった記憶装置や、キーボード、キーパッド、マウス等のユーザ入力装置や、受信機、送信機、スピーカ、ディスプレイ、音声合成器、出力ポート等である。
【００５６】
注記すべきことに、本発明はソフトウェアによって実施することも、或いはそれとＡＳＩＣ(application specific integrated circuit)、汎用コンピュータ又はこれに類するハードウェアとの組合せによって実施することもできる。例えば、ＴＣＰ／ＩＰワーム特定不活化モジュール７０５たるプロセスをメモリ７０４にロードしプロセッサ７０２に実行させる形態によって、上掲の機能群を実現することが可能である。その場合、本発明に係るＴＣＰ／ＩＰワーム特定不活化プロセス７０５は、関連するデータ構造を含め、ＲＡＭ、磁気若しくは光学ドライブ若しくはディスク等のコンピュータ可読媒体乃至キャリア上に、格納しておくことができる。
【００５７】
以上、各種の実施形態について説明したが、それら実施形態を示したのは例示のために過ぎず本発明の限定解釈を認める趣旨ではないことに、注意されたい。即ち、好適な実施形態の技術的範囲及び拡がりは、先に例示した幾つかの実施形態の何れによっても限定されえないものであり、別紙特許請求の範囲の記載及びその均等範囲によってのみ規定されうるものである。
【図面の簡単な説明】
【００５８】
【図１】本発明を実施できる社内グローバルＩＰ網の例を示す図である。
【図２】本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順の主手順のフローチャートである。
【図３】本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順を構成する手順のうち、周期的ワーム感染疑いＩＰアドレステーブルクリア副手順のフローチャートである。
【図４】本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順のうちワーム感染疑いリスト追加副手順のフローチャートである。
【図５】本発明に係るＩＰ網内ＴＣＰ／ＩＰワーム感染済システム特定不活化手順のうちグローバル変化受信副手順のフローチャートである。
【図６】本発明にて使用するＩＣＭＰタイプ３パケットのフォーマットを示す図である。
【図７】本願記載の機能を実現するのに適した汎用コンピュータの大略構成部材図である。
【図８】本発明におけるローカルテーブルのデータ構造の一例を示す図である。
【図９】本発明におけるグローバルテーブルのデータ構造の一例を示す図である。
【図１】
2006319982.tif 000004
【図２】
2006319982.tif 000005
【図３】
2006319982.tif 000006
【図４】
2006319982.tif 000007
【図５】
2006319982.tif 000008
【図６】
2006319982.tif 000009
【図７】
2006319982.tif 000010
【図８】
2006319982.tif 000011
【図９】
2006319982.tif 000012
【外国語明細書】
2006319982.tif 000013
2006319982.tif 000014
2006319982.tif 000015
2006319982.tif 000016
2006319982.tif 000017
2006319982.tif 000018
2006319982.tif 000019
2006319982.tif 000020
2006319982.tif 000021
2006319982.tif 000022
2006319982.tif 000023
2006319982.tif 000024
2006319982.tif 000025
2006319982.tif 000026
2006319982.tif 000027
2006319982.tif 000028
2006319982.tif 000029
2006319982.tif 000030
2006319982.tif 000031
2006319982.tif 000032
2006319982.tif 000033
2006319982.tif 000034
2006319982.tif 000035
2006319982.tif 000036
2006319982.tif 000037
2006319982.tif 000038
2006319982.tif 000039
2006319982.tif 000040
2006319982.tif 000041
2006319982.tif 000042
2006319982.tif 000043
2006319982.tif 000044
2006319982.tif 000045
2006319982.tif 000046
2006319982.tif 000047
2006319982.tif 000048
2006319982.tif 000049