(57)【要約】【課題】不正アクセスを検知する場合に、時系列データの動向を反映した異常の検知を可能とする。【解決手段】ネットワーク異常判定装置１００は、ログを取得するデータ取得部１０１と、ログから時系列データを生成する集計部１０２と、主成分分析により、前記時系列データから定常状態特徴量を複数抽出し、かつ、定常状態特徴量が複数抽出された時系列データよりも後の時刻の新規データの新規データ特徴量を抽出する分析部１０３と、定常状態特徴量領域を定義する定常状態定義部１０７と、定常状態特徴量領域と新規データ特徴量とのマハラノビス距離が閾値を越えるかを判定する異常検知部１０４と、閾値を越えると判定された場合に、定常状態特徴量領域に対応する時系列データに対して新規データ特徴量に対応する新規データが上昇傾向にあるかどうかを判定して上昇傾向にある場合に異常が発生したと判定する傾向判定部１０５とを備えた。【選択図】図２
2008146157.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークのログを取得するログ取得部と、
前記ログ取得部が取得したログから時系列データを生成する時系列データ生成部と、
特徴量を抽出する主成分分析を用いることにより、前記時系列データ生成部が生成した時系列データから所定期間の定常状態の時系列データに対応する特徴量である定常状態特徴量を複数抽出するとともに定常状態特徴量が複数抽出された所定期間の定常状態の時系列データよりも後の時刻の時系列データである新規データに対応する特徴量である新規データ特徴量を抽出する分析部と、
前記分析部が抽出した複数の定常状態特徴量に基づいて、複数の定常状態特徴量が分布する定常状態特徴量領域を定義する定常状態定義部と、
前記定常状態定義部が定義した定常状態特徴量領域と、新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えるかどうかを判定する距離判定部と、
前記距離判定部が定常状態特徴量領域と新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えると判定した場合に、定常状態特徴量領域に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向にあるかどうかを判定し、上昇傾向にあると判定した場合に、異常が発生したと判定する傾向判定部と
を備えたことを特徴とするネットワーク異常判定装置。
【請求項２】
前記傾向判定部は、
前記距離判定部が定常状態特徴量領域と新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えると判定した場合に、定常状態特徴量領域に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向と下降傾向とのいずれかの傾向にあるかどうかを判定し、
前記ネットワーク異常判定装置は、さらに、
前記傾向判定部が定常状態特徴量領域に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向と下降傾向とのいずれかの傾向にあると判定した場合に、前記時系列データ生成部が生成する時系列データに対応する対応時系列データを新規データ特徴量に対応する新規データよりも後の時刻の所定期間について所定のシミュレーションモデルによって生成し、所定のシミュレーションによって生成した対応時系列データに基づいて、前記時系列データ生成部により生成された時系列データであって新規データ特徴量に対応する新規データよりも後の時刻の時系列データが、定常状態特徴量領域に対応する所定期間の定常状態の時系列データにおける定常状態から新たな定常状態に収束したかどうかを判定する収束判定部を
備えたことを特徴とする請求項１記載のネットワーク異常判定装置。
【請求項３】
前記収束判定部は、
対応時系列データとして、定常状態特徴量領域と新規データよりも後の時刻の時系列データに対応する特徴量とのマハラノビス距離を生成することを特徴とする請求項２記載のネットワーク異常判定装置。
【請求項４】
前記収束判定部は、
対応時系列データとして、前記時系列データ生成部が生成する時系列データと同一の種別の時系列データであって新規データ特徴量に対応する新規データよりも後の時刻の時系列データを生成することを特徴とする請求項２記載のネットワーク異常判定装置。
【請求項５】
前記収束判定部は、
所定のシミュレーションモデルとして、ＡＲＭＡ（Ａｕｔｏ  Ｒｅｇｒｅｓｓｉｖｅ  Ｍｏｖｉｎｇ  Ａｖｅｒａｇｅ）モデルを使用することを特徴とする請求項３または４のいずれかに記載のネットワーク異常判定装置。
【請求項６】
前記距離判定部は、
前記収束判定部が定常状態特徴量領域に対応する所定期間の定常状態の時系列データにおける定常状態から新たな定常状態に収束したと判定した場合に、前記収束判定部により収束したと判定された新たな定常状態に含まれる時系列データに対応する特徴量と定常状態特徴量領域とのマハラノビス距離を算出し、算出したマハラノビス距離が予め定められた所定の閾値を越えるかどうかを判定し、
前記ネットワーク異常判定装置は、さらに、
前記距離判定部がマハラノビス距離が予め定められた所定の閾値を越えると判定した場合に、擬似的な定常状態の時系列データである擬似定常状態データを生成し、生成した擬似定常状態データに対して主成分分析を用いることにより擬似的な定常状態特徴量を生成し、生成した擬似的な定常状態特徴量から擬似的な定常状態特徴量領域を生成する擬似データ生成部を備え、
前記距離判定部は、
前記擬似データ生成部が擬似的な定常状態特徴量領域を生成した場合に、前記擬似データ生成部が生成した擬似的な定常状態特徴量領域を定常状態特徴領域に代えて、処理を継続することを特徴とする請求項２記載のネットワーク異常判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、不正アクセスに基づくネットワークの異常を判定するネットワーク異常判定装置に関する。
【背景技術】
【０００２】
従来の主成分分析による不正アクセスの時系列データ分析として、例えば、非特許文献１に記載されている、ネットワーク監視データをある一定の長さの変化を１単位時間づつシフトしながら切り出し、行列化し主成分分析を行い、特徴量を用いて異常を検知する方法がある。この方法では、主成分分析を行った結果、定常状態に該当する特徴量から乖離した特徴量をもつネットワーク監視データを異常と判断する。ここでの「定常状態」とは、不正アクセスを受けていない状態のネットワーク監視データの状態を示し、ある周期性を持ったデータ、或いは、規則性が無くともある上限、下限の大きさに収まるデータなどを意味する（以下、本明細書では、定常状態をこの意味で使用する）。この場合、例えばワームの拡散などの不正アクセスを受けた場合は、この周期性が乱れたり、上限を超えたデータが発生すると仮定している。
【０００３】
また、この様な分析手法においては定常状態のデータの定義がその後の異常の検知の精度を左右するが、異常検知後の収束を自動的に判断し、定常状態のデータを再定義する従来技術は見当たらない。
【０００４】
恐らく、従来は、定常状態のデータの値の範囲はいつも同じであるような用途が多かったためと思われる。すなわち、異常発生後は、予め設定された管理目標値に向けてデータが収束するように制御するか、或いは自然に管理目標値に戻った時点をもって収束と判断され、定常状態のデータはその管理目標値の範囲のデータが使用する、という用途が多かったからと予測される。すなわち、プラントのタンク容量などが対象であり、定常状態のデータを更新する必要性がなく、定常状態のデータは固定でよかった。
【非特許文献１】「平井他：定点観測による不正アクセス対策システムの提案〜ワーム攻撃による異常検出のためのネットワークログ分析手法〜、ＩＰＳＪ６８回全国大会」
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の分析技術では、異常検知後のデータの制御の目標値として、予め知られている収束目標値に収束するように制御したり、或いは自然に収束することを検知し、異常検知の監視を再開していた。
しかし、ネットワークの不正アクセスの分析に主成分分析を用いた場合、必ずしも収束目標値が予め分かっているとは限らない。例えば、単純に不正アクセスデータの動きを観測・分析するような場合で、その不正アクセスデータの動きに対して能動的に制御を行えない場合である。つまり、収束する値が予め分からない場合である。
また、収束後、分析に必要な定常状態のデータが十分蓄積されていないため、検知開始までに遅延が発生する課題があった。
【０００６】
本発明は、不正アクセスを検知する場合に、時系列データの動向を反映した異常の検知を可能とするとともに、不正アクセス発生後の定常状態への収束を自動的に判定することを可能とする。また、収束判定後の検知の再開において、定常状態のデータを擬似的に生成し再検知の開始を早めることを目的とする。
【課題を解決するための手段】
【０００７】
この発明のネットワーク異常判定装置は、
ネットワークのログを取得するログ取得部と、
前記ログ取得部が取得したログから時系列データを生成する時系列データ生成部と、
特徴量を抽出する主成分分析を用いることにより、前記時系列データ生成部が生成した時系列データから所定期間の定常状態の時系列データに対応する特徴量である定常状態特徴量を複数抽出するとともに定常状態特徴量が複数抽出された所定期間の定常状態の時系列データよりも後の時刻の時系列データである新規データに対応する特徴量である新規データ特徴量を抽出する分析部と、
前記分析部が抽出した複数の定常状態特徴量に基づいて、複数の定常状態特徴量が分布する定常状態特徴量領域を定義する定常状態定義部と、
前記定常状態定義部が定義した定常状態特徴量領域と、新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えるかどうかを判定する距離判定部と、
前記距離判定部が定常状態特徴量領域と新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えると判定した場合に、定常状態特徴量領域に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向にあるかどうかを判定し、上昇傾向にあると判定した場合に、異常が発生したと判定する傾向判定部と
を備えたことを特徴とする。
【発明の効果】
【０００８】
本発明は、不正アクセスを検知する場合に、時系列データの動向を反映した異常の検知を行なうので、異常判定の精度を高めることができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１〜図１８を用いて実施の形態を説明する。まず、説明を始める前に、用語を定義する。
（１）「定常状態ＮＷ（Ｎｅｔ  Ｗｏｒｋ）データ１１」とは、定常状態のネットワーク監視データから集計されたデータを意味する。
（２）「定常状態ＮＷデータ領域１２」とは、定常状態ＮＷデータの分布範囲を意味する。
（３）「定常状態特徴量２１」とは、定常状態ＮＷデータ１１から算出された特徴量を意味する。
（４）「定常状態特徴量領域２２」とは、定常状態特徴量２１の分布範囲を意味する。
なお、これらの（１）〜（４）の用語は、図によって後述する。
（５）また、以下の実施の形態で述べる主成分分析において、「特徴量」とは、主成分得点を意味する。「ＰＣ１」とは、第１主成分を意味し、「ＰＣ２」とは、第２主成分を意味する。なお、主成分得点とは、ＰＣ１，ＰＣ２などの主成分に対して実際のデータを射影した値をいい、例えば、ＰＣ１に元のデータを射影した場合に得られる値が、そのデータのＰＣ１上の主成分得点である。
【００１０】
図１は、実施の形態１における不正アクセス検知装置１００（ネットワーク異常判定装置）のハードウェア資源の一例を示す図である。図１において、不正アクセス検知装置１００は、プログラムを実行するＣＰＵ８１０（中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ８１０は、バス８２５を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８１２、通信ボード８１６、磁気ディスク装置８２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置８２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
【００１１】
ＲＡＭ８１２は、揮発性メモリの一例であり、ＲＯＭ８１１、磁気ディスク装置８２０等の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部、格納部の一例である。通信ボード８１６は、入力部、入力装置、出力部、出力装置の一例である。
【００１２】
磁気ディスク装置８２０には、ＯＳ（オペレーティングシステム）８２１、プログラム群８２３、ファイル群８２４が記憶されている。プログラム群８２３のプログラムは、ＯＳ８２１及びＣＰＵ８１０により実行される。
【００１３】
上記プログラム群８２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ８１０により読み出され実行される。
【００１４】
ファイル群８２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の算出結果」、「〜の抽出結果」、「〜の生成結果」、「〜の処理結果」として説明する情報や、後述する「集計データ１５１（時系列データ）」や「特徴量」、及びデータや信号値や変数値やパラメータなどが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ８１０によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００１５】
また、以下に述べる実施の形態の説明においては、データや信号値は、ＲＡＭ８１２のメモリ、磁気ディスク装置８２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス８２５や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１６】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ８１１に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ８１０により読み出され、ＣＰＵ８１０により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１７】
図２は、実施の形態１における不正アクセス検知装置１００（ネットワーク異常判定装置）のブロック構成図である。
【００１８】
図２に示すように、不正アクセス検知装置１００は、データ取得部１０１（ログ取得部）、集計部１０２（時系列データ生成部）、分析部１０３、異常検知部１０４（距離判定部）、傾向判定部１０５、収束判定部１０６、定常状態定義部１０７、定常状態再定義部１０８を備える。
【００１９】
図２において、
（１）データ取得部１０１は、ネットワーク機器のログ１５０を取り込む。
（２）集計部１０２は、ネットワーク機器のログ１５０から、分析視点に基づく時系列データである集計データ１５１を生成する。
（３）分析部１０３は、集計部１０２から集計データ１５１を受け取り、主成分分析（ＰＣＡ：Ｐｒｉｎｃｉｐａｌ  Ｃｏｍｐｏｎｅｎｔ  Ａｎａｌｙｓｉｓ）を行い、特徴量（主成分得点）１５２を算出する。
（４）異常検知部１０４は、分析部１０３の結果において、マハラノビス距離に基づき、現在の集計データの特徴量が、定常状態特徴量領域２２から逸脱（異常）しているか否か（定常）を検知する。
（５）傾向判定部１０５は、現在の集計データが、定常状態の集計データに対して上昇傾向にあるか下降傾向にあるかを判定する。
（６）収束判定部１０６は、時系列データが収束したかどうかを、ＰＣＡ（Ｐｒｉｎｃｉｐａｌ  Ｃｏｍｐｏｎｅｎｔ  Ａｎａｌｙｓｉｓ：主成分分析）の結果のマハラノビス距離の収束状態から判定する。
（７）定常状態定義部１０７は、定常状態の集計データを入力とし、集計部１０２、分析部１０３と連携しＰＣＡを行った結果得られる特徴量を保持するとともに、定常状態ＮＷデータ領域１２、定常状態特徴量領域２２を定義する。
（８）定常状態再定義部１０８は、収束判定部１０６が、マハラノビス距離の収束を判定した後、新しい擬似的な定常状態ＮＷデータ１１を定義する。
【００２０】
次に、図３を参照して、データ取得部１０１、集計部１０２、分析部１０３の動作を説明する。図３は、データ取得部１０１、集計部１０２、及び分析部１０３のシーケンス図である。なお、本実施の形態１の説明では、収束判定部１０６、定常状態再定義部１０８は、登場しない。収束判定部１０６は実施の形態２で説明し、定常状態再定義部１０８は実施の形態５、６で説明する。
【００２１】
（データ取得部１０１）
まず、データ取得部１０１は、ネットワーク監視データ（例えば、ネットワーク機器のログ１５０）を受信し、集計部１０２にデータを渡す（Ｓ１０１）。ネットワーク監視データとして例えば、後述する図５の様な、ログファイルを定期的に取り込む。
【００２２】
（集計部１０２）
次に集計部１０２は、データ取得部１０１から受け取ったネットワーク監視データから、分析視点に基づく時系列データを生成する（Ｓ１０２）。例えば、図４は、ＤｓｔＰｏｒｔ４４５番宛の５分集計のＩＤＳ（Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ）のＡｌｅｒｔ数の時系列データである。この様な時系列データは、ネットワークログデータから、集計時間内の該当する項目を数え上げることで得られる。例えば、図５は、ＩＤＳのＡｌｅｒｔログの例であり、様々なＡｌｅｒｔの発生が記録されている。ＤｓｔＰｏｒｔ４４５番宛のＡｌｅｒｔを５分ごとに集計して数え上げる場合、
０６／０４／１８：１２：００：００〜０６／０４／１８：１２：０４：５９
までの５分間の集計は、３つ該当するログが記録されているので、「３」となる。このような数え上げを５分毎に行うことで、図４の様な時系列のグラフが得られる。
【００２３】
図４は、分析に利用する時系列データのイメージを説明するものであるが、実際に集計部１０２が出力するのは、図６のような集計データ１５１である。Ｔｉｍｅと記述されている列は、集計開始時点から集計時間が経過した時刻を示す。
【００２４】
例えば、
０６／０４／１８：１２：００：００
から集計を開始し、５分単位で集計を行うのであれば、
Ｔ１は、０６／０４／１８：１２：０５：００、
Ｔ２は、０６／０４／１８：１２：１０：００となる。
【００２５】
Ｃｏｕｎｔは、その時刻までに集計時間で数え上げた該当項目の数を示す。
０６／０４／１８：１２：００：００から０６／０４／１８：１２：０４：４９
までの集計結果をＴ１の横に記述する。図５によればこの期間であるＴ１は、「３」である。
同様に
０６／０４／１８：１２：０５：００から０６／０４／１８：１２：０９：５９
までの集計結果をＴ２の横に記述する。以降、繰り返す。
【００２６】
集計部１０２は、この様に集計を行った結果である集計データ１５１を分析部１０３出力する。
【００２７】
データ取得部１０１には最新のログデータが随時取り込まれ、集計部１０２に渡される。集計部１０２では、そのログデータに対し集計時間に基づく数え上げを行い、図６の集計データ１５１を出力する。例えば、集計部１０２は、集計時間が経過する毎に最新のログデータをデータ取得部１０１から取り込む。その結果、例えば、図６のように、
０６／０４／１８：１２：００：００から５分経過すると「ＴｉｍｅＴ１，Ｃｏｕｎｔ３」という集計データが得られる。さらに５分経過すると「ＴｉｍｅＴ２，Ｃｏｕｎｔ４」という集計結果が得られる。集計部１０２は、これら集計データが得られる度に分析部１０３へ出力する。
【００２８】
（分析部１０３）
分析部１０３では、集計部１０２から得られた集計データ（時系列データ）の変化を分析する（Ｓ１０３）。実装例として、ＰＣＡによる特徴量の抽出を利用した方法を説明する。
【００２９】
分析部１０３は、集計部１０２から定期的に出力される集計データ１５１に対してＰＣＡを行う。図７はＰＣＡを説明する図である。図７を参照して、ＰＣＡを説明する。ＰＣＡの実施の方法は、図７に示す様に、大きさｍのウィンドウを設け、ウィンドウを「集計時間（例えば５分）×１」づつずらしながらデータを切り出し、そのデータを行として順次並べることで、行列を作成する。最新の集計データが一番下の行に含まれる行列が生成されたれた時点で、分析部１０３は、行列に対してＰＣＡを実施する。その結果、各行に対する特徴量が得られる。
【００３０】
この方式では、ある時刻からウィンドウサイズ分遡った時系列データの波形は、行列の行で示される。各行は集計時間ごとにずらして生成されるので、この様にＰＣＡを実施することで、
「各行＝集計時間毎にウィンドウサイズ分遡った波形」の特徴量を得ることができる。このように、ＰＣＡを利用することで、ある集計時間でのデータの大きさだけでなく、それまでのデータの形も含めて時系列でどのように変化しているか捉えることができる。
【００３１】
図７の例では、ＰＣＡは、７次元で表現される波形データを特徴量という２次元の変量に変換する。この特徴量は、ＰＣＡの第１主成分の主成分得点（ＰＣ１）、及び第２主成分の主成分得点（ＰＣ２）のことであり、２次元の座標でデータの変化を観察するために利用される。
【００３２】
なお、通常、ＰＣＡの結果として使用する特徴量の数は、累積寄与率が８割程度に達するものを選ぶことが多いとされる。その場合に使用する特徴量の数は２つとは限らないが、ここでは説明を簡単にするため、データの傾向を捉える上位２つのＰＣ（Ｐｒｉｎｃｉｐａｌ  Ｃｏｍｐｏｎｅｎｔ：主成分）を用いて説明する。
【００３３】
上記では、データ取得部１０１、集計部１０２及び分析部１０３の動作を説明した。以下では、データ取得部１０１、集計部１０２、分析部１０３の動作をもとに定常状態定義部１０７による定常状態ＮＷデータ領域１２、定常状態特徴量領域２２の定義について説明する。
【００３４】
（定常状態定義部１０７）
図３、図８、図９等を用いて、定常状態定義部１０７の動作を説明する。まず、ネットワーク機器のログ１５０として、図８のステップＳ１に示すように、不正アクセスの被害を受けていない状態（定常状態）のログデータを不正アクセス検知装置１００のデータ取得部１０１が入力する。
【００３５】
（ステップＳ１：定常状態特徴量領域２２の定義のためのデータ取得）
ログに記録された期間を「Ｔｉ〜Ｔｉ＋ｎ」とする。データ取得部１０１は、これを入力とし、集計部１０２へ渡す。集計部１０２は、「Ｔｉ〜Ｔｉ＋ｎ」のログデータに対し、集計時間ごとに分析視点に基づき図６の様な集計データ１５１を分析部１０３に出力する。定常状態のネットワーク監視データから集計されたデータは、冒頭で定義したように、定常状態ＮＷデータ１１であり、その分布範囲は定常状態ＮＷデータ領域１２である。分析部１０３は、集計データ１５１を用いて図７の様に行列を生成し、ＰＣＡを実施し、各行の特徴量を定常状態定義部１０７に出力する。分析部１０３は、これに加えて定常状態ＮＷデータ１１も定常状態定義部１０７に出力する。
【００３６】
（ステップＳ２：定常状態定義部１０７による定常状態特徴量領域２２の定義）
図８のステップＳ２において、定常状態定義部１０７は、分析部１０３から分析の結果得られた特徴量を受け取る。この特徴量が、冒頭で定義した定常状態特徴量２１である。また、定常状態定義部１０７は、定常状態特徴量２１の分布範囲を、冒頭で定義した定常状態特徴量領域２２として定める。ここでは、特徴量として第１主成分得点（ＰＣ１）と第２主成分得点（ＰＣ２）とを扱う例を示しているので、ＰＣ１、ＰＣ２の２次元の表現になっている。また、定常状態定義部１０７は、受け取った定常状態ＮＷデータ１１に対して定常状態ＮＷデータ領域１２を定義する。
【００３７】
なお、定常状態定義部１０７における、情報の保持の仕方として、図６の表を拡張し、
「Ｔｉｍｅ：Ｃｏｕｎｔ：ＰＣ１：ＰＣ２」
として、その時刻の特徴量も横に並べる。
この様に、定常状態定義部１０７は、定常状態ＮＷデータ領域１２と定常状態特徴量領域２２とを定義する。
【００３８】
次に、図９、図１０を参照して、時系列データの変化を捉えるための動作を示す。時系列データ（ログデータ）の入力、集計、ＰＣＡによる分析は、前述したようにデータ取得部１０１、集計部１０２、分析部１０３が同様の方法で処理する。
【００３９】
（図９のステップＳ３、Ｓ４）
図８から５分経過した後を示す図９のステップＳ３において、分析部１０３が図８のステップＳ１における定常状態ＮＷデータ１１と、さらに５分後のＴｉ＋ｎ＋１の集計データを併せ、図９のステップＳ４のＰＣＡを実施する。この結果、最新の５分の集計データであるＴｉ＋ｎ＋１の集計データに該当する特徴量が、定常状態ＮＷデータ領域１２に含まれる定常状態に該当する特徴量の領域（定常状態特徴量領域２２）に含まれる場合は、異常検知部１０４は定常状態と判定する。この判定は、異常検知部１０４が行う。なお厳密には、“Ｔｉ＋ｎ＋１の集計データ”に該当する特徴量ではなく、図７の行列において、“Ｔｉ＋ｎ＋１の集計データを最後の列に含んだ行”に該当する特徴量である。この様な行は、図７の行列の作り方から、一番下の行が該当する。
【００４０】
この様に、図４のような時系列データが定常か異常かを、特徴量に変換して判定する。
【００４１】
（図９のステップＳ５）
図９のステップＳ４の様に、異常検知部１０４により定常状態と判定された場合は、分析部１０３は、図９のステップＳ５において、定常状態定義部１０７における定常状態ＮＷデータ領域１２の最も古い集計データ（Ｔｉに該当する集計データ）を１つ削除し、最も新しい集計データ（Ｔｉ＋ｎ＋１に該当する集計データ）を含め、定常状態ＮＷデータ領域１２を更新する。さらに、定常状態ＮＷデータ領域１２に含まれる定常状態ＮＷデータ１１に対してＰＣＡを再実施し、そして定常状態定義部１０７が定常状態特徴量領域２２を更新する。このように、定常状態ＮＷデータ領域１２と定常状態特徴量領域２２との更新は、定常状態定義部１０７が分析部１０３と連携して行う。図７にて説明した行列で示すのであれば、図７において、一番上の行（最も古い集計データが含まれる行）を削除した残りの行列にＰＣＡを実施することに等しい。
【００４２】
（図１０のステップＳ６）
図１０のステップＳ６は、図９のステップＳ３〜Ｓ５を繰り返す過程で、最新の特徴量が定常状態特徴量領域２２から逸脱した場合を示したものである。すなわち、最新の特徴量が定常状態特徴量領域２２から逸脱するまで、ステップＳ３〜Ｓ５が繰り返される。この時点で、定常状態から状態が何かしら変化したことを示している。定常状態特徴量領域２２から逸脱した時点で、定常状態定義部１０７は、定常状態ＮＷデータ領域１２を現在の定常状態ＮＷデータ領域１２に固定する。
【００４３】
（図１１のステップＳ７）
図１１のステップＳ７以後、固定された定常状態特徴量領域２２に含まれる定常状態ＮＷデータ１１に、集計時刻ごとに集計データ積み上げ、都度ＰＣＡに掛ける。ステップＳ５における処理との違いは、過去の定常状態ＮＷデータ１１を削除せずに含める点である。図７のように行列で示すのであれば、図７において、集計時刻ごとに、一番上の行を削除せずに、新しい集計データが一番左の列に位置する新しい行を追加し、ＰＣＡを実施することを繰り返すことに等しい。
【００４４】
この方法により乖離の開始後の各集計時点での特徴量の軌跡を把握できる。不正アクセスが継続され、アクセスが増加している場合は、特徴量は定常域から乖離した状態が続く。図１２は、ステップＳ３〜Ｓ５の繰り返えすとともに、乖離する特徴量が出現した場合を模式的に表した図である。
【００４５】
（図１３のステップＳ８）
時間が進み、図１３のステップＳ８において不正アクセスが収束した場合、特徴量は固定された定常状態ＮＷデータ領域１２に含まれる定常状態ＮＷデータ１１に該当する定常状態特徴量領域２２に戻る。或いは、図１４のステップＳ９に示す様に、固定された定常状態ＮＷデータ領域１２に含まれる定常状態ＮＷデータ１１に該当する定常状態特徴量領域２２ではないが、新しい定常状態に遷移する。ここでは、分かりやすく、群を、小さな○で表現しているが、大きな楕円などである可能性もある。すなわち、特徴量は一定の範囲内に分布する。
【００４６】
さて、新しい定常状態に遷移した場合に、その遷移が完了した時点を把握し、定常状態ＮＷデータ領域１２を再定義し、不正アクセスの検知を再開する必要がある。何故ならば、以前の定常状態ＮＷデータ領域１２を使用したのでは、収束した後の時系列データは、特徴量に変換して判断した場合、定常状態にも関わらず乖離と判断されてしまうからである。収束判定については実施の形態２で述べる。
【００４７】
以下の実施の形態では、ＰＣＡを利用した異常検知から収束判定までの動作を説明する。このうち実施の形態１では異常検知について説明し、収束判定については実施の形態２で説明する。
本実施の形態１における異常検知は、
「異常検知＝マハラノビス距離による定常域からの乖離＋集計データの動向を併せた判定」
により異常を検知する。すなわち、「マハラノビス距離による定常からの乖離」に加え、「集計データの動向」を加味して異常を検知することが特徴である。
【００４８】
以下に、異常検知について説明する。
【００４９】
図８〜図１１、図１３では、特徴量の乖離の概念を分かりやすく説明するために、２次元グラフで特徴量の分布で示した。これは、人間が目視で乖離を確認するには適している方法である。しかし、不正アクセスの検知を自動化する場合は、目視では無い別の方法により特徴量の乖離を判定する必要がある。
【００５０】
異常検知部１０４は、定常状態特徴量領域２２からの逸脱を判断する方法として、マハラノビス距離を使う。ここでの「マハラノビス距離」とは、定常状態特徴量領域２２に存在する特徴量（定常状態特徴量２１）の重心に対して、ある特徴量がどれくらい離れているかを、分散を考慮し計算した距離である。異常検知部１０４は、定常状態特徴量領域の重心に対し、この領域に含まれている定常状態特徴量のマハラノビス距離を元に決めた、マハラノビス距離の「閾値」に対して、最新の特徴量のマハラノビス距離がこの「閾値」を越えるかどうかを判定する。
【００５１】
なお、ＰＣＡの結果として評価に用いる主成分の数は変わることがある。上記の例では、ＰＣ１，ＰＣ２のみであるが、ＰＣ１のみであったり、ＰＣ５まで使用することもある。これは、どの主成分まで使用すれば、元のデータの何割（通常は７、８割とされる）を表す情報量を含むかという判断に依存する。また、マハラノビス距離は、使用する主成分（１つ、２つ、さらに複数）に対して計算される。すなわち、ＰＣ１のみで分析したり、ＰＣ１〜ＰＣ２で分析したり、あるいはＰＣ１〜ＰＣｎで分析する。好適な次元で分析する。
【００５２】
図１５（ａ）は、定常状態特徴量領域２２の重心（×印）に対して各特徴量のマハラノビス距離を求めた場合を示し、図１５（ｂ）は、マハラノビス距離を時系列表現した図である。
【００５３】
ここでのマハラノビス距離とは、各特徴量の定常状態特徴量領域２２の重心からの離れを示すものである。図１６（ａ）は、時系列データが上昇する場合を示し、図１６（ｂ）は（ａ）に対応する特徴量の遷移を示し、図１６（ｃ）は、（ａ）に対応するマハラノビス距離の時系列表現を示す図である。同様に、図１６（ｄ）は、時系列データが下降する場合を示し、図１６（ｅ）は（ｄ）に対応する特徴量の遷移を示し、図１６（ｆ）は、（ｄ）に対応するマハラノビス距離の時系列表現を示す図である。集計データが上昇傾向（図１６（ａ））でも下降傾向（図１６（ｄ））でも、特徴量で見たときに重心から離れていれば乖離として現われる（図１６（ｂ），（ｅ））。これは、マハラノビス距離の時系列グラフでは、両方とも上昇傾向として見える（図１６（ｃ），（ｆ））。
【００５４】
しかし、不正アクセスの“検知”においては、上昇傾向時を捉えることが必要であり、マハラノビス距離の上昇が発生した場合に、それが不正アクセス数（この場合では、集計データを意味する。）が増加傾向にあることで初めて、危険な状態であると判断する必要がある。
【００５５】
本実施の形態１では、集計データの上昇／下降の傾向を判断するために、異常検知部１０４によりマハラノビス距離の上昇が判定された時点で、傾向判定部１０５は、その時点に該当する集計データが、定常状態の集計データに対して、上昇傾向と下降傾向とのいずれの傾向にあるのかを判定する。すなわち、傾向判定部１０５は、異常検知部１０４が定常状態特徴量領域と新規データに対応する特徴量（新規データ特徴量）とのマハラノビス距離が予め設定された閾値を越えると判定した場合に、定常域に対応する所定期間の定常状態の時系列データに対して新規データが上昇傾向にあるかどうかを判定し、上昇傾向にあると判定した場合に、異常が発生したと判定する。例えば、閾値を、定常状態特徴量領域に含まれる各特徴量のマハラノビス距離の最大値に設定しても良い。つまり、定常状態に含まれる特徴量のうちで最も重心から離れている特徴量のマハラノビス距離を閾値とするのである。新規データが上昇傾向にあるかどうかの判定は、具体的には、傾向判定部１０５は、異常検知部１０４によりマハラノビス距離の上昇が判定された時点における集計データが定常状態の集計データと比較して大きい値を取っていることで、「集計データが増加傾向にある」、と判定する。逆に、傾向判定部１０５は、異常検知部１０４によりマハラノビス距離の上昇が判定された時点における集計データが定常状態の集計データと比較して小さい値を取っていることで、「集計データが下降傾向にある」、と判定する。
【００５６】
「大きい／小さい」の判断の方法として、定常状態の集計データの平均値をμ、分散をσ２とすれば、
傾向判定部１０５は、
「マハラノビス距離の上昇の判定時点の集計データ＞μ」
であれば集計データは上昇と判定し、
「マハラノビス距離の上昇の判定時点の集計データ＜μ」
であれば集計データは下降と判定する。
或いは、傾向判定部１０５は、
「マハラノビス距離の上昇の判定時点の集計データ＞μ＋２σ」
であれば集計データは上昇と判定し、
「マハラノビス距離の上昇の判定時点の集計データ＜μ−２σ」
であれば集計データは下降というように、ばらつきを考慮しても良い。
傾向判定部１０５は、異常検知部１０４がマハラノビス距離の乖離を検知した場合に、集計データが上昇傾向であると判断した時点で、不正アクセスの増加を検知した、すなわち、異常と判定する。
【００５７】
本実施の形態１では、ＰＣＡの特徴量の乖離にマハラノビス距離を導入した際に自動判定できなかった集計データの増減傾向を、定常状態ＮＷデータ１１の平均値・分散と、乖離の判定時の集計データを比較することにより、自動判定することができる。これにより、マハラノビス距離に集計データの上昇傾向を加味して異常の判定をすることができるので、判定精度を向上することができる。
【００５８】
図１７は、実施の形態１で説明した動作をまとめたフローチャートである。また、図１８は、実施の形態１の異常検知、実施の形態２で説明する収束判定及び実施の形態５，６で説明する定常状態ＮＷデータ領域１２、定常状態特徴量領域２２の再生成等の処理時点を時系列データに重ねて表した図である。
なお、上記実施の形態１における、図９のステップＳ４の処理で異常検知部１０４により定常状態と判定された場合、分析部１０３は、図９のステップＳ５において、最も古い集計データ（Ｔｉに該当する集計データ）を削除せずに最も新しい集計データを含めＰＣＡを再実施し、この結果を定常状態定義部１０７が定常状態特徴量（領域）として扱っても良い。これは昔のデータを忘れることなく定常状態ＮＷデータ領域、定常状態特徴量領域を増やしていくことに相当する。この場合も、ステップＳ４の処理で異常検知部１０４により最新の特徴量が定常状態特徴量領域から逸脱が確認された後、定常状態定義部１０７が、定常状態ＮＷデータ領域を現在の定常状態ＮＷデータ領域に固定する処理は同じでよい。
【００５９】
実施の形態２．
実施の形態２は、収束判定部１０６による収束判定に関する実施形態である。
【００６０】
不正アクセスの増加を検知した時点で、集計データの収束に備え自動的に収束を判定できるようにするため、収束判定部１０６は、ＡＲＭＡ（Ａｕｔｏ  Ｒｅｇｒｅｓｓｉｖｅ  Ｍｏｖｉｎｇ  Ａｖｅｒａｇｅ）モデルによる分析をマハラノビス距離の時系列データに適用する。図１９は、ＡＲＭＡモデルによる分析をマハラノビス距離の時系列データに適用する場合を示している。
【００６１】
（１）まず、傾向判定部１０５は、異常検知部１０４（距離判定部）が定常状態特徴量領域２２と新規データ特徴量とのマハラノビス距離が予め設定された閾値を越えると判定した場合に、定常状態特徴量領域２０２に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向と下降傾向とのいずれかの傾向にあるかどうかを判定する。
（２）次に、収束判定部１０６は、傾向判定部１０５が定常状態特徴量領域２２に対応する所定期間の定常状態の時系列データに対して新規データ特徴量に対応する新規データが上昇傾向と下降傾向とのいずれかの傾向にあると判定した場合に、集計部１０２が生成する時系列データに対応する対応時系列データを新規データ特徴量に対応する新規データよりも後の時刻の所定期間について所定のシミュレーションモデルによって生成し、所定のシミュレーションによって生成した対応時系列データに基づいて、集計部１０２により生成された時系列データであって新規データ特徴量に対応する新規データよりも後の時刻の時系列データが、定常状態特徴量領域に対応する所定期間の定常状態の時系列データにおける定常状態から新たな定常状態に収束したかどうかを判定する。
【００６２】
ＡＲＭＡモデルは任意の区間での平均と分散が常に同じ様な時系列データの予測に適しているとされる。本実施の形態２では、定常状態（不正アクセスの影響を受けていない）のネットワーク監視データは、ＡＲＭＡの予測に適したデータであり、不正アクセスの発生時は、これが乱れることによりＡＲＭＡによる予測に向かない（つまり予測が外れやすい）ことを想定している。この想定に基づけば、特徴量が乖離傾向にある段階、すなわち非定常状態では、マハラノビス距離の時系列データはＡＲＭＡによる予測値と実測値が一致しないことが多いが、収束し定常状態に近づいた場合は、予測値と実測値の一致が多くなると予想できる。このことを利用して収束を判定する。
【００６３】
不整合の度合いの判断として、単位期間あたり（例：１時間）の不整合の回数が規定値以内（例：２回以内）にある場合に定常状態に収束したとみなせばよい。
【００６４】
収束判定部１０６による判定方法では、収束の判定を、集計データがある値の幅に収まったことをもって判定する方法が考えられる。しかし、その値と幅を、異常の検知前の時点において設定することは難しい。例えば、プロセス制御などの設備の監視であれば、管理目標値の値と幅が最初から判明している場合もあるが、例えば、不正アクセス数の定点観測の場合は設定できない場合もある。例えば、不正アクセスの増加に対して能動的にブロックを行うことはせず、動向を見守る監視方法があるためである。不正アクセスの監視に限らず、管理目標値は最初から判明していないが収束を判定したい場合はこの方法を適用できる。
【００６５】
図２０は、収束判定を説明するための図である。
図２０において、縦軸はマハラノビス距離を示し、横軸は時間を示す。
また、「ひし形（◇）」は、元の時系列のマハラノビス距離を示す。
「四角（□）」は、ＡＲＭＡによる予測値のうちの上限値を示す。
「三角（△）」は、ＡＲＭＡによる予測値のうちの下限値を示す。
「ばつ（×）」は、ＡＲＭＡによる予測の当たり、外れを示したものである。
「当たり」の場合を７５の位置にプロットし、「外れ」である場合を「０」の位置にプロットした。
「当たり」とは、ある時刻における元の時系列のマハラノビス距離（「ひし形（◇）」）が、その時刻において「四角（□）」（予測値上限）と「三角（△）」（予測値下限）との間に存在する場合をいう。
「外れ」とは、ある時刻における元の時系列のマハラノビス距離（「ひし形（◇）」）が、その時刻において「四角（□）」と「三角（△）」との間に存在しない場合をいう。元の時系列のマハラノビス距離（「ひし形（◇）」）が収束するにつれ、「ばつ（×）」は７５に位置することが多くなる。収束判定においては、収束先の値（この場合は、結果として１２前後である）は、予め知ることはできない。“当たり”ばかりが多くなることにより、収束したとわかる。このように収束判定部１０６は、“当たり”ばかりが多くなったことを収束の判定として利用する。
【００６６】
本実施の形態２では、マハラノビス距離の収束を特徴量の分布の収束と判断する。さらに、特徴量は元の時系列データを元に計算した時系列データの特長を示す指標であるから、実データも収束したと判断することができる。
【００６７】
このように、ＡＲＭＡモデルを用いることにより、最終的に実データの収束を自動で判断できる。
【００６８】
また、マハラノビス距離の収束の結果、集計データが前回の定常状態ＮＷデータ領域１２に対して高めで収束したのか、低めで収束したのか知りたい場合があるが、その場合は、傾向判定部１０５が実施の形態１と同じ処理を行い、収束時点の集計データの値と、前回の定常状態ＮＷデータ１１の平均値とを比較する（或いは分散も考慮）ことにより、判断することができる。
【００６９】
本実施の形態２では、定常的なデータの予測に適している時系列分析方法としてＡＲＭＡを利用する方法を挙げたが、他の定常的なデータの予測に適した分析方法に置き換えても良い。その場合も、予測と実測の誤差の頻度を、収束の判定の基準に利用する。
【００７０】
また、本実施の形態２では、収束判定部１０６が、シミュレーションモデルによりマハラノビス距離をシミュレーションしたが、元の時系列データ自体をシミュレーションすることにより、収束を判定しても構わない。
【００７１】
本実施の形態２によれば、収束判定部１０６は、マハラノビス距離に対するＡＲＭＡモデルによる時系列分析を行うことで、特徴量の収束を判定し、さらに、時系列データの収束を判定する。このように、ＡＲＭＡモデルによる時系列データの分析を応用することにより、収束先の値を最初から設定しなくとも、予測と実測の当たり外れの頻度をもとに、収束を判定することができる。
【００７２】
実施の形態３．
実施の形態２では、特徴量の乖離について、マハラノビス距離で検知した。この場合の特徴量は、ＰＣ１とＰＣ２という２つ以上であることを想定している。つまり、ある時点の特徴量は複数のＰＣ（ＰＣ１〜ＰＣｎ：ｎ＝１，２，３、・・・）で表されるが、複数の特徴量について、定常状態特徴量領域２２の重心からの距離をマハラノビス距離として求め、検知に利用している。
【００７３】
そこで、乖離は“複数の主成分に対して計算されたマハラノビス距離”で検知するとともに、収束は“時系列データの動向を最も良く表すＰＣ１のマハラノビス距離（対応時系列データの一例）、或いはＰＣ２のマハラノビス距離（対応時系列データの一例）”の様に、低時のＰＣ成分各々のマハラノビス距離について調べるという方法でも良い。
【００７４】
例えば、乖離の検知に用いるマハラノビス距離は、ＰＣ１〜ＰＣ５全体（５次元の特徴量）を用いる。これに対して、収束の検知に用いるマハラノビス距離は、ＰＣ１（一次元の特徴量）のみを用いる。元々検知を行うためのＰＣＡの計算対象が、時系列データをウィンドウで規則的に切り取り、その切り取ったデータの形を良く表す特徴量に変換している。そして、その特徴量のＰＣ１，ＰＣ２等の低次元のＰＣ成分は、ＰＣＡの計算の目的から、そのデータの形の概略データといってよい。従って、低次元のＰＣ成分のマハラノビス距離の収束をＡＲＭＡ等の時系列分析で把握できた場合、元の時系列データが収束している可能性が高い。本実施の形態３は、ＰＣＡの低次元のＰＣ成分の持つ意味を収束の判定に利用したものである。
【００７５】
本実施の形態３によれば、検知は、より多くの主成分を使うことにより情報量をできるだけ落とさないで行うことで精度を維持し、収束は、全体の動きを代表する低次の主成分を使うことをもって、収束の判定を効率化することができる。
【００７６】
実施の形態４．
実施の形態３の派生として、検知は同じとし、収束判定部１０６による収束判定は、時系列データの動向を最も良く表すＰＣ１、或いはＰＣ１とＰＣ２の様に低時のＰＣ成分各々について調べるという方法でも良い。これは、マハラノビス距離にＡＲＭＡを適用して収束を判定する実施の形態３とは異なる。すなわち、実施の形態４は、ＰＣ１等のマハラノビス距離に基づき収束を判定するのではない。つまり、ＰＣ１の時系列データそのもの（対応時系列データの一例）についてＡＲＭＡによる予測を行い、予測値と実測値の一致の増加をもって、収束と判定する実施形態である。或いは、ＰＣ１、ＰＣ２の各々の時系列データについて各々ＡＲＭＡによる予測を行い、両方の予測値と実測値との一致が増加をもって、収束と判定する。予測値と実測値との一致とは、実施の形態２の場合と同様である。低次元のＰＣ成分は、ＰＣＡの計算の目的から、そのデータの形の概略データといってよい。従って、低次元のＰＣ成分の収束をＡＲＭＡ等の時系列分析で把握できた場合、元の時系列データが収束している可能性が高い。本実施の形態４は、ＰＣＡの低次元のＰＣ成分の持つ意味を利用したものである。
【００７７】
また、主成分得点の収束の結果、集計データが前回の定常状態ＮＷデータ領域１２に対して高めで収束したのか、低めで収束したのか知りたい場合があるが、その場合は、傾向判定部１０５が実施の形態１と同じ処理を行い、収束時点の集計データの値と、前回の定常状態ＮＷデータ１１の平均値とを比較する（或いは分散も考慮）ことにより、判断できる。
【００７８】
実施の形態５．
次に実施の形態５を説明する。実施の形態５では、収束判定部１０６による収束判定後の不正アクセスの検知再開において、定常状態再定義部１０８（擬似データ生成部の一例）が新しく定常域を定義する動作を説明する。以下に説明する、擬似的な定常状態ＮＷデータ１１の生成・再定義の動作は、定常状態再定義部１０８が実行する動作である。
【００７９】
（１）定常状態再定義部１０８は、過去の定常状態ＮＷデータ領域１２の集計データの傾向を、収束時点付近の集計データに反映させ、新しい定常状態ＮＷデータ領域１２のデータ（擬似定常状態データ）を必要なぶん生成する点が特徴である（後述の方法（ａ））。
（２）また、定常状態再定義部１０８は、収束時点付近の集計データの傾向を把握し、新しい定常状態ＮＷデータ領域１２のデータ（擬似定常状態データ）を必要な分生成する点が特徴である（後述の方法（ｂ））。
【００８０】
新しい定常状態ＮＷデータ領域１２の開始時点が定義された後（つまり、収束が判定された後）、次の不正アクセスの検知のために、新しい定常状態ＮＷデータ領域１２のデータ（定常状態ＮＷデータ１１）を用意する必要がある。図１３のステップＳ８の様に、傾向判定部１０５による異常検知後の特徴量が元の定常状態特徴量領域２２の特徴量の群（領域１）に戻った場合は、直前の定常状態ＮＷデータ領域１２
のデータ（定常状態ＮＷデータ１１）をそのまま使用する。
元の定常状態特徴量領域２２の特徴量の群（領域１）に戻ったかどうかは、例えば、次のように判定する。異常検知部１０４（距離判定部）は、収束判定部１０６が定常状態特徴量領域２２に対応する所定期間の定常状態の時系列データにおける定常状態から新たな定常状態に収束したと判定した場合に、収束判定部１０６により収束したと判定された新たな定常状態に含まれる時系列データに対応する特徴量と元の定常状態特徴量領域２２とのマハラノビス距離を算出し、算出したマハラノビス距離が予め定められた所定の閾値を越えるかどうかを判定する。これにより、元の定常状態特徴量領域２２の特徴量の群（領域１）に戻ったかどうかを判定する。そして、定常状態再定義部１０８は、異常検知部１０４がマハラノビス距離が予め定められた所定の閾値を越えると判定した場合に、擬似的な定常状態ＮＷデータ１１（擬似定常状態データ）を生成し、生成した擬似的な定常状態ＮＷデータ１１に対して主成分分析を用いることにより擬似的な定常状態特徴量を生成し、生成した擬似的な定常状態特徴量から擬似的な定常状態特徴量領域を生成する。そして、異常検知部１０４部は、定常状態再定義部１０８が擬似的な定常状態特徴量領域を生成した場合に、この擬似的な定常状態特徴量領域を定常状態特徴領域に代えて、処理を継続する。
【００８１】
しかし、図１４の様に特徴量が別の群（領域２）を形成した場合は元の定常域のデータはそのままでは使用できない。新しい定常状態ＮＷデータ領域１２のデータが必要である。何故ならば、元の定常状態特徴量領域２２（領域１）に該当する定常状態ＮＷデータ領域１２のデータをそのまま使用して分析してしまうと、領域２の特徴量は全て領域１から乖離しているため、常にマハラノビス距離が乖離していると判定されてしまうためである。
【００８２】
しかし、収束が判定されてから以降、図８のステップＳ１で示した一定期間（ｎ時間）のデータを定常状態ＮＷデータ領域１２のデータとして集めなおしたのでは、集めている間に新しい不正アクセスが発生しても検知できない。そこで、定常状態再定義部１０８が、以下の手法により擬似的な定常状態ＮＷデータ１１（擬似定常状態データ）を生成し、そして、領域２に相当する擬似的な定常状態特徴量領域２２を再定義する。上記のように、定常状態ＮＷデータ１１、定常状態ＮＷデータ領域１２及び定常状態特徴量２１、定常状態特徴量領域２２の生成・再定義は、定常状態再定義部１０８が実行する。
【００８３】
定常状態再定義部１０８が再定義を行った後は、実施の形態１において説明したように、定常状態ＮＷデータ領域１２と定常状態特徴量領域２２とが、定常状態定義部１０７により定義された後の処理に同じとなる。
【００８４】
（方法（ａ））
定常状態再定義部１０８は、「新しい定常状態ＮＷデータ領域１２の開始付近の集計データ」と「過去の定常状態ＮＷデータ１１の傾向」を加味し擬似的な定常状態ＮＷデータ１１をｎ時間（図２１の定常域の期間）ぶん生成し、新しい定常状態ＮＷデータ１１として利用する。ここでの、定常状態ＮＷデータ１１とは、定常状態ＮＷデータ領域１２における“集計データ”のことである。具体的には、図２１において、定常状態再定義部１０８は、定常状態ＮＷデータ１１の平均μと分散σ２を計算する。また、定常状態再定義部１０８は、収束時点からｍ時間遡った集計データの平均値μ’を計算する。そして、定常状態再定義部１０８は、平均μ’、分散σ２の正規分布データをｎ時間分生成する。そして、不正アクセス検知装置１００は、定常状態再定義部１０８が生成したデータを新しい定常状態ＮＷデータ１１として検知を再開する。
但し、ｍ＜ｎとする。ｍは大きく取りすぎると収束途中の集計データも捉えてしまうため、短時間とする。この方法に基づけば、収束が判定されてから即、検知を再開可能である。
或いは、以下の方法でも良い。
定常状態再定義部１０８は、定常状態ＮＷデータ１１の平均μと分散σ２を計算する。そして、定常状態再定義部１０８は、収束時点からｍ時間、集計データを蓄え、平均値μ’を計算する。定常状態再定義部１０８は、平均μ’、分散σ２の正規分布データをｎ時間分生成する。そして、不正アクセス検知装置１００は、定常状態再定義部１０８が生成したデータを新しい定常状態ＮＷデータ１１として検知を再開する。この場合は、収束判定後のデータを使用するため、収束途中の集計データを使用することは無い。但し、ｍを大きく取りすぎると、検知の開始が遅れるため、短時間とする。
或いは、上記２つの方法を併せ、収束時点を基点に、ｍ’時間遡ったデータとｍ’時間待機し蓄えたデータの平均値を元に、分散σ２の正規分布データをｎ時間分生成する方法でも良い。
この場合、ｍ’＜ｍ
であり、
例えば、ｍ’＝ｍ／２とする。
【００８５】
（方法（ｂ））
「新しい定常状態ＮＷデータ領域１２の開始付近の集計データ」と同じ傾向の擬似的な定常状態ＮＷデータ１１をｎ時間分生成し、新しい定常状態ＮＷデータ１１として利用する。具体的には、図２２において、定常状態再定義部１０８は、収束時点からｍ時間遡った集計データの平均値μ’と分散σ’２を計算し、平均μ’、分散σ’２の正規分布データをｎ時間分生成する。そして、不正アクセス検知装置１００は、定常状態再定義部１０８が生成したデータを新しい定常状態ＮＷデータ１１として検知を再開する。方法（ａ）と同様に、収束時点からｍ時間のデータを蓄え、このデータと同じ平均と分散を持つｎ時間ぶんのデータを生成する方法でもよい。あるいは、収束時点の前後ｍ’時間のデータを蓄え、このデータと同じ平均と分散を持つｎ時間ぶんのデータを生成する方法でも良い。この方法の場合、収束時点付近のデータに基づいた擬似的な定常状態ＮＷデータ１１であるため、方式（ａ）よりは実際のデータに近い擬似データが生成できる可能性がある。
【００８６】
なお、方式（ａ）、（ｂ）共に、定常状態ＮＷデータ１１の再定義後は、図９の処理に従う。従って、集計時間がくる度に、定常状態ＮＷデータ１１は、新しい実際の集計データが取り込まれ、最古の擬似のデータは削除される。ｎ時間の間に新しい検知が起こらなかった場合は、ｎ時間が経過した時点で全て実際の集計データに置き換わる。
【００８７】
或いは、現在の観測データを、擬似的な定常状態ＮＷデータ１１のランダムな位置のものと交換し、他のランダムな位置のデータを削除する方法でも良い。
【００８８】
ｎ時間が経過する前に、改めて検知が発生する場合がある。その場合の処理は、ステップＳ７以降、及び該当する実施の形態１の処理に従う。
【００８９】
つまり、収束後、定常状態ＮＷデータ１１を再定義した後の処理は、図９〜図１１、図１３（実施の形態１）と同じである。
【００９０】
上記の例では、定常状態ＮＷデータ１１を正規分布と仮定して正規分布に従うデータを生成したが、予め定常状態ＮＷデータ１１の分布が分かっている場合は、その分布に従っても良い。正確に、検知前の定常状態ＮＷデータ１１と同じ傾向を再現したいのであれば、分布モデルを推定・検定し、それに従えばよい。
【００９１】
本実施の形態５によれば、不正アクセスの収束の判定後、定常状態ＮＷデータ領域１２の再定義時に、過去の定常状態ＮＷデータ領域１２の集計データと収束時の集計データを併用するか、或いは収束時の集計データのみから、擬似データを定常状態ＮＷデータ１１として必要な分量生成することで、検知の再開を迅速に行うことができる。また、擬似データは集計時間毎に実集計データと置き換わるので、時間がたつに現在のデータに基づいた検知に近づく。なお、前記のように、図９のステップＳ５において、最も古い集計データを削除せずに最も新しい集計データを含めＰＣＡを再実施し、この結果を定常状態定義部１０７が定常状態ＮＷデータ１１として扱う場合の処理は、以下の２通りであってよい。収束の判定後の処理においてのみ、上述の様に、擬似データを集計時間毎に実集計データと置き換える。全て或いは予め定めた量の擬似データが、実集計データに置き換わった時点で、最も古い集計データを削除せずに最も新しい集計データを含める処理に戻す。収束の判定後の処理においても、最も古い集計データを削除せずに最も新しい集計データを含める処理を継続する。
以上のように、元の定常状態特徴量領域２２の特徴量の群（領域１）に戻ったかどうかは、異常検知部１０４（距離判定部）が、収束判定部１０６が定常状態特徴量領域２２に対応する所定期間の定常状態の時系列データにおける定常状態から新たな定常状態に収束したと判定した場合に、収束判定部１０６により収束したと判定された新たな定常状態に含まれる時系列データに対応する特徴量と元の定常状態特徴量領域２２とのマハラノビス距離を算出し、算出したマハラノビス距離が予め定められた所定の閾値を越えるかどうかを判定する。これにより、元の定常状態特徴量領域２２の特徴量の群（領域１）に戻ったかどうかを判定する。そして、定常状態再定義部１０８は、異常検知部１０４がマハラノビス距離が予め定められた所定の閾値を越えると判定した場合に、擬似的な定常状態ＮＷデータ１１（擬似定常状態データ）を生成し、生成した擬似的な定常状態ＮＷデータ１１に対して主成分分析を用いることにより擬似的な定常状態特徴量を生成し、生成した擬似的な定常状態特徴量から擬似的な定常状態特徴量領域を生成する。そして、異常検知部１０４部は、定常状態再定義部１０８が擬似的な定常状態特徴量領域を生成した場合に、この擬似的な定常状態特徴量領域を定常状態特徴領域に代えて、処理を継続する。
【００９２】
実施の形態６．
実施の形態６は、実施の形態２でのべたようにＡＲＭＡ等の時系列データの予測値が観測値と一致する傾向の増加を定常状態への収束と判断することに対応して、その予測方法に基づき、定常状態再定義部１０８が、定常状態ＮＷデータ１１の将来値も予測（計算）してしまい、擬似定常データを生成する場合を説明する。
【００９３】
収束の判定にＡＲＭＡを利用しているが、収束時のデータの傾向としてＡＲＭＡによる予測が適合しているわけであるから、この予測を未来に渡り予め行い、擬似定常データとして利用する。
【００９４】
実施の形態２、３は、収束の判定に、マハラノビス距離にＡＲＭＡを適用したが、この収束をもって、特徴量の収束とみなし、さらに集計データの収束とみなしている。そこで、収束時点前の集計データにＡＲＭＡを適用し、ｎ時間分の予測値を生成する。
【００９５】
実施の形態４では、収束の判定に主成分得点にＡＲＭＡを適用した。この収束をもって、集計データの収束とみなしている。そこで、収束時点前の集計データにＡＲＭＡを適用し、ｎ時間分の予測値を生成する。
【００９６】
また、以下の方法でも良い。実施の形態４において、収束の判定に主成分得点にＡＲＭＡを適用しているので、収束判定後も、主成分得点の予測値をさらに求め、その主成分得点の予測値からもとの集計データを合成する。これは擬似的な集計データとなる。
【００９７】
例えば、ＰＣ１とＰＣ２を別々にＡＲＭＡを適用し収束を判定している場合、
ＰＣ１における収束付近の予測値を用いて、ｎ時間分の予測値を求め、
ＰＣ２における収束付近の予測値を用いて、ｎ時間分の予測値を求める。
そして、定常状態再定義部１０８は、最後にＰＣ１の予測値とＰＣ２の予測値から、元の集計データを合成する。これは擬似的な集計データであるので、新しい定常状態ＮＷデータ領域１２の集計データとして利用する。
【００９８】
主成分得点から元のデータを合成する方法は、既存の技術である。例えば以下のＷｅｂ上で検索された文献（ｐｄｆ）に記載されおり、主成分を求める過程で得られる計算結果を利用することで実現できる。
（Ｗｅｂ上で検索された検索された文献）
「初心者向けテキスト  主成分分析  京都大学大学院工学研究科化学工学専攻  プロセスシステム工学研究室  加納  学、「データの再構築」の節」（ｈｔｔｐ：／／ｗｗｗ−ｐｓｅ．ｃｈｅｍｅ．ｋｙｏｔｏ−ｕ．ａｃ．ｊｐ／〜ｋａｎｏ／ｄｏｃｕｍｅｎｔ／ｔｅｘｔ−ＰＣＡ．ｐｄｆ：２００６年１０月９日検索）」
上記の実施の形態では、定常域からの特徴量の乖離をマハラノビス距離で判断する例を挙げたが、判断方式を他の適切な離れ具合を測る方式に置き換え、マハラノビス距離をその方式における離れ具合を示す数値に置き換えても良い。
【図面の簡単な説明】
【００９９】
【図１】実施の形態１における不正アクセス検知装置１００のハードウェア構成を示す図。
【図２】実施の形態１における不正アクセス検知装置１００のブロック構成図。
【図３】実施の形態１におけるデータ取得部１０１〜分析部１０３のシーケンス図。
【図４】実施の形態１における時系列データを示す図。
【図５】実施の形態１におけるログファイルを示す図。
【図６】実施の形態１における集計データ１５１を示す図。
【図７】実施の形態１における行列を用いた主成分分析の手法を説明する図。
【図８】実施の形態１における分析開始前の準備を説明する図。
【図９】実施の形態１における分析開始後を説明する図。
【図１０】実施の形態１における分析開始後を説明する別の図。
【図１１】実施の形態１における分析開始後を説明する別の図。
【図１２】実施の形態１における分析開始後を模式的に説明する図。
【図１３】実施の形態１における定常状態特徴量領域２２に戻る場合を示す図。
【図１４】実施の形態１における新たな定常状態特徴量領域２２に遷移する場合を示す図。
【図１５】実施の形態１におけるマハラノビス距離を説明する図。
【図１６】実施の形態１における時系列データの上昇／下降とマハラノビス距離との関係を説明する図。
【図１７】実施の形態１における動作をまとめたフローチャート。
【図１８】実施の形態１における異常検知、実施の形態２で説明する収束判定及び実施の形態５，６で説明する定常状態ＮＷデータ１１の再生成等の処理時点を時系列データに重ねて表した図。
【図１９】実施の形態２におけるＡＲＭＡモデルによる分析を説明する図。
【図２０】実施の形態２におけるＡＲＭＡモデルによる分析結果の例を示す図。
【図２１】実施の形態５における定常状態ＮＷデータ１１の生成を説明する図。
【図２２】実施の形態５における定常状態ＮＷデータ１１の生成を説明する別の図。
【符号の説明】
【０１００】
１１  定常状態ＮＷデータ、１２  定常状態ＮＷデータ領域、２１  定常状態特徴量、２２  定常状態特徴量領域、１００  不正アクセス検知装置、１０１  データ取得部、１０２  集計部、１０３  分析部、１０４  異常検知部、１０５  傾向判定部、１０６  収束判定部、１０７  定常状態定義部、１０８  定常状態再定義部、１５０  ログ、１５１  集計データ、８１０  ＣＰＵ、８１１  ＲＯＭ、８１２  ＲＡＭ、８１６  通信ボード、８２０  磁気ディスク装置、８２１  ＯＳ、８２３  プログラム群、８２４  ファイル群、８２５  バス。
【図１】
2008146157.tif 000003
【図２】
2008146157.tif 000004
【図３】
2008146157.tif 000005
【図４】
2008146157.tif 000006
【図５】
2008146157.tif 000007
【図６】
2008146157.tif 000008
【図７】
2008146157.tif 000009
【図８】
2008146157.tif 000010
【図９】
2008146157.tif 000011
【図１０】
2008146157.tif 000012
【図１１】
2008146157.tif 000013
【図１２】
2008146157.tif 000014
【図１３】
2008146157.tif 000015
【図１４】
2008146157.tif 000016
【図１５】
2008146157.tif 000017
【図１６】
2008146157.tif 000018
【図１７】
2008146157.tif 000019
【図１８】
2008146157.tif 000020
【図１９】
2008146157.tif 000021
【図２０】
2008146157.tif 000022
【図２１】
2008146157.tif 000023
【図２２】
2008146157.tif 000024