説明

セキュリティ監視プログラム、セキュリティ監視システム

【課題】多数のクライアントコンピュータを使用する環境におけるインストール作業の利便性を確保しつつ、各クライアントコンピュータまたは各OSのOSIDの一意性を保つ。
【解決手段】本発明に係るセキュリティ監視プログラムは、クライアントコンピュータのOSが起動するときにそのOSを識別するOSIDを新規生成して所定のセキュリティ管理装置に送信しておく。セキュリティ監視プログラムは、OSのセキュリティ設定を抽出してセキュリティ管理装置に送信するとき、そのOSのOSIDをともに送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータのセキュリティ監視に関するものである。
【背景技術】
【0002】
近年、情報セキュリティが注目されている。情報セキュリティに関する課題として、クライアントコンピュータのセキュリティ確保が挙げられる。セキュリティ意識の低いユーザや、使用頻度が低く最新のセキュリティパッチが当たっていないクライアントコンピュータは、情報流出の温床になりうるからである。
【0003】
クライアントコンピュータのセキュリティを確保するため、セキュリティ管理サーバが一元的にクライアントコンピュータを監視し、セキュリティレベルの低いクライアントコンピュータに対して警告を発するセキュリティ監視システムが用いられることがある。このセキュリティ監視システムでは、セキュリティ設定が社内のセキュリティ基準を満たしていないマシンを使用しているユーザに対しセキュリティレベルの強化をするように促す。これにより、情報漏えいの危険を回避することを図る。
【0004】
このセキュリティ監視システムでは、各クライアントコンピュータが満たすべきセキュリティレベルをセキュリティ管理サーバが保持しており、したがってセキュリティ管理サーバは各クライアントコンピュータを一意に識別する必要がある。また、各クライアントコンピュータが複数のOS(オペレーティングシステム)を搭載している場合、セキュリティ管理サーバは各OSが満たすべきセキュリティレベルを保持することになるので、セキュリティ管理サーバは各OSを一意に識別する必要がある。以降、各クライアントコンピュータまたは各OSを識別するための識別子を、OSIDと呼ぶ。
【0005】
一般に、セキュリティ管理サーバがクライアントコンピュータにセキュリティ監視プログラムをインストールする際に、セキュリティ管理サーバは各クライアントコンピュータまたは各OSにOSIDを割り当てる。下記特許文献1では、上記のようにIDを用いてクライアントコンピュータを識別し管理する技術が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2003−162338号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
多数のクライアントコンピュータを使用する環境では、1台のクライアントコンピュータを初期インストールし、そのハードディスクイメージを他のクライアントコンピュータに複製してインストール作業の効率化を図ることがある。
【0008】
上記のようなインストール作業が行われる環境において上記特許文献1に記載されている技術を用いる場合、初期インストールするクライアントコンピュータに対してセキュリティ管理サーバがOSIDを割り当てることになる。したがって、このクライアントコンピュータのハードディスクイメージを他のクライアントコンピュータに複製すると、OSIDも同時に複製されてしまい、各クライアントコンピュータを一意に識別することが困難になってしまう。
【0009】
仮に、セキュリティが高いクライアントコンピュータとセキュリティが低いクライアントコンピュータが同じOSIDを持ってしまった場合、セキュリティ管理サーバは、セキュリティレベルの高いクライアントコンピュータのセキュリティ設定を基準として、セキュリティレベルの低いクライアントコンピュータが社内のセキュリティ基準を満たしていると誤判断してしまう可能性がある。すると、セキュリティレベルが低く本来警告を発しなければいけないクライアントコンピュータを見落としてしまい、そこから情報流出事故が起きる可能性が考えられる。
【0010】
本発明は、上記のような課題を解決するためになされたものであり、多数のクライアントコンピュータを使用する環境におけるインストール作業の利便性を確保しつつ、各クライアントコンピュータまたは各OSのOSIDの一意性を保つことを目的とする。
【課題を解決するための手段】
【0011】
本発明に係るセキュリティ監視プログラムは、クライアントコンピュータのOSが起動するときにそのOSを識別するOSIDを新規生成して所定のセキュリティ管理装置に送信しておく。セキュリティ監視プログラムは、OSのセキュリティ設定を抽出してセキュリティ管理装置に送信するとき、そのOSのOSIDをともに送信する。
【発明の効果】
【0012】
本発明に係るセキュリティ監視プログラムによれば、クライアントコンピュータ側でOSIDを新規生成してセキュリティ管理装置に送信する。そのため、OSIDが他のクライアントコンピュータに複製されたとしても、複製先のクライアントコンピュータで改めてOSIDを新規生成するので、OSIDの一意性を保つことができる。
【図面の簡単な説明】
【0013】
【図1】実施の形態1に係るセキュリティ監視システム1000の構成図である。
【図2】クライアントコンピュータ100の機能ブロック図である。
【図3】セキュリティ管理サーバ200の機能ブロック図である。
【図4】セキュリティ監視システム1000の動作を説明する図である。
【図5】クライアントコンピュータ100aのOSイメージを複製して新たなクライアントコンピュータ100d〜100fを作成する様子を示す図である。
【図6】実施の形態2においてクライアントコンピュータ100のOSが起動するときのエージェントプログラムの動作フローである。
【発明を実施するための形態】
【0014】
<実施の形態1>
図1は、本発明の実施の形態1に係るセキュリティ監視システム1000の構成図である。セキュリティ監視システム1000は、クライアントコンピュータのセキュリティレベルを監視するシステムであり、クライアントコンピュータ100a、100bおよび100c、セキュリティ管理サーバ200を有する。これらはネットワーク300を介して接続されている。
【0015】
クライアントコンピュータ100a、100bおよび100cは、搭載されているOSおよびOS配下の各プログラムを除いて同様の構成を有するため、以下これらを総称するときは、クライアントコンピュータ100と呼ぶ。クライアントコンピュータ100の台数は任意でよい。
【0016】
クライアントコンピュータ100は、1以上のOSを搭載したコンピュータである。クライアントコンピュータ100は、後述するセキュリティ監視プログラムおよびエージェントプログラムを備えている。セキュリティ監視プログラムは、クライアントコンピュータ100が搭載している各OSのセキュリティ設定を抽出し、セキュリティ管理サーバ200に送信する。
【0017】
セキュリティ管理サーバ200は、セキュリティ監視プログラムが抽出した各OSのセキュリティ設定が所定のセキュリティ基準を満たしているか否かを監査し、送信元のクライアントコンピュータ100に返信する。
【0018】
図2は、クライアントコンピュータ100の機能ブロック図である。ここでは図1のクライアントコンピュータ100aの機能ブロック図を示したが、搭載されているOSおよびOS配下の各プログラムを除いて各クライアントコンピュータ100の機能構成は同様である。
【0019】
クライアントコンピュータ100aは、第1OS110(例えばWindows Vista:登録商標)、第2OS120(例えばWindows XP:登録商標)、CPU(Central Processing Unit)130を備える。また、ネットワーク300を介して通信するためのインタフェースを備える。
【0020】
第1OS110、第2OS120は、クライアントコンピュータ100a内で稼動する仮想OSである。すなわちクライアントコンピュータ100aでは、複数のOSが同時に稼動することになる。各OSは個別にセキュリティ設定を有するので、セキュリティ管理サーバ200がセキュリティ監査を行なうためには、各クライアントコンピュータ100および各OSを一意に識別する必要がある。他のクライアントコンピュータ100についても同様である。
【0021】
CPU130は、第1OS110、第2OS120、および各OS配下のプログラムを実行する。各OSおよび各プログラムはHDD(Hard Disk Drive:図示せず)などの記憶装置に格納されているが、図2では記載を省略した。
【0022】
各OSの配下には、セキュリティ監視プログラムとエージェントプログラムがインストールされる。各セキュリティ監視プログラムとエージェントプログラムの機能は同様であるため、以下では第1OS110配下のセキュリティ監視プログラム111とエージェントプログラム112について説明する。
【0023】
セキュリティ監視プログラム111は、第1OS110のセキュリティ設定を抽出して後述のOSIDとともにセキュリティ管理サーバ200に送信する。ここでいうセキュリティ設定とは、第1OS110のセキュリティレベルに影響を与える可能性のあるOS上の設定内容のことであり、例えば以下のような項目が該当する。
(セキュリティ設定その1)OSのバージョン
(セキュリティ設定その2)OSのセキュリティパッチの適用状況
(セキュリティ設定その3)コンピュータウィルスチェッカのバージョン
(セキュリティ設定その4)ログインパスワードの長さ
(セキュリティ設定その5)セキュリティ監視プログラム111のバージョン
【0024】
エージェントプログラム112は、第1OS110が起動するときにOSIDを新規生成し、セキュリティ管理サーバ200に送信する。このとき、どのクライアントコンピュータ100のどのOSに対して新規生成したOSIDであるかをセキュリティ管理サーバ200に通知するため、当該クライアントコンピュータ100(ここでは110a)と当該OS(ここでは第1OS110)それぞれを特定する情報を、OSIDと併せて送信する。例えばクライアントコンピュータ100のMACアドレスとOSバージョンなどを上記情報として用いることができる。
【0025】
なお、セキュリティ管理サーバ200のアドレスなどについては、セキュリティ監視プログラムとエージェントプログラムをクライアントコンピュータ100にインストールするときにシステム管理者などが設定してもよいし、セキュリティ管理サーバ200がクライアントコンピュータ100にこれらのプログラムをインストールするときに自己のアドレスをクライアントコンピュータ100へ通知するようにしてもよい。
【0026】
図3は、セキュリティ管理サーバ200の機能ブロック図である。セキュリティ管理サーバ200は、セキュリティ監査項目リスト210、セキュリティ監査部220、ネットワーク300を介して通信するためのインタフェースを備える。
【0027】
セキュリティ監査項目リスト210は、各クライアントコンピュータ100から受信するセキュリティ設定がセキュリティ基準を満たすか否かを監査するためチェックすべき項目を記載した監査項目リストである。セキュリティ監査項目リスト210は、クライアントコンピュータ100毎および各クライアントコンピュータ100が搭載するOS毎に設けられている。セキュリティ監査項目リスト210は、HDDなどの記憶装置(図示せず)に格納されている。
【0028】
図3では、クライアントコンピュータ100aに対応するセキュリティ監査項目リストを211、クライアントコンピュータ100bに対応するセキュリティ監査項目リストを212、クライアントコンピュータ100cに対応するセキュリティ監査項目リストを213とした。
【0029】
なお、各OSのセキュリティ監査項目には、そのOSのOSIDが対応付けられる。OSIDの初期値は空である。OSIDと各OSのセキュリティ監査項目を対応付ける手順については、後述の図4で改めて説明する。
【0030】
セキュリティ監査部220は、クライアントコンピュータ100よりセキュリティ設定とOSIDを受信すると、そのOSIDをキーにして対応するセキュリティ監査項目を特定し、そのセキュリティ監査項目を用いてセキュリティ設定の監査を行なう。
【0031】
本発明における「セキュリティ管理装置」は、セキュリティ管理サーバ200がこれに相当する。
【0032】
以上、本実施の形態1に係るセキュリティ監視システム1000の構成を説明した。次に、本実施の形態1に係るセキュリティ監視システム1000の動作を説明する。
【0033】
図4は、セキュリティ監視システム1000の動作を説明する図である。図4(a)はクライアントコンピュータ100のOSが起動したときの動作、図4(b)はセキュリティ監視プログラムを実行するときの動作を示す。以下、図4の各ステップについて説明する。ここではクライアントコンピュータ100aの第1OS110が起動する場合を例に説明するが、他のクライアントコンピュータ100および他のOSについても動作は同様である。なお、以下の説明では記載の便宜上、各プログラムを動作主体として説明する場合があるが、各プログラムを実際に実行する動作主体はCPU130であることを付言しておく。
【0034】
(1)OS起動時にOSIDを新規生成する
クライアントコンピュータ100aのCPU130は、第1OS110を起動するときに同OS配下のエージェントプログラム112を起動する。エージェントプログラム112は、OSIDを新規生成し、クライアントコンピュータ100aが備えるHDD等の記憶装置に格納する。OSIDの具体的な値として、例えばGUID(Globally Unique Identifier)などの一意性がある程度保証された文字列を用いることができる。
【0035】
(2)OSIDとOS種別を通知する
エージェントプログラム112は、ステップ(1)で新規生成したOSID、第1OS110のOS種別(OSバージョン、セキュリティパッチ番号など)、クライアントコンピュータ100aを識別する情報(例えばMACアドレス)をセットにして、セキュリティ管理サーバ200に通知する。
【0036】
(3)OSIDと監査項目を対応付けておく
セキュリティ管理サーバ200では、第1OS110に対応するセキュリティ監査項目をあらかじめ保持しておく。セキュリティ監査部220は、クライアントコンピュータ100aより上記通知を受信すると、クライアントコンピュータ100aを識別する情報およびOS種別をキーにして、OSID、クライアントコンピュータ100a、OS種別を対応付ける。図3に示した例では、本ステップで受信したOSIDを、セキュリティ監査項目リスト211の「Windows Vistaのセキュリティ監査項目」に対応付けることになる。
【0037】
(4)セキュリティ監視プログラムを実行する
クライアントコンピュータ100aのCPU130は、ユーザが指定した時点、または第1OS110内で規定されている所定の時刻などのタイミングで、セキュリティ監視プログラム111を実行する。
【0038】
(5)OSIDとセキュリティ設定を通知する
セキュリティ監視プログラム111は、第1OS110のセキュリティ設定を抽出し、エージェントプログラム112が先に生成したOSIDとセットにして、セキュリティ管理サーバ200に通知する。なお、セキュリティ管理サーバ200では既にOSID、クライアントコンピュータ100aおよび第1OS110の対応付けを実施済みなので、本ステップではクライアントコンピュータ100aを識別する情報およびOS種別を通知する必要はない。
【0039】
(6)監査項目を特定し監査を行なう
セキュリティ管理サーバ200のセキュリティ監査部220は、クライアントコンピュータ100aから受信したOSIDを用いて、監査項目リスト210のうち適用すべき監査項目を特定する。セキュリティ監査部220は、その監査項目を用いて、クライアントコンピュータ100aのセキュリティ設定が同監査項目の規定するセキュリティ基準を満たすか否かを監査する。
【0040】
(7)監査結果を返信する
セキュリティ監査部220は、ステップ(6)の監査結果をクライアントコンピュータ100aに送信する。
【0041】
以上、本実施の形態1に係るセキュリティ監視システム1000の動作を説明した。以下では、上記動作によってクライアントコンピュータ100のOSIDの一意性が保たれることについて説明する。
【0042】
図5は、クライアントコンピュータ100aのOSイメージを複製して新たなクライアントコンピュータ100d〜100fを作成する様子を示す図である。多数のクライアントコンピュータ100を使用する環境をセットアップする際には、1台のクライアントコンピュータ100の仮想OSをそのままコピーするか、またはハードディスクイメージをそのままコピーすることにより、セットアップ作業を簡易化することができる。
【0043】
ただし、クライアントコンピュータ100aの各OSが既にOSIDを保持している場合、仮想OSやハードディスクイメージをコピーする際に、そのOSIDも併せてコピーされてしまう。
【0044】
本実施の形態1に係るセキュリティ監視システム1000では、エージェントプログラムの働きにより、各OSが起動するときにOSIDを新規生成する。これにより、上記のように同じOSIDが複数のクライアントコンピュータ100にコピーされたとしても、改めてOSIDを生成してOSIDの一意性を保つことができる。
【0045】
なお、エージェントプログラムがOSIDを新規生成するタイミングを、クライアントコンピュータ100が起動するタイミングではなくOSが起動するタイミングとしたのは複数の仮想OSが同一のクライアントコンピュータ100上に存在し得るからである。すなわち、OSIDが各OSを一意に識別するためには、各OSが独自に一意のOSIDを発行する必要があり、そのためのタイミングとして各OSの起動時が好適だからである。
【0046】
<実施の形態2>
実施の形態1では、エージェントプログラムがOS起動時にOSIDを新規生成することを説明した。一方、既にOSIDを保持しているOSに関しては、OSを起動する毎にOSIDを生成すると、その分だけクライアントコンピュータ100とセキュリティ管理サーバ200の双方で処理負担が生じる。そこで、本発明の実施の形態2では、既にOSIDを保持している場合はそのOSIDを使い続ける動作例を説明する。
【0047】
図6は、本実施の形態2においてクライアントコンピュータ100のOSが起動するときのエージェントプログラムの動作フローである。以下では、クライアントコンピュータ100aの第1OS110配下のエージェントプログラム112について説明するが、本動作フローが示す動作は、各エージェントプログラムについて同様である。以下、図6の各ステップについて説明する。
【0048】
(図6:ステップS600)
クライアントコンピュータ100aの第1OS110が起動するとき、CPU130はエージェントプログラム112を起動する。これにより、本動作フローで規定するエージェントプログラム112の動作が開始する。
【0049】
(図6:ステップS601)
エージェントプログラム112は、第1OS110がOSIDを既に保持しているか否かを判定する。既に保持している場合はステップS603にスキップし、保持していない場合はステップS602に進む。
【0050】
(図6:ステップS602)
エージェントプログラム112は、実施の形態1と同様にOSIDを新規生成する。
【0051】
(図6:ステップS603)
エージェントプログラム112は、実施の形態1と同様に、OSID、第1OS110のOS種別、クライアントコンピュータ100aを識別する情報をセキュリティ管理サーバ200に通知する。
【0052】
以上のように、既にOSIDを生成済みである場合はこれを使い続けることにより、OSを起動する毎にOSIDを新規生成してセキュリティ管理サーバ200に通知する必要がなくなる。したがって、クライアントコンピュータ100ではOSIDを新規生成する処理負担を軽減することができ、セキュリティ管理サーバ200ではOSID/クライアントコンピュータ100/各OSを対応付ける処理負担を軽減することができる。
【0053】
ただし、上記のように各OSがOSIDを既に保持している場合はそれを使い続けるという手法を採用する場合、仮想OSまたはハードディスクイメージをコピーすることによって新たなクライアントコンピュータ100を作成すると、複数のクライアントコンピュータ100が同一のOSIDを使い続けることになってしまい、OSIDの一意性が崩れてしまう。そこで本実施の形態2では、OSIDを手動で削除する機能を、エージェントプログラムまたはセキュリティ監視プログラムが提供する。
【0054】
仮想OSまたはハードディスクイメージをコピーすることによって新たなクライアントコンピュータ100を作成するユーザは、その作業過程で、OSIDを削除するようにエージェントプログラムまたはセキュリティ監視プログラムへ指示する。これにより、そのクライアントコンピュータ100では、図6のステップS601で必ずステップS602へ進むことになるので、OSIDの一意性を保つことができる。
【0055】
以上のように、本実施の形態2によれば、エージェントプログラムは既に生成済みのOSIDを使い回すことができるので、クライアントコンピュータ100およびセキュリティ管理サーバ200の処理負担を軽減することができる。
【0056】
また、本実施の形態2によれば、既にOSが保持しているOSIDを削除することができる。これにより、仮想OSまたはハードディスクイメージをコピーして新たなクライアントコンピュータ100にOSIDがコピーされたとしても、ユーザがそのOSIDを削除することができるので、OSIDの一意性を保つことができる。
【0057】
また、本実施の形態2において、仮想OSやハードディスクイメージをコピーして新たなクライアントコンピュータ100を作成するコピー支援プログラムを使用する場合、そのコピー支援プログラムは、コピー元のOSがOSIDを保持しているか否かを判定し、保持している場合はそのOSIDを削除するようユーザに促すメッセージなどをコピー元のクライアントコンピュータ上で出力するようにしてもよい。これにより、ユーザは確実にOSIDの重複を回避することができる。
【0058】
なお、OSIDをユーザが手動で削除することに代えて、またはこれと平行して、エージェントプログラムがOSIDを新規生成する際に古いOSIDを削除する機能を提供してもよい。この場合、OSが既にOSIDを保持していれば、エージェントプログラムはOSIDを新規生成するとともに、古いOSIDを破棄する。セキュリティ管理サーバ200は、同一のクライアントコンピュータ200および同一のOSについて異なるOSIDを受信した場合は、新しい方のOSIDを採用し、そのOSIDをセキュリティ監査項目リスト210内に記録する。
【0059】
<実施の形態3>
実施の形態1〜2では、OS起動時にエージェントプログラムがOSIDを新規生成してセキュリティ管理サーバ200に通知することを説明した。エージェントプログラムはこれに加えて、OS起動後の任意のタイミング、例えば所定時刻になるとOSIDを新規生成してセキュリティ管理サーバ200に通知するようにしてもよい。既にOSがOSIDを保持している場合は、生成済みのOSIDを使い続けてもよいし古いOSIDを削除して改めてOSIDを生成してもよい。
【0060】
<実施の形態4>
以上の実施の形態1〜3において、セキュリティ監視プログラムとエージェントプログラムは個別のプログラムとして構成されている例を説明したが、これらのプログラムは一体的に構成してもよい。
【0061】
両者を個別のプログラムとして構成する場合は、各プログラムを実行形式プログラム(例えばWindowsにおけるexeファイル)として構成し、それぞれ独自に動作させることができる。両者を一体的に構成されたプログラムとして構成する場合は、例えばいずれか一方の他方の配下のライブラリモジュールなどの形式で構成することもできるし、プログラムを起動するときに与える引数によっていずれの機能を実行するかを選択できるように構成することもできる。
【0062】
また、セキュリティ監視プログラムとエージェントプログラムは、必ずしも個別のOS毎に設けなくともよい。各OS起動時にエージェントプログラムを実行してそのOSを識別するためのOSIDを生成し、またセキュリティ監視プログラムが各OSのセキュリティ設定を抽出できれば、これらのプログラムを各OSについて共通に用いてもよい。
【符号の説明】
【0063】
100a〜100f:クライアントコンピュータ、110:第1OS、111:セキュリティ監視プログラム、112:エージェントプログラム、120:第2OS、121:セキュリティ監視プログラム、122:エージェントプログラム、130:CPU、200:セキュリティ管理サーバ、210:セキュリティ監査項目リスト、220:セキュリティ監査部、300:ネットワーク、1000:セキュリティ監視システム。

【特許請求の範囲】
【請求項1】
コンピュータのセキュリティを監視する処理を当該コンピュータに実行させるセキュリティ監視プログラムであって、
前記コンピュータに、
当該コンピュータのOSを識別する識別子をそのOSが起動するときに新規に生成して所定のセキュリティ管理装置に送信する新規生成ステップと、
前記OSのセキュリティ設定を抽出して前記識別子とともに前記セキュリティ管理装置に送信する送信ステップと、
前記セキュリティ設定が所定の基準を満たしているか否かの監査結果を前記セキュリティ管理装置から受信する受信ステップと、
を実行させることを特徴とするセキュリティ監視プログラム。
【請求項2】
前記識別子を削除すべき旨の指示を受け取るとその識別子を削除するステップを前記コンピュータに実行させる
ことを特徴とする請求項1記載のセキュリティ監視プログラム。
【請求項3】
前記OSを識別する識別子をそのOSが既に保持している場合、前記コンピュータに、
前記新規生成ステップでは前記識別子を新規生成させず、
前記送信ステップでは前記OSが既に保持している前記識別子を前記セキュリティ管理装置に送信させる
ことを特徴とする請求項2記載のセキュリティ監視プログラム。
【請求項4】
前記コンピュータに、
前記識別子を新規に生成して前記セキュリティ管理装置に送信するステップを、前記OSが起動した後の所定時点で実行させる
ことを特徴とする請求項1から請求項3のいずれか1項に記載のセキュリティ監視プログラム。
【請求項5】
請求項1から請求項4のいずれか1項に記載のセキュリティ監視プログラムを実行する1以上のコンピュータと、
前記セキュリティ設定が所定の基準を満たしているか否かを監査しその監査結果を前記コンピュータに送信するセキュリティ管理装置と、
を有し、
前記コンピュータは、1以上のOSを搭載しており、
前記セキュリティ管理装置は、
前記セキュリティ設定が所定の基準を満たしているか否かを監査するためチェックすべき項目を記載した監査項目リストを、前記コンピュータが搭載しているOS毎に保持しており、
前記コンピュータより前記識別子と前記セキュリティ設定を受信すると、
その識別子が識別する前記OSに対応する前記監査項目リストを特定し、
その監査項目リストを用いて前記セキュリティ設定が所定の基準を満たしているか否かを監査し、監査結果を前記コンピュータに送信する
ことを特徴とするセキュリティ監視システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate