(57)【要約】【課題】少ないパケット数で成功する攻撃を異常として検知する。【解決手段】ネットワーク機器が複数の端末から収集したトラヒック情報を取得する取得部と、前記取得部が取得したトラヒック情報から、前記複数の端末による異常なトラヒックの発生を検知するための特徴量を生成する特徴量生成部と、前記特徴量生成部が生成した特徴量と、予め生成された異常検知モデルとに基づいて、前記異常の発生を検知する検知部と、を有することを特徴とする。【選択図】図１
2019029798.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク機器が複数の端末から収集したトラヒック情報を取得する取得部と、
前記取得部が取得したトラヒック情報から、前記複数の端末による異常なトラヒックの発生を検知するための特徴量を生成する特徴量生成部と、
前記特徴量生成部が生成した特徴量と、予め生成された異常検知モデルとに基づいて、前記異常の発生を検知する検知部と、
を有することを特徴とする異常検知システム。
【請求項２】
前記トラヒック情報は、所定の時間Δの間において、ネットワーク部が８ビットである各アドレス空間にそれぞれフォワーディングされたパケット数であり、
前記特徴量生成部は、
前記パケット数の前記所定の時間Δ毎の変化率を特徴量として生成する、ことを特徴とする請求項１に記載の異常検知システム。
【請求項３】
前記トラヒック情報は、所定の時間δの間において、ネットワーク部が１６ビットである各アドレス空間にそれぞれフォワーディングされたパケット数であり、
前記パケット数に基づいて、前記各アドレス空間を所定の個数のクラスタに分類するクラスタリング部を有し、
前記特徴量生成部は、
前記クラスタリング部により分類された各クラスタに含まれるアドレス空間にそれぞれフォワーディングされたパケット数の所定の時間Δ毎の変化率を特徴量として生成する、ことを特徴とする請求項１に記載の異常検知システム。
【請求項４】
前記トラヒック情報は、所定の時間Δの間におけるＳＹＮパケット数及びＡＣＫパケット数であり、
前記特徴量生成部は、
前記所定の時間Δ毎に、前記ＳＹＮパケット数と前記ＡＣＫパケット数との比率を特徴量として生成する、ことを特徴とする請求項１に記載の異常検知システム。
【請求項５】
前記検知部は、
前記特徴量と、ベクトル自己回帰モデルの手法により生成された異常検知モデル又は教師あり学習の手法により生成された異常検知モデルとに基づいて、前記異常の発生を検知する、ことを特徴とする請求項１乃至４の何れか一項に記載の異常検知システム。
【請求項６】
ネットワーク機器が複数の端末から収集したトラヒック情報を取得する取得手順と、
前記取得手順が取得したトラヒック情報から、前記複数の端末による異常なトラヒックの発生を検知するための特徴量を生成する特徴量生成手順と、
前記特徴量生成手順が生成した特徴量と、予め生成された異常検知モデルとに基づいて、前記異常の発生を検知する検知手順と、
をコンピュータが実行することを特徴とする異常検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常検知システム及び異常検知方法に関する。
【背景技術】
【０００２】
近年、インターネット技術や各種センサ・テクノロジの進化等により、パソコンやスマートフォン等の端末に加えて、家電や自動車、センシング機器等の様々なモノがインターネットに接続され始めている。このため、インターネットに接続される端末数は、２０２０年には約３００億台に達すると予想されている（非特許文献１）。
【０００３】
また、近年、マルウェアに感染した端末をＤＤｏＳ（Distributed Denial of Service）攻撃等の踏み台にしたり、他の端末を不正操作するための踏み台にしたりする事件が増加している。
【０００４】
ここで、端末毎に取得した通信情報から検知モデルを構築することで、マルウェアに感染した端末の異常な振る舞い（例えば、ＤＤｏＳ攻撃等）を検知する技術が知られている。しかしながら、インターネットに接続される端末数の増加に伴い、端末毎に通信情報を取得することや検知モデルを作成することが困難となる。
【０００５】
このような通信量の増加に対する軽量な検知手法として、トラフィックをサンプリング収集した間欠的な通信情報を用いて、ＤＤｏＳ攻撃等の異常を検知する技術が知られている（非特許文献２）。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】"情報通信白書  平成28年版", ［online］, インターネット＜ＵＲＬ：http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h28/pdf/n2100000.pdf＞
【非特許文献２】"トラフィック解析システムSAMURAIとサービス展開", ［online］, インターネット＜ＵＲＬ：http://www.ntt.co.jp/journal/0807/files/jn200807016.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、マルウェアの感染を拡大させるために行われる攻撃（以下、「感染拡大攻撃」と言う。）は、少ないパケット数で攻撃が成功することが多い。感染拡大攻撃としては、例えば、感染先となる端末のスキャンやＴｅｌｎｅｔ（Teletype Network）を用いたリモート操作等が挙げられる。
【０００８】
しかしながら、非特許文献２に開示されている技術では、感染拡大攻撃等の少ないパケット数で成功する攻撃を異常として検知することができない場合があった。
【０００９】
本発明は、上記の点に鑑みてなされたものであって、少ないパケット数で成功する攻撃を異常として検知することを目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明の実施の形態では、ネットワーク機器が複数の端末から収集したトラヒック情報を取得する取得部と、前記取得部が取得したトラヒック情報から、前記複数の端末による異常なトラヒックの発生を検知するための特徴量を生成する特徴量生成部と、
前記特徴量生成部が生成した特徴量と、予め生成された異常検知モデルとに基づいて、前記異常の発生を検知する検知部と、を有することを特徴とする。
【発明の効果】
【００１１】
少ないパケット数で成功する攻撃を異常として検知することができる。
【図面の簡単な説明】
【００１２】
【図１】第一の実施形態に係るシステムの全体構成の一例を示す図である。
【図２】コンピュータのハードウェア構成の一例を示す図である。
【図３】第一の実施形態に係るパケット転送装置の機能構成の一例を示す図である。
【図４】第一の実施形態に係る異常検知用ストレージ装置の機能構成の一例を示す図である。
【図５】パラメータ情報テーブルの一例を示す図である。
【図６】第一の実施形態に係る特徴量生成装置の機能構成の一例を示す図である。
【図７】第一の実施形態に係る検知用演算装置の機能構成の一例を示す図である。
【図８】特徴量情報テーブルの一例を示す図である。
【図９】第一の実施形態に係る異常検知処理の一例を示すシーケンス図である。
【図１０】第一の実施形態に係る特徴量の算出処理の一例を示すフローチャートである。
【図１１】アドレス空間単位にフォワーディングされたパケット数により異常検知が行われる場合の一例を説明するための図である。
【図１２】ＳＹＮパケット数とＡＣＫパケット数との比率により異常検知が行われる場合の一例を説明するための図である。
【図１３】第一の実施形態に係る特徴量の算出処理の他の例を示すフローチャートである。
【図１４】第二の実施形態に係る異常検知用ストレージ装置の機能構成の一例を示す図である。
【図１５】アドレス空間定義情報テーブルの一例を示す図である。
【図１６】パラメータ情報テーブルの他の例を示す図である。
【図１７】第二の実施形態に係る検知用演算装置の機能構成の一例を示す図である。
【図１８】第二の実施形態に係る異常検知処理の一例を示すシーケンス図である。
【図１９】第二の実施形態に係るクラスタリング処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１４】
［第一の実施形態］
＜全体構成＞
まず、本実施形態に係るシステムの全体構成について、図１を参照しながら説明する。図１は、本実施形態に係るシステムの全体構成の一例を示す図である。
【００１５】
図１に示すように、本実施形態に係るシステムには、例えばＩＳＰ（Internet Service Provider）や電気通信事業者等のコアネットワークであるシステム環境Ｅと、複数の端末４０とが含まれる。すなわち、システム環境Ｅには、これら複数の端末４０が収容されている。
【００１６】
端末４０は、ネットワークに接続可能な各種電子機器又は装置である。端末４０の具体例としては、例えば、ＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット端末、各種センサ、監視カメラ、各種家電製品、ゲーム機器、自動車、スマートメータ等が挙げられる。各端末４０は、システム環境Ｅに接続されており、それぞれが異なる通信特性（例えば、通信発生の頻度、宛先（送信先ＩＰアドレス（Internet Protocol））の種類数、パケットサイズ等）を有している。
【００１７】
システム環境Ｅには、パケット転送装置１０と、トラヒック情報収集装置２０と、異常検知システム３０とが含まれる。
【００１８】
パケット転送装置１０は、例えばエッジルータ等のネットワーク機器であり、インターネットと各端末４０との間のパケットを中継する機能を有する。すなわち、パケット転送装置１０は、各端末４０から受信したパケットを、当該パケットの宛先ＩＰアドレスに従って転送（フォワーディング）する。
【００１９】
また、パケット転送装置１０は、端末４０のパケットを中継する際に、当該端末４０のトラヒック情報を取得する。パケット転送装置１０により取得されたトラヒック情報は、トラヒック情報収集装置２０に蓄積される。トラヒック情報とは、例えば、所定の時間の間に、所定のアドレス空間のネットワーク宛にフォワーディングされたパケット数が挙げられる。
【００２０】
トラヒック情報収集装置２０は、パケット転送装置１０からトラヒック情報を収集して、収集したトラヒック情報を蓄積（保存）する。すなわち、トラヒック情報収集装置２０は、パケット転送装置１０単位でトラヒック情報を収集する。
【００２１】
異常検知システム３０は、感染拡大攻撃等の少ないパケット数で成功する攻撃を異常として検知する１以上のコンピュータにより構成されるシステムである。
【００２２】
異常検知システム３０には、異常検知用ストレージ装置３１と、特徴量生成装置３２と、検知用演算装置３３とが含まれる。
【００２３】
異常検知用ストレージ装置３１は、異常検知に用いられる検知モデルを生成するための情報（すなわち、異常検知に用いられるアルゴリズムを実行するための検知アルゴリズム情報及び当該アルゴリズムに用いられるパラメータ情報等）を記憶する記憶装置である。
【００２４】
特徴量生成装置３２は、トラヒック情報収集装置２０からトラヒック情報を取得して、取得したトラヒック情報を加工することで、異常検知に用いられる特徴量を算出する。
【００２５】
検知用演算装置３３は、異常検知用ストレージ装置３１から取得した情報から検知モデルを生成する。そして、検知用演算装置３３は、特徴量生成装置３２から取得した特徴量を検知モデルに入力することで、異常の有無を判定する。異常の有無が判定されることで、異常検知が行われる。
【００２６】
このように、本実施形態に係る異常検知システム３０は、パケット転送装置１０単位で収集されたトラヒック情報から特徴量を算出して、異常検知に用いる。パケット転送装置１０単位で収集されたトラヒック情報から特徴量を算出することで、感染拡大攻撃等の少ないパケット数で成功する攻撃を異常として検知することができる。
【００２７】
なお、図１に示すシステム構成は、一例であって、他の構成であっても良い。例えば、システム環境Ｅには、複数台のパケット転送装置１０、複数台のトラヒック情報収集装置２０、複数の異常検知システム３０等が含まれていても良い。また、異常検知用ストレージ装置３１と、特徴量生成装置３２と、検知用演算装置３３とのうちの少なくとも２つの装置が１台の装置（コンピュータ）で構成されていても良い。更に、パケット転送装置１０とトラヒック情報収集装置２０とが１台の装置で構成されていても良い。
【００２８】
＜ハードウェア構成＞
次に、本実施形態に係るパケット転送装置１０、トラヒック情報収集装置２０、異常検知用ストレージ装置３１、特徴量生成装置３２、及び検知用演算装置３３等を実現するコンピュータ１００のハードウェア構成について、図２を参照しながら説明する。図２は、コンピュータ１００のハードウェア構成の一例を示す図である。
【００２９】
図２に示すように、コンピュータ１００は、外部Ｉ／Ｆ１１と、ＲＡＭ（Random Access Memory）１２と、ＲＯＭ（Read Only Memory）１３と、ＣＰＵ（Central Processing Unit）１４と、通信Ｉ／Ｆ１５と、補助記憶装置１６とを有する。これら各ハードウェアは、それぞれがバスＢを介して通信可能に接続されている。
【００３０】
外部Ｉ／Ｆ１１は、外部装置とのインタフェースである。外部装置には、記録媒体１１ａ等がある。コンピュータ１００は、外部Ｉ／Ｆ１１を介して、記録媒体１１ａ等の読み取りや書き込みを行うことができる。
【００３１】
記録媒体１１ａには、例えば、フレキシブルディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ＳＤメモリカード（Secure Digital memory card）、ＵＳＢ（Universal Serial Bus）メモリカード等がある。
【００３２】
ＲＡＭ１２は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＲＯＭ１３は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ１３には、例えば、ＯＳ（Operating System）設定やネットワーク設定等が格納されている。
【００３３】
ＣＰＵ１４は、ＲＯＭ１３や補助記憶装置１６等からプログラムやデータをＲＡＭ１２上に読み出して処理を実行する演算装置である。通信Ｉ／Ｆ１５は、コンピュータ１００をネットワークに接続するためのインタフェースである。
【００３４】
補助記憶装置１６は、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置１６に格納されているプログラムやデータには、例えば、ＯＳ、当該ＯＳ上において各種機能を実現するアプリケーションソフトウェア、本実施形態における各種処理を実現するプログラム等がある。
【００３５】
なお、コンピュータ１００は、上記の各ハードウェアに加えて、例えば、ディスプレイ等の表示装置と、キーボードやマウス等の入力装置とを有していても良い。
【００３６】
本実施形態に係るパケット転送装置１０、トラヒック情報収集装置２０、異常検知用ストレージ装置３１、特徴量生成装置３２、及び検知用演算装置３３等は、図２に示すコンピュータ１００のハードウェア構成を有することにより、後述する各種処理を実現することができる。
【００３７】
＜機能構成＞
次に、パケット転送装置１０と、異常検知用ストレージ装置３１と、特徴量生成装置３２と、検知用演算装置３３との機能構成について説明する。
【００３８】
≪パケット転送装置１０≫
まず、本実施形態に係るパケット転送装置１０の機能構成について、図３を参照しながら説明する。図３は、本実施形態に係るパケット転送装置１０の機能構成の一例を示す図である。
【００３９】
図３に示すように、本実施形態に係るパケット転送装置１０は、通信部１０１と、ルーティング部１０２と、情報収集部１０３とを有する。これら各機能部は、パケット転送装置１０にインストールされた１以上のプログラムが、ＣＰＵに実行させる処理により実現される。
【００４０】
通信部１０１は、端末４０やインターネット等との間で情報の送受信を行う。例えば、通信部１０１は、端末４０からのパケットを受信する。また、例えば、通信部１０１は、ルーティング部１０２による制御に従って、端末４０から受信したパケットを転送（フォワーディング）する。
【００４１】
ルーティング部１０２は、端末４０から受信したパケットに含まれる宛先ＩＰアドレスからアドレス空間を特定する。そして、ルーティング部１０２は、アドレス空間毎に、当該アドレス空間のネットワーク宛にフォワーディングされたパケット数をカウントする。
【００４２】
なお、端末４０から受信したパケットのアドレス空間は、例えば、アドレス空間毎のルーティング情報がｓｔａｔｉｃで定義されたルーティングテーブルを参照することで特定することができる。本実施形態では、容易に定義可能なアドレス空間（サブ空間）の一例として、アドレス空間は、「／８」（すなわち、ネットワーク部がＩＰアドレスの上位８ビット）で表されるものとする。
【００４３】
情報収集部１０３は、トラヒック情報をトラヒック情報収集装置２０に送信する。トラヒック情報とは、例えば、所定の時間Δの間に、ルーティング部１０２によりカウントされたパケット数（アドレス空間毎のフォワーディングパケット数）のことである。
【００４４】
≪異常検知用ストレージ装置３１≫
次に、本実施形態に係る異常検知用ストレージ装置３１の機能構成について、図４を参照しながら説明する。図４は、本実施形態に係る異常検知用ストレージ装置３１の機能構成の一例を示す図である。
【００４５】
図４に示すように、本実施形態に係る異常検知用ストレージ装置３１は、通信部３１１と、情報管理部３１２とを有する。これら各機能部は、異常検知用ストレージ装置３１にインストールされた１以上のプログラムが、ＣＰＵに実行させる処理により実現される。
【００４６】
また、本実施形態に係る異常検知用ストレージ装置３１は、検知アルゴリズム情報記憶部３１３と、パラメータ情報テーブル記憶部３１４とを有する。これら各記憶部は、例えば補助記憶装置等を用いて実現可能である。
【００４７】
通信部３１１は、検知用演算装置３３等との間で情報の送受信を行う。例えば、通信部３１１は、検知アルゴリズム情報やパラメータ情報を検知用演算装置３３に送信する。
【００４８】
情報管理部３１２は、各種記憶部に記憶されている情報を読み出すと共に、各種記憶部に情報を格納する。
【００４９】
検知アルゴリズム情報記憶部３１３は、異常検知に用いられるアルゴリズム（以下、「検知アルゴリズム」と言う。）を実行するための検知アルゴリズム情報を記憶する。検知アルゴリズムとしては、例えば、ベクトル自己回帰モデル（ＶＡＲ：Vector Auto Regressive）等が挙げられる。
【００５０】
パラメータ情報テーブル記憶部３１４は、検知アルゴリズムに用いられるパラメータ情報が格納されたパラメータ情報テーブル３１４Ｔを記憶する。ここで、パラメータ情報テーブル３１４Ｔについて、図５を参照しながら説明する。図５は、パラメータ情報テーブル３１４Ｔの一例を示す図である。
【００５１】
図５に示すように、パラメータ情報テーブル３１４Ｔには、１以上のパラメータ情報が格納されている。また、各パラメータ情報には、パラメータ名と、パラメータ値とが含まれる。図５に示す例では、パラメータ名「サンプル数」及びパラメータ値「１００」のパラメータ情報が格納されている。これは、後述する特徴量情報テーブル３３５Ｔに蓄積（格納）される特徴量情報の数（すなわち、検知アルゴリズムの構築に利用する過去データの数）を定義するパラメータ情報である。
【００５２】
なお、パラメータ情報テーブル３１４Ｔに格納されている各パラメータ情報のパラメータ値は、例えば、グリッドサーチ等の手法を用いて予め決定される。
【００５３】
≪特徴量生成装置３２≫
次に、本実施形態に係る特徴量生成装置３２の機能構成について、図６を参照しながら説明する。図６は、本実施形態に係る特徴量生成装置３２の機能構成の一例を示す図である。
【００５４】
図６に示すように、本実施形態に係る特徴量生成装置３２は、通信部３２１と、特徴量演算部３２２と、特徴量生成部３２３とを有する。これら各機能部は、特徴量生成装置３２にインストールされた１以上のプログラムが、ＣＰＵに実行させる処理により実現される。
【００５５】
通信部３２１は、トラヒック情報収集装置２０や検知用演算装置３３等との間で情報の送受信を行う。例えば、通信部３２１は、トラヒック情報収集装置２０からトラヒック情報を受信する。また、例えば、通信部３２１は、特徴量生成部３２３が生成した特徴量情報を検知用演算装置３３に送信する。
【００５６】
特徴量演算部３２２は、通信部３２１が受信したトラヒック情報から特徴量を算出する。例えば、特徴量演算部３２２は、アドレス空間毎に、所定の時間Δの間におけるパケット数の増減率を特徴量として算出する。
【００５７】
特徴量生成部３２３は、特徴量演算部３２２が算出した特徴量を時刻と対応付けた特徴量情報を生成する。
【００５８】
≪検知用演算装置３３≫
次に、本実施形態に係る検知用演算装置３３の機能構成について、図７を参照しながら説明する。図７は、本実施形態に係る検知用演算装置３３の機能構成の一例を示す図である。
【００５９】
図７に示すように、本実施形態に係る検知用演算装置３３は、通信部３３１と、情報管理部３３２と、検知モデル生成部３３３と、検知演算部３３４とを有する。これら各機能部は、検知用演算装置３３にインストールされた１以上のプログラムが、ＣＰＵに実行させる処理により実現される。
【００６０】
また、本実施形態に係る検知用演算装置３３は、特徴量情報テーブル記憶部３３５を有する。当該記憶部は、例えば補助記憶装置等を用いて実現可能である。
【００６１】
通信部３３１は、異常検知用ストレージ装置３１や特徴量生成装置３２等との間で情報の送受信を行う。例えば、通信部３３１は、異常検知用ストレージ装置３１から検知アルゴリズム情報及びパラメータ情報を受信する。また、例えば、通信部３３１は、特徴量生成装置３２から特徴量情報を受信する。
【００６２】
情報管理部３３２は、各種記憶部に記憶されている情報を読み出すと共に、各種記憶部に情報を格納する。
【００６３】
検知モデル生成部３３３は、通信部３３１が受信した検知アルゴリズム情報及びパラメータ情報から検知モデルを生成する。検知モデルは、例えば、検知アルゴリズム情報に対して、パラメータ情報に含まれるパラメータ値を設定することで生成される。例えば、検知モデルとしてベクトル自己回帰モデルが用いられる場合、ベクトル自己回帰モデルに用いられるハイパーパラメータに対して、パラメータ情報に含まれるパラメータ値を設定すれば良い。
【００６４】
なお、検知モデル生成部３３３により生成される検知モデルは、例えばベクトル自己回帰モデル等のような時系列分析に用いられるモデルに限られない。例えば、教師あり学習等の機械学習に用いられるモデル（例えば、ＳＶＭ（Support Vector Machine）やニューラルネットワーク、隠れマルコフモデル等）が生成されても良い。
【００６５】
検知演算部３３４は、後述する特徴量情報テーブル３３５Ｔに格納されている特徴量情報を、検知モデル生成部３３３が生成した検知モデルに入力することで、異常の有無を判定する。
【００６６】
特徴量情報テーブル記憶部３３５は、特徴量情報テーブル３３５Ｔを記憶する。ここで、特徴量情報テーブル３３５Ｔについて、図８を参照しながら説明する。図８は、特徴量情報テーブル３３５Ｔの一例を示す図である。
【００６７】
図８に示すように、特徴量情報テーブル３３５Ｔには、１以上の特徴量情報が格納されている。また、各特徴量情報には、時刻と、特徴量とが含まれる。／８のアドレス空間毎の所定の時間Δの間におけるパケット数の増減率を特徴量とした場合、後述するように、当該特徴量は、次元数が２５６のベクトルで表される。
【００６８】
図８に示す例では、時刻ｔ１と特徴量（２，１．５，３，・・・，０．７）とが対応付けられた特徴量情報が格納されている。当該特徴量は、例えば、アドレス空間「０．０．０．０／８」〜アドレス空間「２５５．０．０．０／８」それぞれの時刻０〜時刻ｔ０までの間におけるフォワーディングパケット数と、時刻ｔ０〜時刻ｔ１までの間におけるフォワーディングパケット数の増減率を示している。
【００６９】
同様に、図８に示す例では、時刻ｔ２と特徴量（２．２，１，０．４，・・・，０．９）とが対応付けられた特徴量情報が格納されている。当該特徴量は、例えば、アドレス空間「０．０．０．０／８」〜アドレス空間「２５５．０．０．０／８」それぞれの時刻ｔ０から時刻ｔ１までの間におけるフォワーディングパケット数と、時刻ｔ１〜時刻ｔ２までの間におけるフォワーディングパケット数との増減率を示している。
【００７０】
特徴量情報テーブル３３５Ｔには、パラメータ名が「サンプル数」のパラメータ情報のパラメータ値が示す個数（図８に示す例では「１００個」）の特徴量情報が格納（蓄積）される。
【００７１】
＜処理の詳細＞
次に、本実施形態に係るシステムの処理の詳細について説明する。
【００７２】
以降では、パケット転送装置１０単位で収集されたトラヒック情報から特徴量を算出することで、感染拡大攻撃等の少ないパケット数で成功する攻撃等を異常として検知する処理について、図９を参照しながら説明する。図９は、本実施形態に係る異常検知処理の一例を示すシーケンス図である。
【００７３】
まず、異常検知用ストレージ装置３１の情報管理部３１２は、検知アルゴリズム情報及びパラメータ情報を取得する（ステップＳ９０１）。すなわち、情報管理部３１２は、検知アルゴリズム情報記憶部３１３から検知アルゴリズム情報を取得すると共に、パラメータ情報テーブル記憶部３１４に記憶されているパラメータ情報テーブル３１４Ｔからパラメータ情報を取得する。
【００７４】
次に、異常検知用ストレージ装置３１の通信部３１１は、検知アルゴリズム情報及びパラメータ情報を検知用演算装置３３に送信する（ステップＳ９０２）。
【００７５】
検知用演算装置３３の検知モデル生成部３３３は、通信部３３１が検知アルゴリズム情報及びパラメータ情報を受信すると、受信した検知アルゴリズム情報及びパラメータ情報から検知モデルを生成する（ステップＳ９０３）。これにより、異常検知に用いられる検知モデルが生成される。
【００７６】
続いて、トラヒック情報収集装置２０は、トラヒック情報のリクエストをパケット転送装置１０に送信する（ステップＳ９０４）。
【００７７】
パケット転送装置１０のルーティング部１０２は、通信部１０１がトラヒック情報のリクエストを受信すると、所定の時間Δの間、アドレス空間毎に、当該アドレス空間のネットワーク宛にフォワーディングされたパケット数をカウントする（ステップＳ９０５）。すなわち、ルーティング部１０２は、所定の時間Δの間、「０．０．０．０／８」〜「２５５．０．０．０／８」の２５６個のアドレス空間にそれぞれフォワーディングされたパケット数をカウントする。
【００７８】
次に、パケット転送装置１０の情報収集部１０３は、ルーティング部１０２によりカウントされたパケット数（アドレス空間毎にフォワーディングされたパケット数）を示すトラヒック情報を、通信部１０１によりトラヒック情報収集装置２０に送信する（ステップＳ９０６）。
【００７９】
次に、トラヒック情報収集装置２０は、パケット転送装置１０からトラヒック情報を受信すると、受信したトラヒック情報を蓄積する（ステップＳ９０７）。これにより、所定の時間Δの間におけるアドレス空間毎にフォワーディングされたパケット数を示すトラヒック情報がトラヒック情報収集装置２０に蓄積される。すなわち、例えば、トラヒック情報の収集開始時刻をｔ＝ｔ０とした場合、時刻ｔ＝ｔ０におけるトラヒック情報（時刻０〜時刻ｔ０までの間におけるアドレス空間毎のフォワーディングパケット数）、時刻ｔ＝ｔ１＝ｔ０＋Δにおけるトラヒック情報（時刻ｔ０〜時刻ｔ１までの間におけるアドレス空間毎のフォワーディングパケット数）、時刻ｔ＝ｔ２＝ｔ１＋Δにおけるトラヒック情報（時刻ｔ１〜時刻ｔ２までの間におけるアドレス空間毎のフォワーディングパケット数）等が順次蓄積される。
【００８０】
次に、トラヒック情報収集装置２０は、例えば、時刻ｔにおけるトラヒック情報（すなわち、上記のステップＳ９０７でパケット転送装置１０から受信したトラヒック情報）と、時刻ｔ−１におけるトラヒック情報とを特徴量生成装置３２に送信する（ステップＳ９０８）。なお、時刻ｔ−１のトラヒック情報が特徴量生成装置３２で保持されている場合（又は後述するベクトルＦ（ｔ−１）が保持されている場合）は、トラヒック情報収集装置２０は、時刻ｔ−１におけるトラヒック情報を当該特徴量生成装置３２に送信しなくても良い。
【００８１】
特徴量生成装置３２の特徴量演算部３２２は、時刻ｔにおけるトラヒック情報と、時刻ｔ−１におけるトラヒック情報とを通信部３２１が受信すると、これらのトラヒック情報から、時刻ｔにおける特徴量を算出する（ステップＳ９０９）。
【００８２】
ここで、時刻ｔにおけるトラヒック情報と、時刻ｔ−１におけるトラヒック情報とから、時刻ｔにおける特徴量を算出する処理について、図１０を参照しながら説明する。図１０は、第一の実施形態に係る特徴量の算出処理の一例を示すフローチャートである。
【００８３】
まず、特徴量演算部３２２は、時刻ｔにおけるトラヒック情報と、時刻ｔ−１におけるトラヒック情報とにそれぞれ含まれるパケット数をベクトル化して、ベクトルＦ（ｔ）とベクトルＦ（ｔ−１）とを作成する（ステップＳ１００１）。なお、ベクトルＦ（ｔ−１）が保持されている場合は、当該ベクトルＦ（ｔ−１）を作成しなくても良い。
【００８４】
時刻ｔにおけるトラヒック情報は、時刻ｔ−１から時刻ｔまでの間（すなわち、時間Δの間）における「０．０．０．０／８」〜「２５５．０．０．０／８」の２５６個のアドレス空間にそれぞれフォワーディングされたパケット数である。したがって、当該時間Δの間にアドレス空間「０．０．０．０／８」にフォワーディングされたパケット数をＦ１（ｔ）、アドレス空間「１．０．０．０／８」にフォワーディングされたパケット数をＦ２（ｔ）、・・・、アドレス空間「２５５．０．０．０／８」にフォワーディングされたパケット数をＦ２５６（ｔ）とすれば、ベクトルＦ（ｔ）＝（Ｆ１（ｔ），Ｆ２（ｔ），・・・，Ｆ２５６（ｔ））が作成される。
【００８５】
次に、特徴量演算部３２２は、時刻ｔ−１におけるトラヒック情報から作成されたベクトルＦ（ｔ−１）に対するベクトルＦ（ｔ）の増減率Ｒ（ｔ）を算出して、時刻ｔにおける特徴量とする（ステップＳ１００２）。なお、特徴量としては、増減率以外にも、例えば、ベクトルＦ（ｔ）の絶対値や当該絶対値に対して対数をとった値等が用いられても良い。
【００８６】
増減率Ｒ（ｔ）＝（Ｒ１（ｔ），Ｒ２（ｔ），・・・，Ｒ２５６（ｔ））は、ｊ＝１，２，・・・，２５６に対して、次の（式１）で定義される。
【００８７】
Ｒｊ（ｔ）＝Ｆｊ（ｔ）／Ｆｊ（ｔ−１）  ・・・（式１）
ただし、Ｆｊ（ｔ−１）＝０のとき、Ｒｊ（ｔ）＝１とする。
【００８８】
これにより、時刻ｔにおける特徴量を示す増減率Ｒ（ｔ）が算出される。なお、Ｒ（ｔ＝ｔ０）を算出する場合は、Ｆ（ｔ−１）＝（０，０，・・・，０）として算出すれば良い（すなわち、Ｒ（ｔ＝ｔ０）＝（１，１，・・・，１）とすれば良い。）。
【００８９】
図９に戻る。特徴量生成装置３２の特徴量生成部３２３は、特徴量演算部３２２が算出した特徴量Ｒ（ｔ）を時刻ｔと対応付けた特徴量情報を生成する（ステップＳ９１０）。
【００９０】
次に、特徴量生成装置３２の通信部３２１は、特徴量生成部３２３が生成した特徴量情報を検知用演算装置３３に送信する（ステップＳ９１１）。
【００９１】
上記のステップＳ９０４〜ステップＳ９１１は、所定の時間Δ毎に繰り返し実行される。すなわち、時間Δ毎に、時刻ｔ＝ｔ０における特徴量情報、時刻ｔ＝ｔ１における特徴量情報、時刻ｔ＝ｔ２における特徴量情報等が順に検知用演算装置３３に送信される。
【００９２】
検知用演算装置３３の情報管理部３３２は、通信部３３１が特徴量情報を受信すると、受信した特徴量情報を、特徴量情報テーブル記憶部３３５に記憶されている特徴量情報テーブル３３５Ｔに格納する（ステップＳ９１２）。このとき、受信した特徴量情報を特徴量情報テーブル３３５Ｔに格納することでサンプル数を超える場合には、情報管理部３３２は、特徴量情報テーブル３３５Ｔに格納されている特徴量情報のうち、最も古い時刻の特徴量情報を削除する。
【００９３】
次に、検知用演算装置３３の検知演算部３３４は、特徴量情報テーブル３３５Ｔに格納されている特徴量情報を、上記のステップＳ９０３で生成された検知モデルに入力することで、異常の有無を判定する（ステップＳ９１３）。例えば、検知モデルがＶＡＲである場合、直前の時刻ｔ−１の特徴量から正常状態を構築し、構築した正常状態と現時刻ｔの特徴量とを比較することが異常を検知することができる。
【００９４】
これにより、パケット転送装置１０がアドレス空間単位でカウントしたフォワーディングパケット数から算出された特徴量を用いて、感染拡大攻撃等の少ないパケット数で成功する攻撃を異常として検知することができる。
【００９５】
すなわち、例えば、図１１（ａ）に示すように、時刻ｔ〜時刻ｔ＋１において、アドレス空間「０．０．０．０／８」にフォワーディングされたパケット数が「１０００」、・・・、アドレス空間「２５５．０．０．０／８」にフォワーディングされたパケット数が「５」であったとする。このとき、図１１（ｂ）に示すように、時刻ｔ＋１〜時刻ｔ＋２において、異常なトラヒック（例えば、感染拡大攻撃等によるトラヒック）が発生し、アドレス空間「０．０．０．０／８」にフォワーディングされたパケット数が「１００５」、・・・、アドレス空間「２５５．０．０．０／８」にフォワーディングされたパケット数が「１０」となったとする。
【００９６】
この場合、アドレス空間「０．０．０．０／８」におけるパケット数の増減率はほぼ変化がないのに対して、アドレス空間「２５５．０．０．０／８」におけるパケット数の増減率は２倍となる。このため、アドレス空間毎のフォワーディングパケット数の増減率Ｒ（ｔ）を特徴量として用いることで、異常なトラヒックの発生を検知することができるようになる。
【００９７】
また、例えば、本実施形態では、パケット転送装置１０単位で収集したトラヒック情報を用いて特徴量を算出して、異常検知を行う。このため、例えば、端末４０毎のトラヒック情報を用いて異常検知を行う場合と比べて、異常検知における計算量や情報取得時間を削減することができる。
【００９８】
なお、更に、例えば、複数のパケット転送装置１０において、ある特定のアドレス空間におけるフォワーディングパケット数が増加したような場合、当該特定のアドレス空間にＣ２（Command and Control）サーバが存在すると考えられる。したがって、この場合、Ｃ２サーバを検知することができる。
【００９９】
≪特徴量の算出の他の例≫
ここで、上記では、／８のアドレス空間毎のパケット数の増減率を特徴量に用いたが、ＡＣＫパケット数とＳＹＮパケット数との比率を特徴量に用いることもできる。すなわち、例えば、マルウェア等に感染した端末４０がＴｅｌｎｅｔ等のアプリケーションにより宛先ホストに感染拡大攻撃等を行う場合、図１２に示すように、宛先ホストとの間にＦＷ（ファイアウォール）等があると、正常なトラヒックと異なり、ＳＹＮパケットに対するＡＣＫパケットが返ってこないことがある。
【０１００】
したがって、ＡＣＫパケット数とＳＹＮパケット数との比率を特徴量に用いることで、異常なトラヒックの発生を検知することができるようになる。
【０１０１】
以降では、図９のステップＳ９０３における特徴量の算出処理の他の例について、図１３を参照しながら説明する。図１３は、本実施形態に係る特徴量の算出処理の他の例を示すフローチャートである。
【０１０２】
ただし、図１３では、時刻ｔにおけるトラヒック情報は、時刻ｔ−１〜時刻ｔ−１＋Δの間におけるＳＹＮパケット数及びＡＣＫパケット数であるものとする。したがって、この場合、図９のステップＳ９０５では、パケット転送装置１０は、時間Δの間におけるＳＹＮパケット数及びＡＣＫパケット数をカウントしたものとする。ＳＹＮパケット数及びＡＣＫパケット数のカウントは、例えば、ホワイトボックススイッチでＴＣＡＭ（Ternary Content Addressable Memory）を実装すること等により実現することができる。また、図９のステップＳ９０８において、トラヒック情報収集装置２０は、時刻ｔにおけるトラヒック情報を特徴量生成装置３２に送信すれば良い。
【０１０３】
まず、特徴量演算部３２２は、時刻ｔにおけるトラヒック情報に含まれるＳＹＮパケット数Ｓ（ｔ）及びＡＣＫパケット数Ａ（ｔ）を取得する（ステップＳ１３０１）。
【０１０４】
次に、特徴量演算部３２２は、ＳＹＮパケット数Ｓ（ｔ）と、ＡＣＫパケット数Ａ（ｔ）との比率ＡＰＳ（ｔ）を算出して、時刻ｔにおける特徴量とする（ステップＳ１３０２）。
【０１０５】
比率ＡＰＳ（ｔ）は、次の（式２）で定義される。
【０１０６】
ＡＰＳ（ｔ）＝Ａ（ｔ）／Ｓ（ｔ）  ・・・（式２）
これにより、時刻ｔにおける特徴量を示す比率ＡＰＳ（ｔ）が算出される。
【０１０７】
［第二の実施形態］
次に、第二の実施形態について説明する。第一の実施形態では、／８のアドレス空間（すなわち、上位８ビットがネットワーク部であるアドレス空間）毎に、フォワーディングされたパケット数をカウントして、特徴量を算出する場合について説明した。第二の実施形態では、容易に定義可能なアドレス空間（サブ空間）の一例として、／１６のアドレス空間（すなわち、上位１６ビットがネットワーク部であるアドレス空間）毎に、フォワーディングされたパケット数をカウントして、特徴量を算出する場合について説明する。
【０１０８】
／１６のアドレス空間では、２１６個（すなわち、６５５３６個）のアドレス空間がある。そこで、この場合、２１６個のアドレス空間をクラスタリングして、適切な個数のアドレス空間を定義した上で、このように定義されたアドレス空間に対して、第一の実施形態と同様の方法で異常検知を行うものとする。
【０１０９】
なお、第二の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と実質的に同一の構成要素については、適宜、その説明を省略するものとする。
【０１１０】
＜機能構成＞
以降では、異常検知用ストレージ装置３１及び検知用演算装置３３の機能構成について説明する。
【０１１１】
≪異常検知用ストレージ装置３１≫
まず、本実施形態に係る異常検知用ストレージ装置３１の機能構成について、図１４を参照しながら説明する。図１４は、本実施形態に係る異常検知用ストレージ装置３１の機能構成の一例を示す図である。
【０１１２】
図１４に示すように、本実施形態に係る異常検知用ストレージ装置３１は、更に、アドレス空間定義情報テーブル記憶部３１５を有する。当該記憶部は、例えば補助記憶装置等を用いて実現可能である。
【０１１３】
アドレス空間定義情報テーブル記憶部３１５には、／１６のアドレス空間がクラスタリングされたアドレス空間（以下、「検知用アドレス空間」と言う。）の定義情報が格納されているアドレス空間定義情報テーブル３１５Ｔが記憶されている。ここで、アドレス空間定義情報テーブル３１５Ｔについて、図１５を参照しながら説明する。図１５は、アドレス空間定義情報テーブル３１５Ｔの一例を示す図である。
【０１１４】
図１５に示すように、アドレス空間定義情報テーブル３１５Ｔには、１以上のアドレス空間定義情報が格納されている。また、各アドレス空間定義情報には、検知用アドレス空間名と、アドレス空間定義とが含まれる。図１５に示す例では、検知用アドレス空間名「検知用アドレス空間Ｓ１」と、アドレス空間定義「１．１．０．０／１６」、・・・、アドレス空間定義「２５５．１５５．０．０／１６」とが対応付けられたアドレス空間定義情報が格納されている。これは、検知用アドレス空間Ｓ１は、／１６のアドレス空間「１．１．０．０／１６」、・・・、「２５５．１５５．０．０／１６」等が１つのクラスタにクラスタリングされたことを示している。
【０１１５】
なお、図５に示す例では、／１６のアドレス空間が３００個の検知用アドレス空間Ｓ１〜Ｓ３００にクラスタリングされた場合を示している。このクラスタ数「３００」は、後述するように、例えばパラメータ情報として設定される。
【０１１６】
このように、アドレス空間定義情報は、／１６のアドレス空間を所定の個数の検知用アドレス空間にクラスタリングした情報である。
【０１１７】
ここで、本実施形態では、パラメータ情報テーブル記憶部３１４に記憶されているパラメータ情報テーブル３１４Ｔに格納されるパラメータ情報が第一の実施形態と異なる。そこで、パラメータ情報テーブル３１４Ｔについて、図１６を参照しながら説明する。図１６は、パラメータ情報テーブル３１４Ｔの他の例を示す図である。
【０１１８】
図１６に示すように、パラメータ情報テーブル３１４Ｔには、パラメータ名「クラスタ数」のパラメータ情報が格納されている。図１６に示す例では、パラメータ名「クラスタ数」及びパラメータ値「３００」のパラメータ情報が格納されている。これは、／１６のアドレス空間をクラスタリングする際のクラスタ数が「３００」であることを示している。
【０１１９】
なお、パラメータ名「クラスタ数」のパラメータ情報は、／１６のアドレス空間をクラスタリングするアルゴリズムとして、事前にクラスタ数を設定するアルゴリズム（例えば、ｋ−ｍｅａｎｓ法等）を用いる場合に、パラメータ情報テーブル３１４Ｔに格納される。
【０１２０】
また、検知アルゴリズム情報記憶部３１３には、更に、クラスタリングに用いるアルゴリズムを実行するためのアルゴリズム情報（以下、「クラスタリングアルゴリズム情報」と言う。）が記憶されている。クラスタリングアルゴリズムとしては、例えば、ｋ−ｍｅａｎｓ法等が挙げられる。
【０１２１】
≪検知用演算装置３３≫
次に、本実施形態に係る検知用演算装置３３の機能構成について、図１７を参照しながら説明する。図１７は、本実施形態に係る検知用演算装置３３の機能構成の一例を示す図である。
【０１２２】
図１７に示すように、本実施形態に係る検知用演算装置３３は、更に、クラスタリング部３３６を有する。当該機能部は、検知用演算装置３３にインストールされた１以上のプログラムが、ＣＰＵに実行させる処理により実現される。
【０１２３】
クラスタリング部３３６は、所定の時間δの間における／１６のアドレス空間毎のフォワーディングパケット数を用いて、／１６のアドレス空間をクラスタリングする。そして、クラスタリング部３３６は、同一のクラスタに属する／１６のアドレス空間を同一の検知用アドレス空間としたアドレス空間定義情報を生成する。
【０１２４】
＜処理の詳細＞
次に、本実施形態に係るシステムの処理の詳細について説明する。
【０１２５】
以降では、パケット転送装置１０単位で収集されたトラヒック情報から／１６のアドレス空間をクラスタリングした上で、第一の実施形態と同様に、異常検知を行う処理について、図１８を参照しながら説明する。図１８は、本実施形態に係る異常検知処理の一例を示すシーケンス図である。
【０１２６】
まず、トラヒック情報収集装置２０は、トラヒック情報のリクエストをパケット転送装置１０に送信する（ステップＳ１８０１）。
【０１２７】
パケット転送装置１０のルーティング部１０２は、通信部１０１がトラヒック情報のリクエストを受信すると、所定の時間δの間、／１６のアドレス空間毎に、当該アドレス空間のネットワーク宛にフォワーディングされたパケット数をカウントする（ステップＳ１８０２）。すなわち、ルーティング部１０２は、所定の時間δの間、「０．０．０．０／１６」〜「２５５．２５５．０．０／１６」の６５５３６個のアドレス空間にそれぞれフォワーディングされたパケット数をカウントする。
【０１２８】
次に、パケット転送装置１０の情報収集部１０３は、ルーティング部１０２によりカウントされたパケット数（／１６のアドレス空間毎にフォワーディングされたパケット数）を示すトラヒック情報を、通信部１０１によりトラヒック情報収集装置２０に送信する（ステップＳ１８０３）。
【０１２９】
次に、トラヒック情報収集装置２０は、パケット転送装置１０からトラヒック情報を受信すると、受信したトラヒック情報を蓄積する（ステップＳ１８０４）。これにより、所定の時間δの間におけるアドレス空間毎にフォワーディングされたパケット数を示すトラヒック情報がトラヒック情報収集装置２０に蓄積される。
【０１３０】
次に、トラヒック情報収集装置２０は、所定の時間δの間におけるアドレス空間毎にフォワーディングされたパケット数を示すトラヒック情報を特徴量生成装置３２に送信する（ステップＳ１８０５）。
【０１３１】
特徴量生成装置３２の通信部３２１は、トラヒック情報収集装置２０から受信したトラヒック情報を検知用演算装置３３に送信する（ステップＳ１８０６）。
【０１３２】
検知用演算装置３３のクラスタリング部３３６は、通信部３３１がトラヒック情報を受信すると、異常検知用ストレージ装置３１からクラスタリングアルゴリズム情報及びパラメータ情報を取得する（ステップＳ１８０７）。
【０１３３】
次に、検知用演算装置３３のクラスタリング部３３６は、トラヒック情報を用いて、／１６のアドレス空間をクラスタリングする（ステップＳ１８０８）。
【０１３４】
ここで、トラヒック情報を用いて、／１６のアドレス空間をクラスタリングする処理について、図１９を参照しながら説明する。図１９は、本実施形態に係るクラスタリング処理の一例を示すフローチャートである。
【０１３５】
まず、クラスタリング部３３６は、トラヒック情報に含まれるパケット数をベクトル化して、ベクトルＧを作成する（ステップＳ１９０１）。
【０１３６】
トラヒック情報は、所定の時間δの間における「０．０．０．０／１６」〜「２５５．２５５．０．０／１６」の６５５３６個のアドレス空間にそれぞれフォワーディングされたパケット数である。したがって、当該時間δの間にアドレス空間「０．０．０．０／１６」にフォワーディングされたパケット数をＧ１、アドレス空間「１．０．０．０／１６」にフォワーディングされたパケット数をＧ２、・・・、アドレス空間「２５５．２５５．０．０／１６」にフォワーディングされたパケット数をＧ６５５３６とすれば、ベクトルＧ＝（Ｇ１，Ｇ２，・・・，Ｇ６５５３６）が作成される。
【０１３７】
次に、クラスタリング部３３６は、ベクトルＧ＝（Ｇ１，Ｇ２，・・・，Ｇ６５５３６）の各成分Ｇ１，Ｇ２，・・・，Ｇ６５５３６をクラスタリングすることで、各成分に対応する／１６のアドレス空間をクラスタリングする（ステップＳ１９０２）。
【０１３８】
すなわち、クラスタリング部３３６は、図１８のステップＳ１８０７で異常検知用ストレージ装置３１から取得したクラスタリングアルゴリズム情報及びパラメータ情報を用いて、Ｇ１，Ｇ２，・・・，Ｇ６５５３６をクラスタリングする。このとき、クラスタリング部３３６は、Ｇ１，Ｇ２，・・・，Ｇ６５５３６を、パラメータ名「クラスタ数」のパラメータ情報のパラメータ値が示す個数のクラスタにクラスタリングする。そして、クラスタリング部３３６は、同一のクラスタに属する成分に対応する／１６のアドレス空間を、同一のクラスタにクラスタリングする。
【０１３９】
これにより、例えば、パラメータ名「クラスタ数」のパラメータ情報のパラメータ値が「３００」である場合、／１６のアドレス空間が３００個のクラスタにクラスタリングされる。言い換えれば、６５５３６個の／１６のアドレス空間が、所定の個数（例えば３００個）のアドレス空間に分類される。
【０１４０】
図１８に戻る。検知用演算装置３３のクラスタリング部３３６は、同一のクラスタに属する／１６のアドレス空間を同一の検知用アドレス空間としたアドレス空間定義情報を生成する（ステップＳ１８０９）。これにより、例えば、パラメータ名「クラスタ数」のパラメータ情報のパラメータ値が「３００」である場合、検知用アドレス空間Ｓ１のアドレス空間情報、検知用アドレス空間Ｓ２のアドレス空間情報、・・・、検知用アドレス空間Ｓ３００のアドレス空間情報が生成される。
【０１４１】
次に、検知用演算装置３３の通信部３３１は、生成したアドレス空間定義情報を異常検知用ストレージ装置３１に送信する（ステップＳ１８１０）。
【０１４２】
異常検知用ストレージ装置３１の情報管理部３１２は、通信部３１１が受信したアドレス空間定義情報をアドレス空間定義情報テーブル３１５Ｔに格納する（ステップＳ１８１１）。なお、アドレス空間定義情報テーブル３１５Ｔに既にアドレス空間定義情報が格納されている場合は、情報管理部３１２は、既に格納されているアドレス空間定義情報を削除した上で、受信したアドレス空間定義情報を格納すれば良い。
【０１４３】
そして、以降では、第一の実施形態と同様に、図９のステップＳ９０１〜ステップＳ９１３を行うことで、異常検知が行われる。ただし、本実施形態では、／８のアドレス空間単位ではなく、検知用アドレス空間単位でフォワーディングパケット数をカウントする。すなわち、トラヒック情報は、所定の時間Δの間における検知用アドレス空間毎のフォワーディングパケット数である。
【０１４４】
したがって、第二の実施形態では、例えば、時刻ｔ−１〜ｔ−１＋Δの間に、検知用アドレス空間Ｓｊ（ｊ＝１，２，・・・，３００）にフォワーディングされたパケット数をＨｊ（ｔ）とすれば、ベクトルＨ（ｔ）＝（Ｈ１（ｔ），Ｈ２（ｔ），・・・，Ｈ３００（ｔ））が作成される。そして、Ｈｊ（ｔ）に対するＨｊ（ｔ−１）の増減率をＲｊ（ｔ）算出することで、特徴量Ｒ（ｔ）＝（Ｒ１（ｔ），Ｒ２（ｔ），・・・，Ｒ３００（ｔ））が算出される。
【０１４５】
このように、第二の実施形態では、パケット転送装置１０がフォワーディングするアドレス空間が多数である場合、これらアドレス空間をクラスタリングする。これにより、フォワーディング先のアドレス空間が多数であっても、第一の実施形態と同様に、感染拡大攻撃等の少ないパケット数で成功する攻撃を異常として検知することができる。
【０１４６】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０１４７】
１０        パケット転送装置
２０        トラヒック情報収集装置
３０        異常検知システム
３１        異常検知用ストレージ装置
３２        特徴量生成装置
３３        検知用演算装置
４０        端末
１０１      通信部
１０２      ルーティング部
１０３      情報収集部
３１１      通信部
３１２      情報管理部
３１３      検知アルゴリズム情報記憶部
３１４      パラメータ情報テーブル記憶部
３２１      通信部
３２２      特徴量演算部
３２３      特徴量生成部
３３１      通信部
３３２      情報管理部
３３３      検知モデル生成部
３３４      検知演算部
３３５      特徴量情報テーブル記憶部
【図１】
2019029798.tif 000003
【図２】
2019029798.tif 000004
【図３】
2019029798.tif 000005
【図４】
2019029798.tif 000006
【図５】
2019029798.tif 000007
【図６】
2019029798.tif 000008
【図７】
2019029798.tif 000009
【図８】
2019029798.tif 000010
【図９】
2019029798.tif 000011
【図１０】
2019029798.tif 000012
【図１１】
2019029798.tif 000013
【図１２】
2019029798.tif 000014
【図１３】
2019029798.tif 000015
【図１４】
2019029798.tif 000016
【図１５】
2019029798.tif 000017
【図１６】
2019029798.tif 000018
【図１７】
2019029798.tif 000019
【図１８】
2019029798.tif 000020
【図１９】
2019029798.tif 000021