(57)【要約】【課題】感染拡大攻撃の発生を高精度で検知することができる感染拡大攻撃検知システム及び方法、並びにプログラムを提供する。【解決手段】転送装置が転送するパケットのトラヒック情報に基づき第１の特徴量を算出し、該第１の特徴量に基づき監視対象とするＭ個の部分アドレス空間を特定する。そして、Ｍ個の部分アドレス空間に係るトラヒック情報に基づきＭ個の部分アドレス空間毎の第２の特徴量を算出し、Ｍ個の部分アドレス空間毎に第２の特徴量に基づき異常検知判定を行い、Ｍ個の判定結果を評価して感染拡大攻撃の発生の有無を判定する。【選択図】図１
2019213029.tif 000002
【特許請求の範囲】
【請求項１】
パケットを転送する転送装置を備えたネットワーク内において感染拡大攻撃の発生を検知する感染拡大攻撃検知システムであって、
前記転送装置が転送するパケットについて第１のトラヒック情報を取得するとともに、前記第１のトラヒック情報に基づきトラヒックの第１の特徴量をパケットのアドレス空間を細分化してなる複数の部分アドレス空間毎に導出する第１の特徴量導出手段と、
前記第１の特徴量導出手段により導出された第１の特徴量に基づき前記複数の部分アドレス空間のうち監視対象とするＭ個の部分アドレス空間を決定する監視対象決定手段と、
前記監視対象決定手段により決定されたＭ個の部分アドレス空間内のアドレスを宛先又は送信元とする前記転送装置が転送するパケットについて第２のトラヒック情報を取得するとともに前記第２のトラヒック情報に基づき当該トラヒックの第２の特徴量を前記Ｍ個の部分アドレス空間毎に導出する第２の特徴量導出手段と、
前記第２の特徴量導出手段により導出された第２の特徴量が所定の検知条件を満たすか否かをＭ個の部分アドレス空間毎に判定するとともにＭ個の判定結果を評価することにより感染拡大攻撃が発生したか否かを判定する検知手段とを備えた
ことを特徴とする感染拡大攻撃検知システム。
【請求項２】
前記検知手段は、前記検知条件を満たす部分アドレス空間の数が所定の閾値Ｎ（Ｎ≦Ｍ）以上である場合に前記検知条件を満たす部分アドレス空間内において感染拡大攻撃が発生したと判定する
ことを特徴とする請求項１記載の感染拡大攻撃検知システム。
【請求項３】
前記監視対象決定手段は、前記第１の特徴量に基づき相対的にトラヒック量が少ない所定のＭ個の部分アドレス空間を監視対象とするよう決定する
ことを特徴とする請求項１又は２記載の感染拡大攻撃検知システム。
【請求項４】
前記監視対象決定手段は、前記第１の特徴量並びに相対的又は絶対的な閾値に基づき監視対象とするＭ個の部分アドレス空間を決定する
ことを特徴とする請求項１又は２記載の感染拡大攻撃検知システム。
【請求項５】
前記監視対象決定手段は、前記転送装置において前記第２のトラヒック情報を取得するためのアクセスコントロールリストを前記転送装置に設定する
ことを特徴とする請求項１乃至４何れか１項記載の感染拡大攻撃検知システム。
【請求項６】
前記検知手段は、感染拡大攻撃が発生したと判定すると、前記Ｍ個の部分アドレス空間内のアドレスを宛先又は送信元とするパケットを所定のセキュリティ装置へ転送するよう前記転送装置を設定する
ことを特徴とする請求項１乃至５何れか１項記載の感染拡大攻撃検知システム。
【請求項７】
パケットを転送する転送装置を備えたネットワーク内において感染拡大攻撃の発生を検知する感染拡大攻撃検知方法であって、
第１の特徴量導出手段が、前記転送装置が転送するパケットについて第１のトラヒック情報を取得するとともに、前記第１のトラヒック情報に基づきトラヒックの第１の特徴量をパケットのアドレス空間を細分化してなる複数の部分アドレス空間毎に導出するステップと、
監視対象決定手段が、前記第１の特徴量導出手段により導出された第１の特徴量に基づき前記複数の部分アドレス空間のうち監視対象とするＭ個の部分アドレス空間を決定するステップと、
第２の特徴量導出手段が、前記監視対象決定手段により決定されたＭ個の部分アドレス空間内のアドレスを宛先又は送信元とする前記転送装置が転送するパケットについて第２のトラヒック情報を取得するとともに前記第２のトラヒック情報に基づき当該トラヒックの第２の特徴量を前記Ｍ個の部分アドレス空間毎に導出するステップと、
検知手段が、前記第２の特徴量導出手段により導出された第２の特徴量が所定の検知条件を満たすか否かをＭ個の部分アドレス空間毎に判定するとともにＭ個の判定結果を評価することにより感染拡大攻撃が発生したか否かを判定するステップとを備えた
ことを特徴とする感染拡大攻撃検知方法。
【請求項８】
コンピュータを請求項１乃至６記載の感染拡大攻撃検知システムの各手段として機能させる
ことを特徴とする感染拡大攻撃検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク内において感染端末による感染拡大攻撃を検知する感染拡大攻撃検知システムに関する。
【背景技術】
【０００２】
近年、ＩｏＴ（Internet of Things）の普及により、充分な計算資源が無く、セキュリティ対策が行えない端末もインターネットに接続されることが増えてきている。また、ユーザの一人あたりの所持端末数も増加しており、管理が行き届かない端末の増加も予想される。
【０００３】
一方、近年、攻撃者がインターネット経由で上述の脆弱なユーザ端末を乗っ取り、サイバー攻撃の踏み台として悪用する事例が増加しており、数ＴｂｐｓクラスのＤＤｏＳ（Denial of Service）攻撃などの大規模なサイバー攻撃が観測されている。今後も多数の端末がマルウェアに感染し、攻撃者の踏み台に用いられれば、将来的にネットワーク帯域の圧迫や対処側のセキュリティ機構への負荷が増大するおそれがある（非特許文献１参照）。
【０００４】
そこで、従来、セキュリティ対策やユーザの管理が不十分な端末が踏み台にされることを通信事業者網で防ぐことで、ユーザ端末のセキュリティ向上と大規模なサイバー攻撃の未然防止を目指し、通信事業者網での端末を踏み台化する攻撃（以下「感染拡大攻撃」と言う）を検知するシステムが提案されている（非特許文献２参照）。このシステムは、感染端末による不正通信を通信事業者網で検知し、今後の攻撃パターンや攻撃量を事前に把握することで、通信事業者のセキュリティリスクの軽減を目指すものである。なお、感染拡大攻撃の例としては、Ｔｅｌｎｅｔやワーム等の感染活動などが挙げられる。
【０００５】
非特許文献２に記載のシステムについて説明する。このシステムは、まず、（１）通信事業者網内のコアルータ等においてアクセスコントロールリスト（ＡＣＬ：Access Control List）を用いて、細分化した部分アドレス空間毎のトラヒック情報を経時的に取得する。アドレス空間の細分化の例としては、ＩＰｖ４のパケットの場合、３２ｂｉｔのアドレス空間について上位８ｂｉｔの値を用いて細分化する方法が挙げられる。また、取得するトラヒック情報としては、所定のサンプリング時間当たりのパケット数である。なお、前記ＡＣＬとは、パケットを制御するためのアドレス等の条件と、条件にマッチしたパケットに対する制御方法を記載したものである。
【０００６】
次に、（２）経時的に取得したトラヒック情報を、部分アドレス空間毎に所定の集計時間範囲で集計するとともに、集計した部分アドレス空間毎のトラヒック情報をベクトル化する。この処理によるベクトルは、次元数が部分アドレス空間の細分化数であり、各要素が集計したトラヒック情報というスカラー値である。そして、（３）このベクトル化されたトラヒック情報を用いて、教師なし学習により機械学習処理を行うことにより、識別器（閾値）を作成する。
【０００７】
次に、（４）検知を行う際には、前述の（１）及び（２）と同様にして、ある時点におけるベクトル化されたトラヒック情報を取得する。そして、当該トラヒック情報について前記識別器を用いて正常か異常かを判定する。これにより感染拡大攻撃を検知することができる。感染拡大攻撃を検知した場合、以降のパケットを所定のセキュリティ装置にするようコアルータを設定する。そして、セキュリティ装置において、さらに詳細な分析が行われ、感染拡大攻撃を行っている端末の特定などを行う。
【０００８】
トラヒック量の少ない空間では、正常通信に対して感染拡大攻撃に係る通信が相対的に多くなることが知られている。このため、上記のシステムでは、少量の攻撃による変化も捉えられると期待できる。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】小山覚, “サイバー攻撃対策としてのIoTセキュリティについて”, [online], サイバーセキュリティタスクフォース（第2回）, 総務省, [平成30年5月11日検索], インターネット<URL:http://www.soumu.go.jp/main_content/000471279.pdf>
【非特許文献２】鋒幸洋, 前田浩明, 小島久史, 末田欣子, “通信事業者網における感染拡大攻撃検知についての一検討”, 電子情報通信学会, ソサエティ大会, 2017
【非特許文献３】山内一将, 他３名, “C&Cトラフィック分類のための機械学習手法の評価”, 情報処理学会論文誌 Vol.56, No.9, 1745-1753, 2015年09月
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述の従来のシステムでは、トラヒック量の少ないアドレス空間において発生するノイズに弱く、誤検知が多いという問題がある。そして、誤検知が増えるとセキュリティ装置へトラヒックを流す回数が増加するので、セキュリティ装置を多数配備しなければならないという問題がある。なお、ノイズの例としては、学習データにない正常通信（例：Ｗｅｂ閲覧やＰ２Ｐ（Peer to Peer）通信）に係るトラヒックが挙げられる。当該トラヒックは実は正常通信であるにもかかわらず学習データにはないため異常判定される事象が発生する。機械学習におけるノイズについては非特許文献３において議論されている。
【００１１】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、感染拡大攻撃の発生を高精度で検知することができる感染拡大攻撃検知システム及び方法、並びにプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本願発明は、パケットを転送する転送装置を備えたネットワーク内において感染拡大攻撃の発生を検知する感染拡大攻撃検知システムであって、前記転送装置が転送するパケットについて第１のトラヒック情報を取得するとともに、前記第１のトラヒック情報に基づきトラヒックの第１の特徴量をパケットのアドレス空間を細分化してなる複数の部分アドレス空間毎に導出する第１の特徴量導出手段と、前記第１の特徴量導出手段により導出された第１の特徴量に基づき前記複数の部分アドレス空間のうち監視対象とするＭ個の部分アドレス空間を決定する監視対象決定手段と、前記監視対象決定手段により決定されたＭ個の部分アドレス空間内のアドレスを宛先又は送信元とする前記転送装置が転送するパケットについて第２のトラヒック情報を取得するとともに前記第２のトラヒック情報に基づき当該トラヒックの第２の特徴量を前記Ｍ個の部分アドレス空間毎に導出する第２の特徴量導出手段と、前記第２の特徴量導出手段により導出された第２の特徴量が所定の検知条件を満たすか否かをＭ個の部分アドレス空間毎に判定するとともにＭ個の判定結果を評価することにより感染拡大攻撃が発生したか否かを判定する検知手段とを備えたことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、監視対象とする部分アドレス空間がトラヒック情報から導出した第１の特徴量に基づきＭ個に限定されており、限定された各部分アドレス空間におけるトラヒック情報から導出したＭ個の第２の特徴量のそれぞれについて検知条件を満たすかが判定され、その判定結果を評価することにより感染拡大攻撃が発生したか否かが判定されるので、複数の部分アドレス空間において同時にノイズが発生しない限り、誤検知の発生を低減可能になる。これにより、感染拡大攻撃の発生を高精度で検知することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る感染拡大攻撃検知システムの概要を説明する図
【図２】有効に検知可能な部分アドレス空間の例を説明する図
【図３】パケット転送装置に設定するＡＣＬの一例
【図４】トラヒック情報から第２の特徴量への加工処理の一例
【図５】感染拡大攻撃検知システムのネットワーク構成の一例
【図６】パケット転送装置の機能構成の一例
【図７】転送装置制御コントローラの機能構成の一例
【図８】異常検知用ストレージ装置の機能構成の一例
【図９】特徴量設定情報テーブルの一例
【図１０】特徴量保持テーブルの一例
【図１１】トラヒック傾向分析装置の機能構成の一例
【図１２】分析設定情報テーブルの一例
【図１３】閾値学習用演算装置の機能構成の一例
【図１４】閾値保持テーブルの一例
【図１５】特徴量設定情報テーブルの一例
【図１６】検知用演算装置の機能構成の一例
【図１７】特徴量設定情報テーブルの一例
【図１８】トラヒックの傾向分析に係るシーケンス
【図１９】閾値の学習に係るシーケンス
【図２０】異常の検知・対処に係るシーケンス
【発明を実施するための形態】
【００１５】
まず、本発明に係る感染拡大攻撃検知システムの概要について図１を参照して説明する。本発明は、通信事業者網などのネットワークに収容されているマルウェア感染端末による、アドレス空間全体への感染拡大攻撃を検知対象とする。また、本発明は、感染拡大攻撃に係る通信には様々なプロトコルが用いられる性質を利用する。また、本発明は、アドレス空間を複数の部分アドレス空間に細分化してトラヒックを観察した場合、正常通信は独立した複数の部分アドレス空間に対して同時に発生することは少ないが、感染拡大攻撃は複数の部分アドレス空間に対して同時に発生する性質を利用する。
【００１６】
本発明に係る感染拡大攻撃検知システムにおいて感染端末を特定するための概略手順は以下のとおりである（図１参照）。
【００１７】
手順０：全アドレス空間を細分化してなる複数の部分アドレス空間うち、有効に検知可能なＭ個の部分アドレス空間を監視対象として特定する。
手順１：所定時間ごとにＭ個の部分アドレス空間のそれぞれに対して異常検知判定を行う。
手順２：そのうちＮ個（Ｎ≦Ｍ）の部分アドレス空間で異常判定された場合、感染拡大攻撃が発生していると判定する。
手順３：Ｍ個の部分アドレス空間内のアドレスを宛先又は発信元とする通信について全てのトラヒックを所定のセキュリティ装置に引き込んで精査し、攻撃元となる感染端末を特定する。
【００１８】
上記手順０において監視対象として特定する部分アドレス空間の個数Ｍの数値が大きければ、攻撃を有効に観測できるアドレス空間の領域が広がり、攻撃の発生を高精度に検知できる。また、上記手順１における異常検知判定を実施間隔は、例えば検知対象となる感染端末の平均的な攻撃持続時間をもとに決定することが可能である。また、上記手順２における感染拡大攻撃の発生有無を判定するための閾値Ｎの数値が大きければ、誤検知が低下する一方、検知率も低下する可能性がある。そのため、パラメータＮの設定方法の一例として、許容できる誤検知率を目安に、できるだけ小さなＮを指定することが考えられる。
【００１９】
上記手順０におけるアドレス空間の細分化の例としては、ＩＰｖ４のパケットの場合、３２ｂｉｔのアドレス空間について上位８ｂｉｔや上位１６ｂｉｔの値を用いて細分化する方法が挙げられる。なお、アドレス空間の粒度の目安としては８ｂｉｔが好ましい。他の細分化方法としては、フルルート等のルーティングごとの細分化でもよく、その手法は不問である。
【００２０】
有効に検知可能な部分アドレス空間の例とその特定方法について図２を参照して説明する。図２は、有効に検知可能な部分アドレス空間の例を説明する図である。図２の左図は、正常通信時の状態すなわち感染拡大攻撃が行われていない状態におけるトラヒック挙動を示す。一方、図２の右図は、感染拡大攻撃が行われている状態におけるトラヒック挙動を示す。
【００２１】
図２の左図に示すように、正常ユーザの端末の通信に係る宛先アドレスには偏りがあり、トラヒックの多いアドレス空間（例：ｙ．０．０．０／８，ｚ．０．０．０／８）と少ないアドレス空間（ｘ．０．０．０／８）が存在する。一方、右図に示すように、感染端末による感染拡大攻撃はランダムに行われることが多く、複数のアドレス空間あてに攻撃が発生する。このとき、トラヒックの少ないアドレス空間の変化に着目することで有効に検知できる。本発明は、このような性質を利用するものである。
【００２２】
トラヒックの少ないＭ個の部分アドレス空間の特定は、一定期間における部分アドレス空間におけるトラヒック情報から第１の特徴量を導出し、この第１の特徴量に基づき行うことができる。当該特定処理は、統計的手法や、Ｋ−Ｍｅａｎｓ等のクラスタリングアルゴリズムなどを適宜用いることができる。例えば、第１の特徴量として送信パケット数を採用し、その平均が小さい順にＭ個の部分アドレス空間、換言すれば、相対的にトラヒック量が少ない所定のＭ個の部分アドレス空間を監視対象とすることができる。また、他の方法としては、第１の特徴量として送信パケット数を採用し、この第１の特徴量が閾値Ｘを下回るすべての部分アドレス空間を監視対象とすることができる。この場合、監視対象の部分アドレス空間の個数Ｍは、その特定時に決定される。なお、前記閾値Ｘは絶対的な値でもよいし、相対的な値であってもよい。相対的な値の閾値Ｘの例としては、一定期間における全アドレス空間における送信パケット数の平均値を算出し、この平均値に対して所定の係数（例えば１／１０）を乗じたものが挙げられる。
【００２３】
上記手順１における異常検知判定では、Ｍ個の部分アドレス空間におけるトラヒック情報に基づき部分アドレス空間毎に第２の特徴量を導出し、この第２の特徴量に基づき異常検知判定を行う。この異常検知判定は、周知の統計的手法や機械学習手法を用いることができる。前記第２の特徴量の例としては、トラヒックに係るパケット数や、その経時的な移動平均などが挙げられる。なお、第１の特徴量と第２の特徴量とは、互いに異なっていても同じであってもよい。また、上記手順１の異常検知は、ネットワーク内に配備されたコアルータ等のネットワーク機器毎に実施する。第２の特徴量についての詳細な例については後述する。
【００２４】
前述のように、上記手順０では部分アドレス空間におけるトラヒック情報に基づき第１の特徴量を導出し、上記手順１ではＭ個の部分アドレス空間におけるトラヒック情報に基づき第１の特徴量を導出する。各手順において必要なトラヒック情報は、ネットワーク内に配備されネットワークに収容された端末とインターネット側との間の通信トラヒックに係るパケットを転送するコアルータ等のネットワーク機器から取得する。例えば、当該ネットワーク機器に、まず第１の特徴量の導出に必要なトラヒック情報を取得するためのＡＣＬを設定し、Ｍ個の部分アドレス空間の特定後は、第２の特徴量の導出に必要なトラヒック情報を取得するためのＡＣＬを設定すればよい。ＡＣＬが設定されたネットワーク機器は、ＡＣＬの各条件にマッチするパケット数を所定のサンプリング時間毎に集計し、この集計値をトラヒック情報とする。
【００２５】
ＡＣＬの設定は、ネットワーク機器毎に異なっていてもよい。また、ＡＣＬの設定を行うトラヒックの方向やインタフェースについても不問である。
【００２６】
図３にＡＣＬの一例を示す。図３の左図は、前記第１の特徴量を算出するために必要なトラヒック情報を取得するためのＡＣＬである。第１の特徴量を算出するために必要なトラヒック情報は、全宛先アドレス空間のトラヒック情報（例：送信パケット数）を把握できるようにＡＣＬを網羅的に設定することにより取得できる。一方、図３の右図は、前記第２の特徴量を算出するために必要なトラヒック情報を取得するためのＡＣＬである。第２の特徴量を算出するために必要なトラヒック情報は、有効に検知可能なＭ個のアドレス空間についてだけ記述したＡＣＬを設定することにより取得できる。なお、第１の特徴量導出用のトラヒック情報と、第２の特徴量導出用のトラヒック情報は、種別や情報数が異なっていてもよい。例えば第２の特徴量導出用のトラヒック情報は、ＳＹＮパケット数，ポート番号などパケットのヘッダ部に含まれるアドレス情報以外の情報を含むことができる。
【００２７】
次に、図４を参照して、第２の特徴量導出用のトラヒック情報と第２の特徴量の例について説明する。第２の特徴量は、部分アドレス空間におけるトラヒック情報から導出されたスカラー値であってもよいしベクトル値であってもよい。図４の上図の例では、第２の特徴量導出用のトラヒック情報は、ある部分アドレス空間について、宛先アドレスと送信元アドレスとを区別するとともに、ＳＹＮフラグ、ＡＣＫフラグ、ＲＳＴフラグの有無を区別し、合計で４つのトラフィック情報を取得している。そして、第２の特徴量の導出は、４つのトラフィック情報から所定の関数により２つの値を導出し、それぞれをスカラー要素とするベクトル値に加工している。同様に、図４の下図の例では、第２の特徴量導出用のトラヒック情報は、ある部分アドレス空間について、宛先アドレスと送信元アドレスとを区別するとともに、ポート番号がウェルノウンポートであるか否かを区別し、さらにＳＹＮフラグ、ＡＣＫフラグ、ＲＳＴフラグの有無を区別して集計し、合計で４つのトラフィック情報を取得している。そして、第２の特徴量の導出は、４つのトラフィック情報から所定の関数により４つの値を導出し、それぞれをスカラー要素とするベクトル値に加工している。また、第２の特徴量の単純な例としては、所定時間内における送信パケット数の移動平均などのスカラー値である。このように第１又は第２の特徴量導出用のトラヒック情報は、パケットの宛先アドレス又は送信元アドレスだけでなく、パケットのヘッダ部に含まれるその他の情報を含むことができる。
【００２８】
次に、本発明の一実施の形態に係る感染拡大攻撃検知システムについて図５を参照して説明する。図５は感染拡大攻撃検知システムのネットワーク構成の一例である。図５に示すように、通信事業者網等のネットワーク１には多数の端末２が収容されている。ネットワーク１は、多数の端末２が接続された大規模なＩＰネットワークである。端末２の通信特性（例えば、通信頻度、宛先数、パケットサイズなど）は不問である。端末２としては、ユーザによって操作される端末だけでなくＩｏＴ端末も含む。端末２とネットワーク１とを接続する回線種別は不問であり、無線通信回線であっても有線通信回線であてもよい。ネットワーク１はインターネット３と接続している。ネットワーク１の事業者は、端末２に対してインターネット３への接続サービスを提供する。ネットワーク１にはパケット転送装置１００が配備されている。
【００２９】
パケット転送装置１００は、インターネット３と端末２間のパケットを中継する装置である。パケット転送装置１００の一例としては、通信事業者網のコアネットワークにおけるルータ等のネットワーク機器が挙げられる。ネットワーク１内のパケット転送装置１００の台数は不問である。
【００３０】
本実施の形態では、異常検知用装置群として、転送装置制御コントローラ２００と、異常検知用ストレージ装置３００と、トラヒック傾向分析装置４００と、閾値学習用演算装置５００と、検知用演算装置６００とを備える。ここで、異常検知用ストレージ装置３００は、特許請求の範囲の「第１の特徴量導出手段」及び「第２の特徴量導出手段」に相当する。また、トラヒック傾向分析装置４００は、特許請求の範囲の「監視対象決定手段」に相当する。また、検知用演算装置６００は、特許請求の範囲の「検知手段」に相当する。
【００３１】
各装置の実装形態は不問である。例えば、汎用サーバにプログラムをインストールすることにより各装置を構成してもよいし、プログラムを組み込んだ専用ハードウェア装置として各装置を構成してもよい。また例えば、各装置は任意の組み合わせで１つのハードウェア装置に実装してもよい。また例えば、各装置は、仮想化環境に構築された仮想マシンに実装してもよい。
【００３２】
本実施の形態では、異常検知用装置群をパケット転送装置１００毎に設けるが、複数のパケット転送装置１００毎に１つの異常検知用装置群を設けてもよい。
【００３３】
パケット転送装置１００は、パケットの中継を行う際に、ＡＣＬを用いて宛先アドレス空間（例：／８アドレス空間等）毎の送受信パケット数等の情報を収集し、異常検知用ストレージ装置３００に転送する。
【００３４】
異常検知用ストレージ装置３００は、時系列ごとのトラヒック情報を、有効に検知可能なＭ個の部分アドレス空間の集合を特定するために用いられる情報（第１の特徴量）に加工し、トラヒック傾向分析装置４００に送信する。
【００３５】
トラヒック傾向分析装置４００は、一定時間の第１の特徴量を分析し、有効に検知可能なＭ個の部分アドレス空間の集合（例：常時トラヒック量の少ないＭ個の部分アドレス空間）を監視対象として特定する。また、転送装置制御コントローラ２００を介して前記Ｍ個のアドレス空間のトラヒック情報を収集する設定を、パケット転送装置１００に投入する。
【００３６】
パケット転送装置１００の設定投入後、パケット転送装置１００は、有効に検知可能なＭ個のアドレス空間に限り、そのトラヒック情報を異常検知用ストレージ装置３００に送信する。
【００３７】
異常検知用ストレージ装置３００では、時系列ごとのトラヒック情報を検知に利用する情報（第２の特徴量）に加工し、閾値学習用演算装置５００及び検知用演算装置６００に送信する。
【００３８】
閾値学習用演算装置５００は、 統計や機械学習アルゴリズムを用いて、過去の時系列の第２の特徴量から閾値を計算する。
【００３９】
検知用演算装置６００は、前記閾値と検知対象トラヒックの第２の特徴量を比較演算し、有効に検知可能なＭ個の部分アドレス空間毎に異常検知し、空間毎の判定結果を総合して感染拡大攻撃の有無を判定する。感染拡大攻撃の発生が認められたときには、転送装置制御コントローラ２００を介してパケット転送装置１００のルーティングを変更し、以降のトラヒックを所定のセキュリティ装置４に入力して精査する。
【００４０】
以下、異常検知用装置群を構成する各装置の機能構成の一例について説明する。
【００４１】
まず、パケット転送装置の機能構成の一例について図６を参照して説明する。パケット転送装置１００は、図６に示すように、端末２から送信されたパケットをインターネット３へと中継するとともに、インターネット３からの端末２宛てのパケットを端末２に中継する通信部１１０を備える。また、パケット転送装置１００は、ＡＣＬに通信パケットの属性情報（例：宛先・送信元ＩＰアドレス）ごとに条件を設定することで、条件にマッチしたパケットの所定のサンプリング時間内での数をトラヒック情報として異常検知用ストレージ装置３００に送信する情報収集部１２０を備える。ＡＣＬはパケット転送装置１００辺りに複数設定することができ、その適用タイミングはフォワーディングの前後で限定しない。また、階層型のネットワークにおいて、ＡＣＬの設定容量が足りない場合、異なる階層ごとに異なるＡＣＬを設定し、機能分担することも可能であり、その設定箇所は不問である。つまり、トラヒック傾向分析装置４００用にトラヒック情報を送信するパケット転送装置１００と、閾値学習用演算装置５００や検知用演算装置６００用にトラヒック情報を送信するパケット転送装置１００は同一である必要はない。
【００４２】
また、情報収集部１２０において収集すべき情報についての設定や通信部１１０におけるルーティングの設定は、転送装置制御コントローラ２００からの指令に基づいて決定される。なお、情報収集部１２０が異常検知用ストレージ装置３００に送信するトラヒック情報は、上述したものに限定されるものではなく、例えばＩＰヘッダやフルキャプチャ等も考えられる。以降の説明では、報収集部１２０が異常検知用ストレージ装置３００に送信するトラヒック情報は、ＡＣＬの条件にマッチしたパケットの数であるものとする。
【００４３】
次に、転送装置制御コントローラの機能構成の一例について図７を参照して説明する。転送装置制御コントローラ２００は、図７に示すように、通信インタフェースである通信部２１０と、設定情報入出力インタフェース部２２０とを備える。設定情報入出力インタフェース部２２０は、ＡＣＬの設定情報やルーティング設定情報などパケット転送装置１００の設定に関する情報をシステム外部（トラヒック傾向分析装置４００及び検知用演算装置６００を含む）から入力し、パケット転送装置１００に設定を送信するインタフェースとして機能する。
【００４４】
次に、異常検知用ストレージ装置の機能構成の一例について図８を参照して説明する。異常検知用ストレージ装置３００は、通信インタフェースである通信部３１０と、パケット転送装置１００から取得したトラヒック情報に基づき第１の特徴量及び第２の特徴量を算出する特徴量加工演算部３２０と、特徴量加工の設定を保持する特徴量設定テーブル３３０と、過去の時系列の第１の特徴量又は第２の特徴量を保持する特徴量保持テーブル３４０と、前記特徴量加工演算部３２０と各テーブル３３０，３４０とのインタフェースである情報管理部３５０とを備える。
【００４５】
また、本実施の形態では、第１の特徴量と第２の特徴量を同一の手法により導出する。このため特徴量設定テーブル３３０及び特徴量保持テーブル３４０は、第１の特徴量用と第２の特徴量用とで共用する。
【００４６】
特徴量設定テーブル３３０は、図９の例に示すように、特徴量加工を実施する時間幅や、パケット転送装置１００から取得した情報の加工の仕方を保持する。
【００４７】
特徴量保持テーブル３４０は、細分化された部分アドレス空間毎に取得した第１の特徴量又は第２の特徴量を時系列ごとに保持するテーブルである。図１０の例では、特徴量保持テーブル３４０は、部分アドレス空間毎に第１の特徴量及び第２の特徴量であるパケット数を格納している。なお、前述したように、第１の特徴量及び第２の特徴量で用いる値や単位の取り方や次元数などは不問である。また、図１０の例では、パケット転送装置１００単位に一つのテーブルを作成した場合を例示しているが、複数のパケット転送装置１００から取得した情報をパケット転送装置１００毎に格納してもよい。特徴量保持テーブル３４０に保持された情報は、トラヒック傾向分析装置４００、閾値学習用演算装置５００、検知用演算装置６００において利用される。
【００４８】
次に、トラヒック傾向分析装置４００の機能構成の一例について図１１を参照して説明する。トラヒック傾向分析装置４００は、図１１に示すように、通信インタフェースである通信部４１０と、異常検知用ストレージ装置３００から取得した第１の特徴量に基づき分析を行い、有効に検知可能なアドレス空間集合（例：トラヒック量の少ないアドレス空間）を監視対象として特定する分析用演算部４２０と、分析用演算部４２０での分析処理で用いる各種設定情報を保持する分析設定情報テーブル４３０と、分析用演算部４２０と分析設定情報テーブル４３０とのインタフェースである情報管理部４４０とを備えている。分析用演算部４２０は、パケット転送装置１００において第２の特徴量の導出に必要なトラヒック情報を取得するための情報（例：トラヒック量の少ないＭ個の部分アドレス空間）の分析を行う。
【００４９】
分析設定情報テーブル４３０は、前述の分析処理で必要な各種設定情報を保持する。分析設定情報テーブル４３０は、具体的には図１２の例に示すように、トラヒック量の少ない部分アドレス空間を特定するための手法や、トラヒック量の閾値、異常検知を行う部分アドレス空間の数等の情報を保持する。
【００５０】
ここで、トラヒック量の閾値Ｘは、有効に検知可能な部分アドレス空間集合を定義づけるパラメータの一例である。この例では、トラヒック量の閾値Ｘを常時下回るアドレス空間を、有効に検知可能なアドレス空間とする。閾値Ｘは、例えば、検知したい攻撃の量（例：感染台数の目標値×感染端末一台あたりの攻撃量）や攻撃先の分布等（例：一様分布又は複数のアドレス空間に偏りのある分布）に基づいて算出することができる。
【００５１】
なお、前述の手順２においては、閾値Ｘを下回るアドレス空間すべてで異常検知を行う必要はない。その場合、例えばパラメータＭを明示的に定め、最終的に異常検知を行うアドレス空間の数を指定してもよい。また、図１２では、閾値Ｘを利用者が設定する例を記載したが、Ｋ−Ｍｅａｎｓ等のクラスタリングアルゴリズムにより、検知に有効なアドレス空間集合を特定してもよい。
【００５２】
次に、閾値学習用演算装置の機能構成の一例について図１３を参照して説明する。閾値学習用演算装置５００は、図１３に示すように、通信インタフェースである通信部５１０と、異常検知用ストレージ装置３００から過去の時系列の第２の特徴量を取得するとともに、取得した過去の時系列の第２の特徴量に基づき閾値を学習する演算を行う閾値学習用演算部５２０、学習情報に基づき閾値を生成する閾値生成部５３０と、閾値の計算処理（例：統計的手法や機械学習アルゴリズム等）で用いる各種設定情報を保持する学習設定情報テーブル５４０と、生成した閾値を保持する閾値保持テーブル５５０と、閾値生成部５３０と各テーブル５４０，５５０とのインタフェースである情報管理部５６０とを備えている。算出された閾値は、検知用演算装置６００に送信される。
【００５３】
閾値保持テーブル５５０は、図１４の例に示すように、第２の特徴量を生成した所定の単位ごとに、すなわちＭ個の部分アドレス空間毎に、閾値生成部５３０から取得した各時系列の閾値を保持する。この閾値は、時系列に対して固定でも変動的でもよい。また、閾値の次元数は問わない。
【００５４】
学習設定情報テーブル５４０は、図１５の例に示すように、異常検知に利用するアルゴリズムの種類や、ハイパーパラメータの値、学習に利用する時系列数を異常検知用コントローラ装置から取得し、保持するテーブルである。検知アルゴリズムの種類は不問であり、統計的に四分位値を計算して抽出した外れ値を閾値にしてもよいし、ＯｎｅＣｌａｓｓＳＶＭ等の機械学習的アプローチにより閾値を算出してもよい。これらの設定情報は閾値学習用演算部５２０に送信される。
【００５５】
次に、検知用演算装置の機能構成の一例について図１６を参照して説明する。検知用演算装置６００は、図１６に示すように、通信インタフェースである通信部６１０と、感染拡大攻撃の発生有無を判定する検知用演算部６２０と、検知用演算部６２０で用いる設定情報を保持する検知設定情報テーブル６３０と、判定結果を表示する判定結果表示ユーザインタフェース部６４０とを備えている。検知用演算部６２０は、異常検知用ストレージ装置３００からＭ個の部分アドレス空間におけるトラヒックの現時系列の第２の特徴量を取得するとともに、閾値学習用演算装置５００から過去の時系列のトラヒックから算出した閾値の情報を受け取る。検知用演算部６２０は、取得した第２の特徴量及び閾値に基づき部分アドレス空間毎の正常・異常の判定を行う。さらに検知用演算部６２０は、検知設定情報テーブル６３０の情報（Ｍ，Ｎの値等）を参照し、総合的な攻撃判定を行う。判定結果は転送装置制御コントローラ２００に送信される。
【００５６】
検知設定情報テーブル６３０の保持データの一例を図１７に示す。図１７において、パラメータＭは、異常検知を行う部分アドレス空間の数である。当該パラメータＭは、所定の定数又はトラヒック傾向分析装置４００において算出された数であり、トラヒック傾向分析装置４００においても保持されている。パラメータＮは、Ｍ個の部分アドレス空間における異常検知の結果を総合的に判定する際に用いられるパラメータである。検知用演算部６２０は、例えば、Ｍ個のアドレス区間のうち、Ｎ（≦Ｍ）個以上のアドレス空間で異常検知されている場合に、感染拡大攻撃が発生していると判定する。パラメータＮの値は、本発明で許容できる誤検知率から経験的に求めたり、単一アドレス空間において正常通信によるノイズの発生率を定義し、複数のアドレス空間でノイズが同時に発生する確率を算出することで解析的に求めることができるが、その導出方法は不問である。
【００５７】
以下、本実施の形態に係る感染拡大攻撃検知システムの動作について図１８〜図２０を参照して説明する。まず、トラヒックの傾向分析に係るシーケンスについて図１８のシーケンスチャートを参照して説明する。
【００５８】
本シーケンスでは、図５に示すネットワーク構成において、異常検知用ストレージ装置３００が、パケット処理装置１００から、細分化されたアドレス空間毎のトラヒック情報を一定の時間隔毎に取得する（ステップＳ１１）。取得したトラヒック情報は異常検知用ストレージ装置３００で複数時間幅分蓄積され、蓄積された情報をトラヒック傾向分析装置４００が分析することで、感染拡大攻撃を精度よく検知できるＭ個の部分アドレス空間集合を特定する（ステップＳ１２，Ｓ１３）。
【００５９】
転送装置制御コントローラ２００は、通信事業者網内の異常を網羅的に検知するため、複数のネットワーク転送装置１００に対し、Ｍ個の部分アドレス空間から、検知に利用できる情報（第２の特徴量の素になるトラヒック情報）を取得するためのコマンドを設定する（ステップＳ１４，Ｓ１５）。
【００６０】
次に、閾値の学習に係るシーケンスについて図１９のシーケンスチャートを参照して説明する。
【００６１】
本シーケンスでは、図５に示すネットワーク構成において、異常検知用ストレージ装置３００が、パケット転送装置１００から、細分化されたＭ個の部分アドレス空間毎にトラヒック情報を一定の時間隔毎に（例：２０分間隔）取得する（ステップＳ２１）。取得したトラヒック情報は異常検知用ストレージ装置３００に格納され、所定の演算に基づいて第２の特徴量に加工される（ステップＳ２２）。以上の処理を複数回（例：１００回）繰り返して行う（ステップＳ２３）ことで生成した各時系列の第２の特徴量を、統計や機械学習のアルゴリズムに入力することで、細分化されたＭ個の部分アドレス空間毎に閾値を得る（ステップＳ２４，Ｓ２５，Ｓ２６）。トラヒックのトレンドは周期的に変動すると考えるため、本シーケンスは一定の期間ごと（例：１か月に１度）に行われ、閾値を更新する（ステップＳ２７）。
【００６２】
次に、異常の検知・対処に係るシーケンスについて図２０のシーケンスチャートを参照して説明する。
【００６３】
本シーケンスでは、図５に示すネットワーク構成において、異常検知用ストレージ装置３００が、パケット転送装置１００から、細分化されたＭ個の部分アドレス空間毎にトラヒック情報を一定の時間隔毎に（例：２０分間隔）取得する（ステップＳ３１）。取得したトラヒック情報は異常検知用ストレージ装置３００に格納され、所定の演算に基づいて第２の特徴量に加工される（ステップＳ３２）。加工した第２の特徴量と前記閾値の学習のシーケンスで取得した閾値を用いて（ステップＳ３３，Ｓ３４）、比較等の演算を行うことで、細分化されたＭ個の部分アドレス空間毎に正常・異常の判定を行う（ステップＳ３５、図１の手順１）。
【００６４】
次に、図１の手順２のとおり、Ｍ個の部分アドレス空間での検知結果を総合的に評価することで、ネットワーク１内において端末２からの感染拡大攻撃が発生しているかどうかを判定する（ステップＳ３６）。感染拡大攻撃が発生していると判定した場合、転送装置制御コントローラ２００を介して、パケット転送装置１００のルーティングを変更し（ステップＳ３７，Ｓ３８）、Ｍ個の部分アドレス空間宛ての通信をセキュリティ装置４に引き込み（ステップＳ３９）、感染端末を端末単位で特定する（ステップＳ４０）。
【００６５】
このように本実施の形態に係る感染拡大攻撃検知システムによれば、監視対象とする部分アドレス空間がトラヒック情報から導出した第１の特徴量に基づきＭ個に限定されており、限定された各部分アドレス空間におけるトラヒック情報から導出したＭ個の第２の特徴量のそれぞれについて検知条件を満たすかが判定され、その判定結果を評価することにより感染拡大攻撃が発生したか否かが判定されるので、複数の部分アドレス空間において同時にノイズが発生しない限り、誤検知の発生を低減可能になる。これにより、感染拡大攻撃の発生を高精度で検知することができる。
【００６６】
以上本発明の一実施の形態について詳述したが、本発明はこれに限定されるものではない。例えば、上記実施の形態では、Ｍ個の部分アドレス空間を特定するために用いられる第１の特徴量の導出手段と、感染拡大攻撃の検知で用いられる第２の特徴量の導出手段とを、異常検知用ストレージ装置３００に実現していたが、両手段は異なる装置として実装してもよい。
【００６７】
また、上記実施の形態では、パケット転送装置１００への設定処理は転送装置制御コントローラ２００により行っていたが、トラヒック傾向分析装置４００や検知用演算装置６００が直接パケット処理装置１００の設定を行うようにしてもよい。
【００６８】
また、上記実施の形態ではアドレス空間としてＩＰｖ４について例示したが、ＩＰｖ６など他のアドレス空間であっても本発明を適用できる。
【符号の説明】
【００６９】
１…ネットワーク
２…端末
３…インターネット
４…セキュリティ装置
１００…パケット転送装置
２００…転送装置制御コントローラ
３００…異常検知用ストレージ装置
４００…トラヒック傾向分析装置
５００…閾値学習用演算装置
６００…検知用演算装置
【図１】
2019213029.tif 000003
【図２】
2019213029.tif 000004
【図３】
2019213029.tif 000005
【図４】
2019213029.tif 000006
【図５】
2019213029.tif 000007
【図６】
2019213029.tif 000008
【図７】
2019213029.tif 000009
【図８】
2019213029.tif 000010
【図９】
2019213029.tif 000011
【図１０】
2019213029.tif 000012
【図１１】
2019213029.tif 000013
【図１２】
2019213029.tif 000014
【図１３】
2019213029.tif 000015
【図１４】
2019213029.tif 000016
【図１５】
2019213029.tif 000017
【図１６】
2019213029.tif 000018
【図１７】
2019213029.tif 000019
【図１８】
2019213029.tif 000020
【図１９】
2019213029.tif 000021
【図２０】
2019213029.tif 000022