説明

ログ監視システムおよびログ監視方法

【課題】ログを多重化する際に必要なリソースを低減するとともに、管理者によるログの改ざんに対応することができるようにする。
【解決手段】業務サーバ10と、業務監視サーバ20とは管理者が異なる。業務サーバ10は、業務ログ記憶部151を監視し、条件を満たす業務ログが登録された場合、業務ログを監視ログとして監視ログ記憶部152に登録し、監視ログを業務監視サーバ20に送信する。業務監視サーバ20は、業務サーバ10から送信される監視ログを受信し、監視ログを監視ログ記憶部253に登録し、業務サーバ10の監視ログ記憶部152に記録されている監視ログと、業務監視サーバ20の監視ログ記憶部253に記憶されている監視ログとが一致するかどうかにより、監視ログに対する改ざんの有無を判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ログ監視システムおよびログ監視方法に関する。
【背景技術】
【0002】
コンピュータシステムの不正使用などの使用状況を事後的に監査するべく、システムの動作をログとして記録することが行われている。ログが改ざんされると適切な監査を行うことができないため、ログの改ざんを防止するための各種の技術が提案されている。例えば、特許文献1には、ログを多重化し、あるログが改ざんされた場合に、他のログから改ざんされたログを復元するシステムが提案されている。また、特許文献2には、主ログファイルのハッシュ値と、副ログファイルのハッシュ値とを照合することにより、ログの改ざんを検知するシステムが開示されている。
【特許文献1】特開2001−142764号公報
【特許文献2】特開2000−285076号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
特許文献1に記載のシステムでは、ログは全て多重化されるので、多重化される個数分のリソースが追加的に必要になる。特許文献2には、主ログの一部の項目のみを副ログとして記録することは記載されているものの、全ての主ログに対応する副ログも生成されることになる。
しかしながら、一般にログの数は膨大であるので、ログを多重化する際に必要なリソースを低減したいというニーズがある。
また、上記従来技術では、システムの管理者によりログが改ざんされることを想定していない。
【0004】
本発明は、このような背景を鑑みてなされたものであり、ログを多重化する際に必要なリソースを低減するとともに、管理者によるログの改ざんに対応することのできるログ監視システムおよびログ監視方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記課題を解決するための本発明のうち、第1サーバと、前記第1サーバに通信可能に接続される、前記第1サーバを管理する管理者とは異なる管理者により管理される第2サーバと、を含んで構成され、前記第1サーバは、当該第1サーバによる処理の実行履歴を表す実行ログを記憶する実行ログ記憶部と、監視対象となる前記実行ログを特定するための条件を記憶する条件記憶部と、前記実行ログ記憶部を監視し、前記条件を満たす前記実行ログが登録された場合に、当該実行ログを監視ログとして決定する監視ログ決定部と、前記監視ログを記憶する第1監視ログ記憶部と、前記監視ログを前記第2サーバに送信する監視ログ送信部と、を備え、前記第2サーバは、前記第1サーバから送信される監視ログを受信する監視ログ受信部と、前記監視ログを記憶する第2監視ログ記憶部と、前記第1サーバの前記第1監視ログ記憶部に記録されている前記監視ログと当該第2サーバの前記第2監視ログ記憶部に記憶されている前記監視ログとが一致するかどうかにより、前記監視ログに対する改ざんの有無を判定する改ざん判定部と、を備えることとする。
【0006】
本発明のログ監視システムによれば、第1サーバに記録される実行ログのうち条件に見合うもののみが、第1サーバにおいて監視ログとして二重化されるとともに、第1サーバの管理者とは異なる管理者が管理する第2サーバにも記録される。したがって、監視対象の実行ログが改ざんされた場合にも、第1サーバにおいて、監視ログと比較することにより改ざんを検出することが可能であり、監視ログから実行ログを復旧することもできる。また、第2サーバは、第1サーバとは異なる管理者により管理されるので、第1サーバの管理者が実行ログとともに監視ログも改ざんしたような場合であっても、第2サーバに記録される監視ログと比較することにより改ざんを検出し、第2サーバの監視ログから実行ログを復旧することができる。
【0007】
また、本発明のうち請求項2に記載の発明は、請求項1に記載のログ監視システムであって、前記第2サーバは、前記改ざん判定部により前記改ざんが無いと判定された場合に、前記監視ログを削除するように指示するコマンドである監視ログ削除要求を送信する監視ログ削除要求送信部を備え、前記第1サーバは、前記第2サーバから送信される、前記監視ログ削除要求を受信する監視ログ削除要求受信部と、前記監視ログ削除要求に応じて前記監視ログ記憶部に記憶されている前記監視ログを削除する監視ログ削除部と、を備えることとする。
この場合、改ざんが無いと判定された監視ログについては、第1サーバから削除して、第2サーバのみで管理することにより、第1サーバにおけるログの二重化にかかるリソースの消費量を低減することができる。
【0008】
また、本発明のうち請求項3に記載の発明は、請求項1に記載のログ監視システムであって、前記第1サーバは、前記第1監視ログ記憶部に記憶されている前記監視ログ全体に所定のハッシュ関数を適用して第1のハッシュ値を算出する第1ハッシュ値算出部と、前記第1のハッシュ値を前記第2サーバに送信するハッシュ値送信部と、を備え、前記第2サーバは、前記第1のハッシュ値を受信するハッシュ値受信部と、前記第2監視ログ記憶部に記憶されている前記監視ログ全体に前記所定のハッシュ関数を適用して第2のハッシュ値を算出する第2ハッシュ値算出部と、を備え、前記改ざん判定部は、前記第1および第2のハッシュ値を比較して、前記改ざんの有無を判定することとする。
この場合、第1サーバに記録される監視ログを第2サーバに送信することなく、ハッシュ値のみを送信すればよいので、データの通信量を低減し、迅速な比較処理を行うことができる。
【0009】
また、本発明のうち請求項4に記載の発明は、請求項3に記載のログ監視システムであって、前記実行ログには、前記コマンドが実行された日時が含まれており、前記第1サーバは、前記管理者が前記第1サーバにログインした日時であるログイン日時、および前記管理者が前記第1サーバからログオフした日時であるログオフ日時を取得するログイン監視部と、前記第1ハッシュ値算出部は、前記第1監視ログ記憶部に記憶されている前記監視ログのうち、前記日時が前記ログイン日時以後であり、かつ、前記日時が前記ログオフ日時以前のものについて前記第1のハッシュ値を算出し、前記ハッシュ値送信部は、前記第1のハッシュ値に前記ログイン日時および前記ログオフ日時を付帯させて送信し、前記第2ハッシュ値算出部は、前記第2監視ログ記憶部に記憶されている前記監視ログのうち、前記日時が前記第1のハッシュ値に付帯されている前記ログイン日時以後であり、かつ、前記日時が前記第1のハッシュ値に付帯されている前記ログオフ日時以前である前記監視ログについて前記第2のハッシュ値を算出することとする。
この場合、第1サーバに管理者がログインしている間の操作のみを監視対象とすることができる。したがって、大量の実行ログが発生する場合にも、全てのログを検査の対象としなくてもよいので、処理効率を向上することができる。
【0010】
また、本発明のうち請求項5に記載の発明は、請求項1に記載のログ監視システムであって、前記第1サーバは、CPUと監視プログラムを記憶するメモリとを備え、前記監視ログ決定部および前記監視ログ送信部は、前記CPUが前記監視プログラムを実行することにより実現され、前記第2サーバは、前記第1サーバにおいて前記監視プログラムが動作しているかどうかを問い合わせるコマンドである動作確認要求を前記第1サーバに送信する動作確認要求送信部を備え、前記第1サーバは、前記動作確認要求を受信する動作確認要求受信部と、前記監視プログラムが実行されているか否かを示す動作状態情報を前記第2サーバに送信する動作状態送信部と、を備え、前記第2サーバは、前記第1サーバから送信される前記動作状態情報を受信する動作状態受信部と、前記動作状態情報が、前記監視プログラムが実行されていないことを示している場合に、その旨を示すメッセージを含む前記監視ログを生成して前記第2監視ログ記憶部に登録する動作監視部と、を備えることとする。
この場合、第1サーバにおいて監視プログラムが実行されているかどうかを、第2サーバから監視することができる。したがって、第1サーバにおいて、管理者が、監視プログラムの実行を停止し、第2サーバに監視ログが送信されないようにした場合でも、それを検知することができる。よって、監視ログが確実に第1サーバから第2サーバに送信されるようにすることができる。
【0011】
また、本発明のうち請求項6に記載の発明は、請求項1に記載のログ監視システムであって、前記第1サーバは、前記第1監視ログ記憶部に記憶されている前記監視ログと、前記実行ログ記憶部に記憶されている、前記監視ログに対応する前記実行ログとの間に相違があるか否かにより前記実行ログに対する改ざんの有無を判定する改ざん判定部と、前記改ざん判定部により前記改ざんが有ると判定された場合に、その旨を報知する改ざん報知部と、を備えることとする。
この場合、実行ログと監視ログとの比較により、監視対象となる実行ログに改ざんがなされたかどうかを、第1サーバが判定し、報知することができる。したがって、第2サーバのみならず、第1サーバにおいても改ざんを検知することで、より改ざんの検出を確実に行うことができる。
【0012】
また、本発明のうち請求項7に記載の発明は、請求項1に記載のログ監視システムであって、前記第1サーバおよび前記第2サーバのそれぞれと通信可能に接続される第3サーバを含み、前記第1サーバの前記監視ログ送信部は、前記監視ログを前記第2サーバに送信するとともに、前記第3サーバにも送信し、前記第3サーバは、前記第1サーバから送信される前記監視ログを受信する監視ログ受信部と、前記監視ログを記憶する第3監視ログ記憶部と、を備えることとする。
この場合、監視ログを第1サーバ、第2サーバ、および第3サーバの3箇所に多重化することができる。したがって、第1サーバの管理者と、第2サーバの管理者とが結託して監視ログを改ざんしたような場合でも、第3サーバに記録される監視ログを用いて実行ログの監査を行うことができる。
【0013】
また、本発明のうち請求項8に記載の発明は、請求項1に記載のログ監視システムであって、前記第1サーバおよび前記第2サーバのそれぞれと通信可能に接続される第3サーバを含み、前記第2サーバは、前記条件を含む設定データの入力を受け付ける設定データ入力部と、前記設定データを、前記第1サーバおよび前記第3サーバのそれぞれに送信する設定データ送信部と、を備え、前記第3サーバは、前記第2サーバから送信される前記設定データを受信する設定データ受信部と、前記第1サーバにおいて記憶されている前記条件を取得するためのコマンドである条件取得要求を前記第1サーバに送信する条件取得要求送信部と、を備え、前記第1サーバは、前記第2サーバから送信される前記設定データを受信する設定データ受信部と、前記設定データに含まれている前記条件を前記条件記憶部に登録する条件登録部と、前記第3サーバから送信される前記条件取得要求を受信する条件取得要求受信部と、前記条件取得要求に応じて、前記条件記憶部に記憶されている前記条件を前記第3サーバに送信する条件送信部と、を備え、前記第3サーバは、前記条件取得要求に応じて前記第1サーバから送信される前記条件を受信する条件受信部と、前記第2サーバから受信した前記設定データに含まれている前記条件と、前記第1サーバから受信した前記条件とを比較して、前記条件に対する改ざんの有無を判定する条件改ざん判定部と、を備えることとする。
この場合、第1サーバにおいて、第2サーバに入力された条件と同じ条件を用いて監視ログの抽出が行われているかどうかを確認することができる。したがって、第1サーバの管理者が、不正操作に係る実行ログが監視ログとして抽出されないように、条件を改ざんしたような場合にも、それを検知することができる。よって、監視対象となる実行ログを確実に監視ログとして抽出するようにし、信頼性の高い監視ログを記録することができる。
【0014】
その他本願が開示する課題やその解決方法については、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【0015】
本発明によれば、ログを多重化する際に必要なリソースを低減するとともに、管理者によるログの改ざんに対応することができる。
【発明を実施するための最良の形態】
【0016】
==システム構成==
以下、本発明の一実施形態に係る不正監視システムについて説明する。
図1は、本実施形態の不正監視システムの全体構成を示す図である。本実施形態の不正監視システムは、業務サーバ10、業務監視サーバ20、操作監視サーバ30を含んで構成されている。本実施形態では、業務サーバ10の管理者と、業務監視サーバ20の管理者と、操作監視サーバ30の管理者とは、それぞれ異なるものとする。
【0017】
業務サーバ10(本発明の第1サーバに該当する。)は、アプリケーションプログラムを実行することにより各種の業務に係る情報処理サービスを提供する、例えば、パーソナルコンピュータやワークステーションなどのコンピュータである。業務サーバ10では、アプリケーションプログラム(以下、業務プログラムという。)の実行経過や実行結果を示す情報(以下、業務ログという。本発明の実行ログに該当する。)が記憶される。
【0018】
本実施形態の不正監視システムは、業務サーバ10の管理者による不正な操作を監視するものであり、業務サーバ10において記録されている業務ログの改ざんや、適切な業務ログが記録されないような不正な設定などを防止するものである。
【0019】
業務監視サーバ20(本発明の第2サーバに該当する。)は、業務サーバ10において実行される、業務ログを監視するためのアプリケーションプログラム(以下、監視プログラムという。)の設定を行い、業務サーバ10において監視プログラムが動作していることを監視するとともに、業務サーバ10から送信される、業務ログや、管理者のログインに関するログ、管理者が行った情報へのアクセスに関するログなど(以下、監視ログという。詳細に付いては後述する。)を受信して記録する。
【0020】
このように、本実施形態では、業務サーバ10および業務監視サーバ20の両方に業務ログが記録されることにより、業務サーバ10に記録された業務ログと、業務監視サーバ20に記録された業務ログとを比較することにより、業務サーバ10において業務ログが改ざんされたことを検出することができるようにしている。
【0021】
本実施形態の不正監視システムでは、業務サーバ10と業務監視サーバ20とは、異なる管理者により管理されるものとする。これにより、業務サーバ10の管理者が業務ログを改ざんしたとしても、業務監視サーバ20にも業務ログが記録されるので、これらを照合することにより改ざんを検知することができる。よって、業務ログの改ざんの危険性を低減することができる。
【0022】
業務監視サーバ20はまた、業務サーバ10に対して監視プログラムの設定を行うごとに、監視プログラムの設定内容を記述したデータ(以下、設定データという。)を記録するとともに、操作監視サーバ30に送信する。
【0023】
操作監視サーバ30(本発明の第3サーバに該当する。)は、業務監視サーバ20から送信される設定データを受信して記録するとともに、業務サーバ10にアクセスして設定データを取得し、業務サーバ10から取得した設定データと、業務監視サーバ20から受信して記録した設定データとを比較する。
【0024】
このように、本実施形態では、業務監視サーバ20が送信した設定データと、業務サーバ10において実際に使用されている設定データとを比較することにより、業務サーバ10において業務ログを監視するための監視プログラムの設定データが改ざんされたことを検出することができるようにしている。
【0025】
業務サーバ10では、監視プログラムが実行され、後述するように、業務ログが記録されるごとに、記録された業務ログなどを含む監視ログを業務監視サーバ20に送信する。
以下、詳細について説明する。
【0026】
==業務サーバ10==
図2は、業務サーバ10のハードウェア構成を示す図である。
業務サーバ10は、CPU101、メモリ102、記憶装置103、通信インタフェース104、入力装置105、出力装置106を備えている。
【0027】
記憶装置103には、業務プログラム11や監視プログラム12などの、各種のプログラムやデータを記憶する。記憶装置103は、例えば、ハードディスクドライブやフラッシュメモリ、CD−ROMドライブなどである。
CPU101は、記憶装置103に記憶されている業務プログラム11や監視プログラム12などのプログラムをメモリ102に読み出して実行することにより各種の機能を実現する。
【0028】
通信インタフェース104は、通信ネットワーク40に接続するためのインタフェースである。通信インタフェース104は、例えば、イーサネット(登録商標)やフレームリレー網などに接続するためのアダプタや、電話回線網に接続するためのモデム、無線通信を行うための無線通信器などである。
【0029】
入力装置105は、利用者からデータの入力を受け付ける、例えばキーボードやマウス、タッチパネル、マイクロフォンなどである。出力装置106は、データを出力する、例えばディスプレイやプリンタなどである。
【0030】
図3は、業務サーバ10の機能ブロック図である。
業務サーバ10は、業務処理部111、設定データ受信部112、業務ログ監視部113、アクセス監視部114、監視ログ送信部115、ログ比較部116、ログハッシュ値送信部117、監視ログ削除要求受信部118、アラート通知受信部119、アラート表示部120、動作確認要求受信部121、動作状態送信部122、設定データ取得要求受信部123、設定データ送信部124、業務ログ記憶部151、監視ログ記憶部152、設定データ記憶部153を備えている。
【0031】
なお、上記業務処理部111は、業務サーバ10のCPU101が記憶装置103に記憶されている業務プログラム11をメモリ102に読み出して実行することにより実現され、設定データ受信部112、業務ログ監視部113、アクセス監視部114、監視ログ送信部115、ログ比較部116、ログハッシュ値送信部117、監視ログ削除要求受信部118、アラート通知受信部119、アラート表示部120、動作確認要求受信部121、動作状態送信部122、設定データ取得要求受信部123、および設定データ送信部124は、CPU101が記憶装置103に記憶されている監視プログラム12をメモリ102に読み出して実行することにより実現される。また、業務ログ記憶部151、監視ログ記憶部152、および設定データ記憶部153は、メモリ102や記憶装置103の記憶領域として実現される。
【0032】
業務処理部111は、各種の業務に関する情報処理を行う。また業務処理部111は、情報処理の結果を業務ログとして業務ログ記憶部151(本発明の実行ログ記憶部に該当する。)に登録する。なお、本実施形態では、管理者の業務サーバ10へのログインやログオフに関する処理(ログイン監視部)も業務処理部111により実現されるものとするが、ログインやログオフを監視するログイン監視部を別途設けるようにしてもよい。この場合、ログイン監視部は、例えば、オペレーティングシステムからのシグナルを受けて、あるいは、オペレーティングシステムが管理している、ログイン中のユーザの一覧表を監視して、管理者のログインやログオフを検出するようにすることができる。
【0033】
図4は、業務ログ記憶部151が記憶する業務ログの一例を示す図である。
業務ログ記憶部151に記憶される業務ログは、日時、ログレベル、プログラム、ユーザ、およびメッセージを含んでいる。なお、ログレベルは、業務ログの重要度を示し、プログラムは、業務ログを生成した業務プログラム11などのプログラムの名称を示し、ユーザは、プログラムを実行した管理者や一般ユーザのユーザ名である。本実施形態では、管理者のユーザ名は「root」であるものとする。
【0034】
監視ログ記憶部152は、業務ログのうち後述する条件にマッチするもの(以下、監視ログという。)を記憶する。図5は、監視ログ記憶部152に記憶される監視ログの構成例を示す図である。
監視ログ記憶部152に記憶される監視ログの構成は業務ログと同様であり、監視ログも、日時、ログレベル、プログラム、ユーザ、およびメッセージを含んでいる。
【0035】
設定データ記憶部153(本発明の条件記憶部に該当する。)は、監視プログラム12の設定が記述された設定データを記憶する。
図6は、設定データ記憶部153に記憶される設定データの一例を示す図である。同図に示すように、設定データは、監視ログ判定条件、機密情報判定条件、および監視プログラム用エリアを含んでいる。
【0036】
監視ログ判定条件は、監視ログとして選択すべき業務ログの条件である。後述するように、監視ログ判定条件を満たす業務ログは、監視ログとして監視ログ記憶部152に記憶されるとともに、業務監視サーバ20に送信される。
【0037】
機密情報判定条件は、個人情報や営業秘密情報などの機密情報が格納されているファイルのパスにマッチする条件である。後述するように、機密情報判定条件にマッチする文字列が業務ログに含まれている場合、機密情報に対するアクセスがあったとものして、その旨を示す監視ログが登録される。
【0038】
監視プログラム用エリアは、監視プログラム12や設定データなど、監視プログラム12の実行に必要なデータが格納されている場所を示す情報である。後述するように、監視プログラム用エリアに対するデータの書き込みがあった場合には、その旨を示す監視ログが登録される。
【0039】
なお、上述した業務ログ記憶部151、監視ログ記憶部152、および設定データ記憶部153は、業務サーバ10が備える記憶装置103やメモリ102の記憶領域として実現される。
【0040】
設定データ受信部112(本発明の設定データ受信部および条件登録部に該当する。)は、業務監視サーバ20から送信される設定データを受信し、受信した設定データを設定データ記憶部153に登録する。
【0041】
業務ログ監視部113(本発明の監視ログ決定部に該当する。)は、業務ログ記憶部151を監視し、新たな業務ログが追加されると、その業務ログを監視ログとして監視ログ記憶部152に登録する。図7は、業務ログ監視部113の処理の流れを示す図である。
【0042】
業務ログ監視部113は、業務ログ記憶部151に新たな業務ログが追加されると(S401)、追加された操作ログが、設定データの監視ログ判定条件にマッチするかどうかを判定する(S402)。
業務ログ監視部113は、追加された業務ログが監視ログ判定条件にマッチした場合(S402:YES)、その業務ログを監視ログとして監視ログ記憶部152に登録する(S403)。
また、業務ログ監視部113は、追加された業務ログに、設定データの情報判定条件にマッチする文字列が含まれている場合には(S404:YES)、現在日時、所定のログレベル(本実施形態では「WARN」とする。)、監視プログラム12の名称(本実施形態では「logmonitor」とする。)、監視プログラムを実行しているユーザ(本実施形態では「log」とする。)、および、機密情報へのアクセスがあった旨を示すメッセージ(本実施形態では、マッチした文字列に「へのアクセス」を連結した文字列とする。)を含む監視ログを生成し(S405)、生成した監視ログを監視ログ記憶部152に登録する。
【0043】
以上のようにして、業務ログ監視部113は、業務ログ記憶部151に記憶された業務ログのうち、設定データの監視ログ判定条件にマッチするもののみを抽出して、監視ログとして監視ログ記憶部152に登録することができる。
【0044】
業務ログには、例えば、ファイルのリスト表示やメモリの使用状況の表示を行うコマンドなど、監視対象とならないコマンドの実行結果に係るものも多く含まれるので、業務ログの全てを複製しなくても、不正操作となりうる可能性のあるもののみを監視ログとして複製することにより、管理者の不正操作を事後的に監査することが可能である。したがって、本実施形態の不正監視システムによれば、設定データとして、監視対象となる業務ログの条件を指定しておくことで、必要な業務ログのみを、改ざん検知のために二重化することができる。よって、ログの複製によるリソースの消費量を抑制し、効率的に不正操作の監視を行うことが可能となる。
【0045】
アクセス監視部114は、設定データの監視プログラム用エリアに対するデータの読み書きを監視する。アクセス監視部114は、例えば、オペレーティングシステムに対して監視プログラム用エリアが示す記憶領域へのアクセスの有無を問い合わせたり、オペレーティングシステムから、監視プログラム用エリアへのアクセスがあった旨のシグナルの通知を受けたりすることができる。アクセス監視部114は、監視プログラム用エリアに対して書き込みがあった場合、現在日時、「WARN」、「logmonitor」、「log」、および、監視プログラム用エリアへのアクセスがあった旨のメッセージ(例えば、「/opt/logmonitorへのアクセスがありました。」などである。)を含む監視ログを生成して、監視ログ記憶部152に登録する。これにより、監視プログラム12の設定に変更が加えられる可能性のあるアクセスに係る監視ログを監視ログ記憶部152に登録することができる。
【0046】
監視ログ送信部115は、監視ログ記憶部152に監視ログが追加された場合に、追加された監視ログを業務監視サーバ20および操作監視サーバ30に送信する。
ログ比較部116(本発明の、第1サーバが備える改ざん判定部に該当する。)は、業務ログ記憶部151に記録されている業務ログのうち、設定データの監視ログ判定条件を満たすものと、各業務ログに対応する監視ログとを比較して、相違がないか否かを判定する。
【0047】
ログハッシュ値送信部117(本発明の第1ハッシュ値算出部およびハッシュ値送信部に該当する。)は、管理者がログインしてからログオフするまでの監視ログを取得し、取得した監視ログに基づくハッシュ値(以下、ログハッシュ値という。)を算出し、算出したログハッシュ値を業務監視サーバ20に送信する。後述するように、業務監視サーバ20では、ログハッシュ値を用いて、業務サーバ10に記録された監視ログと、業務監視サーバ20に記録された監視ログとの整合性を検査する。
【0048】
具体的には、ログハッシュ値送信部117は、プログラムが「logoff」であり、ユーザが「root」であり、かつ、メッセージが「root logged off」である監視ログ(以下、ログオフログという。)が監視ログ記憶部152に登録されたことを契機として、監視ログ記憶部152に記憶されている監視ログのうち、ログオフログの日時(以下、ログオフ日時という。)よりも前の日時であり、プログラムが「login」であり、ユーザが「root」であり、かつ、メッセージが「root logged in」である監視ログのうち日時が最も新しいもの(以下、ログインログという。)を取得する。ログハッシュ値送信部117は、ログインログの日時(以下、ログイン日時という。)以後の日時であり、かつ、ログオフ日時以前の日時である監視ログを監視ログ記憶部152から取得し、取得した監視ログを日時順にソートして、ソートした監視ログに、例えば、MD5(Message Digest Algorithm 5)などの所定のハッシュ関数を適用してログハッシュ値を算出する。ログハッシュ値送信部117は、算出したログハッシュ値に、ログイン日時およびログオフ日時を付帯させて業務監視サーバ20に送信する。
【0049】
監視ログ削除要求受信部118(本発明の監視ログ削除要求受信部および監視ログ削除部に該当する。)は、監視ログを削除するように指示するコマンド(以下、監視ログ削除要求という。)を業務監視サーバ20から受信する。監視ログ削除要求には、開始日時および終了日時が含まれる。監視ログ削除要求受信部118は、監視ログ削除要求に含まれている開始日時から終了日時までの間の日時に対応する監視ログを監視ログ記憶部152から削除する。
【0050】
アラート通知受信部119は、業務監視サーバ20から送信される警告メッセージ((以下、アラート通知という。)を受信する。アラート通知は、不正な監視ログが発見された場合などに業務監視サーバ20から送信される。
アラート表示部120(本発明の改ざん報知部に該当する。)は、ログ比較部116が比較した業務ログと監視ログとに相違があった場合や、アラート通知受信部119がアラート通知を受信した場合に、警告メッセージを出力装置106に出力する。
動作確認要求受信部121は、業務監視サーバ20から送信される、監視プログラム12が実行されているかどうかを問合わせる要求(以下、動作確認要求という。)を受信する。
【0051】
動作状態送信部122は、動作確認要求に応じて、監視プログラム12の実行状況を取得し、監視プログラム12が実行されているかどうかを示す情報(以下、動作状態情報という。)を業務監視サーバ20に送信する。動作状態送信部122は、例えば、業務サーバ10で動作しているオペレーティングシステムに対して、監視プログラム12の実行状況を問い合わせることにより、監視プログラム12の実行状況を取得する。
【0052】
設定データ取得要求受信部123(本発明の条件取得要求送信部に該当する。)は、操作監視サーバ30から送信される、設定データを取得するためのコマンド(以下、設定データ取得要求という。本発明の条件取得要求に該当する。)を受信する。
設定データ送信部124(本発明の条件送信部に該当する。)は、設定データ取得要求に応じて、設定データ記憶部153に記憶されている設定データを読み出して、操作監視サーバ30に送信する。
【0053】
なお、上述した設定データ受信部112、業務ログ監視部113、アクセス監視部114、監視ログ送信部115、ログ比較部116、ログハッシュ値送信部117、監視ログ削除要求受信部118、アラート通知受信部119、アラート表示部120、動作確認要求受信部121、動作状態送信部122、設定データ取得要求受信部123、および設定データ送信部124は、業務サーバ10のCPU101が記憶装置103に記憶されている監視プログラム12をメモリ102に読み出して実行することにより実現される。上記各機能部は、上述した機能を実現する回路などのハードウェアにより実現されるようにしてもよい。
【0054】
==業務監視サーバ20==
図8は、業務監視サーバ20のハードウェア構成を示す図である。
業務監視サーバ20は、CPU201、メモリ202、記憶装置203、通信インタフェース204、入力装置205、出力装置206、ディスクインタフェース207、改ざん防止ハードディスク208を備えている。
【0055】
記憶装置203は、各種のプログラムやデータを記憶する、例えばハードディスクドライブやフラッシュメモリ、CD−ROMドライブなどである。記憶装置203には、監視制御プログラム21が記憶されている。監視制御プログラム21は、業務サーバ10の監視を行うためのプログラムである。CPU201は、記憶装置203に記憶されている監視制御プログラム21などのプログラムをメモリ202に読み出して実行することにより各種の機能を実現する。
【0056】
通信インタフェース204は、通信ネットワーク40に接続するためのインタフェースである。通信インタフェース204は、例えば、イーサネット(登録商標)やフレームリレー網などに接続するためのアダプタや、電話回線網に接続するためのモデム、無線通信を行うための無線通信器などである。
入力装置205は、利用者からデータの入力を受け付ける、例えばキーボードやマウス、タッチパネル、マイクロフォンなどである。出力装置206は、データを出力する、例えばディスプレイやプリンタなどである。
【0057】
改ざん防止ハードディスク208は、データを記憶する記憶装置であって、記憶するデータの改ざんを防止する機能を有するものである。改ざん防止ハードディスク208は、例えば、データの更新を行う代わりに、既存のデータとは異なる記憶領域にデータを追記し、データへのインデックスのみを更新することにより、記憶している全てのデータの更新履歴を記録するものである。なお、改ざん防止機能を有するハードディスクには、公知のものを利用することができる。
ディスクインタフェース207は、改ざん防止ハードディスク208に接続するためのインタフェースであり、例えば、SCSI、IDEなどの規約に従って、改ざん防止ハードディスク208に対するデータの読み書きを行う。
【0058】
図9は、業務監視サーバ20の機能ブロック図である。
業務監視サーバ20は、設定データ入力部211、設定データ送信部212、操作監視部213、操作ログ送信部214、監視ログ受信部215、ログハッシュ値受信部216、ログ改ざん判定部217、監視ログ削除要求送信部218、不正作業検出部219、動作確認要求送信部220、動作状態受信部221、アラート通知送信部222、アラート出力部223、動作確認要求受信部224、動作状態送信部225、操作ログ記憶部251、監視エリア記憶部252、監視ログ記憶部253、作業計画記憶部254を備えている。
【0059】
上記設定データ入力部211、設定データ送信部212、操作監視部213、操作ログ送信部214、監視ログ受信部215、ログハッシュ値受信部216、ログ改ざん判定部217、監視ログ削除要求送信部218、不正作業検出部219、動作確認要求送信部220、動作状態受信部221、アラート通知送信部222、アラート出力部223、動作確認要求受信部224、および動作状態送信部225は、業務監視サーバ20のCPU201が、記憶装置203に記憶されている監視制御プログラム21をメモリ202に読み出して実行することにより実現される。
【0060】
上記操作ログ記憶部251および監視ログ記憶部253は、改ざん防止ハードディスク208の記憶領域として実現される。
上記監視エリア記憶部252および作業計画記憶部254は、記憶装置203およびメモリ202の記憶領域として実現される。なお、監視エリア記憶部252および作業計画記憶部254は、改ざん防止ハードディスク208の記憶領域として実現するようにしてもよい。
操作ログ記憶部251は、業務監視サーバ20の操作に関するログ(以下、操作ログという。)を記憶する。
【0061】
図10は、操作ログ記憶部251に記憶される操作ログの構成例を示す図である。
操作ログは、操作が行われた日時、行われた操作の名称、および操作の内容を含んでいる。操作の内容は、操作により異なる。例えば、操作が「設定情報更新」である場合、内容は設定データの内容であり、操作ログの操作が「アクセス」である場合、操作ログの内容はアクセスされたファイルのファイル名である。
【0062】
設定データ入力部211は、業務サーバ10において実行される監視プログラムの設定データの入力を受け付ける。設定データ入力部211は、例えば、キーボードやマウスなどの入力装置205から設定データの内容の入力を受け付けるようにしてもよいし、他のコンピュータから設定データを受信するようにしてもよい。
設定データ送信部212は、設定データ入力部211が受け付けた設定データを業務サーバ10に送信するとともに、現在の日時、「設定情報更新」、設定データの内容を含む操作ログを生成して、操作ログ記憶部251に登録する。
【0063】
監視エリア記憶部252は、操作ログ記憶部251が実現される記憶領域を示す情報(以下、監視先情報という。)を記憶する。監視先情報は、例えば、操作ログを含むファイルが格納されるディレクトリを示すパスなどである。
【0064】
操作監視部213は、管理者の業務監視サーバ20へのログインおよびログアウト、並びに、監視エリア記憶部252が記憶している監視先情報が示す記憶領域(以下、操作監視領域という。)に対するアクセスを監視する。操作監視部213は、管理者のログインがあった場合、現在日時および「ログイン」を含む操作ログを生成して、操作ログ記憶部251に登録し、管理者のログアウトがあった場合、現在日時および「ログアウト」を含む操作ログを生成して操作ログ記憶部251に登録する。操作監視部213は、操作監視領域にアクセスがあった場合、現在日時、「アクセス」、およびアクセスされたファイルを示すファイル名を含む操作ログを生成して操作ログ記憶部251に登録する。
【0065】
操作ログ送信部214は、操作ログ記憶部251に操作ログが登録されると、登録された操作ログを操作監視サーバ30に送信する。
監視ログ受信部215は、業務サーバ10から送信される監視ログを受信する。監視ログ受信部215は、受信した監視ログを監視ログ記憶部253に記憶する。監視ログ記憶部253は、上述した業務サーバ10の監視ログ記憶部152と同様の構成である。
ログハッシュ値受信部216は、業務サーバ10から送信されるログハッシュ値を受信する。上述したように、ログハッシュ値には、ログイン日時とログオフ日時とが付帯される。
【0066】
ログ改ざん判定部217(本発明の改ざん判定部、および第2ハッシュ値算出部に該当する。)は、監視ログ記憶部253から、日時がログハッシュ値に付帯されているログイン日時以後であり、かつ、日時がログハッシュ値に付帯されているログオフ日時以前である監視ログを、後述する動作状態受信部221が登録したものを除いて取得し、取得した監視ログを日時順にソートして、ソートした監視ログに所定のハッシュ関数を適用してハッシュ値を算出する。ログ改ざん判定部217は、算出したハッシュ値と、ログハッシュ値受信部216が受信したログハッシュ値とを比較して、監視ログに改ざんがあるかどうか判定する。また、ログ改ざん判定部217は、判定結果を監視ログとして監視ログ記憶部253も登録する。具体的には、現在日時、「INFO」、「logmonitor」、「root」、判定結果を表す「監査ログの改ざんあり」または「監査ログの改ざんなし」のメッセージを含む監視ログを生成して監視ログ記憶部253に登録する。
【0067】
監視ログ削除要求送信部218は、監視ログに改ざんがないと判定された場合に、ログイン日時およびログオフ日時を設定した管理ログ削除要求を業務サーバ10に送信することにより、業務サーバ10において、ログイン日時からログオフ日時までの監視ログが削除されるようにする。これにより、業務サーバ10において監視ログの記憶リソースを節約することができる。なお、監視ログ削除要求に応じて業務サーバ10から削除の結果を応答するようにしてもよい。この場合、監視ログ削除要求送信部218は、業務サーバ10からの応答をメッセージとした監視ログを生成して監視ログ記憶部253に登録する。
【0068】
作業計画記憶部254は、業務サーバ10において管理者が実行することが予定されている作業に関する情報(以下、作業計画という。)を記憶する。管理者は、例えば、サーバのディスク取替に伴うデータ移行作業において、(1)現行ディスクのシステム情報バックアップ、(2)新ディスクの環境整備(ボリュームグループの作成など)、(3)現行ディスクのファイルリスト作成、(4)データ移行(現行ディスクから新ディスク)、(5)新ディスクのファイルリスト作成、(6)現行・新ディスクのファイルシステム情報比較、(7)新ディスクのシステム情報バックアップなどの作業を行う。業務サーバ10では、これらの作業それぞれに係るプログラムが実行される。作業計画記憶部254には、業務サーバ10において実行されうるプログラムが予め登録される。
【0069】
図11は、作業計画記憶部254に記憶される作業計画の構成例を示す図である。同図に示すように、作業計画は、作業計画の識別情報(以下、計画IDという。)に対応付けて、管理者により実行される予定のプログラムを含む。後述するように、作業計画記憶部254に登録されるプログラム以外のプログラムが実行された場合、計画外のプログラムが実行された旨を示す警告が出力される。
不正作業検出部219は、作業計画記憶部254に記憶されている作業計画に沿わないプログラムに関する監視ログが記録されているかどうかにより、管理者による不正な作業が行われたかどうかを判定する。
【0070】
図12は、不正作業検出部219による不正作業の検出処理の流れを示す図である。
不正作業検出部219は、監視ログ記憶部253から、ログハッシュ値に付帯されているログイン日時からログオフ日時までの日時に対応する監視ログのうち、ユーザが「root」であり、ログレベルが所定値(本実施形態では「WARN」または「ERROR」とする。)であるものを監視ログ記憶部253から読み出し(S501)、読み出した監視ログを日時順にソートして監視ログリストとする(S502)。
【0071】
不正作業検出部219は、カウンタ変数Lに1を設定する(S504)。
不正作業検出部219は、監視ログリストにL番目の監視ログが存在する間以下の処理を行う。
不正作業検出部219は、監視ログリストのL番目の監視ログを、作業対象の監視ログ(以下、対象ログという。)とする(S505)。不正作業検出部219は、作業計画記憶部254から、プログラムが対象ログのプログラムに一致する作業計画を検索する(S506)。
不正作業検出部219は、上記検索において作業計画が見つからなかった場合には(S507:NO)、不正作業があったものと判定して(S508)、処理を終了する。
【0072】
一方、不正作業検出部219は、プログラムが対象ログのプログラムに一致する作業計画が見つかった場合には(S507:YES)、Lをインクリメントし(S510)、S505からの処理を繰り返す。
不正作業検出部219は、監視ログリストの全ての監視ログについて上記の処理を繰り返した後、すなわち全ての監視ログに対応する作業計画が存在した場合、不正な作業がなかったと判定する(S511)。
以上のようにして、不正作業検出部219は不正作業があったかどうかを判定する。
【0073】
動作確認要求送信部220は、定期的に、業務サーバ10に対して、動作確認要求を送信する。
動作状態受信部221(本発明の動作状態受信部および動作監視部に該当する。)は、動作確認要求に応じて業務サーバ10から送信される動作状態情報を受信する。また、動作状態受信部221は、監視プログラム12が実行されていないことを示す動作状態情報を受信した場合には、その旨を示すメッセージを含む監視ログを生成して監視ログ記憶部253に登録する。例えば、動作状態受信部221は、監視プログラム12が実行されていない場合、現在日時、「WARN」、「logmonitor」、「root」、「プログラムが実行されていません。」が含まれる監視ログを監視ログ記憶部253に登録する。
【0074】
アラート通知送信部222は、ログ改ざん判定部217により監視ログに改ざんがあると判定された場合、不正作業検出部219により不正な作業があったと判定された場合、および、動作確認要求送信部220が動作確認要求を送信してから所定の時間内に動作状態受信部221が動作状態情報を受信できなかった場合などに、その旨を示すアラート通知を業務サーバ10に送信する。なお、アラート通知送信部222がアラート通知を業務サーバ10に送信する場合は、管理者が設定できるものとする。
【0075】
アラート出力部223は、上記アラート通知に応じた警告メッセージを出力装置206に出力する。なお、所定の電子メールアドレスをメモリ202や記憶装置203、改ざん防止ハードディスク208などに記憶しておき、警告メッセージを電子メールとして上記所定の電子メールアドレスに送信するようにしてもよい。なお、業務監視サーバ20が他のシステムと通信可能に接続されている場合、アラート出力部223は、接続された他のシステムに対してアラート通知を送信するようにしてもよい。
【0076】
動作確認要求受信部224は、操作監視サーバ30から送信される、監視制御プログラム21が実行されているかどうかを問い合わせる動作確認要求を受信する。
動作状態送信部225は、動作確認要求に応じて、監視制御プログラム21の実行状況を取得し、監視制御プログラム21が実行されているかどうかを示す動作状態情報を操作監視サーバ30に応答する。動作状態送信部225は、例えば、業務監視サーバ20で動作しているオペレーティングシステムに対して、監視制御プログラム21の実行状況を問い合わせることにより、監視制御プログラム21の実行状況を取得する。
【0077】
==操作監視サーバ30==
図13は、操作監視サーバ30のハードウェア構成を示す図である。
操作監視サーバ30は、上述した業務監視サーバ20と同様の構成であり、CPU301、メモリ302、記憶装置303、通信インタフェース304、入力装置305、出力装置306、ディスクインタフェース307、改ざん防止ハードディスク308を備えている。
【0078】
記憶装置303は、各種のプログラムやデータを記憶する、例えばハードディスクドライブやフラッシュメモリ、CD−ROMドライブなどである。記憶装置303には、操作監視制御プログラム31が記憶されている。操作監視制御プログラム31は、業務監視サーバ20における操作を監視するためのプログラムである。CPU301は、記憶装置303に記憶されている操作監視制御プログラム31などのプログラムをメモリ302に読み出して実行することにより各種の機能を実現する。
【0079】
通信インタフェース304は、通信ネットワーク40に接続するためのインタフェースである。通信インタフェース304は、例えば、イーサネット(登録商標)やフレームリレー網などに接続するためのアダプタや、電話回線網に接続するためのモデム、無線通信を行うための無線通信器などである。
【0080】
入力装置305は、利用者からデータの入力を受け付ける、例えばキーボードやマウス、タッチパネル、マイクロフォンなどである。出力装置306は、データを出力する、例えばディスプレイやプリンタなどである。
【0081】
改ざん防止ハードディスク308は、データを記憶する記憶装置であって、記憶するデータの改ざんを防止する機能を有するものである。改ざん防止ハードディスク308には、上述の業務監視サーバ20と同様に、公知のものを利用することができる。
【0082】
ディスクインタフェース307は、改ざん防止ハードディスク308に接続するためのインタフェースであり、例えば、SCSI、IDEなどの規約に従って、改ざん防止ハードディスク308に対するデータの読み書きを行う。
【0083】
図14は、操作監視サーバ30の機能ブロック図である。
操作監視サーバ30は、操作ログ受信部311、設定データ取得要求送信部312、設定データ受信部313、操作ログ登録部314、監視ログ受信部315、動作確認要求送信部316、動作状態受信部317、アラート出力部318、操作ログ記憶部351、監視ログ記憶部352を備えている。
【0084】
上記操作ログ受信部311、設定データ取得要求送信部312、設定データ受信部313、操作ログ登録部314、監視ログ受信部315、動作確認要求送信部316、動作状態受信部317、およびアラート出力部318は、操作監視サーバ30が備えるCPU301が記憶装置303に記憶されている操作監視制御プログラム31を実行することにより実現される。また、操作ログ記憶部351は、改ざん防止ハードディスク308の記憶領域として実現される。
【0085】
操作ログ記憶部351は、上述の業務監視サーバ20の操作ログ記憶部251と同様の構成であり、監視ログ記憶部352は、上述の業務サーバ10の監視ログ記憶部152および業務監視サーバ20の監視ログ記憶部253と同様の構成である。
【0086】
操作ログ受信部311は、業務監視サーバ20から送信される操作ログを受信する。
設定データ取得要求送信部312(本発明の条件取得要求送信部に該当する。)は、操作ログ受信部311が受信した操作ログの操作欄に「設定情報更新」が設定されている場合、設定データ取得要求を業務サーバ10に送信する。なお、設定データ取得要求送信部312は、定期的に設定データ取得要求を業務サーバ10に送信する。
設定データ受信部313(本発明の条件受信部に該当する。)は、設定データ取得要求に応じて業務サーバ10から送信される設定データを受信する。
操作ログ登録部314は、操作ログ受信部311が受信した操作ログを操作ログ記憶部351に登録する。
【0087】
また、操作ログ登録部314は、設定データ受信部313が業務サーバ10から設定データを受信した場合、操作欄が「設定情報更新」である操作ログのうち最も日時が新しいものを操作ログ記憶部351から読み出し、読み出した操作ログの内容欄に設定されているデータと、受信した設定データとを比較して、業務サーバ10における設定データへの改ざんの有無を判定する。操作ログ登録部314は、改ざんが有ると判定した場合には、現在日時、不正な設定情報を検出した旨を示す文字列(例えば、「不正な設定情報の更新」)、受信した設定データを含む操作ログを生成して操作ログ記憶部351に登録する。これにより、業務サーバ10において監視制御プログラム21の設定に用いられている設定データと、業務監視サーバ20において入力した設定データとが異なることを記録しておくことができる。したがって、例えば業務サーバ10の管理者が設定データを不正に書き換えるような不正な操作を操作ログとして記録しておくことができる。
【0088】
監視ログ受信部315は、業務サーバ10から送信される監視ログを監視ログ記憶部352に登録する。これにより、監視ログは、業務サーバ10、業務監視サーバ20、および操作監視サーバ30の3箇所に記録されることになる。したがって、より多くの場所に監視ログの複製を格納することができるので、監視ログが改ざんされることをより困難にすることができる。よって、例えば、業務サーバ10の管理者と業務監視サーバ20の管理者とが結託して監視ログを改ざんした場合でも、操作監視サーバ30の監視ログとの比較により改ざんを検出することができる。
【0089】
動作確認要求送信部316は、定期的に、業務監視サーバ20に対して動作確認要求を送信する。
動作状態受信部317は、動作確認要求に応じて業務監視サーバ20から送信される動作状態情報を受信する。動作状態受信部317は、監視制御プログラム21が実行されていないことを示す動作状態情報を受信した場合には、その旨を示す内容を含む操作ログを生成して操作ログ記憶部351に登録する。例えば、動作状態受信部317は、現在日時、「プログラムの監視」、「プログラムが実行されていません。」を含む操作ログを操作ログ記憶部351に登録する。
【0090】
アラート出力部318は、操作ログ受信部311が業務監視サーバ20から受信した操作ログの内容欄に設定されたデータと、設定データ受信部313が業務サーバ10から受信した設定データとが一致しない場合や、動作確認要求送信部316が業務監視サーバ20に動作確認要求を送信してから、所定の時間内に動作状態受信部317が動作状態情報を受信できなかった場合などに、その旨を示す警告メッセージを出力装置306に出力する。なお、例えば、予め所定の電子メールアドレスをメモリ302や記憶装置303などに記憶しておき、アラート出力部318は、警告メッセージを電子メールとして、上記所定の電子メールアドレスに対して送信するようにしてもよい。
【0091】
==システムの処理==
図15は、本実施形態の不正監視システムにおける処理の概略を示す図である。
業務監視サーバ20は、設定データの入力を受け付けると(S701)、設定データを業務サーバ10に送信する(S702)とともに、操作監視サーバ30にも操作ログとして設定データを送信する(S703)。
【0092】
操作監視サーバ30は、業務監視サーバ20から設定データを含む操作ログを受信すると、設定データ取得要求を業務サーバ10に送信する(S704)。操作監視サーバ30は、業務サーバ10から応答される設定データを受信し(S705)、業務サーバ10から受信した設定データと、業務監視サーバ20から受信した操作ログに含まれる設定データとが一致するかどうかにより、業務サーバ10において設定データが改ざんされていないかどうかを判定する(S706)。また、操作監視サーバ30は、定期的に設定データ取得要求を業務サーバ10に送信して、設定データの改ざんの有無を判定する(S704〜S706)。
【0093】
管理者が業務サーバ10にログインすると(S711)、業務サーバ10は、管理者の操作に応じて記録される業務ログから監視ログを抽出し、抽出した監視ログを業務監視サーバ20に送信するとともに(S712)、操作監視サーバ30にも送信する(S713)。
【0094】
業務監視サーバ20は、業務サーバ10において監視プログラム12が実行されているかどうかを確認する。業務監視サーバ20は、定期的に動作確認要求を業務サーバ10に送信し(S721)、業務サーバ10から動作確認要求に対して応答される動作状態情報を受信する(S722)。業務監視サーバ20は、動作状態情報に基づいて、業務サーバ10で監視プログラム12が実行されているかどうかを判定する(S723)。監視プログラム12が実行されていない場合には、その旨を示すメッセージを含む監視ログが監視ログ記憶部253に登録される。
【0095】
監視プログラム12が実行されていない場合には、業務ログや監視ログなどが改ざんされても業務監視サーバ20に監視ログが送信されない。したがって、業務監視サーバ20は、監視プログラム12が実行されていない場合には、業務サーバ10において業務ログや監視ログの改ざんの可能性があると判断することができる。
【0096】
一方、操作監視サーバ30も、業務監視サーバ20において監視制御プログラム21が実行されているかどうかを確認する。操作監視サーバ30は、定期的に動作確認要求を業務監視サーバ20に送信し(S731)、動作確認要求に応じて業務監視サーバ20から応答される動作状態情報を受信する(S732)。操作監視サーバ30は、動作状態情報に基づいて、業務監視サーバ20で監視制御プログラム21が実行されているかどうかを判定する(S733)。監視制御プログラム21が実行されていない場合には、その旨の内容を含む操作ログが操作ログ記憶部351に登録される。
【0097】
業務サーバ10から管理者がログオフをすると(S741)、業務サーバ10は、監視ログを業務監視サーバ20に送信するとともに(S742)、操作監視サーバ30にも送信する(S743)。業務サーバ10は、ログイン日時からログオフ日時までの監視ログについてのハッシュ値(ログハッシュ値)を算出して、算出したログハッシュ値にログイン日時およびログオフ日時を付帯させて業務監視サーバ20に送信する(S744)。
【0098】
業務監視サーバ20は、業務サーバ10から送信されるログハッシュ値を受信すると、監視ログ記憶部253に登録されている監視ログのうち、ログハッシュ値に付帯されているログイン日時からログオフ日時までの日時に対応するもののハッシュ値を算出して、算出したハッシュ値と、業務サーバ10から受信したログハッシュ値とを比較して、業務サーバ10において監視ログに対する改ざんがなかったかどうかを判定する(S745)。
【0099】
業務監視サーバ20は、監視ログに対する改ざんがなかったと判定した場合には、ログイン日時およびログオフ日時を付帯させた監視ログ削除要求を業務サーバ10に送信する(S746)。業務サーバ10は、監視ログ削除要求に応じて、ログイン日時からログオフ日時までの監視ログを監視ログ記憶部152から削除する(S747)。
一方、業務監視サーバ20は、作業計画に基づいて、不正な作業の有無を判定する(S748)。
【0100】
以上説明したように、本実施形態の不正監視システムによれば、業務サーバ10に記録される業務ログのうち条件に見合うもののみが、業務サーバ10において監視ログとして二重化されるとともに、業務サーバ10の管理者とは異なる管理者が管理する業務監視サーバ20にも記録される。したがって、監視対象の業務ログが改ざんされた場合にも、業務サーバ10において監視ログと比較することにより改ざんを検出することが可能であり、監視ログから業務ログを復旧することもできる。また、業務監視サーバ20は、業務サーバ10とは異なる管理者により管理されるので、業務サーバ10の管理者が業務ログと監視ログとの両方を改ざんした場合でも、業務監視サーバ20に記録される監視ログと比較することにより改ざんを検出し、業務監視サーバ20の監視ログから業務ログを復旧することができる。このように、本実施形態の不正監視システムによれば、業務サーバ10の業務ログを確実に監査することができる。
【0101】
また、本実施形態の不正監視システムでは、改ざんが無いと判定された監視ログについては、業務サーバ10の監視ログ記憶部152から削除される。したがって、監視ログは業務監視サーバ20のみで管理されることになり、監視ログの記録に係るリソースを抑制することができる。
【0102】
また、本実施形態では、業務サーバ10に記録されている監視ログと、業務監視サーバ20に記録されている監視ログとが一致するかどうかは、ログハッシュ値の比較により行われる。したがって、業務サーバ10から監視ログを業務監視サーバ20に送信することなく、監視ログの同一性を判定することができるので、大量の監視ログを送信するために係る時間を低減し、通信ネットワーク40の通信負荷を低減することができるとともに、迅速な比較処理を実現することができる。
【0103】
また、本実施形態の不正監視システムでは、ログイン日時からログオフ日時までの監視ログのみを監視対象としている。これにより、管理者の操作に関する業務ログのみを検査することができるので、全てのログを検査の対象としなくてもよく、処理効率を向上することができる。
【0104】
また、本実施形態の不正監視システムでは、業務サーバ10において監視プログラム12が実行されていることを、業務監視サーバ20が監視している。したがって、業務サーバ10において、管理者が、監視プログラム12の実行を停止し、業務監視サーバ20に監視ログが送信されないようにした場合にも、それを検知することができる。よって、監視ログが確実に業務サーバ10から業務監視サーバ20に送信されるようにすることができる。
【0105】
また、管理者が業務サーバ10からログオフした後、業務サーバ10においても、監視ログと、対応する業務ログとの比較により、業務ログに改ざんがなされていないかどうかを判定している。したがって、業務監視サーバ20のみならず、業務サーバ10においても改ざんを検知することで、より改ざんの検出を確実に行うことができる。
【0106】
また、本実施形態の不正監視システムでは、監視ログは、業務サーバ10、業務監視サーバ20、および操作監視サーバ30の3箇所に多重化される。したがって、業務サーバ10の管理者と、業務監視サーバ20の管理者とが結託して監視ログを改ざんした場合でも、操作監視サーバ30に記録される監視ログを用いて業務ログの監査を行うことができる。
【0107】
また、本実施形態の不正監視システムでは、操作監視サーバ30が、業務監視サーバ20が業務サーバ10に送信した設定データと、業務サーバ10が使用している設定データとの整合性を検査している。したがって、業務サーバ10において、業務監視サーバ20に入力された条件と同じ条件を用いて監視ログの抽出が行われているかどうかを確認することができる。したがって、業務サーバ10の管理者が、設定データを改ざんして、不正操作に係る業務ログが監視ログとして抽出されないような設定を行った場合にも、それを検知することができる。よって、監視対象となる業務ログを確実に監視ログとして抽出するようにすることができる。これにより信頼性の高い監視ログを記録することができる。
【0108】
なお、本実施形態では、業務サーバ10は1台であるものとしたが、複数の業務サーバ10を含んだ構成としてもよい。また、業務サーバ10および業務監視サーバ20のみで不正監視システムを構成するようにしてもよい。
【0109】
また、本実施形態では、業務ログが業務サーバ10に記録されていることを前提としたが、例えば、シスログなどにより、他のコンピュータで業務ログを記録するようにしてもよい。この場合、業務ログを記録しているコンピュータが、設定データに基づいて監視ログも記録するとともに、監視ログを業務監視サーバ20および操作監視サーバ30に送信するようにする。
【0110】
また、本実施形態では、設定データに対する改ざんの検出は、操作監視サーバ30が行うものとしたが、業務監視サーバ20が行うようにしてもよいし、業務監視サーバ20および操作監視サーバ30の両方で行うようにしてもよい。この場合、業務監視サーバ20が設定データ取得要求を業務サーバ10に送信し、業務サーバ10から応答される設定データと、業務監視サーバ20に入力された設定データとを比較するようにする。
【0111】
また、本実施形態では、業務サーバ10に記録されている監視ログと、業務監視サーバ20に記録されている監視ログとを比較するために、ログハッシュ値を用いるものとしたが、これに限らず、例えば、業務サーバ10に記録されている監視ログを業務サーバ10から業務監視サーバ20に送信するようにして、業務監視サーバ20が、業務サーバ10から受信した監視ログと、監視ログ記憶部253に記憶している監視ログとを比較して、改ざんの有無を検知するようにしてもよい。
【0112】
また、業務サーバ10、業務監視サーバ20、および操作監視サーバ30において記録される業務ログ、監視ログおよび操作ログは、管理者が指定する日時やプログラム名、実行されたサーバの名称など各種の条件に基づいて検索可能である。業務サーバ10、業務監視サーバ20および操作監視サーバ30は、検索した業務ログ、監視ログおよび操作ログは、出力装置に出力し、またCSV(Comma Separated Values)ファイルやテキストファイルなどの形式で、記憶装置に格納するようにすることができる。
【0113】
以上、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【図面の簡単な説明】
【0114】
【図1】本実施形態の不正監視システムの全体構成を示す図である。
【図2】業務サーバ10のハードウェア構成を示す図である。
【図3】業務サーバ10の機能ブロック図である。
【図4】業務ログ記憶部151が記憶する業務ログの一例を示す図である。
【図5】監視ログ記憶部152に記憶される監視ログの構成例を示す図である。
【図6】設定データ記憶部153に記憶される設定データの一例を示す図である。
【図7】業務ログ監視部113の処理の流れを示す図である。
【図8】業務監視サーバ20のハードウェア構成を示す図である。
【図9】業務監視サーバ20の機能ブロック図である。
【図10】操作ログ記憶部251に記憶される操作ログの構成例を示す図である。
【図11】作業計画記憶部254に記憶される作業計画の構成例を示す図である。
【図12】不正作業検出部219による不正作業の検出処理の流れを示す図である。
【図13】操作監視サーバ30のハードウェア構成を示す図である。
【図14】操作監視サーバ30の機能ブロック図である。
【図15】本実施形態の不正監視システムにおける処理の概略を示す図である。
【符号の説明】
【0115】
10 業務サーバ 11 業務プログラム
12 監視プログラム 20 業務監視サーバ
21 監視制御プログラム 30 操作監視サーバ
31 操作監視制御プログラム 40 通信ネットワーク
101 CPU 102 メモリ
103 記憶装置 104 通信インタフェース
105 入力装置 106 出力装置
111 業務処理部 112 設定データ受信部
113 業務ログ監視部 114 アクセス監視部
115 監視ログ送信部 116 ログ比較部
117 ログハッシュ値送信部 118 監視ログ削除要求受信部
119 アラート通知受信部 120 アラート表示部
121 動作確認要求受信部 122 動作状態送信部
123 設定データ取得要求受信部 124 設定データ送信部
151 業務ログ記憶部 152 監視ログ記憶部
153 設定データ記憶部 201 CPU
202 メモリ 203 記憶装置
204 通信インタフェース 205 入力装置
206 出力装置 207 ディスクインタフェース
208 改ざん防止ハードディスク 211 設定データ入力部
212 設定データ送信部 213 操作監視部
214 操作ログ送信部 215 監視ログ受信部
216 ログハッシュ値受信部 217 ログ改ざん判定部
218 監視ログ削除要求送信部 219 不正作業検出部
220 動作確認要求送信部 221 動作状態受信部
222 アラート通知送信部 223 アラート出力部
224 動作確認要求受信部 225 動作状態送信部
251 操作ログ記憶部 252 監視エリア記憶部
253 監視ログ記憶部 254 作業計画記憶部
301 CPU 302 メモリ
303 記憶装置 304 通信インタフェース
305 入力装置 306 出力装置
307 ディスクインタフェース 308 改ざん防止ハードディスク
311 操作ログ受信部 312 設定データ取得要求送信部
313 設定データ受信部 314 操作ログ登録部
315 監視ログ受信部 316 動作確認要求送信部
317 動作状態受信部 318 アラート出力部
351 操作ログ記憶部 352 監視ログ記憶部

【特許請求の範囲】
【請求項1】
第1サーバと、前記第1サーバに通信可能に接続される、前記第1サーバを管理する管理者とは異なる管理者により管理される第2サーバと、を含んで構成され、
前記第1サーバは、
当該第1サーバによる処理の実行履歴を表す実行ログを記憶する実行ログ記憶部と、
監視対象となる前記実行ログを特定するための条件を記憶する条件記憶部と、
前記実行ログ記憶部を監視し、前記条件を満たす前記実行ログが登録された場合に、当該実行ログを監視ログとして決定する監視ログ決定部と、
前記監視ログを記憶する第1監視ログ記憶部と、
前記監視ログを前記第2サーバに送信する監視ログ送信部と、
を備え、
前記第2サーバは、
前記第1サーバから送信される監視ログを受信する監視ログ受信部と、
前記監視ログを記憶する第2監視ログ記憶部と、
前記第1サーバの前記第1監視ログ記憶部に記録されている前記監視ログと当該第2サーバの前記第2監視ログ記憶部に記憶されている前記監視ログとが一致するかどうかにより、前記監視ログに対する改ざんの有無を判定する改ざん判定部と、
を備えることを特徴とするログ監視システム。
【請求項2】
請求項1に記載のログ監視システムであって、
前記第2サーバは、前記改ざん判定部により前記改ざんが無いと判定された場合に、前記監視ログを削除するように指示するコマンドである監視ログ削除要求を送信する監視ログ削除要求送信部を備え、
前記第1サーバは、
前記第2サーバから送信される、前記監視ログ削除要求を受信する監視ログ削除要求受信部と、
前記監視ログ削除要求に応じて前記監視ログ記憶部に記憶されている前記監視ログを削除する監視ログ削除部と、
を備えることを特徴とするログ監視システム。
【請求項3】
請求項1に記載のログ監視システムであって、
前記第1サーバは、
前記第1監視ログ記憶部に記憶されている前記監視ログ全体に所定のハッシュ関数を適用して第1のハッシュ値を算出する第1ハッシュ値算出部と、
前記第1のハッシュ値を前記第2サーバに送信するハッシュ値送信部と、
を備え、
前記第2サーバは、
前記第1のハッシュ値を受信するハッシュ値受信部と、
前記第2監視ログ記憶部に記憶されている前記監視ログ全体に前記所定のハッシュ関数を適用して第2のハッシュ値を算出する第2ハッシュ値算出部と、
を備え、
前記改ざん判定部は、前記第1および第2のハッシュ値を比較して、前記改ざんの有無を判定すること、
を特徴とするログ監視システム。
【請求項4】
請求項3に記載のログ監視システムであって、
前記実行ログには、前記コマンドが実行された日時が含まれており、
前記第1サーバは、
前記管理者が前記第1サーバにログインした日時であるログイン日時、および前記管理者が前記第1サーバからログオフした日時であるログオフ日時を取得するログイン監視部と、
前記第1ハッシュ値算出部は、前記第1監視ログ記憶部に記憶されている前記監視ログのうち、前記日時が前記ログイン日時以後であり、かつ、前記日時が前記ログオフ日時以前のものについて前記第1のハッシュ値を算出し、
前記ハッシュ値送信部は、前記第1のハッシュ値に前記ログイン日時および前記ログオフ日時を付帯させて送信し、
前記第2ハッシュ値算出部は、前記第2監視ログ記憶部に記憶されている前記監視ログのうち、前記日時が前記第1のハッシュ値に付帯されている前記ログイン日時以後であり、かつ、前記日時が前記第1のハッシュ値に付帯されている前記ログオフ日時以前である前記監視ログについて前記第2のハッシュ値を算出すること、
を特徴とするログ監視システム。
【請求項5】
請求項1に記載のログ監視システムであって、
前記第1サーバは、CPUと監視プログラムを記憶するメモリとを備え、
前記監視ログ決定部および前記監視ログ送信部は、前記CPUが前記監視プログラムを実行することにより実現され、
前記第2サーバは、前記第1サーバにおいて前記監視プログラムが動作しているかどうかを問い合わせるコマンドである動作確認要求を前記第1サーバに送信する動作確認要求送信部を備え、
前記第1サーバは、
前記動作確認要求を受信する動作確認要求受信部と、
前記監視プログラムが実行されているか否かを示す動作状態情報を前記第2サーバに送信する動作状態送信部と、
を備え、
前記第2サーバは、
前記第1サーバから送信される前記動作状態情報を受信する動作状態受信部と、
前記動作状態情報が、前記監視プログラムが実行されていないことを示している場合に、その旨を示すメッセージを含む前記監視ログを生成して前記第2監視ログ記憶部に登録する動作監視部と、
を備えることを特徴とするログ監視システム。
【請求項6】
請求項1に記載のログ監視システムであって、
前記第1サーバは、
前記第1監視ログ記憶部に記憶されている前記監視ログと、前記実行ログ記憶部に記憶されている、前記監視ログに対応する前記実行ログとの間に相違があるか否かにより前記実行ログに対する改ざんの有無を判定する改ざん判定部と、
前記改ざん判定部により前記改ざんが有ると判定された場合に、その旨を報知する改ざん報知部と、
を備えることを特徴とするログ監視システム。
【請求項7】
請求項1に記載のログ監視システムであって、
前記第1サーバおよび前記第2サーバのそれぞれと通信可能に接続される第3サーバを含み、
前記第1サーバの前記監視ログ送信部は、前記監視ログを前記第2サーバに送信するとともに、前記第3サーバにも送信し、
前記第3サーバは、
前記第1サーバから送信される前記監視ログを受信する監視ログ受信部と、
前記監視ログを記憶する第3監視ログ記憶部と、
を備えることを特徴とするログ監視システム。
【請求項8】
請求項1に記載のログ監視システムであって、
前記第1サーバおよび前記第2サーバのそれぞれと通信可能に接続される第3サーバを含み、
前記第2サーバは、
前記条件を含む設定データの入力を受け付ける設定データ入力部と、
前記設定データを、前記第1サーバおよび前記第3サーバのそれぞれに送信する設定データ送信部と、
を備え、
前記第3サーバは、
前記第2サーバから送信される前記設定データを受信する設定データ受信部と、
前記第1サーバにおいて記憶されている前記条件を取得するためのコマンドである条件取得要求を前記第1サーバに送信する条件取得要求送信部と、
を備え、
前記第1サーバは、
前記第2サーバから送信される前記設定データを受信する設定データ受信部と、
前記設定データに含まれている前記条件を前記条件記憶部に登録する条件登録部と、
前記第3サーバから送信される前記条件取得要求を受信する条件取得要求受信部と、
前記条件取得要求に応じて、前記条件記憶部に記憶されている前記条件を前記第3サーバに送信する条件送信部と、
を備え、
前記第3サーバは、
前記条件取得要求に応じて前記第1サーバから送信される前記条件を受信する条件受信部と、
前記第2サーバから受信した前記設定データに含まれている前記条件と、前記第1サーバから受信した前記条件とを比較して、前記条件に対する改ざんの有無を判定する条件改ざん判定部と、
を備えることを特徴とするログ監視システム。
【請求項9】
第1サーバと、前記第1サーバに通信可能に接続される、前記第1サーバを管理する管理者とは異なる管理者により管理される第2サーバと、を含んで構成されるコンピュータシステムにおいて、前記第1サーバが記録する、前記第1サーバによる処理の実行履歴を表す実行ログを監視する方法であって、
前記第1サーバが、監視対象となる前記実行ログを特定するための条件をメモリに記憶し、前記条件を満たす前記実行ログが記録された場合に、当該実行ログを監視ログとして決定し、前記監視ログをメモリに記憶し、前記監視ログを前記第2サーバに送信し、
前記第2サーバが、前記第1サーバから送信される監視ログを受信し、前記監視ログをメモリに記憶し、前記第1サーバに記憶されている前記監視ログと、当該第2サーバに記憶されている前記監視ログとが一致するかどうかにより、前記監視ログに対する改ざんの有無を判定すること、
を特徴とするログ監視方法。
【請求項10】
請求項9に記載のログ監視方法であって、
前記第1サーバは、監視プログラムをメモリに記憶し、
前記第1サーバは、前記監視プログラムを実行することにより、前記条件を満たす前記実行ログを前記監視ログとして前記メモリに記憶し、前記監視ログを前記第2サーバに送信しており、
前記第2サーバが、前記監視プログラムが実行されているかどうかを問い合わせる動作確認要求を前記第1サーバに送信し、
前記第1サーバが、前記動作確認要求に応じて、前記監視プログラムが実行されているかどうかを示す動作状態情報を前記第2サーバに送信し、
前記第2サーバが、前記動作状態情報を受信し、前記動作状態情報が、前記監視プログラムが実行されていないことを示している場合に、その旨を示すメッセージを含む前記監視ログを生成して前記メモリに記憶すること、
を特徴とするログ監視方法。
【請求項11】
請求項9に記載のログ監視方法であって、
前記コンピュータシステムには、前記第1サーバと前記第2サーバとのそれぞれに通信可能に接続される第3サーバが含まれ、
前記第2サーバは、前記条件を含む設定データの入力を受け付け、前記設定データを前記第1サーバおよび前記第3サーバのそれぞれに送信し、
前記第3サーバは、前記第2サーバから送信される前記設定データを受信し、前記条件を取得するためのコマンドである条件取得要求を前記第1サーバに送信し、
前記第1サーバは、前記第2サーバから送信される前記設定データを受信し、前記設定データに含まれている前記条件を前記メモリに記憶し、前記第3サーバから送信される前記条件取得要求を受信し、前記条件取得要求に応じて、前記メモリに記憶されている前記条件を前記第3サーバに送信し、
前記第3サーバは、前記第1サーバから送信される前記条件を受信し、前記第2サーバから受信した前記設定データに含まれている前記条件と、前記第1サーバから受信した前記条件とを比較して、前記条件に対する改ざんの有無を判定すること、
を特徴とするログ監視方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2009−110102(P2009−110102A)
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願番号】特願2007−279301(P2007−279301)
【出願日】平成19年10月26日(2007.10.26)
【出願人】(000211307)中国電力株式会社 (6,505)
【Fターム(参考)】