(57)【特許請求の範囲】
【請求項１】
不正クライアントが、コンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段と、
クライアントの一連の処理要求を前記不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測手段と、
を備えたことを特徴とする不正アクセス検知装置。
【請求項２】
前記攻撃予測手段は、前記不正アクセス事象列記憶手段に記憶された該不正アクセス事象列に、該不正アクセス事象列における該一連の処理要求の遷移段階の先にある各遷移の遷移時間を含む場合には該遷移時間に基づき攻撃発生までの時間を求め、遷移確率を含む場合には該遷移確率に基づき攻撃発生確率を求める
ことを特徴とする請求項１記載の不正アクセス検知装置。
【請求項３】
前記不正アクセス事象列記憶手段に記憶する一連の処理要求の遷移時間には最小遷移時間、平均遷移時間、最大遷移時間の少なくともいずれかを含み、
前記攻撃予測手段は、前記不正アクセス事象列記憶手段に記憶された該不正アクセス事象列に、該不正アクセス事象列における該一連の処理要求の遷移段階の先にある各遷移の最小遷移時間を含む場合には該最小遷移時間に基づく攻撃発生までの最小時間、平均遷移時間を含む場合には該平均遷移時間に基づく攻撃発生までの平均時間、最大遷移時間を含む場合には該最大遷移時間に基づく攻撃発生までの最大時間を求める
ことを特徴とする請求項１記載の不正アクセス検知装置。
【請求項４】
クライアントの一連の処理要求を、不正クライアントがコンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測ステップ
をコンピュータに実行させることを特徴とする不正アクセス検知プログラム。
【請求項５】
クライアントの一連の処理要求を、不正クライアントがコンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測ステップ
をコンピュータが実行することを特徴とする不正アクセス検知方法。
【発明の詳細な説明】
【０００１】
【技術分野】
この発明は、コンピュータネットワークを通じてサービスを提供するサーバに対して不正クライアントが不正行為に先立っておこなう一連の処理要求を不正アクセスとして検知する不正アクセス検知装置、不正アクセス検知プログラムおよび不正アクセス検知方法に関し、特に、精度良く不正アクセスを検知するとともに、攻撃の予兆を検知し、サーバが将来の攻撃に備えることを可能とする不正アクセス検知装置、不正アクセス検知プログラムおよび不正アクセス検知方法に関するものである。
【０００２】
【背景技術】
近年のネットワーク技術の進展に伴って、インターネット上の分散システムであるワールドワイドウエブ（ＷＷＷ）の利用が急速に拡大し、さまざまなサービスを提供するサーバも累増してきたが、かかるサーバの増加とともに不正アクセスも急増している。
【０００３】
この急増する不正アクセスに対処するために、不正アクセスを検知する不正アクセス検知ツールが利用されている。この不正アクセス検知ツールは、クライアントからの不正な処理要求を検知する検知ルールを有し、この検知ルールとクライアントからの処理要求を照らし合わせることによって不正アクセスの判定をおこなっている。検知ルールの具体例としては、実際には存在しない非常に長いＵＲＬを用いたホームページアクセス要求、無意味で非常に長い文字列の照合処理要求、正しくないパスワードの入力などがある。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の不正アクセス判定技術のように、個々の処理要求に対して不正アクセスの判定をおこなおうとすると、正当なアクセスか不当なアクセスかを判定できない場合が多く発生するという問題がある。たとえば、正しくないパスワードの入力に対しては、不正なアクセスの試みであるのか、正当な利用者の単なる誤入力であるのかの判定ができない。
【０００５】
もし、この正しくないパスワード入力を全て不正アクセスとすると、正当なアクセスを不正アクセスと判定する誤検知が多く発生し、逆に、全て不正アクセスでないとすると、不正なアクセスを見逃し、実際に侵入攻撃がおこなわれるまで不正アクセスを検知することができないという問題がある。
【０００６】
なお、サーバの負荷状態などの指標を監視して、その指標の値が正常値から逸脱した場合に不正アクセスがおこなわれたと判定する不正アクセス判定技術があるが、この不正アクセス判定技術には、指標の正常値を決めることが困難であるという問題がある。
【０００７】
従って、この発明は、精度良く不正アクセスを検知するとともに、攻撃の予兆を検知し、サーバが将来の攻撃に備えることを可能とする不正アクセス検知装置、不正アクセス検知プログラムおよび不正アクセス検知方法を提供することを目的としている。
【０００８】
【発明の開示】
上述した課題を解決し、目的を達成するため、本発明は、不正クライアントが、コンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段と、クライアントの一連の処理要求を前記不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測手段と、を備えたことを特徴とする。
【０００９】
また、本発明は、クライアントの一連の処理要求を、不正クライアントがコンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測ステップをコンピュータに実行させることを特徴とする。
【００１０】
また、本発明は、クライアントの一連の処理要求を、不正クライアントがコンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶する不正アクセス事象列記憶手段に記憶された不正アクセス事象列と照合し、該不正アクセス事象列における該一連の処理要求の遷移段階に基づき、該不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求める攻撃予測ステップをコンピュータが実行することを特徴とする。
【００１１】
かかる発明によれば、不正クライアントが、コンピュータネットワークを通じてサービスを提供するサーバに対する攻撃に先立って行う一連の処理要求と、該処理要求の遷移時間又は遷移確率の少なくともいずれかを不正アクセス事象列として記憶し、クライアントの一連の処理要求を不正アクセス事象列と照合し、不正アクセス事象列における一連の処理要求の遷移段階に基づき、不正アクセス事象列に遷移時間を含む場合には攻撃発生までの時間、遷移確率を含む場合には攻撃発生確率を求めることとしたので、精度良く不正アクセスを検知するとともに、攻撃の予兆を検知し、サーバが将来の攻撃に備えることを可能とすることができる。
【００１２】
【発明を実施するための最良の形態】
以下、添付図面を参照して、この発明に係る不正アクセス検知装置、不正アクセス検知プログラムおよび不正アクセス検知方法の好適な実施の形態を詳細に説明する。なお、以下に示す実施の形態１では、この発明に係る不正アクセス検知装置をサーバに組み込んだ場合について説明し、実施の形態２では、この発明に係る不正アクセス検知装置をネットワークに組み込んだ場合について説明する。
【００１３】
実施の形態１．
まず、本実施の形態１に係るサーバについて説明する。第１図は、本実施の形態１に係るサーバの構成を示す機能ブロック図である。同図に示すように、このサーバ１００は、サーバ処理部１１０と、アクセスログ１２０と、不正アクセス検知部１３０とを有し、インターネットを介してクライアント１０〜３０にサービスを提供するコンピュータである。なお、ここでは説明の便宜上、３台のクライアント１０〜３０のみを示したが、このサーバ１００は、任意の台数のクライアントからアクセスされる。
【００１４】
サーバ処理部１１０は、クライアント１０〜３０からの処理要求に応答してサービスを提供する処理部であり、処理要求が正当か否かの判定を不正アクセス検知部１３０に依頼し、処理要求が不正と判定された場合には、サービスの提供をおこなわない。
【００１５】
アクセスログ１２０は、クライアント１０〜３０からの処理要求を記録したデータであり、処理要求が正当な処理要求か不正な処理要求かにかかわらず、全ての処理要求とその処理結果を記録する。
【００１６】
不正アクセス検知部１３０は、サーバ１００に対する不正アクセスを検知する処理部であり、不正クライアント判定部１３１と、不正アクセスイベント判定部１３２と、イベントシーケンス判定部１３３と、イベントシーケンス作成部１３４と、不正クライアントデータベース１３５と、検知ルール１３６と、検知ログ１３７と、検知イベントマスタテーブル１３８と、不正アクセスイベントシーケンスデータベース１３９とを有する。
【００１７】
不正クライアント判定部１３１は、サーバ１００へアクセスするクライアント１０〜３０を不正クライアントデータベース１３５に登録されている不正クライアントと照合することによって不正アクセスを検知する処理部である。
【００１８】
不正アクセスイベント判定部１３２は、クライアント１０〜３０からサーバ１００への個々の処理要求を検知ルール１３６に登録されている不正な処理要求と照合することによって不正アクセスを検知する処理部である。
【００１９】
イベントシーケンス判定部１３３は、クライアント１０〜３０からサーバ１００への一連の処理要求を不正アクセスイベントシーケンスデータベース１３９に登録されている不正アクセスイベントシーケンスと照合することによって不正アクセスを検知する処理部である。このイベントシーケンス判定部１３３は、個々の処理要求単体で不正を判定するのではなく、クライアント１０〜３０からの一連の処理要求を時系列に照合することによって不正アクセスを検知するとともに、攻撃の予兆を検知する。また、検知した攻撃の予兆に基づいて、攻撃予報を発報する。なお、不正アクセスイベントシーケンスデータベース１３９に登録されている不正アクセスイベントシーケンスの詳細については後述する。
【００２０】
イベントシーケンス作成部１３４は、アクセスログ１２０および不正アクセスを記録した検知ログ１３７から不正アクセスイベントシーケンスを生成し、生成された不正アクセスイベントシーケンスから不正アクセスイベントシーケンスデータベース１３９に登録する不正アクセスイベントシーケンスを、検知イベントマスタテーブル１３８を用いて選択する処理部である。なお、このイベントシーケンス作成部１３４の詳細についても後述する。
【００２１】
不正クライアントデータベース１３５は、過去に不正アクセスをおこなった不正クライアントを登録したデータベースである。この不正クライアントデータベース１３５には、ＩＰアドレス、クライアント名、この不正クライアントデータベース１３５への登録日、サーバ１００への最終アクセス日が不正クライアントごとに記録される。サーバ１００への最終アクセス日は、一定期間アクセスのない不正クライアントをこの不正クライアントデータベース１３５から削除する場合に使用される。
【００２２】
第２図は、不正クライアントデータベース１３５の一例を示す図である。同図は、ＩＰアドレスが1.2.3.4であるクライアントが2001/1/1に不正クライアントとして登録され、この不正クライアントのサーバ１００への最終アクセス日が2001/1/10であることを示している。また、ＩＰアドレスが111.222.111.222であってクライアント名がa.b.c.or.jpであるクライアントが、2000/11/13に不正クライアントとして登録され、この不正クライアントのサーバ１００への最終アクセス日が2001/1/12であることを示し、ＩＰアドレスが100.200.255.255であってクライアント名がaaa.bbb.ccc.ne.jpであるクライアントが、2000/7/18に不正クライアントとして登録され、この不正クライアントのサーバ１００への最終アクセス要求日が2000/11/13であることを示している。
【００２３】
検知ルール１３６は、不正な処理要求を登録したデータベースである。この検知ルール１３６は、処理要求単位に不正アクセスを登録したものであり、単一の処理要求だけに基づいた不正アクセスの判定に用いられる。一方、複数の処理要求に基づいた不正アクセスの判定には、不正アクセスイベントシーケンスデータベース１３９が用いられる。
【００２４】
検知ログ１３７は、不正クライアント判定部１３１、不正アクセスイベント判定部１３２またはイベントシーケンス判定部１３３が不正アクセスを検知した場合に、その不正アクセスについて記録したデータであり、不正アクセスイベントシーケンスデータベース１３９を作成するためのデータとなる。
【００２５】
第３図は、検知ログ１３７の一例を示す図である。同図に示すように、この検知ログ１３７には、各不正アクセスについて、一連番号であるＩＤ、不正アクセスの発生日、不正処理要求の種別を示すイベント名、ソースポート名、ターゲットポート名、不正クライアントのＩＰアドレスを示す発信元、アクセスされたサーバ１００のＩＰアドレスを示す送信先が記録されている。たとえば、一連番号175006の不正アクセスは、19-Sep-00に発生し、不正処理要求の種別はSNMP＿Communityであり、ソースポート名は923であり、ターゲットポート名はSNMPであり、不正クライアントのＩＰアドレスは192.168.35.166であり、アクセスされたサーバ１００のＩＰアドレスは192.168.35.161であることを示している。
【００２６】
検知イベントマスタテーブル１３８は、不正アクセスイベントシーケンスを構成する個々のイベントを登録したテーブルであり、イベントシーケンス作成部１３４が不正アクセスイベントシーケンスデータベース１３９を作成するために使用する。ここで、イベントとは、クライアント１０〜３０からの単一の処理要求または複数の処理要求を集約した複合処理要求である。なお、この検知イベントマスタテーブル１３８の詳細は後述する。
【００２７】
不正アクセスイベントシーケンスデータベース１３９は、不正アクセスイベントシーケンスを登録したデータベースであり、この不正アクセスイベントシーケンスデータベース１３９を利用して不正アクセスを検知することにより、より精度良く不正アクセスを検知するとともに、攻撃予兆を検知し、将来の攻撃に備えることができる。
【００２８】
ここで、不正アクセスイベントシーケンスについて説明する。第４図は、不正アクセスイベントシーケンスの概念を説明するための説明図である。同図は、攻撃Ｘに至る手順として、Ａ、Ｂ、ＣおよびＤの４つのイベントを経ていることを示している。
【００２９】
同図において、矢印はイベントの遷移を示しており、矢印に付加された確率および時間は、過去の事例に基づくイベント間の遷移確率および時間間隔を示している。たとえば、イベントＡからイベントＢへの遷移確率はp1であり、時間間隔はt1であることを示している。ここで、時間間隔t1は、過去の事例の平均時間間隔、最小時間間隔、最大時間間隔から構成される。
【００３０】
一方、イベントＡから「イベントＢ以外」のイベントへの遷移は、イベントＡから「ｎｏｔ」への矢印で示し、その遷移確率はp5であることを示している。この場合、p1＋p5は１となる。また、イベントＡから「イベントＢ以外」のイベントへの遷移は不正アクセスではなく、その時間間隔は意味を持たないため、遷移確率のみを示している。ここで、イベントＢからイベントＣへの遷移確率p2は、イベントＢに先立ってイベントＡが発生した場合の遷移確率である。したがって、この遷移確率p2は、単にイベントＢからイベントＣへの遷移確率ではないことに注意する必要がある。
【００３１】
このように、不正アクセスイベントシーケンスは、攻撃に至るまでに発生するイベントの条件付き状態遷移の確率モデルとして構築される。たとえば、ポートスキャン、ルート権限の取得、不正プログラムの導入による踏み台の設置および攻撃指令によるUDPFloodの送出という順番でイベントが発生し、その後、DDoS（Distributed Denial of Service）攻撃が発生したという事例が過去にあった場合、この一連のイベントの遷移が不正アクセスイベントシーケンスとなる。
【００３２】
次に、不正アクセスイベントシーケンスを用いた不正アクセス検知について説明する。不正アクセス検知は、複数の不正アクセスイベントシーケンスを融合した予兆検知ルールを用いておこなわれる。
【００３３】
第５図は、予兆検知ルールの構造の一例を示す図である。同図に示すように、この予兆検知ルールは、複数の不正アクセスイベントシーケンスを共通するイベントについて融合し、木の形としたものである。たとえば、Ａ→Ｂ→Ｄの部分は、３つの不正アクセスイベントシーケンスＡ→Ｂ→Ｄ→Ａ→攻撃Ｙ、Ａ→Ｂ→Ｄ→Ｅ→Ｇ→攻撃ＺおよびＡ→Ｂ→Ｄ→Ｆ→Ｃ→攻撃Ｍを融合したものである。この予兆検知ルールを用いる不正アクセス検知では、個々の不正アクセスイベントシーケンスを独立したルールとして用いる不正アクセス検知では不可能な、複数の不正アクセスイベントシーケンスにまたがった不正アクセス検知をおこなうことが可能となる。
【００３４】
また、この不正アクセス検知では、新たに発生するイベントを監視し、予兆検知ルールとの照合をおこなうことで現段階が将来の攻撃に至るどの段階にあるかを検知し、その段階の先にある各遷移の遷移確率および遷移時間を用いて攻撃が発生するまでの時間と攻撃が発生する確率を予測することができる。たとえば、イベントＦが発生した段階で、攻撃Ｍが発生する時間はt12+t13後であり、その確率はp12×p13であると予測することができる。
【００３５】
また、この予兆検知ルールとの照合では、発生するイベントが予兆検知ルールの３つのイベントと照合した場合に、攻撃の予兆と判断することとしているが、この判断基準としては、攻撃までに残されたイベント数、攻撃までの時間間隔、攻撃までの遷移確率、予測される攻撃の重要度、およびこれらの組み合わせを用いることもできる。
【００３６】
次に、本実施の形態１に係るサーバ１００の不正アクセス検知動作について説明する。第６図は、本実施の形態１に係るサーバ１００の不正アクセス検知動作を示すフローチャートである。なお、ここではユーザがクライアント１０からサーバ１００へのアクセスを要求する場合について説明するが、他のクライアント２０および３０からアクセスを要求する場合も同様な動作となる。
【００３７】
同図に示すように、クライアント１０からユーザがサーバ１００へのアクセスを要求すると（ステップＳ６０１）、サーバ処理部１１０がこのアクセス要求を受け付け（ステップＳ６０２）、不正アクセス検知部１３０にアクセスが正当か否かの判定を依頼する。依頼を受けた不正アクセス検知部１３０は、このアクセスを要求したクライアント１０が不正クライアントとして不正クライアントデータベース１３５に登録されているか否かを調べ（ステップＳ６０３）、不正クライアントとして登録されていない場合には、サーバ処理部１１０がクライアント１０に対してアクセスを許可し（ステップＳ６０４）、アクセス許可を受けたクライアント１０が一連の処理要求を順にサーバ１００に送信する（ステップＳ６０５〜ステップＳ６０６）。
【００３８】
そして、サーバ処理部１１０が各処理要求を受け付け（ステップＳ６０７）、不正アクセス検知部１３０に不正な処理要求か否かの判定を依頼する。依頼を受けた不正アクセス検知部１３０は、各処理要求が不正アクセスイベントとして検知ルール１３６に登録されているか否かを調べ（ステップＳ６０８）、不正アクセスイベントとして登録されていない場合には、このクライアント１０からのこれまでの処理要求に基づくイベントシーケンスと不正アクセスイベントシーケンスデータベース１３９に登録された不正アクセスイベントシーケンスとの照合をおこなう（ステップＳ６０９）。照合の結果、不正アクセスイベントシーケンスと一致しない場合には、正当な処理要求としてサーバ処理部１１０が処理を実行し（ステップＳ６１０）、アクセスログ１２０に記録し（ステップＳ６１４）、処理結果をクライアント１０に送付する（ステップＳ６１５）。
【００３９】
これに対して、不正アクセスイベントシーケンスと一致した場合には、このクライアント１０を攻撃者と判断し、このクライアント１０のＩＰアドレス、攻撃までの予測時間（最小値、平均値、最大値）、攻撃の種類、攻撃が発生する確率、予測される攻撃の重要度などの情報を攻撃予報として発報する（ステップＳ６１１）。また、このクライアント１０を不正クライアントとして不正クライアントデータベース１３５に登録し（ステップＳ６１２）、検知ログに記録し（ステップＳ６１３）、処理結果を「不正アクセス」としてステップＳ６１４に進む。
【００４０】
一方、不正アクセスイベントと判定した場合は（ステップＳ６０８の肯定）、処理結果を「不正アクセス」としてステップＳ６１２に進み、また、不正クライアントと判定した場合は（ステップＳ６０３の肯定）、処理結果を「不正アクセス」としてステップＳ６１３に進む。
【００４１】
そして、処理結果を受け取ったクライアント１０は、受け取った処理結果をユーザに提示する（ステップＳ６１６）。
【００４２】
次に、第１図に示したイベントシーケンス作成部１３４の処理について説明する。第７図は、第１図に示したイベントシーケンス作成部１３４の処理手順を示すフローチャートである。同図に示すように、このイベントシーケンス作成部１３４は、アクセスログ１２０および検知ログ１３７を読み込み（ステップＳ７０１）、検知ログ１３７に登録された各不正アクセスに対して、クライアントからの一連の処理要求を不正アクセスイベントシーケンスとして抽出する（ステップＳ７０２）。なお、この不正アクセスイベントシーケンス抽出の対象とするアクセスログ１２０は、特定の攻撃と関連がある部分だけに限ることとする。具体的には、検知したい攻撃の発生に先立った一定期間（たとえば１日分）とする。ただし、サーバ１００が攻撃で動作不能になるような攻撃については、できるだけ早く攻撃を検知できるようにするために、期間を長くとることとする。
【００４３】
そして、抽出した不正アクセスイベントシーケンスに対して検知イベントマスタテーブル１３８を用いて重み付けをおこなう（ステップＳ７０３）。この検知イベントマスタテーブル１３８は、個々のイベントの重要性をあらかじめ重みとして定義したテーブルであり、これらの重みの算術演算によって不正アクセスイベントシーケンスの重み付けをおこなう。
【００４４】
第８図は、検知イベントマスタテーブル１３８の一例を示す図である。同図に示すように、この検知イベントマスタテーブル１３８は、イベントの一連番号を示すイベント番号と、イベントの名前を示すイベント名と、イベントの重みを定義した重要度をイベントごとに管理したテーブルである。たとえば、イベント番号１のArpという名前のイベントは、重みが１０と定義されていることを示し、イベント番号２のBackOrificeという名前のイベントは、重みが７と定義されていることを示す。
【００４５】
そして、重み付けの結果に基づいて不正アクセスイベントシーケンスを選択し（ステップＳ７０４）、予兆検知ルールとして不正アクセスイベントシーケンスデータベース１３９に登録する（ステップＳ７０５）。この不正アクセスイベントシーケンスの選択は、重みの大きな不正アクセスイベントシーケンスを専門家に提示し、専門家の指定のもとにおこなう。専門家の指定を受けることによって、より確実な不正アクセスイベントシーケンスの選択が可能となる。
【００４６】
上述したように、本実施の形態１では、検知ルール１３６を用いて単一の処理要求から不正アクセスを検知するだけでなく、イベントシーケンス判定部１３３が不正アクセスイベントシーケンスデータベース１３９を用いて複数の処理要求から不正アクセスを検知することとしたので、より精度良く不正アクセスを検知するとともに、攻撃の予兆を検知し、将来の攻撃に備えることができる。
【００４７】
なお、本実施の形態１では、サーバ１００に対する過去の不正アクセスに基づいて不正クライアントデータベース１３５および不正アクセスイベントシーケンスデータベース１３９を構築したが、これらのデータベースは、サーバ１００とは独立したデータベースとして利用することができる。したがって、これらのデータベースを、複数のサーバに対する不正アクセスに基づいて構築し、また複数のサーバで共通に用いることができる。
【００４８】
実施の形態２．
ところで、上記実施の形態１では、不正アクセス検知装置をサーバ１００に組み込んだ場合について説明したが、本発明はこれに限定されるものではなく、コンピュータネットワークに組み込むことによって、コンピュータネットワークに接続された複数のサーバを対象として不正アクセスを検知することができる。そこで、本実施の形態２では、本発明をコンピュータネットワークに組み込んだ場合について説明する。
【００４９】
第９図は、本実施の形態２に係る不正アクセス検知システムのシステム構成を示すブロック図である。同図に示すように、この不正アクセス検知システムは、ルータ４０と、サーバ５０〜７０と、不正アクセス検知装置８０と、これらの装置を接続するＬＡＮ９０とからなり、クライアント１０〜３０からのインターネットを介したサーバ５０〜７０に対する不正アクセスを検知する。なお、ここでは、説明の便宜上、３台のクライアント１０〜３０と３台のサーバ５０〜７０のみを示したが、クライアントとサーバの台数は任意の数とすることができる。また、第１図に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。
【００５０】
ルータ４０は、コンピュータネットワーク同士を相互に接続する装置であり、ここでは、インターネットとＬＡＮ９０を接続している。このルータ４０は、不正アクセス検知装置８０と連携して、不正クライアントからの処理要求に相当するパケットを遮断することができる。
【００５１】
サーバ５０〜７０は、インターネットを介してクライアント１０〜３０にサービスを提供するコンピュータであり、アクセスログ５１〜７１と、不正アクセス検知装置８０と連携して不正アクセスに対処する不正アクセス対処部５２〜７２を有する。
【００５２】
不正アクセス検知装置８０は、ＬＡＮ９０上を流れているトラフィックを監視し、サーバ５０〜７０に対する不正アクセスを検知する装置であり、不正クライアント判定部８１と、不正アクセスイベント判定部８２と、イベントシーケンス判定部８３と、不正クライアントデータベース１３５と、検知ルール１３６と、検知ログ１３７と、不正アクセスイベントシーケンスデータベース１３９と、ＬＡＮインタフェース部８４と、対策指示部８５とを有する。
【００５３】
不正クライアント判定部８１、不正アクセスイベント判定部８２およびイベントシーケンス判定部８３は、それぞれ不正クライアント判定部１３１、不正アクセスイベント判定部１３２およびイベントシーケンス判定部１３３と同様の役割を果たす処理部であるが、不正アクセスを検知した場合には、サーバ処理部１１０のかわりに、対策指示部８５に対策を依頼する。
【００５４】
ＬＡＮインタフェース部８４は、ＬＡＮ９０上を流れているパケットを取り込み、不正クライアント判定部８１に不正アクセスの検知を依頼する処理部である。また、このＬＡＮインタフェース部８４は、対策指示部８５の指示に基づいて、ルータ４０およびサーバ５０〜７０に対して不正アクセスに対処するための指示を送信する。
【００５５】
対策指示部８５は、不正クライアント判定部８１、不正アクセスイベント判定部８２およびイベントシーケンス判定部８３が不正アクセスを検出した場合に、ルータ４０およびサーバ５０〜７０に対してこの不正アクセスへの対策を指示する処理部である。
【００５６】
上述したように、本実施の形態２では、ＬＡＮインタフェース部８４がＬＡＮ９０上を流れているパケットを取り込み、不正クライアント判定部８１、不正アクセスイベント判定部８２およびイベントシーケンス判定部８３がこのパケットから不正アクセスを検知し、不正アクセスが検知された場合に、対策指示部８５がルータ４０およびサーバ５０〜７０に対してその対策を指示することとしたので、サーバ５０〜７０に対する不正アクセスを精度良く検知するとともに、攻撃の予兆を検知し、ルータ４０およびサーバ５０〜７０が将来の攻撃に備えることを可能としている。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、不正クライアントが不正行為に先立ってサーバに対しておこなう一連の処理要求を不正アクセス事象列として記憶し、クライアントの一連の処理要求が不正アクセス事象列と照合した場合にこれらの処理要求を不正アクセスと判定することとしたので、精度良く不正アクセスを検知するとともに、攻撃の予兆を検知し、サーバが将来の攻撃に備えることを可能とすることができるという効果を奏する。
【図面の簡単な説明】
【図１】  第１図は、本実施の形態１に係るサーバの構成を示す機能ブロック図である。
【図２】  第２図は、不正クライアントデータベースの一例を示す図である。
【図３】  第３図は、検知ログの一例を示す図である。
【図４】  第４図は、不正アクセスイベントシーケンスの概念を説明するための説明図である。
【図５】  第５図は、予兆検知ルールの構造の一例を示す図である。
【図６】  第６図は、本実施の形態１に係るサーバの不正アクセス検知動作を示すフローチャートである。
【図７】  第７図は、第１図に示したイベントシーケンス作成部の処理手順を示すフローチャートである。
【図８】  第８図は、検知イベントマスタテーブルの一例を示す図である。
【図９】  第９図は、本実施の形態２に係る不正アクセス検知システムのシステム構成を示すブロック図である。
【図１】
0004020912.tif 000002
【図２】
0004020912.tif 000003
【図３】
0004020912.tif 000004
【図４】
0004020912.tif 000005
【図５】
0004020912.tif 000006
【図６】
0004020912.tif 000007
【図７】
0004020912.tif 000008
【図８】
0004020912.tif 000009
【図９】
0004020912.tif 000010