以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
図1は、本発明の第1の実施形態における情報漏洩防止システムの例を示すブロック図である。本実施形態における情報漏洩防止システムは、機密ファイル登録手段10と、機密ファイル格納手段11と、ファイル種別亜種影響ルール情報格納手段12と、ファイル種別シグネチャ情報生成手段13と、シグネチャ情報格納手段14と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、ブラックリスト格納手段18と、P2P流通阻止手段19と、ブロック単位判定結果格納手段20とを備えている。
機密ファイル格納手段11は、漏洩を防止したいファイル(流出させたくないファイル)を記憶する。以下の説明では、漏洩を防止したいファイルが機密ファイルである場合について説明する。ただし、漏洩を防止したいファイルは、いわゆる機密ファイルに限定されるものではない。漏洩を防止したいファイルとして説明する機密ファイルは、本システムにおいて検出したいファイルであることから、機密ファイルは、検出対象ファイルということができる。また、以下の説明では、検出対象ファイルに相当するファイルか否かが判定されるネットワーク上を流通するファイルのことを、流通ファイルと記す。機密ファイル格納手段11は、例えば、磁気ディスク装置等によって実現される。また、機密ファイル登録手段10は、例えば、ユーザの登録指示に応じて、機密ファイルを機密ファイル格納手段11に記憶させる。
シグネチャ情報格納手段14は、機密ファイルの一部であるファイル断片情報と、機密ファイル内におけるファイル断片情報の出現位置と、その出現位置と流通ファイルのブロックが出現する位置との揺れ幅の許容量を示す揺れ許容量と、流通ファイルが機密ファイルと判定される条件である、ファイル断片情報と一致すべきブロックの数の下限(以下、判定閾値と記す。)とを機密ファイルと対応付けた情報であるシグネチャ情報を記憶する。すなわち、判定閾値は、流通ファイルを検出対象ファイルに相当するファイルと判定するために、シグネチャ情報とマッチすべきブロックの数を定めたものであり、いくつのブロックがシグネチャ情報とマッチしたときに、元の機密ファイルに相当するファイルとみなすかを決定するための閾値である。
なお、シグネチャ情報は、機密ファイルの断片情報を含むことから、P2Pネットワークを流れるファイル群の中から機密ファイルと同様のファイルを検出するための情報、もしくは、機密ファイルやその亜種ファイルを検索するときのキーとなる情報(例えば、キーワード)であると言える。シグネチャ情報格納手段14は、後述のファイル種別シグネチャ情報生成手段13が生成したシグネチャ情報を1組以上記憶する。シグネチャ情報格納手段14は、例えば、磁気ディスク装置等によって実現される。
上述の通り、揺れ許容量とは、ファイル断片情報が機密ファイル内で出現する位置と流通ファイル内で出現する位置との間に発生するずれ(すなわち、揺れ幅)を許容する量である。一般的に、機密ファイルとその亜種ファイルとを比較したときに、元の機密ファイルのファイル断片情報の出現位置が、亜種ファイルではその出現位置が前後にずれることがある。そのため、出現位置がどの程度ずれていた場合に元のファイルと亜種ファイルとを同じファイルであるとみなすかについて揺れ許容量として定めておくことで、この揺れ許容量以内であれば、ファイル断片情報の出現位置がずれていても機密ファイルの亜種であるとみなすことができる。この場合、機密ファイルの亜種ファイルかどうかを判定するためには、この揺れ許容量の範囲内でパターンマッチングを繰り返せばよい。なお、以上のことから、シグネチャ情報は、ファイル断片同士をマッチングさせるための情報と言うこともできる。
ファイル種別亜種影響ルール情報格納手段12は、機密ファイルをもとにファイル種別ごとにシグネチャ情報を生成することを規定したルール(以下、ファイル種別亜種影響ルール情報と記す。)を記憶する。ここで、ファイル種別亜種影響ルール情報とは、ファイル断片情報の切り出し位置(範囲)に対して、ファイル断片情報を切り出す個数、切り出す間隔、ファイル断片情報の切り出しサイズ、ファイル断片情報を検索するときのファイル断片情報の揺れ幅の許容範囲(すなわち、揺れ許容量)、及び、判定閾値を含む情報をファイルの種別ごとに1組以上組み合わせた情報である。言い換えると、ファイル種別亜種影響ルール情報は、登録されたファイルと同様のファイルをP2Pネットワーク上のファイル群から発見するためのシグネチャ情報を生成するためのルールである。
ファイル種別亜種影響ルール情報は、ファイル種別として表わされるファイルの性質に応じて定められる。具体的には、ファイル種別亜種影響ルール情報は、機密ファイルの亜種の傾向を踏まえて定められる。亜種ファイルの傾向として、例えば、ビットの欠落、無関係なビットの追加、ネットワーク上を流れる際に発生したエラーに基づくビットの変化、アプリケーションの操作によって生じる文書内容の部分的な変化、文章以外で設定情報が変化したときの元のファイルと亜種ファイルとの間で発生する変化の内容、などが挙げられる。
また、ファイルの種別として、例えば、機密ファイルとして登録されたファイルを作成するアプリケーションの種類やメディアの種別(具体的には、画像ファイル、jpegファイル、Officeファイル、Wordファイルなど)が挙げられる。なお、Office及びWordは、いずれも商標である。ファイル種別亜種影響ルール情報格納手段12は、ファイルの種別として例示した上記種別ごとに、ファイル種別亜種影響ルール情報を記憶する。ファイル種別亜種影響ルール情報格納手段12は、例えば、ユーザ等により設定されるファイル種別亜種影響ルール情報を予め記憶する。
ファイル種別シグネチャ情報生成手段13は、登録された機密ファイルに対するシグネチャ情報をファイル種別亜種影響ルール情報に従って生成する。具体的には、ファイル種別シグネチャ情報生成手段13は、機密ファイル登録手段10により登録された機密ファイルのファイル種別に対応するファイル種別亜種影響ルール情報をファイル種別亜種影響ルール情報格納手段12から取り出す。そして、ファイル種別シグネチャ情報生成手段13は、取り出したルールに基づいて、機密ファイルからシグネチャ情報を生成し、生成したシグネチャ情報をシグネチャ情報格納手段14に記憶させる。
ファイル種別シグネチャ情報生成手段13は、例えば、ファイルの断片を切り取る範囲(以下、切取範囲と記す)、各切取範囲から切り取るファイルの断片の個数、ファイルの断片を切り取る間隔、切り取るファイルの断片の長さ、そのファイルの断片と流通ファイルとを比較する際の揺れ許容量、切取範囲内で一致することが必要なファイル断片の個数の閾値(すなわち、判定閾値)などを規定したファイル種別亜種影響ルール情報に従ってシグネチャ情報を生成する。
ファイル種別シグネチャ情報生成手段13がシグネチャ情報を生成する方法について、具体的に説明する。図2は、ファイル種別亜種影響ルール情報の例を示す説明図である。図2に例示するファイル種別亜種影響ルール情報は、ファイル種別ごとに、切取範囲である「ファイル断片情報取得位置」、ファイル断片情報取得数、ファイル断片情報取得間隔、ファイル断片情報長さ、揺れ許容量である揺れ許容数及び判定閾値を含んでいる。
例えば、ファイル種別が「Office2007WordのOOXML(Office Open XML(Extensible Markup Language ))形式」で、「先頭から30%」の位置の情報を機密ファイルから切り取るとする。この場合、ファイル種別シグネチャ情報生成手段13は、ファイルの先頭から3個の10bit長ファイル断片を、128bit間隔で切り取る。そして、ファイル種別シグネチャ情報生成手段13は、機密ファイルと、切り取った各ファイルの断片、及び切り取った位置(すなわち、ファイル断片の出現位置)を対応付け、さらに、これらの組に、揺れ許容数「10bit」及び、判定閾値「1個」を付加して、シグネチャ情報を生成する。
P2Pブロック取得手段15は、P2Pネットワーク(図示せず)に接続し、P2Pネットワークの情報流通の単位であるブロックに分割された情報を抽出する。そして、P2Pブロック取得手段15は、抽出したファイルの断片(流通ファイルの一部)といえるブロックを、ブロック単位シグネチャ情報判定手段16に通知する。P2Pブロック取得手段15が抽出するブロックには、例えば、ブロックの送信順に付与された通し番号又は元のファイルを断片化した際の先頭からの通し番号、ファイル内の分割位置を示すブロック開始位置、ファイルを断片化したデータ(ブロック断片情報)などが含まれる。
ブロック単位シグネチャ情報判定手段16は、P2Pブロック取得手段15から受け取ったブロックごとに、シグネチャ情報格納手段14に記憶されたシグネチャ情報と比較し、各ブロックがシグネチャ情報と一致するか否かを判定する。ここで、ブロック単位シグネチャ情報判定手段16は、揺れ許容量の範囲内で両者を比較する。そして、ブロック単位シグネチャ情報判定手段16は、判定結果をファイル判定手段17に通知する。このようにして、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックが機密ファイルの一部かどうかを判定し、判定結果として両者の揺れ幅を含む情報をブロック単位判定結果格納手段20に記憶させる。なお、ブロック単位シグネチャ情報判定手段16は、ブロック単位の判定結果をファイル判定手段17に通知してもよい。
なお、以下の説明では、ブロックが機密ファイルの一部と判定された場合に、ブロック単位シグネチャ情報判定手段16がその判定結果をブロック単位判定結果格納手段20に記憶させる場合について説明する。ただし、ブロック単位シグネチャ情報判定手段16が判定結果をブロック単位判定結果格納手段20に記憶させるタイミングは、ブロックを機密ファイルの一部と判定した場合に限定されない。例えば、ブロック単位シグネチャ情報判定手段16は、一致したか否かを示す情報を含む判定結果をブロック単位判定結果格納手段20に記憶させてもよい。
ブロック単位シグネチャ情報判定手段16が、ブロックとシグネチャ情報とが一致するか否かを判定する方法について説明する。まず、ブロック単位シグネチャ情報判定手段16は、P2Pブロック取得手段15からブロックを受け取り、ブロック開始位置を判断する。そして、ブロック単位シグネチャ情報判定手段16は、ブロック開始位置に対応するシグネチャ情報を読み取り、出現位置から揺れ許容量の範囲内にファイル断片情報が存在するか検索する。例えば、ブロック単位シグネチャ情報判定手段16は、抽出したブロックから元のファイルの何ビット目かを判断し、該当するシグネチャ情報のファイル断片情報を1bitずつ比較すればよい。そして、揺れ許容量の範囲内にファイル断片情報が存在する場合、ブロック単位シグネチャ情報判定手段16は、両者が一致すると判定する。一方、揺れ許容量の範囲内にファイル断片情報が存在しない場合、ブロック単位シグネチャ情報判定手段16は、両者が一致しないと判定する。
ファイル判定手段17は、ブロック単位の判定結果とシグネチャ情報とを基に、P2Pネットワーク上を流通するファイル(流通ファイル)が機密ファイルに相当するファイルか否かを判定する。具体的には、ファイル判定手段17は、例えば、シグネチャ情報に一致すると判定されたブロックの数が判定閾値以上の場合に、流通ファイルを機密ファイルやその亜種ファイルと判定する。そして、ファイル判定手段17は、機密ファイルやその亜種ファイルであった場合、そのファイルの情報をブラックリスト格納手段18に記憶させる。
ファイル判定手段17が、機密ファイルに相当するファイルか否かを判定する方法について、具体例を用いて説明する。上述の通り、ブロック単位シグネチャ情報判定手段16がブロック単位で判定した判定結果をブロック単位判定結果格納手段20に記憶させる。その際、ファイル判定手段17は、記憶させる判定結果のシグネチャ情報のうち、ファイル名が同じものを探索する。同じファイル名の判定結果がブロック単位判定結果格納手段20に記憶されている場合、ファイル判定手段17は、その個数を調べ、シグネチャ情報の判定閾値と比較する。その個数が閾値を越えていない場合、ファイル判定手段17は、ブロックの元になったファイルがまだ流出していないと判定する。ファイル判定手段17は、ブロック単位に閾値との比較を繰り返し、ブロックがマッチした判定結果が閾値を超える数だけブロック単位判定結果格納手段20に格納されたときに該当のファイルを検知したと判定する。
なお、ファイル判定手段17は、ブロック単位シグネチャ情報判定手段16から受け取った判定結果を基に機密ファイルに相当するファイルか否かを判定してもよく、ブロック単位判定結果格納手段20に記憶された判定結果を基に機密ファイルに相当するファイルか否かを判定してもよい。
ブラックリスト格納手段18は、流通を阻止するファイルの情報を記憶する。なお、流通を阻止するファイルの情報は、ファイル判定手段17によって記憶される。ブラックリスト格納手段18は、例えば、流通ファイルのファイル名やファイルハッシュなどのファイルを特定できるIDを記憶する。ブラックリスト格納手段18は、例えば、磁気ディスク装置等によって実現される。
P2P流通阻止手段19は、ブラックリスト格納手段18に記憶されたファイルについて、P2Pネットワーク上でのファイル送信を阻止する。例えば、P2P流通阻止手段19は、マッチしたブロックが含まれるネットワークパケットの送信元や送信先に対して、通信をやめさせるリセットパケットを送信してもよい。他にも、P2P流通阻止手段19は、パケットの送信元や送信先が利用しているポート番号やIPアドレスを、ネットワークフィルタリング機能を持つ機器に通知し、ネットワークを遮断させてもよい。
あるいは、P2P流通阻止手段19は、ブロック単位シグネチャ情報判定手段16がマッチしたと判定したブロックが閾値を越えているファイルの場合、それ以降、そのファイルのブロックをネットワークパケット中から削除してもよい。このようにして、対象のファイルが、それ以上流通することを防止できる。
ブロック単位判定結果格納手段20は、ブロックごとにシグネチャ情報と一致するか否かが判定された判定結果を記憶する。なお、判定結果には、シグネチャ情報やマッチした際の揺れ幅が含まれる。ブロック単位判定結果格納手段20は、例えば、磁気ディスク装置等によって実現される。図3は、ブロック単位判定結果格納手段20に格納された判定結果の例を示す説明図である。図3に示す例では、ブロック単位判定結果格納手段20が、シグネチャ情報としてファイル名及びファイル断片情報の出現位置を、また、そのシグネチャ情報がマッチしたときの揺れ幅及び抽出したブロックを識別するブロック番号を記憶していることを示す。
機密ファイル登録手段10と、ファイル種別シグネチャ情報生成手段13と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、P2P流通阻止手段19とは、プログラム(情報漏洩防止プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、情報漏洩防止装置の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、機密ファイル登録手段10、ファイル種別シグネチャ情報生成手段13、P2Pブロック取得手段15、ブロック単位シグネチャ情報判定手段16、ファイル判定手段17及びP2P流通阻止手段19として動作してもよい。また、機密ファイル登録手段10と、ファイル種別シグネチャ情報生成手段13と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、P2P流通阻止手段19とは、それぞれが専用のハードウェアで実現されていてもよい。
次に、動作について説明する。図4及び図5は、第1の実施形態における動作の例を示すフローチャートである。
まず、ユーザ等の指示に応じ、機密ファイル登録手段10は、機密ファイル格納手段11に機密ファイルを登録する(すなわち、記憶させる)(ステップS1)。次に、ファイル種別シグネチャ情報生成手段13は、登録された機密ファイルの種別に合わせて、ファイル種別亜種影響ルール情報をファイル種別亜種影響ルール情報格納手段12から読み取る(ステップS2)。そして、ファイル種別シグネチャ情報生成手段13は、登録されたファイルのシグネチャ情報を読み取ったファイル種別亜種影響ルール情報に従って生成し(ステップS3)、シグネチャ情報格納手段14に記憶させる。なお、登録された機密ファイルすべてに対して、ステップS1からステップS3の処理が行われる。
そのあと、P2Pブロック取得手段15は、P2Pネットワークに流通しているファイルの断片であるブロックを抽出し、そのブロックをブロック単位シグネチャ情報判定手段16に通知する(ステップS4)。そして、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックと、シグネチャ情報格納手段14に記憶されたシグネチャ情報とを比較し(ステップS5)、そのブロックが機密ファイルまたはその亜種ファイルの断片か否かを判断する(ステップS6)。
ブロックが機密ファイルまたはその亜種ファイルに含まれるファイルの断片だと判断された場合(ステップS6におけるYES)、ブロック単位シグネチャ情報判定手段16は、その判定結果をブロック単位の比較結果としてブロック単位判定結果格納手段20に記憶させる(ステップS7)。なお、ブロックが機密ファイルまたはその亜種ファイルに含まれるファイルの断片だと判断されなかった場合には(ステップS6におけるNO)、ブロック単位シグネチャ情報判定手段16は、比較結果をブロック単位判定結果格納手段20に記憶させない。
次に、ファイル判定手段17は、ブロック単位判定結果格納手段20に記憶された複数の判定結果と、シグネチャ情報格納手段14に記憶された閾値とをもとに、ブロックの元となる流通ファイルが機密ファイルもしくはその亜種ファイルに相当するかどうかを判定する(ステップS8)。流通ファイルが機密ファイルもしくはその亜種ファイルに相当すると判定された場合(ステップS9におけるYES)、ファイル判定手段17は、ファイル名やファイルハッシュなどのファイルを特定できるIDをブラックリスト格納手段18に記憶させる(ステップS10)。なお、流通ファイルが機密ファイルもしくはその亜種ファイルに相当しないと判定された場合(ステップS9におけるNO)、ファイル判定手段17は、その流通ファイルのファイル名などをブラックリスト格納手段18に記憶させない。
そして、P2P流通阻止手段19は、ブラックリスト格納手段18に記憶されたファイルの情報を取り出し(ステップS11)、P2Pネットワーク上の該当ファイルの流通を阻止する(ステップS12)。
次に、本実施形態の効果について説明する。以上のように、本実施形態によれば、ファイル種別シグネチャ生成手段13が、ファイル種別亜種影響ルールに従って生成したシグネチャ情報をシグネチャ情報格納手段14に記憶させる。そして、ブロック単位シグネチャ情報判定手段16は、シグネチャ情報格納手段14に記憶されたシグネチャ情報と流通ファイルのブロックとが揺れ許容量の範囲内で一致するか否かを判定する。その後、ファイル判定手段17は、シグネチャ情報と一致したブロックの数及び判定閾値に基づいて、流通ファイルが機密ファイルに相当するファイルか否かを判定する。そして、P2P流通阻止手段19は、機密ファイルに相当するファイルと判定された流通ファイルの流通を阻止する。そのため、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出でき、さらに、検出対象のファイル及び変化したファイルを高速に検出して情報漏洩を防止できる。
すなわち、本実施形態では、ブロック単位シグネチャ情報判定手段16が、ファイル種別シグネチャ情報生成手段13が生成したシグネチャ情報とそのシグネチャ情報に含まれる揺れ許容数とを基にブロック単位でシグネチャ情報判定を実施する。そして、閾値以上のシグネチャ情報がマッチしたときに、ファイル判定手段17が機密ファイルもしくはその亜種ファイルであると判定する。そのため、検出対象のファイルが変化したファイル(例えば、亜種ファイル)を高速に検出することができる。
また、ファイル種別シグネチャ情報生成手段13が、ひとつの機密ファイルとファイル種別亜種影響ルール情報とを基に機密ファイルとその亜種ファイルを検出するためのシグネチャ情報を生成する。そのため、少数の機密ファイルを基に亜種を検出することができる。すなわち、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出できる。
さらに、ファイル種別シグネチャ情報生成手段13が、ファイル種別ごとに設定されたファイル種別亜種影響ルール情報に基づいて機密ファイルとその亜種ファイルを検出するためのシグネチャ情報をファイル種別ごとに生成する。そのため、ファイルの種別に適合したシグネチャ情報を生成できるとともに、ブロック単位での比較回数を少なくできる。
実施形態2.
図6は、本発明の第2の実施形態における情報漏洩防止システムの例を示すブロック図である。なお、第1の実施形態と同様の構成については、図1と同一の符号を付し、説明を省略する。
本実施形態における情報漏洩防止システムは、機密ファイル登録手段10と、機密ファイル格納手段11と、シグネチャ情報取得情報格納手段22と、シグネチャ情報生成手段23と、シグネチャ情報格納手段14と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、ブラックリスト格納手段18と、P2P流通阻止手段19と、ブロック単位判定結果格納手段20と、ブロック単位変更情報格納手段24と、ブロック判定結果反映手段25とを備えている。
すなわち、第2の実施形態における情報漏洩防止システムでは、ファイル種別シグネチャ情報生成手段13がシグネチャ情報生成手段23に変更され、ファイルの種別とは無関係にシグネチャ情報を生成するルールを格納するシグネチャ情報取得情報格納手段22にファイル種別亜種影響ルール情報格納手段12が変更されている点で第1の実施形態における情報漏洩防止システムと異なる。また、第2の実施形態における情報漏洩防止システムでは、ブロック単位変更情報格納手段24及びブロック判定結果反映手段25をさらに備えている点で第1の実施形態における情報漏洩防止システムと異なる。
シグネチャ情報取得情報格納手段22は、ファイル種別にかかわらず、機密ファイルをもとにシグネチャ情報を生成することを規定したルール(以下、シグネチャ情報取得情報と記す。)を記憶する。ここで、シグネチャ情報取得情報とは、機密ファイルからシグネチャ情報(より具体的には、ファイル断片情報)を切り出す位置(範囲)、シグネチャ情報(より具体的には、ファイル断片情報)を切り出す数、切り出す間隔、ファイル断片情報の切り出しサイズ、流通ファイルとシグネチャ情報とのマッチングを行うときに、元の機密ファイルの位置とのずれをどの程度許容するかを定めた揺れ許容量(例えば、揺れ許容数)、及び、複数あるシグネチャ情報のうち、いくつのシグネチャ情報がマッチしたときに、元の機密ファイルに相当するファイルとみなすかを決定するための閾値(すなわち、判定閾値)のうち、少なくとも1つ以上を含む情報の組合せである。
図7は、シグネチャ情報取得情報格納手段22が記憶するシグネチャ情報取得情報の例を示す説明図である。図7に示す例では、シグネチャ情報取得情報として、ファイル断片情報取得位置情報、ファイル断片情報取得数、ファイル断片情報取得間隔、ファイル断片情報長さ、揺れ許容量である揺れ許容数及び閾値を含んでいることを示す。例えば、図7に例示する表の1行目は、機密ファイル格納手段11に格納された機密ファイルに対し、「先頭から30%〜70%」の位置については、10bitのファイル断片情報を128bit間隔で3個切り出し、それぞれ揺れ許容数「10bit」及び閾値「1個」の情報を付与したシグネチャ情報を作成するルールを表す。
シグネチャ情報生成手段23は、登録された機密ファイルに対するシグネチャ情報をシグネチャ情報取得情報に従って生成する。具体的には、シグネチャ情報生成手段23は、シグネチャ情報取得情報に基づいて、機密ファイル登録手段10により登録された機密ファイルからシグネチャ情報を生成し、生成したシグネチャ情報をシグネチャ情報格納手段14に記憶させる。なお、シグネチャ情報生成手段23がシグネチャ情報を生成する方法は、第1の実施形態におけるファイル種別シグネチャ情報生成手段13がシグネチャ情報を生成する方法と同様である。
なお、第1の実施形態では、ファイル種別シグネチャ情報生成手段13は、ファイル種別ごとにシグネチャ情報をシグネチャ情報格納手段14に記憶させる。一方、第2の実施形態では、シグネチャ情報生成手段23は、ファイル種別にかかわらず、シグネチャ情報をシグネチャ情報格納手段14に記憶させる。
ブロック単位変更情報格納手段24は、シグネチャ情報におけるファイル断片情報の出現位置を調整する際に用いられる値(以下、オフセット率と記す。)と、シグネチャ情報における揺れ許容量を減少させる際に用いられる値(以下、揺れ許容量倍率と記す。)のうちの少なくとも1つを含む情報をファイル断片情報の出現位置ごとに規定した情報(以下、ブロック単位変更情報と記す。)を記憶する。揺れ許容量倍率として設定される値は、揺れ許容量を変化させる割合であってもよく、揺れ許容量を減少させる割合であってもよい。ブロック単位変更情報は、例えば、ユーザ等により、ブロック単位変更情報格納手段24に予め記憶される。ブロック単位変更情報格納手段24は、例えば、磁気ディスク装置等によって実現される。
ブロック判定結果反映手段25は、ブロック単位シグネチャ情報判定手段16が判定したブロックの判定結果と、そのブロックを含んだ元の流通ファイルと同一の流通ファイルに対応するブロック単位変更情報とをもとに、その流通ファイルにおける他のブロックと比較する際に用いられるシグネチャ情報を変更する。すなわち、ブロック判定結果反映手段25は、ブロック単位シグネチャ情報判定手段16の要求に従い、シグネチャ情報に含まれるシグネチャ情報取得位置や揺れ許容量を、すでに判定されたブロック単位の判定結果と、ブロック単位変更情報格納手段24に格納されたブロック単位変更情報をもとに変更する。このようにすることで、すでに判定されたブロックの判定結果をシグネチャ情報に反映させることができる。
ブロック判定結果反映手段25が、シグネチャ情報を変更する方法について具体的に説明する。ブロック判定結果反映手段25は、ブロック単位シグネチャ情報判定手段16が受け取ったブロックを含んだ元の流通ファイルの情報を受け取ると、その流通ファイルに対応するブロックの判定結果がブロック単位判定結果格納手段20に記憶されているか判断する。判定結果が記憶されている場合、ブロック判定結果反映手段25は、そのブロックに対応するブロック単位変更情報をブロック単位変更情報格納手段24から読み取る。そして、ブロック判定結果反映手段25は、ブロック単位変更情報の揺れ許容量倍率に基づいて、シグネチャ情報の揺れ許容量を更新し、更新した揺れ許容量をブロック単位シグネチャ情報判定手段16に通知する。このとき、ブロック単位シグネチャ情報判定手段16は、更新された揺れ許容量の範囲内で、ブロックとシグネチャ情報とが一致するか否かを判定する。
ここで、ファイル断片情報と一致した位置とシグネチャ情報の開始位置とのずれを示す情報がブロックの判定結果に含まれている場合、ブロック判定結果反映手段25は、そのずれを示す情報にオフセット率を乗じた値を算出し、その算出結果をブロック単位シグネチャ情報判定手段16に通知してもよい。この場合、ブロック単位シグネチャ情報判定手段16は、算出結果に従ってブロック断片情報の出現位置をずらしたシグネチャ情報とブロックとを比較し、両者が一致するか否かを判定してもよい。
なお、ここで、同一の流通ファイルとは、流通ファイルそのものが同一の場合だけでなく、ファイル種別が同一の場合の流通ファイルも含まれる。
機密ファイル登録手段10と、シグネチャ情報生成手段23と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、P2P流通阻止手段19と、ブロック判定結果反映手段25とは、プログラム(情報漏洩防止プログラム)に従って動作するコンピュータのCPUによって実現される。また、機密ファイル登録手段10と、シグネチャ情報生成手段23と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、P2P流通阻止手段19と、ブロック判定結果反映手段25とは、それぞれが専用のハードウェアで実現されていてもよい。
次に、動作について説明する。図8及び図5は、第2の実施形態における動作の例を示すフローチャートである。なお、ブロック単位シグネチャ情報判定手段16が、ブロックとシグネチャ情報とを比較して、そのブロックが機密ファイルか否かを判定し、ファイル判定手段17が、判定結果を基に、流通ファイルが機密ファイルもしくはその亜種ファイルに相当すると判定するまでの処理、および、P2P流通阻止手段19がそれらの流通ファイルを阻止する処理については、第1の実施形態におけるステップS5〜ステップS12までの処理と同様である。
まず、ユーザ等の指示に応じ、機密ファイル登録手段10は、機密ファイル格納手段11に機密ファイルを登録する(すなわち、記憶させる)(ステップS1)。次に、シグネチャ情報生成手段23は、登録されたファイルのシグネチャ情報をシグネチャ情報取得情報に従って生成し(ステップS21)、シグネチャ情報格納手段14に記憶させる。登録された機密ファイルすべてに対して、ステップS1からステップS21の処理が行われる。
そのあと、P2Pブロック取得手段15は、P2Pネットワークに流通しているファイルの断片であるブロックを抽出し、そのブロックをブロック単位シグネチャ情報判定手段16に通知する(ステップS4)。
ここで、ブロック判定結果反映手段25は、ブロック単位シグネチャ情報判定手段16に通知されたブロックを含む元の流通ファイルに関連する他のブロック(すなわち元の流通ファイルと同一のファイルに含まれる他のブロック)が比較済みかどうかを判定する(ステップS22)。初めて比較する流通ファイルのブロックである場合(ステップS22におけるNO)、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックと、シグネチャ情報格納手段14に記憶されたシグネチャ情報とを比較する(ステップS5)。
一方、すでに比較済みのブロックがある場合(ステップS22におけるYES)、ブロック判定結果反映手段25は、ブロック単位変更情報をブロック単位変更情報格納手段24から読み取り、シグネチャ情報を変更する(ステップS23)。そして、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックと、変更後のシグネチャ情報とを比較する(ステップS5)。以降の処理は、第1の実施形態におけるステップS6〜ステップS12の処理と同様である。
次に、本実施形態の効果について説明する。以上のように、本実施形態によれば、シグネチャ情報生成手段23が、シグネチャ情報取得情報に従って生成したシグネチャ情報をシグネチャ情報格納手段14に記憶させる。そして、ブロック単位シグネチャ情報判定手段16が、流通ファイルのブロックごとに、シグネチャ情報格納手段14に記憶されたシグネチャ情報と上記ブロックとが揺れ許容量の範囲内で一致するか否かを判定する。その後、ファイル判定手段17は、シグネチャ情報と一致したブロックの数及び判定閾値に基づいて、流通ファイルが機密ファイルに相当するファイルか否かを判定し、判定した結果をブロック単位判定結果格納手段20に記憶させる。
さらに、ブロック判定結果反映手段25は、ブロック単位変更情報及びブロック単位判定結果格納手段20に記憶された揺れ幅に基づいて、シグネチャ情報を更新すると、ブロック単位シグネチャ情報判定手段16は、更新されたシグネチャ情報と流通ファイルのブロックとが揺れ許容量の範囲内で一致するか否かを判定する。ファイル判定手段17は、その流通ファイルが機密ファイルに相当するファイルか否かを判定する。そして、P2P流通阻止手段19は、機密ファイルに相当するファイルと判定された流通ファイルの流通を阻止する。そのため、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出でき、さらに、検出対象のファイル及び変化したファイルを高速に検出して情報漏洩を防止できる。
すなわち、本実施形態では、ブロック単位シグネチャ情報判定手段16が、シグネチャ情報生成手段23が生成したシグネチャ情報とそのシグネチャ情報に含まれる揺れ許容数とを基にブロック単位でシグネチャ情報判定を実施する。そして、閾値以上のシグネチャ情報がマッチしたときに、ファイル判定手段17が機密ファイルもしくはその亜種ファイルであると判定する。そのため、検出対象のファイルが変化したファイル(例えば、亜種ファイル)を高速に検出することができる。
また、シグネチャ情報生成手段23が、ひとつの機密ファイルとシグネチャ情報取得情報とを基に機密ファイルとその亜種ファイルを検出するためのシグネチャ情報を生成する。そのため、少数の機密ファイルを基に亜種を検出することができる。すなわち、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出できる。
さらに、ブロック判定結果反映手段25が、過去の判定結果を基にシグネチャ情報を更新して比較する位置を調整するため、検出対象のファイルが変化したファイル(例えば、亜種ファイル)をより高速に検出することができる。
また、シグネチャ情報生成手段23は、ファイル種別に関わらず、設定されたシグネチャ情報取得情報に基づいて機密ファイルとその亜種ファイルを検出するためのシグネチャ情報を生成する。そのため、第1の実施形態に比べ、シグネチャ情報を生成するために設定するシグネチャ情報取得情報の量を抑制することができる。
実施形態3.
図9は、本発明の第3の実施形態における情報漏洩防止システムの例を示すブロック図である。なお、第1の実施形態と同様の構成、及び、第2の実施形態と同様の構成については、図1及び図6と同一の符号を付し、説明を省略する。
本実施形態における情報漏洩防止システムは、機密ファイル登録手段10と、機密ファイル格納手段11と、ファイル種別亜種影響ルール情報格納手段12と、ファイル種別シグネチャ情報生成手段13と、シグネチャ情報格納手段14と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、ブラックリスト格納手段18と、P2P流通阻止手段19と、ブロック単位判定結果格納手段20と、ブロック単位変更情報格納手段24と、ブロック判定結果反映手段25とを備えている。
すなわち、第3の実施形態における情報漏洩防止システムは、第2の実施形態におけるシグネチャ情報生成手段23が第1の実施形態におけるファイル種別シグネチャ情報生成手段13に変更され、第2の実施形態におけるシグネチャ情報取得情報格納手段22が第1の実施形態におけるファイル種別亜種影響ルール情報格納手段12に変更されている点で第2の実施形態における情報漏洩防止システムと異なる。
言い換えると、第3の実施形態における情報漏洩防止システムは、第2の実施形態におけるブロック単位変更情報格納手段24及びブロック判定結果反映手段25をさらに備えている点で第1の実施形態における情報漏洩防止システムと異なる。なお、各手段の動作については、第1の実施形態及び第2の実施形態と同様である。
また、機密ファイル登録手段10と、ファイル種別シグネチャ情報生成手段13と、P2Pブロック取得手段15と、ブロック単位シグネチャ情報判定手段16と、ファイル判定手段17と、P2P流通阻止手段19と、ブロック単位変更情報格納手段24と、ブロック判定結果反映手段25とは、プログラム(情報漏洩防止プログラム)に従って動作するコンピュータのCPUによって実現される。
次に、動作について説明する。図10及び図5は、第3の実施形態における動作の例を示すフローチャートである。なお、ブロック単位シグネチャ情報判定手段16が、ブロックとシグネチャ情報とを比較して、そのブロックが機密ファイルか否かを判定し、ファイル判定手段17が、判定結果を基に、流通ファイルが機密ファイルもしくはその亜種ファイルに相当すると判定するまでの処理、および、P2P流通阻止手段19がそれらの流通ファイルを阻止する処理については、第1の実施形態におけるステップS5〜ステップS12までの処理と同様である。
まず、ユーザ等の指示に応じ、機密ファイル登録手段10は、機密ファイル格納手段11に機密ファイルを登録する(すなわち、記憶させる)(ステップS1)。次に、ファイル種別シグネチャ情報生成手段13は、登録された機密ファイルの種別に合わせて、ファイル種別亜種影響ルール情報をファイル種別亜種影響ルール情報格納手段12から読み取る(ステップS2)。そして、ファイル種別シグネチャ情報生成手段13は、登録されたファイルのシグネチャ情報を読み取ったファイル種別亜種影響ルール情報に従って生成し(ステップS3)、シグネチャ情報格納手段14に記憶させる。なお、登録された機密ファイルすべてに対して、ステップS1からステップS3の処理が行われる。
そのあと、P2Pブロック取得手段15は、P2Pネットワークに流通しているファイルの断片であるブロックを抽出し、そのブロックをブロック単位シグネチャ情報判定手段16に通知する(ステップS4)。
ここで、ブロック判定結果反映手段25は、ブロック単位シグネチャ情報判定手段16に通知されたブロックを含む元の流通ファイルに関連する他のブロック(すなわち元の流通ファイルと同一のファイルに含まれる他のブロック)が比較済みかどうかを判定する(ステップS22)。初めて比較する流通ファイルのブロックである場合(ステップS22におけるNO)、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックと、シグネチャ情報格納手段14に記憶されたシグネチャ情報とを比較する(ステップS5)。
一方、すでに比較済みのブロックがある場合(ステップS22におけるYES)、ブロック判定結果反映手段25は、ブロック単位変更情報をブロック単位変更情報格納手段24から読み取り、シグネチャ情報を変更する(ステップS23)。そして、ブロック単位シグネチャ情報判定手段16は、受け取ったブロックと、変更後のシグネチャ情報とを比較する(ステップS5)。以降の処理は、第1の実施形態におけるステップS6〜ステップS12の処理と同様である。
次に、本実施形態の効果について説明する。以上のように、本実施形態によれば、第1の実施形態と同様に、ブロック単位シグネチャ情報判定手段16が、ファイル種別シグネチャ情報生成手段13が生成したシグネチャ情報とそのシグネチャ情報に含まれる揺れ許容数とを基にブロック単位でシグネチャ情報判定を実施する。そして、閾値以上のシグネチャ情報がマッチしたときに、ファイル判定手段17が機密ファイルもしくはその亜種ファイルであると判定する。そのため、検出対象のファイルが変化したファイル(例えば、亜種ファイル)を高速に検出することができる。
また、ファイル種別シグネチャ情報生成手段13が、ひとつの機密ファイルとファイル種別亜種影響ルール情報とを基に機密ファイルとその亜種ファイルを検出するためのシグネチャ情報を生成する。そのため、少数の機密ファイルを基に亜種を検出することができる。すなわち、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出できる。
また、ファイル種別シグネチャ情報生成手段13が、ファイル種別ごとに設定されたファイル種別亜種影響ルール情報に基づいて機密ファイルとその亜種ファイルを検出するためのシグネチャ情報をファイル種別ごとに生成する。そのため、ファイルの種別に適合したシグネチャ情報を生成できるとともに、ブロック単位での比較回数を少なくできる。
さらに、第2の実施形態と同様に、ブロック判定結果反映手段25が、過去の判定結果を基にシグネチャ情報を更新して比較する位置を調整するため、検出対象のファイルが変化したファイル(例えば、亜種ファイル)をより高速に検出することができる。
以下、図9に例示する情報漏洩防止システムについて、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。
図11は、P2Pブロック取得手段15が抽出したブロック情報の例を示す説明図である。本実施例では、P2Pネットワーク中を流れる図11に例示するブロック情報が存在し、そのブロック番号順にP2Pブロック取得手段15がブロックを抽出した場合の動作を説明する。また、ファイル種別亜種影響ルール情報格納手段12は、図2に例示するファイル種別亜種影響ルール情報を記憶しているものとする。
まず、機密ファイル格納手段11に「Office2007WordのOOXML形式」であるファイル「機密ファイル1」が記憶されると、ファイル種別シグネチャ情報生成手段13は、ファイル種別亜種影響ルール情報格納手段12から、対応するファイル種別亜種影響ルール情報(すなわち、「Office2007WordのOOXML形式」の情報)を取り出す。そして、ファイル種別シグネチャ情報生成手段13は、ファイル断片情報取得位置、ファイル断片情報取得数、ファイル断片情報取得間隔及びファイル断片情報長さに従って、元の「機密ファイル1」を切り出す。
さらに、ファイル種別シグネチャ情報生成手段13は、ファイル種別亜種影響ルール情報の「Office2007WordのOOXML形式」の情報に従って、揺れ許容量(ここでは、10または5)及び閾値(ここでは、1または2)を付与してシグネチャ情報を生成し、シグネチャ情報格納手段14に記憶させる。生成されたシグネチャ情報の例を図12に示す。なお、図12に示す例では、シグネチャ情報格納手段14は、「Office2003以前のWord」のファイルである「機密ファイル2」のシグネチャ情報も合わせて記憶しているものとする。
次に、P2Pブロック取得手段15が、P2Pネットワーク上から図11に例示するブロック番号1のブロックを抽出したときの動作を説明する。
ブロック番号1のファイルは「Office2003のWord」形式の「機密でないファイル」である。しかし、この時点では「機密でないファイル」に関するブロックは検出されていないものとする。そこで、ブロック単位シグネチャ情報判定手段16は、シグネチャ情報のうち、「機密でないファイル」と同形式のファイル「機密ファイル2」のシグネチャ情報とブロック番号1のブロックとの間でマッチングを実施する。
元のファイルの位置情報(例えば、ファイル全体のサイズ及びブロックの開始位置)から、ブロック1の出現位置が判断できる。ここでは、ブロック1の出現位置が、「先頭から30%から70%以内であると判断されたものとする。ブロック単位シグネチャ情報判定手段16は、ブロック1に含まれるパターンとシグネチャ情報とを比較する。なお、このとき比較に利用されるシグネチャ情報は、図12に例示するシグネチャ情報のうち、ファイルが「機密ファイル2」、ファイル断片情報の出現位置が1408bitのものになる。
この場合、ブロック1のファイル断片情報の先頭からマッチングを始めてもシグネチャ情報のファイル断片情報のパターンと一致しない。そこで、ブロック単位シグネチャ情報判定手段16は、シグネチャ情報に含まれる揺れ許容量に従い、前後3bit分ずらしてマッチングを行う。このように、揺れ許容量はファイルの種類によって決められているため、ブロック単位シグネチャ情報判定手段16は、パターンマッチは3Bit分繰り返すだけでよい。ただし、この場合は、前後3bit分ずらしてもパターンが一致しないため、ブロック単位シグネチャ情報判定手段16は、両者が一致しないと判定する。
次に、P2Pブロック取得手段15が、ブロック番号2のブロックを抽出したときの動作を説明する。ブロック2をマッチングするこの段階では、ファイル「機密ファイル1の亜種」に関するブロックが検出されていない。そのため、ブロック単位シグネチャ情報判定手段16は、シグネチャ情報に含まれるファイルのうち、ファイル形式が同じ「Office2007WordのOOXML形式」であるファイル「機密ファイル1」のシグネチャ情報とブロック番号2のブロックとの間でのマッチングを実施する。
ブロック2のブロック開始位置は128bit目である。そのため、ブロック単位シグネチャ情報判定手段16は、この情報に対応する「機密ファイル1」のファイル断片情報出現位置が128bitであるファイル断片情報とブロック2のブロック断片情報とのマッチングを実施する。
この場合、ファイル断片情報出現位置を完全に一致させてマッチングしても、ファイル断片情報は一致しない。これは、ブロック2に含まれるファイル断片情報が、5bit分後ろ方向にずれているためである。そこで、ブロック単位シグネチャ情報判定手段16は、シグネチャ情報の揺れ許容量をもとに、最大10bit分ずらしてマッチングを実施する。ここでは、5bitずれているので、5bit分ずらして比較すると、ファイル断片情報は一致する。そこで、ブロック単位シグネチャ情報判定手段16は、ブロック単位判定結果格納手段20に、ブロック2と5bitずれたファイル断片情報とが一致したことを示す判定結果を記録する。
次に、P2Pブロック取得手段15が、ブロック番号3のブロックを抽出したときの動作を説明する。ブロック単位シグネチャ情報判定手段16がブロック3を受信したときには、既にすでにブロック2との比較でマッチした情報(判定結果)が存在する。そこで、ブロック判定結果反映手段25は、ブロック単位判定結果格納手段20からこの情報を取り出す。さらに、ブロック単位シグネチャ情報判定手段16は、ブロック単位変更情報格納手段24から、ブロック単位変更情報を取り出す。
図13は、ブロック単位変更情報格納手段24に記憶されたブロック単位変更情報の例を示す説明図である。ここでは、ブロック2の開始位置がファイル全体の先頭から30%であるものとし、ブロック単位シグネチャ情報判定手段16は、ブロック単位変更情報として、ファイル種別が「Office2007WordのOOXML形式」で、ファイル断片情報位置が「先頭から30%」のブロック単位変更情報を取り出すものとする。このブロック単位変更情報から、オフセット率が50%であり、揺れ許容量倍率(揺れ許容数倍率と記すこともある。)も50%であることがわかる。
これは、ブロック単位変更情報からオフセット率が50%、すなわち、他のブロックとは50%ずれている可能性が高いことを意味し、その位置からの揺れ許容数倍率が50%であることを意味する。このことから、ブロック単位シグネチャ情報判定手段16は、5bitずれの半分(50%)に相当する2bit目を中心に、もともとの揺れ許容数倍率(10bitbit)の半分(50%)にあたる5bitをずらしてパターンマッチをすれば良いことがわかる。
ここで、ブロック3のブロック断片情報は、シグネチャ情報の「機密ファイル1」の256bit目からのファイル断片情報が4bitずれているものである。まず、ブロック単位シグネチャ情報判定手段16は、ブロック単位変更情報をもとに変更されたシグネチャ情報に従い、2bitずらした位置からマッチングを開始する。ただし、2bitずらした位置でも両者は一致しない。そこで、ブロック単位シグネチャ情報判定手段16は、さらに2bit分(1回あたり1bitずつ比較する場合は2回分)ずらしてマッチングを行うと、両者は一致する。すなわち、両者が4bitずれていても2bit分の移動でファイル断片情報のマッチングを終了させることができる。
このように、ブロック単位シグネチャ情報判定手段16は、ブロックとシグネチャ情報とのマッチングを順次実施する。
次に、ファイル判定手段17は、1つのブロックのマッチング処理が終了するごとに、それまでマッチングしたブロックを検査し、マッチしているブロックの数とシグネチャ情報の閾値とを比較する。マッチしているブロックの数がシグネチャ情報の閾値を越えているファイルがあれば、ファイル判定手段17は、該当ファイルの情報をブラックリスト格納手段18に記憶させる。そして、P2P流通阻止手段19は、該当ファイルがP2Pネットワーク上を流通することを阻止する。
次に、本発明による情報漏洩防止システムの最小構成の例を説明する。図14は、本発明による情報漏洩防止システムの最小構成の例を示すブロック図である。本発明による情報漏洩防止システムは、検出対象のファイル(例えば、機密ファイル)の一部であるファイル断片情報と、検出対象ファイル内におけるファイル断片情報の出現位置(例えば、ファイル断片情報出現位置)と、その出現位置と検出対象ファイルに相当するか否かが判定されるファイルである流通ファイルのブロックが出現する位置との揺れ幅の許容量を示す揺れ許容量と、流通ファイルが検出対象ファイルと判定される条件であるファイル断片情報と一致すべきブロックの数の下限を示す判定閾値とを含む情報を検出対象ファイルと対応付けたシグネチャ情報を記憶するシグネチャ情報格納手段81(例えば、シグネチャ情報格納手段14)と、検出対象ファイルをもとにシグネチャ情報をファイルの種別ごとに生成することを規定したルールであるファイル種別亜種影響ルールを記憶するファイル種別亜種影響ルール情報格納手段82(例えば、ファイル種別亜種影響ルール情報格納手段12)と、ファイル種別亜種影響ルール情報に従って検出対象ファイルのシグネチャ情報をファイルの種別ごとに生成し、そのシグネチャ情報をシグネチャ情報格納手段81に記憶させるファイル種別シグネチャ情報生成手段83(例えば、ファイル種別シグネチャ情報生成手段13)と、流通ファイルのブロックごとに、そのブロックがシグネチャ情報格納手段81に記憶されたシグネチャ情報と揺れ許容量の範囲内で一致するか否かを判定するブロック単位シグネチャ情報判定手段84(例えば、ブロック単位シグネチャ情報判定手段16)と、シグネチャ情報と一致したブロックの数及び判定閾値に基づいて、流通ファイルが検出対象ファイルに相当するファイル(例えば、機密ファイルもしくはその亜種ファイル)か否かを判定するファイル判定手段85(例えば、ファイル判定手段17)と、ファイル判定手段85が検出対象ファイルと判定したファイルの流通を阻止する流通阻止手段86(例えば、P2P流通阻止手段19)とを備えている。
そのような構成により、検出対象のファイルを特定する特徴的なキーワードを含むファイルが少数しか存在しない場合であっても、検出対象のファイルが変化したファイルを適切に検出でき、さらに、検出対象のファイル及び変化したファイルを高速に検出して情報漏洩を防止できる。
なお、少なくとも以下に示すような情報漏洩防止システムも、上記に示すいずれかの実施形態に開示されている。
(1)検出対象のファイル(例えば、機密ファイル)の一部であるファイル断片情報と、検出対象ファイル内におけるファイル断片情報の出現位置(例えば、ファイル断片情報出現位置)と、その出現位置と検出対象ファイルに相当するか否かが判定されるファイルである流通ファイルのブロックが出現する位置との揺れ幅の許容量を示す揺れ許容量と、流通ファイルが検出対象ファイルと判定される条件であるファイル断片情報と一致すべきブロックの数の下限を示す判定閾値とを含む情報を検出対象ファイルと対応付けたシグネチャ情報を記憶するシグネチャ情報格納手段(例えば、シグネチャ情報格納手段14)と、検出対象ファイルをもとにシグネチャ情報をファイルの種別ごとに生成することを規定したルールであるファイル種別亜種影響ルールを記憶するファイル種別亜種影響ルール情報格納手段(例えば、ファイル種別亜種影響ルール情報格納手段12)と、ファイル種別亜種影響ルール情報に従って検出対象ファイルのシグネチャ情報をファイルの種別ごとに生成し、そのシグネチャ情報をシグネチャ情報格納手段に記憶させるファイル種別シグネチャ情報生成手段(例えば、ファイル種別シグネチャ情報生成手段13)と、流通ファイルのブロックごとに、そのブロックがシグネチャ情報格納手段に記憶されたシグネチャ情報と揺れ許容量の範囲内で一致するか否かを判定するブロック単位シグネチャ情報判定手段(例えば、ブロック単位シグネチャ情報判定手段16)と、シグネチャ情報と一致したブロックの数及び判定閾値に基づいて、流通ファイルが検出対象ファイルに相当するファイル(例えば、機密ファイルもしくはその亜種ファイル)か否かを判定するファイル判定手段(例えば、ファイル判定手段17)と、ファイル判定手段が検出対象ファイルと判定したファイルの流通を阻止する流通阻止手段(例えば、P2P流通阻止手段19)とを備えた情報漏洩防止システム。
(2)流通ファイルのブロックごとに、そのブロックとシグネチャ情報とが一致すると判定されたときの揺れ幅を記憶するブロック単位判定結果格納手段(例えば、ブロック単位判定結果格納手段20)と、シグネチャ情報におけるファイル断片情報の出現位置を調整する値であるオフセット率と、シグネチャ情報における揺れ許容量を減少させる値である揺れ許容量倍率のうちの少なくとも1つを含む情報をファイル断片情報の出現位置ごとに規定した情報であるブロック単位変更情報を記憶するブロック単位変更情報格納手段(例えば、ブロック単位変更情報格納手段24)と、ブロック単位判定結果格納手段に記憶された揺れ幅及びブロック単位変更情報に基づいて、シグネチャ情報を更新するブロック判定結果反映手段(例えば、ブロック判定結果反映手段25)とを備え、ブロック単位シグネチャ情報判定手段が、ブロック判定結果反映手段が更新したシグネチャ情報とブロックとが一致するか否かを判定し、そのブロックとシグネチャ情報とが一致すると判定されたときの揺れ幅をブロック単位判定結果格納手段に記憶させる情報漏洩防止システム。
(3)ブロック判定結果反映手段が、ブロック単位判定結果格納手段に記憶された揺れ幅及びブロック単位変更情報のオフセット率に基づき、ブロックと比較するファイル断片情報の出現位置を更新し、ブロック単位シグネチャ情報判定手段が、ブロック判定結果反映手段が更新した出現位置から揺れ許容量の範囲内でファイル断片情報とブロックとが一致するか否かを判定する情報漏洩防止システム。
(4)ブロック判定結果反映手段が、揺れ許容量倍率に基づいて揺れ許容量の範囲を更新し、ブロック単位シグネチャ情報判定手段が、ブロック判定結果反映手段が更新した揺れ許容量の範囲内でシグネチャ情報とブロックとが一致するか否かを判定する情報漏洩防止システム。
(5)流通ファイルの断片であるブロックごとに、そのブロックとシグネチャ情報とが一致すると判定されたときの揺れ幅を記憶するブロック単位判定結果格納手段(例えば、ブロック単位判定結果格納手段20)を備え、ブロック単位シグネチャ情報判定手段が、ブロックとシグネチャ情報とが一致すると判定されたときの揺れ幅をブロック単位判定結果格納手段に記憶し、ファイル判定手段が、ブロック単位判定結果格納手段に記憶されたブロックの数及び判定閾値に基づいて、流通ファイルが検出対象ファイルに相当するファイルか否かを判定する情報漏洩防止システム。
(6)検出対象ファイルを記憶する検出対象ファイル記憶手段(例えば、機密ファイル格納手段11)と、検出対象ファイル記憶手段に検出ファイルを記憶させる検出対象ファイル登録手段(例えば、機密ファイル登録手段10)とを備え、ファイル種別シグネチャ情報生成手段が、検出対象ファイル記憶手段に記憶されたファイル種別亜種影響ルール情報に従って、検出対象ファイルのシグネチャ情報を生成する情報漏洩防止システム。
(7)流通を阻止するファイルの情報を記憶するブラックリスト格納手段(例えば、ブラックリスト格納手段18)を備え、ファイル判定手段が、検出対象ファイルに相当すると判定した流通ファイルの情報をブラックリスト格納手段に記憶させ、流通阻止手段が、ブラックリスト格納手段に記憶されたファイルの流通を阻止する情報漏洩防止システム。
(8)ピアツーピア型ネットワークから流通ファイルのブロックを抽出するブロック取得手段(例えば、P2Pブロック取得手段15)を備え、ブロック単位シグネチャ情報判定手段が、シグネチャ情報格納手段に記憶されたシグネチャ情報とブロックとが揺れ許容量の範囲内で一致するか否かを判定する情報漏洩防止システム。