(57)【要約】コンピュータ・ネットワーク内のセキュリティレコードのログを検査するコンピュータ・プログラム製品および方法を提供する。該方法は、ログレコードの検索、テーブルに対するキーの導出を含むログレコードの処理、ログレコード内の情報からのデータ値の決定、および、データ値が一意である場合に、当該キーに対応付けられるデータ値リストへの該データ値の追加、を備える。テーブル内の少なくとも一つのエントリは、未遂のセキュリティ違反を検出するための所定の基準に基づき評価される。
2006523427.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ・ネットワーク内のセキュリティレコードのログを検査する方法であって、
ログレコードを検索するステップと、
テーブルに対しキーを導出することを含む、前記ログレコードを処理するステップと、
前記ログレコード内の情報からデータ値を決定し、該データ値が一意である場合に、該キーに対応付けられるデータ値のリストに、該データ値を追加するステップと、
未遂のセキュリティ違反を検出するための所定の基準に基づいて、前記テーブル内の少なくとも一つのエントリを評価するステップと、
を備えることを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、前記テーブルはハッシュテーブルであることを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、前記データ値のリストはリンクリストとして実施されることを特徴とする方法。
【請求項４】
請求項１に記載の方法であって、前記データ値のリストはハッシュテーブルとして実施されることを特徴とする方法。
【請求項５】
請求項１に記載の方法であって、前記データ値のリストはツリー型で実施されることを特徴とする方法。
【請求項６】
請求項１に記載の方法であって、前記テーブルの少なくとも一つのエントリを評価することは、該テーブルのすべてのエントリを評価することを含むことを特徴とする方法。
【請求項７】
コンピュータ・ネットワーク内のセキュリティレコードのログを検査する方法であって、
ログレコードを検索するステップと、
ハッシュキーを作成するために前記ログレコードの少なくとも一つのフィールドをハッシュするステップと、
前記ハッシュキーを用いてハッシュテーブルを評価するステップと、
一致するハッシュテーブルエントリが存在しない場合、該ハッシュテーブルに新規エントリを追加するステップと、
一致するハッシュテーブルエントリが存在する場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索するステップと、
データ値を算出するために、前記ログレコードの少なくとも一つのフィールドを使用するステップと、
一致するエントリが存在するか否かを決定するために、前記データ値と前記データリスト内のエントリとを比較するステップと、
一致するエントリが存在しない場合、前記データ値を前記データリストに挿入するステップと、
未遂のセキュリティ違反を検出するための所定の基準に基づいて、前記データリストを評価するステップと、を備えることを特徴とする方法。
【請求項８】
請求項７に記載の方法であって、前記ハッシュテーブルへの新規エントリの追加は、該ハッシュテーブルに対する新規エントリに対応づけられる空のデータリストの作成を含むことを特徴とする方法。
【請求項９】
請求項７に記載の方法であって、前記データリストに新規エントリを挿入することは、該データリストの評価をトリガーすることを含むことを特徴とする方法。
【請求項１０】
請求項７に記載の方法であって、前記データリストの評価をトリガーするために、チェックテーブル操作を受信することを含むことを特徴とする方法。
【請求項１１】
請求項７に記載の方法であって、所定の基準に基づいた前記データリストの評価は、前記ログレコードに対応付けられているパケットをブロックすることを含むこと特徴とする方法。
【請求項１２】
請求項７に記載の方法であって、所定の基準に基づいた前記データリストの評価は、特定のログレコードに対応付けられているパケットと同一の送信元から今後送信されてくるすべてのパケットをブロックすることを含むことを特徴とする方法。
【請求項１３】
請求項７に記載の方法であって、所定の基準に基づいた前記データリストの評価は、未遂のセキュリティ違反について報告することを含むことを特徴とする方法。
【請求項１４】
請求項７に記載の方法であって、前記データリストは、リンクリストであることを特徴とする方法。
【請求項１５】
請求項７に記載の方法であって、前記データリストは、ハッシュテーブルであることを特徴とする方法。
【請求項１６】
請求項７に記載の方法であって、前記データリストはツリー型であることを特徴とする方法。
【請求項１７】
請求項７に記載の方法であって、複数のログレコードが前記データリストに追加された後に、該データリストを評価することを含むことを特徴とする方法。
【請求項１８】
請求項７に記載の方法であって、各ログレコードが前記データリストに追加された後に、該データリストを評価することを含むことを特徴とする方法。
【請求項１９】
請求項７に記載の方法であって、前記ハッシュキーを用いた前記ハッシュテーブルの評価は、第二のハッシュテーブルの処理を含むことを特徴とする方法。
【請求項２０】
請求項１９に記載の方法であって、第二のハッシュテーブルの処理は、
第二のハッシュテーブルを検索するために、前記一致するハッシュテーブルエントリを使用し、
前記第二のハッシュテーブルを評価するために、前記ハッシュキーを使用し、
一致する第二のハッシュテーブルエントリが存在しない場合、前記第二のハッシュテーブルに新規エントリを追加し、
一致する第二のハッシュテーブルエントリが存在する場合、該第二のハッシュテーブルエントリに対応付けられる第二のデータリストを検索し、
一致するエントリが存在するか否かを決定するために、前記データ値と前記第二のデータリスト内のエントリとを比較し、
一致するエントリが存在しない場合は、前記第二のデータリストに前記データ値を挿入し、
未遂のセキュリティ違反を検出するための所定の基準に基づいて前記第二のデータリストを評価すること、を含むことを特徴とする方法。
【請求項２１】
コンピュータ・ネットワーク内のセキュリティレコードのログを検査する方法であって、
ログレコードを検索するステップと、
ハッシュキーを作成するために前記ログレコードの少なくとも一つのフィールドをハッシュするステップと、
前記ハッシュキーを用いてハッシュテーブルを評価するステップと、
一致するハッシュテーブルエントリが存在しない場合、前記ハッシュテーブルに新規エントリを追加するステップと、
一致するハッシュテーブルエントリが存在する場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索するステップと、
前記データリストに挿入すべきデータ値を算出するために、前記ログレコードの少なくとも一つのフィールドを使用するステップと、
前記データ値の一意性を決定するために、前記データリストを評価するステップと、
前記データ値が一意である場合、前記データリストに該データ値を挿入するステップと、を備えることを特徴とする方法。
【請求項２２】
ポートスキャンを検出する方法であって、
送信元アドレスと送信先アドレスを含むログレコードを検索し、
ハッシュキーを作成するために、送信元アドレスと送信先アドレスをハッシュし、
前記ハッシュキーを用いてハッシュテーブルを評価し、
一致するハッシュテーブルエントリが存在する場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索し、
一致するエントリが存在するか否かを決定するために、送信先ポートと、前記データリスト内のエントリとを比較し、
一致するエントリが存在しない場合は、前記データリストに前記送信先ポートを挿入し、
前記データリスト内の項目件数が所定の数を超える場合、ポートスキャンであると決定する、ことを備えることを特徴とする方法。
【請求項２３】
情報担体内に具現化されたコンピュータ・プログラム製品であって、該コンピュータ・プログラム製品は実施可能な指示を備え、該指示により、データ処理装置は、
ログレコードを検索し、
テーブルに対するキーの導出を含む前記ログレコードの処理を行い、
前記ログレコード内の情報からデータ値を決定し、該データ値が一意であれば、前記キーと対応付けられるデータ値のリストに前記データ値を追加し、
未遂のセキュリティ違反を検出するための所定の基準に基づき、前記テーブル内の少なくとも一つのエントリを評価すること、
を特徴とするコンピュータ・プログラム製品。
【請求項２４】
請求項２３に記載のコンピュータ・プログラム製品であって、前記テーブルはハッシュテーブルであることを特徴とするコンピュータ・プログラム製品。
【請求項２５】
請求項２３に記載のコンピュータ・プログラム製品であって、前記データ値のリストは、リンクリストとして実施されることを特徴とするコンピュータ・プログラム製品。
【請求項２６】
請求項２３に記載のコンピュータ・プログラム製品であって、前記データ値のリストは、ハッシュテーブルとして実施されることを特徴とするコンピュータ・プログラム製品。
【請求項２７】
請求項２３に記載のコンピュータ・プログラム製品であって、前記データ値のリストは、ツリー型で実施されることを特徴とするコンピュータ・プログラム製品。
【請求項２８】
請求項２３に記載のコンピュータ・プログラム製品であって、前記テーブルの少なくとも一つのエントリを評価するための指示は、該テーブルのすべてのエントリを評価するための指示を含むことを特徴とするコンピュータ・プログラム製品。
【請求項２９】
情報担体内に具現化されたコンピュータ・プログラム製品であって、該コンピュータ・プログラム製品は実施可能な指示を備え、該指示により、データ処理装置は、
ログレコードを検索し、
ハッシュキーを作成するために、前記ログレコードの少なくとも一つのフィールドをハッシュし、
前記ハッシュキーを用いてハッシュテーブルを評価し、
一致するハッシュテーブルエントリがない場合、前記ハッシュテーブルに新規エントリを追加し、
一致するハッシュテーブルエントリがある場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索し、
データ値を算出するために、前記ログレコードの少なくとも一つのフィールドを使用し、
一致するエントリが存在するか否かを決定するために、前記データ値と前記データリスト内のエントリとを比較し、
一致するエントリが存在しない場合、前記データ値を前記データリストに挿入し、
未遂のセキュリティ違反を検出するための所定の基準に基づいて前記データリストを評価すること、
を特徴とするコンピュータ・プログラム製品。
【請求項３０】
請求項２９に記載のコンピュータ・プログラム製品であって、前記ハッシュテーブルに新規エントリを追加する指示により、前記データ処理装置は、該ハッシュテーブルに対する該新規エントリに対応付けられる空のデータリストを作成することを特徴とする、コンピュータ・プログラム製品。
【請求項３１】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストに新規エントリを挿入するための指示により、前記データ処理装置は、前記データリストの評価をトリガーすることを特徴とするコンピュータ・プログラム製品。
【請求項３２】
請求項２９に記載のコンピュータ・プログラム製品であって、チェックテーブル操作を発行する指示により、前記データ処理装置は、前記データリストの評価をトリガーすることを特徴とするコンピュータ・プログラム製品。
【請求項３３】
請求項２９に記載のコンピュータ・プログラム製品であって、所定の基準に基づいて前記データリストの評価をする指示により、前記データ処理装置は、前記ログレコードに対応付けられるパケットをブロックすることを特徴とするコンピュータ・プログラム製品。
【請求項３４】
請求項２９に記載のコンピュータ・プログラム製品であって、所定の基準に基づいて前記データリストの評価をする指示により、前記データ処理装置は、ある特定のログレコードに対応付けられるパケットと同じ送信元から今後送信されるすべてのパケットを、ブロックすることを特徴とするコンピュータ・プログラム製品。
【請求項３５】
請求項２９に記載のコンピュータ・プログラム製品であって、所定の基準に基づいて前記データリストの評価をする指示により、前記データ処理装置は、未遂のセキュリティ違反を報告することを特徴とするコンピュータ・プログラム製品。
【請求項３６】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストはリンクリストであることを特徴とするコンピュータ・プログラム製品。
【請求項３７】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストはハッシュテーブルであることを特徴とするコンピュータ・プログラム製品。
【請求項３８】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストはツリー型であることを特徴とするコンピュータ・プログラム製品。
【請求項３９】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストの評価をする指示により、前記データ処理装置は、複数のログレコードを該データリストに追加した後に、該データリストを評価することを特徴とするコンピュータ・プログラム製品。
【請求項４０】
請求項２９に記載のコンピュータ・プログラム製品であって、前記データリストの評価をする指示により、前記データ処理装置は、各ログレコードを該データリストに追加した後に、該データリストを評価することを特徴とするコンピュータ・プログラム製品。
【請求項４１】
請求項２９に記載のコンピュータ・プログラム製品であって、前記ハッシュキーを用いて前記ハッシュテーブルを評価する指示により、前記データ処理装置は、第二のハッシュテーブルを処理することを特徴とするコンピュータ・プログラム製品。
【請求項４２】
請求項４１に記載のコンピュータ・プログラム製品であって、第二のハッシュテーブルを処理するための指示により、前記データ処理装置は、
第二のハッシュテーブルを検索するために、前記一致するハッシュテーブルエントリを使用し、
前記第二のハッシュテーブルを評価するために、前記ハッシュキーを使用し、
一致する第二のハッシュテーブルエントリが存在しない場合、前記第二のハッシュテーブルに新規エントリを追加し、
一致する第二のハッシュテーブルエントリが存在する場合、前記第二のハッシュテーブルに対応付けされる第二のデータリストを検索し、
一致するエントリが存在するか否かを決定するために、前記データ値と前記第二のデータリスト内のエントリとを比較し、
一致するエントリが存在しない場合は、前記第二のデータリストに前記データ値を挿入し、
未遂のセキュリティ違反を検出するための所定の基準に基づいて、前記第二のデータリストを評価すること、
を特徴とするコンピュータ・プログラム製品。
【請求項４３】
コンピュータ・ネットワーク内のセキュリティレコードのログを検査するための、情報担体内に具現化されたコンピュータ・プログラム製品であって、該コンピュータ・プログラム製品は実施可能な指示を備え、該指示により、データ処理装置は、
ログレコードを検索し、
ハッシュキーを作成するために前記ログレコードの少なくとも一つのフィールドをハッシュし、
前記ハッシュキーを用いてハッシュテーブルを評価し、
一致するハッシュテーブルエントリが存在しない場合、前記ハッシュテーブルに新規エントリを追加し、
一致するハッシュテーブルエントリが存在する場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索し、
前記データリストに挿入すべきデータ値を算出するために、前記ログレコードの少なくとも一つのフィールドを使用し、
前記データ値の一意性を決定するために、前記データリストを評価し、
前記データ値が一意である場合、前記データリストに該データ値を挿入すること、を特徴とするコンピュータ・プログラム製品。
【請求項４４】
ポートスキャンを検出するために、情報担体内に具現化されたコンピュータ・プログラム製品であって、該コンピュータ・プログラム製品は実施可能な指示を備え、該指示により、データ処理装置は、
送信元アドレスと送信先アドレスを含むログレコードを検索し、
ハッシュキーを作成するために、送信元アドレスと送信先アドレスをハッシュし、
前記ハッシュキーを用いてハッシュテーブルを評価し、
一致するハッシュテーブルエントリが存在する場合、該ハッシュテーブルエントリに対応付けられるデータリストを検索し、
一致するエントリが存在するか否かを決定するために、送信先ポートと、前記データリスト内のエントリとを比較し、
一致するエントリが存在しない場合は、前記データリストに前記送信先ポートを挿入し、
前記データリスト内の項目件数が所定の数を超える場合、ポートスキャンであると決定すること、
を特徴とするコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・ネットワークのセキュリティを制御するための方法に関する。
【０００２】
ファイアウォールおよび侵入検出システムは、未許可のユーザまたは破壊行為を目的とするユーザから、コンピュータ・ネットワークを保護するために用いる装置である。ファイアウォールは、ローカルエリア・ネットワークの外側にいるユーザから、ローカルエリア・ネットワークを保護するために用いることができる。ファイアウォールは、ローカルエリア・ネットワークの外側にいるユーザに対して送信される、または、そのユーザから送信される全てのメッセージをチェックし、経路制御し、さらに頻繁にラベリングを行う。侵入検出システム（ＩＤＳ）は、通信システムにおける不審な挙動パターンを認識するために用いられる。侵入検出システムの例として、ネットワーク侵入検出システム（ＮＩＤＳ）およびホスト侵入検出システム（ＨＩＤＳ）が挙げられる。ＮＩＤＳは、ネットワーク内で通信される情報を調べ、不審な挙動パターンを認識するために用いられる。ＨＩＤＳは、ネットワーク内の特定のホストコンピュータを介して通信される情報を調べ、不審な挙動パターンを認識するために用いられる。侵入検出システム（ＩＤＳ）により得られる情報は、未許可のユーザまたは破壊行為を目的とするユーザが、ネットワークにアクセスすることができないようにするために用いられる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ファイアウォールまたは侵入検出システムは、ネットワークへの入力イベントおよびネットワークからの出力イベントを記録するログレコードを生成することができる。ログレコードには、セキュリティ違反、帯域幅利用状況、電子メール利用状況、およびインターネットへの従業員アクセスなどのイベントが含まれる。一般的に、これらのログレコードは、未遂のセキュリティ違反やトラフィックパターンにおける傾向を検出するために、ネットワーク・セキュリティ管理者によって調査される。ログレコードは、概して非常に件数が多いので、未遂のセキュリティ侵入を検出するために、大抵はログレコードを分析する問合せ言語が用いられる。問合せ言語はまた、このログレコードを分析し、ネットワーク管理者のためにこれらのログレコードをまとめたレポートを作成するために用いられる。これらのレポートは、認識されたネットワーク・セキュリティ侵入に対応するために、ネットワーク管理者が使用することができる。ログレコードに作用する問合せ言語指示はまた、ネットワーク管理者のための警報を生成するために用いられる。ログレコードは非常に件数が多い場合があるので、ログレコードを分析するために問合せ言語指示を利用しているネットワーク・セキュリティの方法は、速度が遅くなる可能性がある。また、問合せ言語に基づく方法は、新しい問合せの受信ごとに全てのログレコードが分析される場合、速度が遅くなることがある。
【課題を解決するための手段】
【０００４】
本発明は、未遂のネットワーク・セキュリティ違反を検出するためのコンピュータ・プログラム製品を含む、方法および装置を提供する。一つの態様において、本発明は、コンピュータ・ネットワークにおけるセキュリティレコードのログを検査する方法を提供し、ログレコードの検索、テーブルに対するキーの導出を含むログレコードの処理、ログレコード内の情報からのデータ値の決定、データ値が一意であれば、そのキーに対応付けられるデータ値のリストに、該データ値を追加することから成る。この方法は、未遂のセキュリティ違反を検出するために予め定められた基準に基づき、テーブル内の一つ以上のエントリを評価することから成る。
【０００５】
本発明の態様は、以下の特徴のうち少なくとも一つを備えることができる。テーブルは、ハッシュテーブルでよい。データ値のリストは、リンクリストとして実施可能である。データ値のリストは、ハッシュテーブルとして実施可能である。データ値のリストは、ツリー型で実施可能である。テーブル内の少なくとも一つのエントリについての評価は、テーブル内のすべてのエントリを評価することを含むことができる。
【０００６】
他の態様において、本発明は、コンピュータ・ネットワークにおけるセキュリティレコードのログを検査する方法を提供し、ログレコードを検索し、ハッシュキーを作成するためにログレコードの少なくとも一つのフィールドをハッシュし、該ハッシュキーを用いてハッシュテーブルを評価することから成る。一致するハッシュテーブルエントリがない場合、当該方法は、新規なエントリをハッシュテーブルに追加することから成る。一致するハッシュテーブルエントリがある場合、当該方法は、このハッシュテーブルエントリに対応付けられるデータリストを検索し、該データリストに挿入すべきデータ値を算出するためにログレコードの少なくとも一つのフィールドを使用し、このデータ値の一意性を決定するためにデータリストを評価し、このデータ値が一意であればデータリストに該データ値を挿入することから成る。
【０００７】
また別の態様において、本発明は、ポートスキャンを検出する方法を提供し、送信元アドレスおよび送信先アドレスを含むログレコードを検索し、ハッシュキーを作成するために送信元アドレスおよび送信先アドレスをハッシュし、該ハッシュキーを使用してハッシュテーブルを評価する。一致するハッシュテーブルエントリがある場合、当該方法は、データリストを検索して一致するエントリがあるかを決定し、一致するエントリがない場合は該データリストに該エントリを有する送信先ポートを挿入し、データリスト内の項目件数が所定の項目件数を超える場合は、ポートスキャンと判断することから成る。
【０００８】
また別の態様において、本発明は、データ処理装置が、ログレコードの検索、テーブルに対するキーの導出を含むログレコードの処理、ログレコード内の情報からのデータ値の決定、および、データ値が一意である場合、当該キーに対応付けられるデータ値のリストに、そのデータ値の追加を行うようにする指示を、コンピュータに実行させるためのコンピュータ・プログラム製品を備える。テーブルの少なくとも一つのエントリは、未遂のセキュリティ違反を検出するために予め定められた基準に基づいて評価される。
【０００９】
本発明の態様には、以下の利点のうちの少なくとも一つが含まれる。テーブルは、ハッシュテーブルでよい。データ値のリストは、リンクリストとして実施可能である。データ値のリストは、ハッシュテーブルとして実施可能である。データ値のリストは、ツリー型で実施可能である。テーブル内の少なくとも一つのエントリを評価するための指示は、テーブル内のすべてのエントリを評価するための指示を含むようにしてもよい。
【００１０】
また別の態様において、本発明は、データ処理装置が、ログレコードの検索、ハッシュキーを作成するためにログレコードの少なくとも一つのフィールドのハッシング、該ハッシュキーを用いてのハッシュテーブル評価を行うようにする指示を、コンピュータに実行させるためのコンピュータ・プログラム製品を備える。一致するハッシュテーブルエントリがない場合、本発明は、ハッシュテーブルに新規なエントリを追加させる。一致するハッシュテーブルエントリがある場合、本発明は、該ハッシュテーブルエントリに対応付けられるデータリストを検索させ、データ値を算出するためにログレコード内の少なくとも一つのフィールドを用い、一致するエントリが存在するかどうかを決定するために、該データ値とデータリスト内のエントリを比較し、一致するエントリが存在しなければ、データリストに該データ値を挿入し、未遂のセキュリティ違反を検出するための所定の基準に基づき、データリストを評価させる。
【００１１】
本発明の態様には、以下の利点のうちの少なくとも一つが含まれる。本発明は、ハッシュテーブルに新規エントリを追加する指示により、データ処理装置が、新規のエントリに対応付けられる空のデータリストをハッシュテーブルに作成するようにし、データリストに新規エントリを挿入する指示により、データ処理装置が、データリストの評価をトリガーするようにし、チェックテーブル操作を発行する指示により、データ処理装置が、データリストの評価をトリガーするようにし、所定基準に基づいてデータリストを評価する指示により、データ処理装置が、ログレコードに対応付けられるパケットをブロックするようにし、所定基準に基づいてデータリストを評価する指示により、データ処理装置が、ある特定のログレコードに対応付けられるパケットとして、同じ送信元から今後送信されてくるすべてのパケットをブロックするようにし、所定基準に基づいてデータリストを評価する指示により、データ処理装置が、未遂のセキュリティ違反を報告できるようにすること、を含む。
【００１２】
データリストはリンクリストでもよい。データリストはハッシュテーブルでもよい。データリストはツリー型でもよい。本発明は、該データリストを評価する指示により、複数のログレコードがデータリストに追加された後に、データ処理装置がデータリストを評価するようにしてもよい。本発明は、該データリストを評価する指示により、各ログレコードがデータリストに追加された後に、データ処理装置がデータリストを評価するようにしてもよい。本発明は、ハッシュキーを用いてハッシュテーブルを評価する指示により、データ処理装置が、第二のハッシュテーブルを処理するようにしてもよい。本発明は、第二のハッシュテーブルを処理する指示により、データ処理装置が、一致するハッシュテーブルエントリを用いて第二のハッシュテーブルを検索し、ハッシュキーを用いて該第二のハッシュテーブルを評価するようにしてもよい。一致する第二のハッシュテーブルが存在しない場合、本発明は、該第二のハッシュテーブルに対して新規のエントリを追加させる。一致する第二のハッシュテーブルが存在する場合、本発明は、該第二のハッシュテーブルエントリに対応付けられる第二のデータリストを検索し、データ値と第二のデータリスト内のエントリとを比較し、一致するエントリがあるかどうかを決定し、一致するエントリが存在しない場合の第二のデータリストに該データ値を挿入し、および未遂のセキュリティ違反を検出するための所定の基準に基づいて、該第二のデータリストを評価することができる。
【００１３】
また別の態様において、本発明は、コンピュータ・ネットワーク内のセキュリティレコードのログを検査するための情報担体により具現化されており、これは、データ処理装置が、ログレコードを検索し、ハッシュキーを作成するために該ログレコード内の少なくとも一つのフィールドをハッシングし、該ハッシュキーを用いたハッシュテーブルを評価させる指示を、該コンピュータに実行させるコンピュータ・プログラム製品を含む。一致するテーブルエントリが存在しない場合、本発明はハッシュテーブルに対する新規エントリの追加を可能とする。一致するハッシュテーブルが存在する場合、本発明は、ハッシュテーブルエントリに対応付けられるデータリストを検索し、ログレコード内の少なくとも一つのフィールドを用いて、データリストに挿入すべきデータ値を算出し、該データ値の一意性を決定するために該データリストを評価し、該データ値が一意であれば、該データリストに対して該データ値を挿入させる。
【００１４】
また別の態様において、本発明は、ポートスキャンを検出するための情報担体により具現化されており、データ処理装置に、送信元アドレスおよび送信先アドレスを含むログレコードを検索させ、ハッシュキーを作成するために送信元アドレスおよび送信先アドレスをハッシュし、該ハッシュキーを用いてハッシュテーブルを評価させる指示を、コンピュータに実行させるコンピュータ・プログラム製品を含む。一致するハッシュテーブルエントリが存在する場合、本発明は、該ハッシュテーブルエントリに対応付けられるデータリストを検索し、一致するエントリが存在するか否かを決定するために、送信先ポートとデータリスト内のエントリとを比較し、一致するエントリが存在しなければデータリスト内に該送信先ポートを挿入し、データリスト内の項目件数が所定数を超える場合は、ポートスキャンと判断することができる。
【００１５】
本発明の利点は、以下の特徴のうち少なくとも一つを含む。各ログレコードは最初に受信された時点で一回のみ処理される必要がある。ハッシュテーブルは、ログレコードを格納し検索するために使用されるので、ログレコードの分析を速く行うことができる。ログレコードそれ自体ではなく、処理済みログレコードを格納するので、メモリ容量は少なくてすむ。
【００１６】
各種図面における同様の参照番号および記号表示は、同等の構成要素を示す。
【発明を実施するための最良の形態】
【００１７】
図１Ａは、サーバ１０２、数機のワークステーション（Ｗ／Ｓ）１０４、ファイアウォール１０６、およびＮＩＤＳ１０８を備えた、ローカルエリア・ネットワーク（ＬＡＮ）１００を含むネットワークトポロジを示す。ＮＩＤＳ１０８は、インラインモードで動作し、ネットワーク内で通信されている状態の情報を分析する。ＬＡＮ１００は、ファイアウォール１０６を介して、インターネット１１４などの外部ネットワークに接続される。ＬＡＮ１００はまた、ルータ１１８および衛星１２０を介して、第二のＬＡＮ１１６に接続される。第二のＬＡＮ１１６は、ウェブサーバ１１０、電子メールサーバ１１２、サーバ１０２、数機のワークステーション１０４、ファイアウォール１０６、およびＮＩＤＳ１０８を備える。ＬＡＮ内のコンピュータ、サーバ、および他の装置は、ワイヤ、光ファイバー、および電波などの、数々のデータ伝送媒体を用いて相互に接続される。各ＬＡＮは、ネットワーク内で通信されるメッセージを分析するための侵入検出システムを用いて、不審な挙動パターンを認識する。ＬＡＮ１００および１１６の各々は、ファイアウォール１０６およびＮＩＤＳ１０８に接続されるレコード処理装置１２２を備える。このレコード処理装置（ＲＰＵ）１２２は、ファイアウォール１０６およびＮＩＤＳ１０８のいずれか一つからログレコードを受信し、未遂のネットワーク・セキュリティ侵入を検出するためにログレコードを分析する。別の方法として、パッシブ（非インライン）モードで、ＮＩＤＳを伝送経路の外側に構成することも可能である。非インラインモードにおいて、ＮＩＤＳ装置は、ネットワークによって受信されたトラフィックを監視して検査を行うが、特定のアタックシグネチャに一致すると決定されたことを報告するのみである（すなわち、パケットを削除しない）。図１Ｂは、非インラインモードで動作するＮＩＤＳ１２４を含むネットワークトポロジを示す。ＮＩＤＳ１２４は、ネットワーク内で通信される情報を受信し、アタックを判断し、その報告を行うか、そうでなければ、未許可または破壊行為を目的とするユーザからの今後の通信をブロックするために受動的に作動する。
【００１８】
図２は、ＲＰＵ１２２を示すブロック図である。ＲＰＵ１２２は、ネットワーク上の少なくとも一つのセキュリティ装置と通信するため（例えば、ファイアウォールや侵入検出システムと通信するため）のインターフェース２０２を備える。インターフェース２０２は、セキュリティログを受信するために用いられる。ＲＰＵ１２２は、処理エンジン２０４を用いて、ネットワーク上のセキュリティ装置から受信したセキュリティログを処理する。処理済ログレコードは、データベース２０８に格納される。評価エンジン２０６は、データベース２０８に格納されている処理済ログレコードを用いて、未遂のネットワーク・セキュリティ違反を検出する。ＲＰＵ１２２により検出される、いかなる未遂のネットワーク・セキュリティ違反も、インターフェース２０２を用いて各々のセキュリティ装置に伝えることができる。
【００１９】
ＲＰＵ１２２は、少なくとも二つの異なるモードで動作させることが可能である。第一のモードにおいては、複数のログレコードを受信し処理する。該第一のモードは、オフラインモードと呼ばれる。第二のモードにおいては、ＲＰＵはログレコードが作成されたときに個々のレコードを受信して処理する。該第二のモードは、オンラインモードと呼ばれる。
【００２０】
図３は、オフラインモードの動作を説明するフロー図である。オフラインモードにおいて、レコードのログは、ＲＰＵ１２２へと通信される。該ログは受入通信と送出通信に基づいて、ネットワーク上のセキュリティ装置により作成される。ＲＰＵ１２２はログレコードを受信し（ステップ３００）、処理するために個々のレコードを検索する（ステップ３０２）。このログレコードはテーブルデータ構造を構築し更新するために使用される（ステップ３０４）。  処理する必要のあるログレコードがさらに存在する場合には（ステップ３０６）、制御がステップ３０２に渡され、この時、処理が繰り返されて次のログレコードが処理される。実施例の一つにおいては、すべてのログエントリが処理された後に、テーブルデータ構造が評価され（ステップ３０８）、いずれかの未遂のセキュリティ侵入が検出された場合、ＲＰＵ１２２が対応する（ステップ３１０）。未遂のセキュリティ侵入に対応する場合、ＲＰＵ１２２は、セキュリティ装置（例えば、ファイアウォール、ＩＤＳ）またはネットワーク上の他の装置に対し、未遂のセキュリティ侵入を伝えることが可能である。また実施例の一つにおいては、ＲＰＵ１２２は、（例えば、関与する送信元からのパケットをすべてブロックするためにファイアウォールに対してルールを伝えることにより）未遂の侵入に関与する送信元から今後送信されてくるパケットすべてをブロックすることができる。ＲＰＵ１２２はまた、管理者が適切に対処できるように、管理者に対して、未遂のセキュリティ侵入について報告することも可能である。
【００２１】
図４は、オンラインモードの動作を説明するフロー図である。オンラインモードにおいては、個々のログレコードがＲＰＵ１２２により受信され、処理される(ステップ４００)。オンラインモードにおいて、ＲＰＵ１２２は、個々のログレコードを受信するたびに処理を行う。処理済ログレコードは、テーブルデータ構造（４０２）を更新するために使用され、結果として生じるテーブルデータ構造は、各ログレコードが処理された後に評価される（４０４）。その後、ＲＰＵ１２２は、次のログレコードの処理を開始する前に、未遂の侵入があればそれに対応する（４０６）。
【００２２】
図５は、ＲＰＵ１２２により使用されるテーブルデータ構造の一例を表したものである。ここで図２から図５を参照すると、ログレコードのフィールドから処理エンジン２０４により作成されたハッシュキー５１２は、テーブルアドレス作成部５０８を用いて、ハッシュテーブル５００内のエントリとしてのアドレスを作成するために使用される。アドレス作成部５０８により作成されるアドレスは、ハッシュテーブル５００内で選択されたエントリを検索するために使用される。ハッシュテーブルエントリの各々は、データ値５０２、データ値のリスト５０４、データ値またはデータリストに対するポインタ５０６、のいずれかである。データ値または一組のデータ値（５０２または５０６）から成るエントリは、データベース２０８内のハッシュテーブル５００に直接格納するこができる。データリストに対し、ハッシュテーブルエントリは、データベース２０８内の、データリストに対するポインタ５０６となる。データリスト５１０は、データ値のリストを含み、リンクリストまたは他の適切なデータ構造を用いて実施される。
【００２３】
ハッシュテーブル５００内のデータエントリとデータリスト５１０は、所定の時間経過後に失効するようにタグ付けすることができる。処理エンジンによりタイマ５０９を使用して、ハッシュテーブルまたはデータリスト内に格納された所定のデータエントリについて具体的な継続時間を測定する。該継続時間が終了した時点で、データエントリを削除することができる。各エントリをタイムスタンプとタグ付けすることにより簡単なタイマを実現してもよい。評価をする際には、現在時刻とスタンプされた時間とを比較することができる。大幅に時間が経過したエントリは、評価ステップの前に取り除いてもよい。
【００２４】
図６は、テーブルデータ構造の生成を表したフロー図である。ＲＰＵ１２２（図１ａ）は、ネットワーク上の少なくとも一つのセキュリティ装置から、少なくとも一つのログを受信する（ステップ６００）。個々のログレコードが検索され（ステップ６０２）、該ログレコードのフィールドは、ハッシュキーを作成するために使用される（ステップ６０４）。作成されたハッシュキーは、ハッシュテーブルを評価するために用いられる（ステップ６０６）。ハッシュテーブル内に一致するエントリがある場合（ステップ６０８）、該選択されたハッシュテーブルエントリに対応付けられるデータリストが検索される(ステップ６１０)。ログレコードの少なくとも一つのフィールドを用いて作成されたデータ値（ステップ６２４)は、該データリスト内のデータ値と比較される（ステップ６１２）。一意なデータ値のみがデータリストに挿入される。データリスト内に一致するエントリがある場合（ステップ６１４）、ログレコードから導出されたデータ値は、データリストに挿入されない（ステップ６１６）。データリスト内に一致するエントリがない場合、データ値はデータリスト内に挿入され（ステップ６１８）、ステップ６０２に制御が渡され、この時、処理が繰り返されて、次のログレコードが処理される。ステップ６０８で、ハッシュテーブルにおいて一致するエントリがない場合、新規のハッシュテーブルエントリと新規のデータリストが生成される（ステップ６２０）。新規のデータリストは、作成されたハッシュキーによって示されるハッシュテーブルエントリと対応付けられ（ステップ６２２）、ログレコードのフィールドを用いて作成されるデータ値は（ステップ６２４）、このデータリストに挿入される（ステップ６１８）。ステップ６１８が完了した後、制御がステップ６０２に渡され、この時、受信された各ログレコードに対する処理が繰り返される。
【００２５】
図７は、未遂のセキュリティ違反を検出するためにハッシュテーブルを評価する処理を説明するフロー図である。テーブルデータ構造は、新規なエントリが、該テーブルデータ構造の一部であるハッシュテーブルまたはデータリストに新規なエントリが追加される度に評価される。さらに、ユーザが開始する「チェックテーブル」操作によりテーブルデータ構造の評価を起動させてもよい。実施例の一つにおいて、該テーブルデータ構造は、各ハッシュテーブルエントリを検索することにより評価される（ステップ７００）。エントリがデータリストに対するポインタである場合（ステップ７０２）、データリストが検索される（ステップ７０４）。テーブルエントリがデータ値または一組のデータ値を含む場合は、これらの値が検索される（ステップ７０６）。ステップ７０４またはステップ７０６において検索されたデータ値は、未遂のセキュリティ違反が行われたかどうかを決定するために所定の基準と比較される（ステップ７０８）。未遂の侵入が検出された場合、ＲＰＵ１２２は、未遂の違反の性質に基づき、複数のアクションのうちの一つを採用することができる（ステップ７１０）。ＲＰＵ１２２は、ＮＩＤＳまたはファイアウォールと通信し、このログレコードに対応付けされている現行パケットを削除することができる。ＲＰＵ１２２はまた、未遂のセキュリティ違反に対応して、同じ送信元から今後送信されてくるすべてのパケットをブロックすることができる。さらに、ＲＰＵ１２２は、いかなる未遂のセキュリティ違反についても管理者が適切に対応できるよう、管理者に対して報告を行う。この処理は、ハッシュテーブル内のすべてのエントリに対して繰り返される。
【００２６】
ハッシュテーブル評価処理についての別の実施例の一つにおいては、前回のテーブル評価の後、修正があったテーブルエントリのみ、評価処理過程で考慮される。これは、テーブルデータ構造に新規のデータ値が挿入された結果として修正されたエントリであればそれを示すタグフィールドを、ハッシュテーブル内に含めることにより達成することができる。該タグフィールドは、テーブル評価処理を行う間、修正されたデータ値の位置を特定するために使用される。該タグフィールドは、修正されたデータがテーブルを評価するために使用された後は、リセットすることができる。また、ハッシュテーブル評価処理についての別の実施例の一つにおいては、新規のデータ値がテーブルデータ構造に挿入された直後に、ハッシュテーブルが評価される（すなわち、上記図６のステップ６１８の直後）。
【００２７】
ＲＰＵ１２２は、二つ以上のハッシュテーブルを用いることができる。図８は、未遂のセキュリティ侵入を検出するために、二つ以上のハッシュテーブルを用いる例を示す。本実施例において、ログレコードは、オンラインまたはオフラインモード動作のいずれかの過程において、ＲＰＵ１２２により取得される（ステップ８００）。該ログレコード、該ログレコードから作成されるハッシュキー、または該ログレコードとそのログレコードから導出されるハッシュキーとの組み合わせのいずれかを用いて、評価戦略が決定される（ステップ８０５）。該評価戦略は、所定のレコードのために行うべきテスト件数、およびテストの種類を特定するために用いられる。該評価戦略は、周知のアタックシグネチャおよび同じ送信元から送信された先行ログレコードなどを含む、いくつかの基準に基づいたものでもよい。実行しなければならない異なる種類のテストのために、評価戦略に基づき、いくつかのハッシュキーが作成される（ステップ８１５）。作成されたハッシュキーは、実行すべきテストに対応付けられるハッシュテーブルを更新するために使用される（ステップ８２０）。これらのテストに対応付けられるハッシュテーブルは、未遂のセキュリティ侵入があったかどうかを決定するために評価される（ステップ８２５）。本例においては、すべてのハッシュキーおよびすべてのハッシュテーブルをはっきりと区別できない場合もある。二つの異なるハッシュテーブルを更新し評価するために同じハッシュキーを使用することが可能である。また、二つの異なるテストの一環として、同じハッシュテーブルを評価するために、二つの異なるハッシュキーを使用することもできる。
【００２８】
図９は、未遂のセキュリティ侵入を検出するためにカスケード・ハッシュテーブルを使用する例を示す。本例において、テーブル評価処理の一環として、第一のハッシュテーブルエントリが第一のハッシュテーブルから検索される。第一のハッシュテーブルエントリは、所定の基準に対して第一のハッシュテーブルエントリを比較することにより、チェックされる（ステップ９００）。特定のセキュリティ侵入を検出するための評価処理は、第二のハッシュテーブルを評価することを必要とする場合がある。該第二のハッシュテーブルのための第二のハッシュキーは、第一のハッシュキー、第一のハッシュキーにより選択された第一のハッシュテーブルエントリ、または、第一のハッシュキーと第一のハッシュキーにより選択された第一のハッシュテーブルエントリの組み合わせを用いて生成される（ステップ９０５）。第二のハッシュテーブルは、第二のハッシュキーを用いて更新され（ステップ９１０）、未遂のセキュリティ侵入があったかどうかを決定するために第二のハッシュテーブルが評価される（ステップ９１５）。個々のハッシュテーブルの評価は、図６を参照して上記で説明したとおりである。
【００２９】
図１０は、ポートスキャニング・アタックを検出する方法の一例を示す。コンピュータ・セキュリティを攻撃するために頻繁に用いられる手法である、ポートスキャニングは、ハッカーに対し、どこで弱点を見出すかという着想を提供する。ポートスキャンは、コンピュータが、どのコンピュータネットワークサービス（各々「周知の」ポート番号と対応付けられている）を提供しているかということを知るためにコンピュータに探りを入れようとしているハッカーにより送信される一連のメッセージから成る。原則として、該ポートスキャンは、例えば一回に一つ、各ポートに対してメッセージを送信することから成る。受信したレスポンスの種類により、ポートが使用されているか、またはアクセス可能であるかが示され、したがって弱点を探り出すことができる。本例において、ポート・クエリを含むレコードのログが評価される。該ログは、ルータ、ファイアウォール、または他のセキュリティ装置によって作成される。ＲＰＵ１２２は、受信したログレコードから送信元および送信先ＩＰアドレスを抽出する(ステップ１０００)。ログレコードによって報告される送信元および送信先ＩＰアドレスはハッシュキーを作成するために使用される（ステップ１００５）。作成されたハッシュキーは、第一のハッシュテーブル１０１５を評価するためにテーブルアドレス作成部１０１０によって使用される。ＲＰＵ１２２は、このアプリケーションによってアクセスされる一意のポートアドレスをすべて、作成されたハッシュキーにより選択されるハッシュテーブルエントリ１０２０により示されるデータリスト１０２５に追加する。典型的なポートスキャン・アタックの間、ハッカーは短時間内に多数のポートにアクセスしようとするので、データリスト１０２５には多数のエントリが蓄積される。データリスト１０２５に追加されるポート数の各々は、例えばタイマ５０９を使用して、所定の時間経過後に失効するようタグ付けすることが可能である（図５）。データリスト１０２５に所定数のエントリが蓄積されると、ポートスキャンが検出される。ハッシュキーに含まれる送信元および送信先ＩＰアドレスは、スキャン元と、スキャン対象のコンピュータを決定するために使用される。
【００３０】
また別の例においては、このような開示された技術が、メールサーバ・アタックの検出をするために使用される。典型的なメールサーバ・アタックは、三つのフェーズで進行することが可能である。アタックの第一フェーズの間、ハッカーは周知のポート番号上で稼動するメールサーバ（例えば、ポート２５上で稼動するほとんどのＳＴＭＰサーバ）に接続を試みることができる。第一のエントリは、このアタックの第一フェーズに対応付けられるデータベース（例えばハッシュテーブル）内に格納される。具体的には、潜在的なハッカーに対応付けられる送信元アドレスから導出されるハッシュキーは、ハッシュテーブル内のあるレコードを指し示すために使用可能である。第一のアタックの時点で、該レコードは、特定された送信元アドレスの潜在的ハッカーがメールサーバに接触したということを示す第一のエントリで構成される。アタックの第二フェーズの間、ＮＩＤＳまたはＨＩＤＳは、例えばバッファ・オーバーフローなどの、不正利用攻撃を検出する。この不正利用攻撃は、特定の送信元に対応付けられているので、送信元に対応付けられているレコードに対するハッシュテーブルでチェックを行うことができる。さらに具体的には、送信元アドレスはキーを作成するために使用され、従って、一致するエントリを求めてハッシュテーブルをスキャンするために使用される。もし一致するレコードがそのデータベース内にある場合、検出されたシステムの不正利用を試みた送信元を示すために、探し出されたレコードに第二の要素を追加することができる。アタックの第三フェーズの間、メールサーバはネットワークに対する接続を開始することができる。というのは、ハッカーがメールサーバを制御し、成功裏にメールサーバを利用して、ハッカープロテクトのかかった情報（例えばパスワードファイル）を送信するからである。メールサーバをさらに制御しようとする攻撃が検出された場合、再度、ハッシュテーブルを更新することができる。具体的には、メールサーバを占有しようとする攻撃が検出されたハッカーのアドレスからキーが導出される。このキーは、該ハッカーに対応付けられるハッシュテーブル内の適当なレコードの位置をつきとめるために使用される。第三のフェーズは、ハッカーに対応付けられる該レコード内に、未遂のメールサーバ占有を示す第三要素が構成されることになる。評価の際には、アタックイベントの順序（ポートスキャン、不正利用、およびメールサーバ占有）は、メールサーバ攻撃として認識され、適切な対応がなされる。
【００３１】
本発明は、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせにおいて実施される。本発明は、コンピュータ・プログラム製品、すなわち、プログラマブルプロセッサ、コンピュータ、複数のコンピュータなどの情報装置による実行のため、またはその動作制御のために、情報担体内（例えば機械で読み取り可能な情報装置内、または伝達信号内）で明確に具現化されるコンピュータ・プログラム製品として実施可能である。コンピュータ・プログラムは、コンパイルまたは翻訳された言語を含む、いかなるプログラム言語の形式で書かれてもよく、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、またはコンピューティング環境での使用に適する他の単位等と、いかなる形式としてでも展開される。コンピュータ・プログラムは、一つのコンピュータ、または一つのサイトにおける複数のコンピュータ、または複数のサイトに跨って分散され通信ネットワークにより相互接続された複数のコンピュータで実行されるよう展開される。
【００３２】
本発明の方法ステップは、入力データにより動作し、出力を作成することにより本発明の機能を果たすためのコンピュータ・プログラムを実行する、少なくとも一つのプグラマブルプロセッサによって実施することができる。また、例えば、ＦＰＧＡ（Field Programmable Gate Array）、またはＡＳＩＣ(Application-specific Integrated Circuit)などの専用論理回路により、本発明の方法ステップを実施し、または、それらの専用論理回路として、本発明の装置を実施することができる。
【００３３】
コンピュータ・プログラムの実行に適するプロセッサは、例えば、汎用マイクロプロセッサと専用マイクロプロセッサの両方を含み、また、いかなる種類のデジタルコンピュータでも、その少なくとも一つのプロセッサであればどんなものでもよい。一般的にプロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、またはその両方から指示およびデータを受信する。コンピュータの必須要素は、指示を実行するプロセッサと、指示およびデータを格納するための少なくとも一つのメモリ装置である。また、一般的にコンピュータは、データ受信もしくは送信、または送受信のために、例えば、磁気ディスク、光磁気ディスク、または光学ディスク等の、データを格納するための少なくとも一つの大容量記憶装置を含む、または、それに動作可能に連係される。コンピュータ・プログラム指示とデータを具現化するために適当な情報担体は、あらゆる形式の不揮発性メモリを備え、これは、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭおよびフラッシュメモリ装置などの半導体メモリ装置、内蔵ハードディスクまたはリムーバルディスクなどの磁気ディスク、光磁気ディスク、およびＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭディスクなどを含む。プロセッサとメモリは、専用論理回路により補完されるか、あるいはその中に組み込まれる。
【００３４】
本発明は、例えばデータサーバとしてのバックエンドコンポーネントを含むコンピューティングシステム、アプリケーションサーバ等のミドルウェアコンポーネントを含むコンピューティングシステム、または、グラフィカルユーザインターフェース、または、これを介してユーザが本発明の実施と対話可能になるウェブブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネントを含むコンピューティングシステム、あるいはこのようなバックエンド、ミドルウェア、またはフロンエンドコンポーネントのいかなる組合せも含むコンピューティングシステム内で実施される。該システムのコンポーネントは、通信ネットワーク等、デジタルデータ通信のいかなる形式または媒体によっても相互に接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク（ＬＡＮ）や、例えば、インターネットなどの広域ネットワーク（ＷＡＮ）が含まれる。
【００３５】
該コンピューティングシステムは、クライアントとサーバを備える。クライアントとサーバは一般的に互いに離れて位置し、通常は、通信ネットワークを通じて相互に対話する。各々のコンピュータ上で実行され互いにクライアント−サーバ関係を有するコンピュータ・プログラムに基づいて、クライアントとサーバの関係が生じる。
【００３６】
本発明は、特定の実施例に関して説明された。しかしながら、本発明の意図および要旨から逸脱することなく、いかなる変形も可能であると解される。例えば、本発明のステップは、異なる順序でも実施可能であり、所望の結果を達成することができる。ハッシュテーブルを使用する代わりに、他の同等なデータ構造を使用してもよい。該ハッシュテーブルは、ＳＱＬデータベースを用いて格納することも可能である。従って以下の請求項の要旨の範囲内には他の実施例も含まれる。以下に請求項を記載する。
【図面の簡単な説明】
【００３７】
【図１Ａ】インラインモードで動作するＮＩＤＳを含むネットワークトポロジを示す。
【図１Ｂ】非インラインモードで動作するＮＩＤＳを含むネットワークトポロジを示す。
【図２】レコード処理装置の動作を説明するフローチャートである。
【図３】静的モードでテーブルを構築するためのフローチャートである。
【図４】動的モードでテーブルを構築するためのフローチャートである。
【図５】テーブルデータ構造を表す。
【図６】テーブルデータ構造を生成するためのフローチャートである。
【図７】テーブルデータ構造を評価するためのフローチャートである。
【図８】複数のハッシュテーブルを用いる場合を例示したものである。
【図９】カスケード・ハッシュテーブルを用いる場合を例示したものである。
【図１０】ポートスキャン・アタックを検出するための方法を示す。
【図１Ａ】
2006523427.tif 000003
【図１Ｂ】
2006523427.tif 000004
【図２】
2006523427.tif 000005
【図３】
2006523427.tif 000006
【図４】
2006523427.tif 000007
【図５】
2006523427.tif 000008
【図６】
2006523427.tif 000009
【図７】
2006523427.tif 000010
【図８】
2006523427.tif 000011
【図９】
2006523427.tif 000012
【図１０】
2006523427.tif 000013
【国際調査報告】
2006523427.tif 000014
2006523427.tif 000015
2006523427.tif 000016