(57)【要約】【課題】多数のクライアントからサーバへのログの収集を効率的かつ安全に行えるログ収集システムを提供する。【解決手段】クライアント装置１とサーバ装置２は、検知コード鍵を共有している。クライアント装置１は、差分ログに対して検知コード鍵を用いて、差分ログの改ざん検知のための検知コードを生成し、差分ログと検知コードを検知ログ２０としてサーバ装置２に送信する。サーバ装置２は、受信した検知ログと、送信元のクライアント装置１と共有している検知コード鍵とを用いて検知コードを生成し、生成した検知コードと検知ログの検知コードとを比較して、検知ログの改ざんの有無を検証し、また、サーバ装置２は、既に格納済みの保管ログに改ざんがないことを保管コードを用いて検証し、格納済みの保管ログに改ざんがない場合に、受信した検知ログの保管コードを生成し、生成した保管コードと受信した検知ログとを対応づけて格納する。【選択図】図１
2008192094.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント装置と、前記複数のクライアント装置からデータを受信するサーバ装置とを有する通信システムであって、
各クライアント装置と前記サーバ装置は、検知コード鍵を秘密に共有し、
各クライアント装置は、
前記サーバ装置に送信する送信データと前記検知コード鍵とを用いて、前記送信データの改ざん検知のための検知コードを生成する検知コード生成部と、
前記送信データと前記検知コードとを対応づけて検知送信データとして前記サーバ装置に対して送信するデータ送信部とを有し、
前記サーバ装置は、
いずれかのクライアント装置から送信された検知送信データを受信するデータ受信部と、
前記検知送信データと、前記検知送信データの送信元のクライアント装置と共有している検知コード鍵とを用いて、前記検知送信データにおける改ざんの有無を検証するデータ検証部と、
前記データ検証部により改ざんがないと判断された場合に前記検知送信データを格納するデータ格納部とを有することを特徴とする通信システム。
【請求項２】
前記サーバ装置において、
前記データ検証部は、
前記検知送信データに含まれている送信データと、前記検知送信データの送信元のクライアント装置と共有している検知コード鍵とを用いて検知コードを生成し、生成した検知コードと、前記検知送信データに含まれている検知コードとを比較して、前記検知送信データにおける改ざんの有無を検証することを特徴とする請求項１に記載の通信システム。
【請求項３】
各クライアント装置は、更に、
ログデータを蓄積するログ蓄積部と、
前記ログ蓄積部に対するアクセス状況を監視するアクセス監査部と、
前記アクセス監査部の監視結果に基づき、前記ログ蓄積部への不正アクセスを検知する不正アクセス検知部とを有し、
前記検知コード生成部は、
前記送信データとして、前記不正アクセス検知部により不正アクセスがなかったと判断されたログデータに対して、検知コードを生成することを特徴とする請求項１に記載の通信システム。
【請求項４】
各クライアント装置は、更に、
前記不正アクセス検知部により不正アクセスがなかったと判断されたログデータであって、前記サーバ装置に対して未送信である差分ログデータを抽出する差分ログデータ抽出部を有し、
前記検知コード生成部は、
前記送信データとして、前記差分ログデータ抽出部により抽出された差分ログデータに対して、検知コードを生成することを特徴とする請求項３に記載の通信システム。
【請求項５】
各クライアント装置は、更に、
ログデータを蓄積するログ蓄積部と、
前記ログ蓄積部に蓄積されたログデータであって、前記サーバ装置に対して未送信である差分ログデータを抽出する差分ログデータ抽出部とを有し、
各クライアント装置において、
前記検知コード生成部は、
前記差分ログデータ抽出部により抽出された差分ログデータを前記送信データとし、前記差分ログデータと前記検知コード鍵とを用いて、前記差分ログデータの改ざん検知のための検知コードを生成し、
前記データ送信部は、
前記検知送信データとして、前記差分ログデータと前記検知コードとを対応づけた検知差分ログデータを前記サーバ装置に対して送信し、
前記サーバ装置において、
前記データ格納部は、
検知差分ログデータと、当該検知差分ログデータが当該検知差分ログデータに先行する検知差分ログデータに正しく連結しているか否かを検証するための保管コードとを対応づけて格納し、
前記データ検証部は、
前記データ受信部によりいずれかのクライアント装置から新たに検知差分ログデータが受信された場合に、新たに受信された新規受信検知差分ログデータにおける改ざんの有無を検証し、
前記サーバ装置は、
前記保管コードを生成するための保管コード鍵を秘密に保持し、
前記サーバ装置は、更に、
前記データ検証部により前記新規受信検知差分ログデータに改ざんがないと検証された場合に、前記新規受信検知差分ログデータの１つ前に前記データ格納部に格納されている直前格納検知差分ログデータの保管コードと、前記直前格納検知差分ログデータの一つ前に格納されている格納検知差分ログデータの保管コードとを用いて、前記直前格納検知差分ログデータがその一つ前に格納されている格納検知差分ログデータに正しく連結しているか否かを検証する連結検証部と、
前記連結検証部により前記直前格納検知差分ログデータがその一つ前に格納された格納検知差分ログデータに正しく連結していると判断された場合に、前記保管コード鍵と、前記直前格納検知差分ログデータの保管コードと、前記新規受信検知差分ログデータとを用いて、前記新規受信検知差分ログデータの保管コードを生成する保管コード生成部とを有することを特徴とする請求項１に記載の通信システム。
【請求項６】
前記データ検証部は、
前記新規受信検知差分ログデータに改ざんがないと判断した場合に、前記直前格納検知差分ログデータと前記検知コード鍵とを用いて、前記直前格納検知差分ログデータにおける改ざんの有無を検証し、
前記連結検証部は、
前記データ検証部により前記新規受信検知差分ログデータに改ざんがないと判断され、前記直前格納検知差分ログデータに改ざんがないと判断された場合に、前記直前格納検知差分ログデータがその一つ前に格納されている格納検知差分ログデータに正しく連結しているか否かを検証することを特徴とする請求項５に記載の通信システム。
【請求項７】
複数のクライアント装置と、前記複数のクライアント装置からデータを受信するサーバ装置との間のデータ処理方法であって
各クライアント装置と前記サーバ装置は、検知コード鍵を秘密に共有し、
各クライアント装置は、
前記サーバ装置に送信する送信データと前記検知コード鍵とを用いて、前記送信データの改ざん検知のための検知コードを生成する検知コード生成ステップと、
前記送信データと前記検知コードとを対応づけて検知送信データとして前記サーバ装置に対して送信するデータ送信ステップとを行い、
前記サーバ装置は、
いずれかのクライアント装置から送信された検知送信データを受信するデータ受信ステップと、
前記検知送信データと、前記検知送信データの送信元のクライアント装置と共有している検知コード鍵とを用いて、前記検知送信データにおける改ざんの有無を検証するデータ検証ステップと、
前記検証の結果、改ざんがないと判断した場合に前記検知送信データを格納するデータ格納ステップとを行うことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続された多数のクライアントのログをサーバで収集するログ収集システムに関する。より具体的には、クライアントにおけるログの改ざん検知技術と、サーバにおけるログの改ざん検知技術に関する。
【背景技術】
【０００２】
図１１は、国際公開公報ＷＯ２００４／０６８３５０「データ改ざん検出方法、データ改ざん検出装置及びデータ改ざん検出プログラム」における処理の概要を示したものである。
図１１では、従来技術に係るデータ改ざん検出装置の構成例を示す。当該データ改ざん検出装置は、データ改ざん検出コード算出手段と、データ間改ざん検出コード算出手段と、データ書込み手段と、データ改ざん検出コード検証手段と、データ間改ざん検出手段とを備える。
【０００３】
図１１において、データ改ざん検出コード算出手段は、データ記憶手段に書き込もうとするデータのデータ改ざん検出コードを算出する。
また、データ間改ざん検出コード算出手段は、書き込もうとするデータの少なくとも１つ前のデータ（最新保管データ）のデータ改ざん検出コードと、今回書き込もうとするデータのデータ改ざん検出コードとに基づいてデータ間改ざん検出コードを算出する。
データ書込み手段は、前記データと前記データ改ざん検出コードと前記データ間改ざん検出コードとを対応付けて前記データ記憶手段に書き込む。
また、図示していないデータ読み出し手段は、前記データ記憶手段からデータを読み出す。
また、図示していないデータ改ざん検出コード検証手段は、読み出されたデータのデータ改ざん検出コードを算出し、算出したデータ改ざん検出コードが、読み出されたデータと対応づけて記憶されているデータ改ざん検出コードと一致するか否かを検証する。
また、図示していないデータ間改ざん検出手段は、読み出されたデータのデータ改ざん検出コードと該データの少なくとも１つ前のデータ（最新保管データ）のデータ改ざん検出コードとに基づいてデータ間改ざん検出コードを算出し、算出したデータ間改ざん検出コードが、読み出されたデータと対応づけて記憶されているデータ間改ざん検出コードと一致するか否かを検証する。
【０００４】
また、公知論文として、ＵＳＥＮＩＸ  １９９８，  ７ｔｈ  ｕｓｅｎｉｘ  Ｓｅｃｕｒｉｔｙ  Ｓｙｍｐｏｓｉｕｍ  “Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｓｕｐｐｏｒｔ  ｆｏｒ  Ｓｅｃｕｒｅ  Ｌｏｇｓ  ｏｎ  Ｕｎｔｒｕｓｔｅｄ  Ｍａｃｈｉｎｅｓ”  ｂｙ  Ｂｒｕｃｅ  Ｓｃｈｎｅｉｅｒ，  Ｊｏｈｎ  Ｋｅｌｓｅｙ  にて、以前の記録データと、今回記録するデータとの関連を持たせて改ざんを防止する技術が示されている。
【特許文献１】国際公開公報ＷＯ２００４／０６８３５０
【非特許文献１】ＵＳＥＮＩＸ  １９９８，  ７ｔｈ  ｕｓｅｎｉｘ  Ｓｅｃｕｒｉｔｙ  Ｓｙｍｐｏｓｉｕｍ  “Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｓｕｐｐｏｒｔ  ｆｏｒ  Ｓｅｃｕｒｅ  Ｌｏｇｓ  ｏｎ  Ｕｎｔｒｕｓｔｅｄ  Ｍａｃｈｉｎｅｓ”  ｂｙ  Ｂｒｕｃｅ  Ｓｃｈｎｅｉｅｒ，  Ｊｏｈｎ  Ｋｅｌｓｅｙ
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のデータ改ざん検出装置は、データ改ざん検出装置にて、データ改ざん検出コードの生成とデータ間改ざん検出コードの生成を行うように構成されていた。
このため、多数のクライアントから収集したログのデータをサーバにて集中管理する用途に適用する場合、サーバの負荷が増大し、処理能力の限界から多数のクライアントへの対応が困難という課題があった。
また、単にクライアントとサーバに処理を分散すると、不正なログのデータの送付が生じる可能性があるという課題があった。
そして、ログのデータの発生に応じて、クライアントの検知コードの生成処理やサーバへの通信処理が頻発するという課題があった。
【０００６】
この発明は、上記のような課題を解決することを主な目的とし、クライアントとサーバに処理を分散して多数のクライアントからサーバへのログのデータの収集と、サーバに保管するログのデータの改ざん検知が可能となるとともに、多数のクライアントからサーバへ収集するログのデータの改ざん検知が可能で、
クライアントからサーバへのログの収集を効率的かつ安全に行えるログ改ざん検知システムを提供することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る通信システムは、
複数のクライアント装置と、前記複数のクライアント装置からデータを受信するサーバ装置とを有する通信システムであって、
各クライアント装置と前記サーバ装置は、検知コード鍵を秘密に共有し、
各クライアント装置は、
前記サーバ装置に送信する送信データと前記検知コード鍵とを用いて、前記送信データの改ざん検知のための検知コードを生成する検知コード生成部と、
前記送信データと前記検知コードとを対応づけて検知送信データとして前記サーバ装置に対して送信するデータ送信部とを有し、
前記サーバ装置は、
いずれかのクライアント装置から送信された検知送信データを受信するデータ受信部と、
前記検知送信データと、前記検知送信データの送信元のクライアント装置と共有している検知コード鍵とを用いて、前記検知送信データにおける改ざんの有無を検証するデータ検証部と、
前記データ検証部により改ざんがないと判断された場合に前記検知送信データを格納するデータ格納部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、複数のクライアント装置とサーバ装置に処理を分散し、各クライアント装置においてサーバ装置へ送信するデータにおける改ざん有無の検知を可能にする検知コードを生成し、検知コードとデータとを対応づけてサーバ装置に送信するため、サーバ装置においてデータの改ざん検知を行うことができ、クライアント装置からサーバ装置へのデータの収集を効率的かつ安全に行うことができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１を説明する。
図１は、実施の形態１に係るログ収集システム１００（通信システム）の構成例を示す概略図である。
ログ収集システム１００では、多数のクライアント装置１（以下、単にクライアントともいう）と、サーバ装置２（以下、単にサーバともいう）がネットワーク３に接続され、多数のクライアント１のログをサーバ２で収集する。
【００１０】
図２は、図１に示したクライアント装置１の構成例を示す。
図１では、複数のクライアント装置１が示されるが、それぞれのクライアント装置１の構成は、図２に示したものと同様である。
また、図３は、図１に示したサーバ装置２の構成例を示す。
【００１１】
図２及び図３に示すように、クライアント装置１とサーバ装置２は、検知コード鍵１５を秘密に共有している。この検知コード鍵１５は、クライアント装置１からサーバ装置２に送信する検知ログ２０の改ざん検知に用いるための共有鍵である。
そして、クライアント装置１は、差分ログ１９と検知コード１４が含まれる検知ログ２０をサーバ装置２に送信する。サーバ装置２では、検知ログ２０の改ざん検知を行った後に、検知ログ２０の格納を行う。
【００１２】
以下、図２〜図４を参照して、クライアント１及びサーバ２における動作例を概説する。
なお、図４は、クライアント１及びサーバ２における処理の対象となるデータ間の関係を示している。
【００１３】
クライアント１では、以下の処理が行われる。
プログラムの動作状況や処理結果、外部との入出力情報、内部または外部の状態の変化により、ログ生成部５が、データ６を生成し、データ６をログ４としてログファイル７（ログ蓄積部）に書き込む。
この際、クライアント１からサーバ２へのログ４の収集は、クライアント１におけるログ４の発生に応じて逐次行うことはせず、定期的、または一定量のログ４が蓄積された場合などに、前回送付したログと、その後新たに発生したログの差分のみを送ることで、効率化を図る。
【００１４】
クライアント１において、ログ収集クライアント部１６（差分ログデータ抽出部）は、後述する改ざん検知部８（不正アクセス検知部）により不正アクセスがなかったと判断されたログ４であって、サーバ２に対して未送信である差分ログ１９を抽出する。
検知コード生成部２１は、ログ収集クライアント部１６により抽出された差分ログ１９（送信データ）に対して検知コード鍵１５を用いて、差分ログ１９の改ざん検知のための検知コード１４を生成する。
そして、ログ収集クライアント部１６（データ送信部）は、差分ログ１９と検知コード１４とを対応づけて検知ログ２０（検知送信データ）としてサーバ２に対して送信する。
【００１５】
また、サーバ２において、ログ収集サーバ部２４（データ受信部）は、クライアント１から送信された検知ログ２０を受信する。
そして、検知ログ検証部２５（データ検証部）は、受信された検知ログ２０と、当該検知ログ２０の送信元のクライアント１と共有している検知コード鍵１５とを用いて、検知ログ２０における改ざんの有無を検証する。
具体的には、検知ログ検証部２５は、検知ログ２０に含まれている差分ログ１９（送信データ）と、検知ログ２０の送信元のクライアント１と共有している検知コード鍵１５とを用いて検知コード１４を生成し、生成した検知コード１４と、検知ログ２０に含まれている検知コード１４とを比較して、検知ログ２０における改ざんの有無を検証する。
そして、保管ログＤＢ２９（データ格納部）は、検知ログ検証部２５により改ざんがないと判断された場合に検知ログ２０と保管コード３１とを対応づけて新規保管ログ２２として格納する。
【００１６】
保管コード３１は、当該検知ログ２０が当該検知ログ２０に先行する検知ログに正しく連結しているか否かを検証するためのコードである。
サーバ２は、保管コード３１を生成するための保管コード鍵２３を秘密に保持している。
前述したように、検知ログ検証部２５は、ログ収集サーバ部２４によりクライアント１から新たに検知ログ２０が受信された場合に、新たに受信された検知ログ２０（新規受信検知差分ログデータ）における改ざんの有無を検証し、検知ログ検証部２５により検知ログ２０に改ざんがないと検証された場合に、保管ログ検証部３６（連結検証部）が、当該検知ログ２０の１つ前に保管ログＤＢ２９に格納されている最新保管ログ（直前格納検知差分ログデータ）の保管コード３１と、最新保管ログ３２の一つ前に格納されている前回保管ログ３３（格納検知差分ログデータ）の保管コード３１とを用いて、最新保管ログ３２が前回保管ログ３３に正しく連結しているか否かを検証する。
ここで、正しく連結されているか否かは、前回保管ログ３３の保管コード３１をもとに保管コード鍵２３により検証用の保管コードを生成し、最新保管ログ３２の保管コード３１と検証用の保管コードを比較し、一致したかどうかで判定する。
最新保管ログ３２の保管コード３１と検証用の保管コードとが一致する場合は、前回保管ログ３３の次の保管ログとして正しい最新保管ログ３２が改ざんなく格納されていること、つまり、前回保管ログ３３と最新保管ログ３２とが正しく連結されていることが検証される。
そして、保管ログ検証部３６により最新保管ログ３２がその一つ前に格納された前回保管ログ３３に正しく連結していると判断された場合に、保管コード生成部２８が、保管コード鍵２３と、最新保管ログ３２の保管コード３１と、新たに受信された検知ログ２０とを用いて、新たに受信された検知ログ２０の保管コード３１を生成する。
保管ログＤＢ２９は、このようにして生成された保管コード３１と新たに受信された検知ログ２０とを対応づけて新規保管ログ２２として格納する。
【００１７】
また、クライアント１において、アクセス監査部９は、ログファイル７（ログ蓄積部）に対するアクセス状況を監視する。
また、改ざん検知部８（不正アクセス検知部）は、アクセス監査部９の監視結果に基づき、ログファイル７への不正アクセスを検知する。
そして、ログ収集クライアント部１６は、改ざん検知部８により不正アクセスがなかったと判断されたログ４であって、サーバ２に対して未送信である差分ログ１９を抽出する。
【００１８】
なお、改ざん検知部８は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の機能として改ざん検知モジュールの形で実現されていてもよい。
また、アクセス監査部９も同様にＯＳの機能としてアクセス監査モジュールの形で実現されていてもよい。
改ざん検知部８は、アクセス監査部９が監視しているログファイル７へのアクセスが発生した場合にイベントログ１０に記録するイベント１１を監視し、イベント１１の内容から不正アクセス１２と判断した場合に改ざん検知シグナル１３を発生する。
【００１９】
次に、クライアント装置１及びサーバ装置２における動作の詳細をフローチャートを用いて説明する。
【００２０】
図１０は、本実施の形態に係るログファイルの改ざん検知処理手順を示すフローチャートである。
以下に処理手順について説明する。
手順Ｆ−１にて、クライアント１の起動とともに処理を開始する。
手順Ｆ−２にて、アクセス監査部９が、ログファイル７へのアクセスを監視する。
手順Ｆ−３にて、改ざん検知部８が、イベントログ１０の変化を監視する。
手順Ｆ−４にて、ログ生成部５がデータ６をログファイル７のログ４に書き込んだり、不正アクセス１２によりログファイル７の内容が改ざんされることで、ログファイル７へのアクセスが発生する。
手順Ｆ−５にて、アクセス監査部９がログファイル７へのアクセスを検出し、イベント１１をイベントログ１０に出力する。
手順Ｆ−６にて、改ざん検知部８がイベントログ１０の変化を検出する。
手順Ｆ−７にて、改ざん検知部８がイベントログ１０からイベント１１を入手する。
手順Ｆ−８にて、改ざん検知部８は、イベント１１の原因がログ生成部５によるものかどうかを判定する。
手順Ｆ−８の判定がＹｅｓの場合、以下の処理を行う。
手順Ｆ−９にて、改ざん検知部８は、改ざんではないと判定し、手順Ｆ−１０に処理を移す。
手順Ｆ−８の判定がＮｏの場合、以下の処理を行う。
手順Ｆ−１１にて、改ざん検知部８は、不正アクセス１２による改ざんと判定する。
手順Ｆ−１２にて、改ざん検知部８が、改ざん検知シグナル１３をログ収集クライアント部１６へ送付する。
手順Ｆ−１３にて、ログ収集クライアント部１６が、サーバ２へ改ざんの発生を通知し、手順Ｆ−１０に処理を移す。
手順Ｆ−１０にて、手順Ｆ−２からの手順を繰り返す。
【００２１】
図５は、本実施の形態に係る検知コード１４の生成処理手順を示すフローチャートである。
前述したように、クライアント１からサーバ２に送付した検知ログ２０が改ざんされていないことを確認可能とする為に、クライアント１は検知コード１４を検知ログ２０に含める。
以下に処理手順について説明する。
【００２２】
クライアント１では、ログ収集クライアント部１６が秘密に保持する検知コード鍵１５を、サーバ２との間で予め共有しておく。
手順Ａ−１で、検知コード１４の生成処理を開始する。
手順Ａ−２で、ログ収集クライアント部１６が、ログファイル７よりログ４を入手する。
手順Ａ−３で、ログ収集クライアント部１６が、前回ログファイル１７より前回ログ１８を入手する。
手順Ａ−４で、ログ収集クライアント部１６が、ログ４と前回ログ１８との差分から差分ログ１９を算出する。
手順Ａ−５で、ログ収集クライアント部１６が、差分ログ１９を検知コード生成部２１へ送付する。
手順Ａ−６で、検知コード生成部２１が、差分ログ１９をもとに検知コード鍵１５により検知コード１４を生成する（検知コード生成ステップ）。
なお、この検知コード１４の生成アルゴリズムについては、参考文献：ＲＦＣ２１０４，“ＨＭＡＣ：Ｋｅｙｅｄ−Ｈａｓｈｉｎｇ  ｆｏｒ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ”，１９９７などに記載の方式、または同様な処理を実現する、ＨＡＳＨ関数と秘密鍵暗号方式の組み合わせにより実現される。
次に、手順Ａ−７で、検知コード生成部２１が、検知コード１４をログ収集クライアント部１６へ送付する（データ送信ステップ）。
手順Ａ−８で、ログ収集クライアント部１６が、差分ログ１９と検知コード１４を１つにまとめて検知ログ２０を生成する。
手順Ａ−９で、ログ収集クライアント部１６が、検知ログ２０をサーバ２へ送付する。
手順Ａ−１０で、ログ収集クライアント部１６が、ログ４を前回ログ１８として前回ログファイル１７に格納する。
手順Ａ−１１で、検知コード１４の生成処理を終了する。
【００２３】
サーバ２では、以下の処理が行われる。
図６は、本実施の形態に係る新規保管ログ２２の生成処理手順を示すフローチャートである。
以下に処理手順について説明する。
サーバ２は、クライアント１とサーバ２が共有し、秘密に保持する検知コード鍵１５を予め共有しておく。
また、保管コード鍵２３を秘密に保持しておく。
手順Ｅ−１で、新規保管ログ２２の生成処理を開始する。
手順Ｅ−２で、ログ収集サーバ部２４が、検知ログ２０を入手する（データ受信ステップ）。
手順Ｅ−３で、クライアント１から収集した検知ログ２０が改ざんされていないことを確認する為に、ログ収集サーバ部２４が検知ログ検証部２５へ検知ログ２０を送付する。
手順Ｅ−４で、検知ログ検証部２５が検知ログ２０の検証処理を行う（データ検証ステップ）。
手順Ｅ−４における検知ログ２０の検証処理の詳細は後述する。
次に、手順Ｅ−５で、ログ収集サーバ部２４が、検知ログ検証部２５から検知ログ検証結果２７を入手する。
手順Ｅ−６で、ログ収集サーバ部２４は、検知ログ検証結果２７から検知ログ２０の改ざんが無いかどうかを判定する。
手順Ｅ−６の判定がＹｅｓの場合、以下の処理を行う。
手順Ｅ−７で、ログ収集サーバ部２４が、保管コード生成部２８へ検知ログ２０を送付する。
次に、手順Ｅ−９に処理を移す。
手順Ｅ−６の判定がＮｏの場合、以下の処理を行う。
手順Ｅ−８で、検知ログ２０の改ざんが検知されたとして、エラー処理を行う。
手順Ｅ−９では、保管コード生成部２８が保管コードを生成する処理を行う。
手順Ｅ−９における保管コードの生成処理の詳細は後述する。
次に、手順Ｅ−１０で、ログ収集サーバ部２４が、保管コード生成部２８から保管コード３１を入手する。
手順Ｅ−１１で、ログ収集サーバ部２４が、検知ログ２０と保管コード３１から新規保管ログ２２を生成する。
手順Ｅ−１２で、ログ収集サーバ部２４が、新規保管ログ２２を保管ログＤＢ２９へ送付する。
手順Ｅ−１３で、保管ログＤＢ２９が、新規保管ログ２２を最新保管ログ３２として格納し、保管ログＤＢ２９を更新する（データ格納ステップ）。
手順Ｅ−１４で、新規保管ログ２２の生成処理を終了する。
【００２４】
次に、図６の検知ログ検証部の処理（Ｅ−４）の詳細を説明する。
図７は、検知ログ検証部の処理（Ｅ−４）、すなわち検知コード１４の検証処理手順を示すフローチャートである。
手順Ｂ−１で、検知コード１４の検証処理を開始する。
手順Ｂ−２で、検知ログ検証部２５が、検知ログ２０を入手する。
手順Ｂ−３で、検知ログ検証部２５が、検知ログ２０の差分ログ１９をもとに検知コード鍵１５により検証用の検知コードを生成する。
手順Ｂ−４で、検知ログ検証部２５が、検知ログ２０に含まれる検知コード１４と生成した検証用の検知コードを比較し、一致したかどうかを判定する。
手順Ｂ−４の判定がＹｅｓの場合、以下の処理を行う。
手順Ｂ−５で、検知ログ２０の改ざん無しと判定し、検知ログ検証結果２７を生成する。
次に、手順Ｂ−７に処理を移す。
他方、手順Ｂ−４の判定がＮｏの場合、以下の処理を行う。
手順Ｂ−６で、検知ログ検証部２５は、検知ログ２０の改ざん有りと判定し、検知ログ検証結果２７を生成する。
次に、手順Ｂ−７に処理を移す。
手順Ｂ−７では、検知ログ検証部２５は、検知ログ検証結果２７をログ収集サーバ部２４へ送付する。
そして、手順Ｂ−８で、検知ログの検証処理を終了する。
【００２５】
以上が、手順Ｅ−４における検知ログ２０の検証処理となる。
【００２６】
次に、図６における保管コード生成部の処理（Ｅ−９）の詳細を説明する。
図８は、保管コード生成部の処理（Ｅ−９）、すなわち保管コード３１の生成処理手順を示すフローチャートである。
ここでは、保管ログＤＢ２９に保管された保管ログが改ざんされていないことを確認可能とする為に、保管コード３１を生成する。
【００２７】
手順Ｃ−１で、保管コード３１の生成処理を開始する。
手順Ｃ−２で、保管コード生成部２８が検知ログ２０を入手する。
手順Ｃ−３で、保管ログ検証部３６が保管ログの検証処理を行う。
手順Ｃ−３における保管ログの検証処理について、以下に説明する。
【００２８】
図９は、保管ログの検証処理手順を示すフローチャートである。
サーバ２は、保管ログＤＢ２９に保管された保管ログが改ざんされていないことを確認する為に、保管ログ検証部３６を備える。
手順Ｄ−１で、保管コード３１の検証処理を開始する。
手順Ｄ−２で、保管ログ検証部３６が、最新保管ログ３２を保管ログＤＢ２９から入手する。この最新保管ログ３２は、新たに受信した検知ログ２０の一つ前に保管ログＤＢ２９に格納された保管ログである。最新保管ログ３２には、検知ログ２０（差分ログ、検知コード）及び保管コード３１が含まれている。
手順Ｄ−３で、保管ログ検証部３６が、最新保管ログ３２の検知ログ２０を検知ログ検証部２５へ送付する。
手順Ｄ−４で、最新保管ログ３２の検知ログ２０について検知ログ検証部２５が処理を行う。
【００２９】
手順Ｄ−４における検知ログ検証の処理は、図７に示す通りである。
手順Ｄ−４では、検証の対象が、最新保管ログ３２の検知ログ２０となっている点及び最新保管ログ３２の検知ログ検証結果２７の送付先が保管ログ検証部３６となっている点以外は、図７について前述した通りである。
つまり、手順Ｂ−１で、検知コード１４の検証処理を開始する。
手順Ｂ−２で、検知ログ検証部２５が、最新保管ログ３２の検知ログ２０を入手する。
手順Ｂ−３で、検知ログ検証部２５が、最新保管ログ３２の検知ログ２０の差分ログ１９をもとに検知コード鍵１５により検証用の検知コードを生成する。
手順Ｂ−４で、検知ログ検証部２５が、最新保管ログ３２の検知ログ２０の検知コード１４と検証用の検知コードを比較し、一致したかどうかを判定する。
手順Ｂ−４の判定がＹｅｓの場合、以下の処理を行う。
手順Ｂ−５で、最新保管ログ３２の検知ログ２０の改ざん無しと判定し、最新保管ログ３２の検知ログ検証結果２７を生成する。
次に、手順Ｂ−７に処理を移す。
他方、手順Ｂ−４の判定がＮｏの場合、以下の処理を行う。
手順Ｂ−６で、検知ログ検証部２５は、最新保管ログ３２の検知ログ２０の改ざん有りと判定し、最新保管ログ３２の検知ログ検証結果２７を生成する。
次に、手順Ｂ−７に処理を移す。
手順Ｂ−７では、検知ログ検証部２５は、最新保管ログ３２の検知ログ検証結果２７を保管ログ検証部３６へ送付する。
そして、手順Ｂ−８で、検知ログの検証処理を終了する。
【００３０】
以上が、手順Ｄ−４における最新保管ログ３２の検知ログ２０の検証処理となる。
【００３１】
次に、手順Ｄ−５にて、保管ログ検証部３６が、検知ログ検証部２５から最新保管ログ３２の検知ログ検証結果２７を入手する。
手順Ｄ−６にて、検知ログ検証結果２７から最新保管ログ３２の検知ログ２０の改ざんが無いかどうかを判定する。
手順Ｄ−６の判定がＹｅｓの場合、以下の処理を行う。
手順Ｄ−７で、保管ログ検証部３６は、最新保管ログ３２の検知ログ２０は改ざん無しと判定する。
手順Ｄ−８で、保管ログ検証部３６が、前回保管ログ３３を保管ログＤＢ２９から入手する。前回保管ログ３３は、最新保管ログ３２の一つ前に保管ログＤＢ２９に保管されている保管ログである。
前回保管ログ３３には、検知ログ２０（差分ログ、検知コード）及び保管コード３１が含まれている。
手順Ｄ−９で、保管ログ検証部３６が最新保管ログ３２の検知ログ２０と前回保管ログ３３の保管コード３１をもとに保管コード鍵２３により検証用の保管コードを生成する。
なお、この検証用の保管コードの生成アルゴリズムについては、参考文献：ＲＦＣ２１０４，“ＨＭＡＣ：Ｋｅｙｅｄ−Ｈａｓｈｉｎｇ  ｆｏｒ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ”，１９９７などに記載の方式、または同様な処理を実現する、ＨＡＳＨ関数と秘密鍵暗号方式の組み合わせにより実現される。
次に、手順Ｄ−１０にて、保管ログ検証部３６が、最新保管ログ３２の保管コード３１と検証用の保管コードを比較し、一致したかどうかを判定する。
手順Ｄ−１０の判定がＹｅｓの場合、以下の処理を行う。
手順Ｄ−１１で、保管ログ検証部３６は、最新保管ログ３２の改ざん無しと判定し、保管ログ検証結果３７を生成する。
次に、手順Ｄ−１３に処理を移す。
他方、手順Ｄ−６の判定がＮｏの場合、または手順Ｄ−１０の判定がＮｏの場合、手順Ｄ−１２に処理を移す。
手順Ｄ−１２で、保管ログ検証部３６は、最新保管ログ３２の改ざん有りと判定し、保管ログ検証結果３７を生成する。
次に、手順Ｄ−１３に処理を移す。
手順Ｄ−１３では、保管ログ検証部３６が、保管ログ検証結果３７と最新保管ログ３２の保管コード３１を送付する。
次に、手順Ｄ−１４で、処理を終了する。
【００３２】
以上が、手順Ｃ−３における保管ログの検証処理となる。
【００３３】
次に、手順Ｃ−４で、保管コード生成部２８が、保管ログ検証部３６から最新保管ログ３２の保管ログ検証結果３７と保管コード３１を入手する。
手順Ｃ−５で、保管コード生成部２８は、最新保管ログ３２の保管ログ検証結果３７から最新保管ログ３２の改ざんが無いかどうかを判定する。
手順Ｃ−５の判定がＹｅｓの場合、以下の処理を行う。
手順Ｃ−６で、保管コード生成部２８が、検知ログ２０と最新保管ログ３２の保管コード３１をもとに保管コード鍵２３により保管コード３１を生成する。
なお、この保管コード３１の生成アルゴリズムについては、参考文献：ＲＦＣ２１０４，“ＨＭＡＣ：Ｋｅｙｅｄ−Ｈａｓｈｉｎｇ  ｆｏｒ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ”，１９９７などに記載の方式、または同様な処理を実現する、ＨＡＳＨ関数と秘密鍵暗号方式の組み合わせにより実現される。
次に、手順Ｃ−７で、保管コード生成部２８が、ログ収集サーバ部２４に保管コード３１を送付する。
次に、手順Ｃ−９に処理を移す。
手順Ｃ−５の判定がＮｏの場合、以下の処理を行う。
手順Ｃ−８で、最新保管ログ３２の改ざんを検知したとして、エラー処理を行う。
次に、手順Ｃ−９に処理を移す。
最後に、手順Ｃ−９で、処理を終了する。
【００３４】
以上が、手順Ｅ−９における検知ログ２０の検証処理となる。
【００３５】
ここで、再度、本実施の形態に係るログ収集システム１００の特徴について以下に述べる。
従来の技術では、データに対する改ざんの検出用のコードの算出と保管するデータ間の改ざん検出用のコードの算出が１台の装置の中で行われていた。
この為、処理すべきデータの増加に対応するには、装置をより高性能な物に交換する以外に方法が無く多額な出費が必要となった。
また、装置の高性能化による対応には自ずと限界があった。
本実施の形態に係るログ収集システム１００においては、多数のクライアントからデータをサーバへ収集する為、１台の装置の中で行われていた処理を、クライアントとサーバで分散することが可能である。
そこで、クライアントにてデータの改ざんの検出用の検知コードを算出し、サーバにてデータ間の改ざんの検出用の保管コードを算出することとした。
しかしながら、第１の問題として、単純にクライアントとサーバに処理を分散しただけでは、偽のデータがサーバに送付される恐れがある。
また、クライアントがデータの発生ごとにサーバにログを送付すると、クライアントとサーバ間の通信が頻発して、サーバの負荷の増大や、ネットワークのトラフィック増加という新たな悪影響が発生してしまうことが懸念される。
そこで、クライアントにて、一定期間ごと、または一定のログが蓄積された場合に、前回送付したログと、その後新たに発生したログの差分のみを送ることで、効率化を図ることとした。
しかしながら、第２の問題として、送付するまでクライアントに蓄積されたログに対して、改ざんの行われる恐れがある。
このように、第１の問題、および第２の問題に対処する目的で、ログ収集クライアント部１６を設けた。
ログ収集クライアント部１６は、蓄積されたログに対する改ざんを監視する改ざん検知部８と連携し、改ざん検知シグナルが発生しなかった場合にのみ、ログは前回の収集から今回まで改ざんがされていないと判断し、検知コードの生成を行う。
また、検知コードの生成の際は、サーバに対して改ざんのされていない正しいログを送っていることを保証する為に検知コード生成部と連携し、改ざんがされていないと判断したログと前回ログとの差分ログを算出し、この差分ログをもとにクライアントとサーバの間で共有し、ログ収集クライアント部が秘密に保持している検知コード鍵により検知コードを検知コード生成部に生成させる。
そして、差分ログと検知コードをあわせた検知ログを生成し、サーバへと送付する。
したがって、このように動作するログ収集クライアント部１６を設けたことにより、多数のクライアントからサーバへ収集するログのデータの改ざん検知が可能で、クライアントからサーバへのログの収集を効率的かつ安全に行うことが可能となった。
【００３６】
以上のように、本実施の形態によれば、クライアントが改ざん検知部を備えたことにより、差分ログをサーバに送るまで保持しているログに対する改ざんを検知することができる。
【００３７】
また、クライアントがサーバとクライアントが共有し秘密に保管する検知コード鍵を用いて検知コードを生成する検知コード生成部を備えたことにより、サーバに送付する検知ログの改ざんを検知することができる。
【００３８】
また、クライアントがログ収集クライアント部を備えたことにより、差分ログのみを安全に効率的にサーバに送付することができる。
【００３９】
また、サーバが、サーバとクライアントが共有し秘密に保管する検知コード鍵を用いて検知コードを検証する検知ログ検証部を備えたことにより、クライアントから収集した検知ログの改ざんを検知することができる。
【００４０】
また、サーバが、サーバが秘密に保持する保管コード鍵を用いて保管コードを生成する保管コード生成部を備えたことにより、保管ログＤＢに保管する保管ログの改ざんを検知することができる。
【００４１】
また、サーバが、サーバが秘密に保持する保管コード鍵を用いて保管コードを検証する保管コード検証部を備えたことにより、保管ログＤＢに保管する保管ログの改ざんを検知することができる。
【００４２】
以上のように、クライアントとサーバに処理を分散して、多数のクライアントからサーバへのログのデータの収集と、サーバに保管するログのデータの改ざん検知が可能となるとともに、多数のクライアントからサーバへ収集するログのデータの改ざん検知が可能で、クライアントからサーバへのログの収集を効率的かつ安全に行えるログ改ざん検知システムを提供できるという効果がある。
【００４３】
ここで、本実施の形態に係るクライアント装置１及びサーバ装置２のハードウェア構成例について説明する。
図１２は、本実施の形態のクライアント装置１及びサーバ装置２のハードウェア資源の一例を示す図である。なお、図１２の構成は、あくまでもクライアント装置１及びサーバ装置２のハードウェア構成の一例を示すものであり、クライアント装置１及びサーバ装置２のハードウェア構成は図１２に記載の構成に限らず、他の構成であってもよい。
【００４４】
図１２において、クライアント装置１及びサーバ装置２は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００４５】
通信ボード９１５は、図１に示すように、ネットワークに接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続されている。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００４６】
上記プログラム群９２３には、本実施の形態の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、本実施の形態の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の生成」、「〜の更新」、「〜の設定」、「〜の登録」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、本実施の形態で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００４７】
また、本実施の形態の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、本実施の形態の「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態の「〜部」の手順や方法をコンピュータに実行させるものである。
【００４８】
このように、本実施の形態に示すクライアント装置１及びサーバ装置２は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【００４９】
以上のように、本実施の形態で示したログ収集システムでは、クライアントが、差分ログをサーバに送るまで保持しているログに対する改ざんを検知することができる改ざん検知部を備えたものである。
また、クライアントは、サーバに送付する検知ログの改ざんを検知することができるサーバとクライアントが共有しログ収集クライアント部が秘密に保管する検知コード鍵を用いて、検知コードを生成する検知コード生成部を備えたものである。
また、クライアントは、差分ログのみを安全に効率的にサーバに送付することができるログ収集クライアント部を備えたものである。
また、サーバが、クライアントから収集した検知ログの改ざんを検知することができるサーバとクライアントが共有し秘密に保管する検知コード鍵を用いて検知コードを検証する検知ログ検証部を備えたものである。
また、サーバは、保管ログＤＢに保管する保管ログの改ざんを検知することができる保管コード鍵であってサーバが秘密に保持する保管コード鍵を用いて保管コードを生成する保管コード生成部を備えたものである。
また、サーバは、保管ログＤＢに保管する保管ログの改ざんを検知することができる保管コード鍵であってサーバが秘密に保持する保管コード鍵を用いて保管コードを検証する保管コード検証部を備えたものである。
【００５０】
更に、本実施の形態で示したログ収集システムは、ネットワークに接続された多数のクライアントのログをサーバで収集するログ収集システムであって、
データを生成し、前記データをログとしてログファイルに書き込むログ生成部と、
ログファイルへの不正アクセスが発生した場合に、改ざん検知シグナルを発生する改ざん検知部と、
ログファイルから前回収集した前回ログと、
前回ログを保管する前回ログファイルと、
ログと前回ログの差分から算出される差分ログと、
クライアントとサーバが共有し、秘密に保持する検知コード鍵と、
差分ログをもとに検知コード鍵により検知コードを生成する検知コード生成部と、
差分ログと検知コードから生成される検知ログと、
ログファイルからログを収集し、前回ログファイルから前回ログを入手し、ログと前回ログの差分から差分ログを算出し、差分ログを検知コード生成部へ送付し、検知コード生成部から検知コードを入手し、
差分ログと検知コードをあわせて検知ログを生成し、検知ログをサーバへ送付し、ログを前回ログとして前回ログファイルに格納するログ収集クライアント部からなるクライアントを持つことを特徴とするログ収集システムについて説明した。
【００５１】
また、本実施の形態では、例えばクライアントのＯＳの機能として提供されるアクセス監査部が監視しているログファイルへのアクセスが発生した場合にイベントログに記録するイベントを監視し、イベントの内容から不正アクセスと判断した場合に改ざん検知シグナルを発生する改ざん検知を特徴とするログ収集システムについて説明した。
【００５２】
また、本実施の形態では、例えばクライアントのＯＳの機能として提供されるアクセス監査部が監視しているログファイルへのアクセスが発生した場合にイベントログに記録するイベントを監視し、イベントの内容から不正アクセスと判断した場合に改ざん検知シグナルを発生する改ざん検知処理をコンピュータに実行させるプログラムについて説明した。
【００５３】
また、本実施の形態では、ログファイルから収集したログとログファイルから前回収集した前回ログの差分から算出される差分ログと、クライアントが秘密に保持する検知コード鍵と、差分ログをもとに検知コード鍵により検知コードを生成する検知コード生成を特徴とするログ収集システムについて説明した。
【００５４】
また、本実施の形態では、ログファイルから収集したログとログファイルから前回収集した前回ログの差分から算出される差分ログと、クライアントが秘密に保持する検知コード鍵と、差分ログをもとに検知コード鍵により検知コードを生成する検知コード生成処理をコンピュータに実行させるプログラムについて説明した。
【００５５】
また、本実施の形態では、ネットワークに接続された多数のクライアントのログをサーバで収集するログ収集システムであって、
クライアントから収集した検知ログと、
クライアントとサーバが共有し、秘密に保持する検知コード鍵と、
検知ログをもとに検知コード鍵により検知ログの改ざんの有無を検証し、検査ログ検証結果を生成する検知ログ検証部と、
サーバが秘密に保持する保管コード鍵と、
保管する検知ログの改ざんを検出する為に、検知ログと前回の検知ログの改ざんを検出する為に生成された保管コードをもとに保管コード鍵により新たな保管コードを生成する保管コード生成部と、
検知ログと保管コードから生成される保管ログと、
保管ログを保管する保管ログＤＢと、
最新の保管ログを入手し、最新の保管ログに含まれる検知ログを検知ログ検証部へ送付し、
検知ログ検証部から検知ログ検証結果を入手し、前回の保管ログを入手し、最新の保管ログと前回の保管ログをもとに保管コード鍵により最新の保管ログの改ざんの有無を検証し、保管ログ検証結果を生成し、
更に保管ログの改ざんが無い場合は最新の保管ログの保管コードを新たな保管コードの生成の為の保管コードとし、保管ログ検証結果と新たな保管コードの生成の為の保管コードを送付する保管ログ検証部と、
クライアントから検知ログを収集し、検知ログを検知ログ検証部へ送付し、検知ログ検証部から検知ログ検証結果を入手し、改ざんが無い場合は検知ログを保管コード生成部へ送付し、保管コード生成部から保管コードを入手し、検知ログと保管コードから新規保管ログを生成し、新規保管ログを保管ログＤＢへ送付するログ収集サーバ部からなるサーバを持つことを特徴とするログ収集システムについて説明した。
【００５６】
また、本実施の形態では、検知ログの差分ログをもとに検知コード鍵により検証用の検知コードを生成し、検知ログの検知コードと検証用の検知コードを比較し、一致した場合は検知ログの改ざんが無いと判定し、そうでない場合は検知ログの改ざんが有ると判定し、検知ログの検証結果を生成する検知ログ検証を特徴とするログ収集システムについて説明した。
【００５７】
また、本実施の形態では、検知ログの差分ログをもとに検知コード鍵により検証用の検知コードを生成し、検知ログの検知コードと検証用の検知コードを比較し、一致した場合は検知ログの改ざんが無いと判定し、そうでない場合は検知ログの改ざんが有ると判定し、検知ログの検証結果を生成する検知ログ検証処理をコンピュータに実行させるプログラムについて説明した。
【００５８】
また、本実施の形態では、前回の保管ログの検証結果と前回の保管コードを入手し、前回の保管ログが改ざんされていない場合は、新たに保管する検知ログの改ざんを検出する為に、検知ログと前回の保管ログに含まれる前回の検知ログの改ざんを検出する為に生成された保管コードをもとに保管コード鍵により新たな保管コードを生成する保管コード生成を特徴とするログ収集システムについて説明した。
【００５９】
また、本実施の形態では、前回の保管ログの検証結果と前回の保管コードを入手し、前回の保管ログが改ざんされていない場合は、新たに保管する検知ログの改ざんを検出する為に、検知ログと前回の保管ログに含まれる前回の検知ログの改ざんを検出する為に生成された保管コードをもとに保管コード鍵により新たな保管コードを生成する保管コード生成処理をコンピュータに実行させるプログラムについて説明した。
【００６０】
また、本実施の形態では、保管ログＤＢから最新の保管ログを入手し、最新の保管ログに含まれる検知ログを検知ログ検証部へ送付し、検知ログ検証部から検知ログ検証結果を入手し、最新の保管ログの検知ログに改ざんが無い場合は、前回の保管ログを入手し、最新の保管ログの検知ログと前回の保管ログの保管コードをもとに保管コード鍵により検証用の保管コードを生成し、最新の保管ログの保管コードと生成した検証用の保管コードを比較し、一致した場合は最新の保管ログの改ざんが無いと判定し、そうでない場合は最新の保管ログの改ざんが有ると判定し、保管ログの検証結果を生成し、更に保管ログの改ざんが無い場合は最新の保管ログの保管コードを新たな保管コードの生成の為の保管コードとし、保管ログ検証結果と新たな保管コードの生成の為の保管コードを送付する保管ログ検証を特徴とするログ収集システムについて説明した。
【００６１】
また、本実施の形態では、保管ログＤＢから最新の保管ログを入手し、最新の保管ログに含まれる検知ログを検知ログ検証部へ送付し、検知ログ検証部から検知ログ検証結果を入手し、最新の保管ログの検知ログに改ざんが無い場合は、前回の保管ログを入手し、最新の保管ログの検知ログと前回の保管ログの保管コードをもとに保管コード鍵により検証用の保管コードを生成し、最新の保管ログの保管コードと生成した検証用の保管コードを比較し、一致した場合は最新の保管ログの改ざんが無いと判定し、そうでない場合は最新の保管ログの改ざんが有ると判定し、保管ログの検証結果を生成し、更に保管ログの改ざんが無い場合は最新の保管ログの保管コードを新たな保管コードの生成の為の保管コードとし、保管ログ検証結果と新たな保管コードの生成の為の保管コードを送付する保管ログ検証処理をコンピュータに実行させるプログラムについて説明した。
【図面の簡単な説明】
【００６２】
【図１】この発明の実施の形態１に係るログ収集システムの全体構成例を示す図である。
【図２】この発明の実施の形態１に係るクライアント装置の構成例を示す図である。
【図３】この発明の実施の形態１に係るサーバ装置の構成例を示す図である。
【図４】この発明の実施の形態１に係る各データの関係を示す概略図である。
【図５】この発明の実施の形態１に係る検知ログの生成処理手順を示すフローチャートである。
【図６】この発明の実施の形態１に係る新規保管ログの生成処理手順を示すフローチャートである。
【図７】この発明の実施の形態１に係る検知ログの検証処理手順を示すフローチャートである。
【図８】この発明の実施の形態１に係る保管コードの生成処理手順を示すフローチャートである。
【図９】この発明の実施の形態１に係る保管ログの検証処理手順を示すフローチャートである。
【図１０】この発明の実施の形態１に係るログファイルの改ざん検知処理手順を示すフローチャートである。
【図１１】従来の技術におけるデータ改ざん検出装置の処理の概要を示したものである。
【図１２】この発明の実施の形態１に係るクライアント装置及びサーバ装置のハードウェア構成例を示す図である。
【符号の説明】
【００６３】
１  クライアント装置、２  サーバ装置、３  ネットワーク、４  ログ、５  ログ生成部、６  データ、７  ログファイル、８  改ざん検知部、９  アクセス監査部、１０  イベントログ、１１  イベント、１２  不正アクセス、１３  改ざん検知シグナル、１４  検知コード、１５  検知コード鍵、１６  ログ収集クライアント部、１７  前回ログファイル、１８  前回ログ、１９  差分ログ、２０  検知ログ、２１  検知コード生成部、２２  新規保管ログ、２３  保管コード鍵、２４  ログ収集サーバ部、２５  検知ログ検証部、２７  検知ログ検証結果、２８  保管コード生成部、２９  保管ログＤＢ、３１  保管コード、３２  最新保管ログ、３３  前回保管ログ、３４  前々回保管ログ、３６  保管ログ検証部、３７  保管ログ検証結果。
【図１】
2008192094.tif 000003
【図２】
2008192094.tif 000004
【図３】
2008192094.tif 000005
【図４】
2008192094.tif 000006
【図５】
2008192094.tif 000007
【図６】
2008192094.tif 000008
【図７】
2008192094.tif 000009
【図８】
2008192094.tif 000010
【図９】
2008192094.tif 000011
【図１０】
2008192094.tif 000012
【図１１】
2008192094.tif 000013
【図１２】
2008192094.tif 000014