(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】付与装置、付与方法及び付与プログラム
(51)【国際特許分類】
H04L 43/0876 20220101AFI20231205BHJP
H04L 12/22 20060101ALI20231205BHJP
H04L 12/66 20060101ALI20231205BHJP
【FI】
H04L43/0876
H04L12/22
H04L12/66
(21)【出願番号】P 2022502749
(86)(22)【出願日】2020-02-27
(86)【国際出願番号】 JP2020008182
(87)【国際公開番号】W WO2021171526
(87)【国際公開日】2021-09-02
【審査請求日】2022-05-31
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】林 裕平
(72)【発明者】
【氏名】大澤 浩
(72)【発明者】
【氏名】西岡 孟朗
(72)【発明者】
【氏名】井上 寛規
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特開2012-253735(JP,A)
【文献】特開2008-136012(JP,A)
【文献】米国特許出願公開第2016/0028762(US,A1)
【文献】欧州特許出願公開第03340567(EP,A1)
【文献】国際公開第2012/117549(WO,A1)
【文献】佐藤 浩司 Koji Sato,IoTゲートウェイのセキュリティ技術 Security Technologies of IoT Gateway,三菱電機技報 第92巻 第6号,三菱電機エンジニアリング株式会社,2018年06月20日,P.24(356)-P.28(360)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-69/40
(57)【特許請求の範囲】
【請求項1】
一定期間の5-tuplフローの統計値データを取得する統計部と、
前記一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算する計算部と、
前記一定期間の5-tupleフローの統計値データに、特徴量として、前記次数中心性を付与する付与部と、
正常時における前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性の特徴とを予め学習した学習結果と、解析対象である前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性とを比較して、前記解析対象である前記一定期間の5-tupleフローの異常の有無を検知する検知部と、
を有することを特徴とする付与装置。
【請求項2】
前記ノードの粒度は、IPアドレス、または、IPアドレスとポート番号とプロトコル情報との組み合わせであることを特徴とする請求項1に記載の付与装置。
【請求項3】
前記計算部は、前記ノードのIPアドレスと、前記ノードの入次数及び出次数とが対応する第1の表、または、前記ノードのIPアドレスとポート番号とプロトコル情報との組み合わせと、前記ノードの入次数及び出次数とが対応する第2の表を、解析対象のノードの粒度に応じて選択し、選択した表を用いて、前記一定期間の5-tupleフローの統計値データの次数中心性を計算することを特徴とする請求項2に記載の付与装置。
【請求項4】
付与装置が実行する付与方法であって、
一定期間の5-tupleフローの統計値データを取得する工程と、
前記一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算する工程と、
前記一定期間の5-tupleフローの統計値データに、特徴量として、前記次数中心性を付与する工程と、
正常時における前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性の特徴とを予め学習した学習結果と、解析対象である前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性とを比較して、前記解析対象である前記一定期間の5-tupleフローの異常の有無を検知する工程と、
を含んだことを特徴とする付与方法。
【請求項5】
一定期間の5-tupleフローの統計値データを取得するステップと、
前記一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算するステップと、
前記一定期間の5-tupleフローの統計値データに、特徴量として、前記次数中心性を付与するステップと、
正常時における前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性の特徴とを予め学習した学習結果と、解析対象である前記一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性とを比較して、前記解析対象である前記一定期間の5-tupleフローの異常の有無を検知するステップと、
をコンピュータに実行させるための付与プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、付与装置、付与方法及び付与プログラムに関する。
【背景技術】
【0002】
従来、ルータ及びフローコレクタを連携させ、5-tupleで定義されるフロー、或いは、集約したフローのパケット数の転送容量(packets per second:pps)やデータ量の転送容量(bits per second:bps)を尺度として、ネットワークにおけるDDoS攻撃(Distributed Denial of Service attack)を検知する技術が提案されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】アーバーネットワークス Arbor Slight Line, [online],[令和2年2月18日検索]、インターネット<URL:http://jp.arbornetworks.com/>
【文献】倉上他,“異常トラフィック検出・分析システム”, NTT技術ジャーナル, 2008.7. , [online],[令和2年2月18日検索]、インターネット<URL:https://www.ntt.co.jp/journal/0807/files/jn200807020.pdf>
【文献】Flowmon,, [online],[令和2年2月18日検索]、インターネット<URL:https://www.orizon.co.jp/products/flowmon/>
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、DDoS攻撃の特徴である、被害者は多数攻撃者から多くの攻撃パケット・フローを受信する、或いは、感染端末は多数多数ホスト・ポートに対し多くの攻撃パケット・フローを送信する等の、ネットワーク構造の観点に基づいた攻撃検知はできなかった。
【0005】
本発明は、上記に鑑みてなされたものであって、DDoS攻撃の検知精度の向上を図ることができる付与装置、付与方法及び付与プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明の付与装置は、一定期間の5-tupleフローの統計値データを取得する統計部と、一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算する計算部と、一定期間の5-tupleフローの統計値データに、特徴量として、次数中心性を付与する付与部と、を有することを特徴とする。
【0007】
また、本発明の付与方法は、付与装置が実行する付与方法であって、一定期間の5-tupleフローの統計値データを取得する工程と、一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算する工程と、一定期間の5-tupleフローの統計値データに、特徴量として、次数中心性を付与する工程と、を含んだことを特徴とする。
【0008】
また、本発明の付与プログラムは、一定期間の5-tupleフローの統計値データを取得するステップと、一定期間の5-tupleフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算するステップと、一定期間の5-tupleフローの統計値データに、特徴量として、次数中心性を付与するステップと、をコンピュータに実行させる。
【発明の効果】
【0009】
本発明によれば、DDoS攻撃の検知精度の向上を図ることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施の形態に係る検知装置の構成の一例を説明する図である。
【
図2】
図2は、グラフ表のデータ構成の一例を示す図である。
【
図3】
図3は、グラフ表のデータ構成の一例を示す図である。
【
図4】
図4は、中心性計算部及び中心性付与部の処理を説明する図である。
【
図5】
図5は、中心性計算部及び中心性付与部の処理を説明する図である。
【
図6】
図6は、中心性計算部の処理を説明する図である。
【
図7】
図7は、ノード間の通信の一例を説明する図である。
【
図8】
図8は、中心性計算部によるグラフ計算の結果の一例を説明する図である。
【
図9】
図9は、中心性計算部によるグラフ計算の結果の一例を説明する図である。
【
図11】
図11は、実施の形態に係る検知処理の処理手順を示すフローチャートである。
【
図12】
図12は、実施の形態の実施例1を説明する図である。
【
図13】
図13は、実施の形態の実施例2を説明する図である。
【
図14】
図14は、実施の形態の実施例3を説明する図である。
【
図15】
図15は、プログラムが実行されることにより、検知装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【0012】
[実施の形態]
本実施の形態に係る検知装置は、ネットワーク構造に関する次数中心性の情報を付与することで、DDoS攻撃の検知精度の向上を可能とする。
【0013】
[検知装置]
まず、実施の形態に係る検知装置について説明する。
図1は、実施の形態に係る検知装置の構成の一例を説明する図である。本実施の形態に係る検知装置10は、通信部11、記憶部12及び制御部13を有する。
【0014】
通信部11は、ネットワーク等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースである。通信部11は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置と制御部13(後述)との間の通信を行う。通信部11は、例えば、ネットワーク等を介して外部装置と接続し、解析対象のパケットの入力を受け付ける。
【0015】
記憶部12は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、検知装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部12は、統計データ121及びグラフ表122を有する。
【0016】
統計データ121は、統計部131(後述)によって取得された5-tuple統計フローの統計値データである、
【0017】
グラフ表122は、次数中心性計算部132(後述)によるネットワークグラフの計算において使用されるグラフ表である。
図2及び
図3は、グラフ表122のデータ構成の一例を示す図である。
【0018】
図2に示すグラフ表1221(第1の表)は、ノードの粒度がIPアドレスである。
図3に示すグラフ表1222(第2の表)は、ノードの粒度が、IPアドレスとポート番号とプロトコル情報との組み合わせである。グラフ表1221は、ノードのIPアドレスと、入次数の各項目と出次数の各項目とが対応する。グラフ表1222は、ノードのIPアドレスとポート番号とプロトコル情報との組み合わせと、ノードの入次数及び出次数とが対応する。
【0019】
入次数の項目は、対応するノードが通信するエッジの有無(エッジ数)、対応するノードが受信した5-tupleフロー数、対応するノードが受信したパケット数及び受信したデータのバイト数である。出次数の項目は、対応するノードが通信するエッジの有無(エッジ数)、対応するノードが送信した5-tupleフロー数、対応するノードが送信したパケット数及び送信したデータのバイト数である。グラフ表1221,1222の各欄は、次数中心性計算部132によって更新され、次数中心性付与部133によって初期化される。
【0020】
制御部13は、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部13は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。制御部13は、統計部131、次数中心性計算部132(計算部)、次数中心性付与部133(付与部)及び検知部134を有する。
【0021】
統計部131は、一定期間バッファした受信パケットについて、5-tuple統計フローの統計値データを取得する。統計部131は、一定期間の5-tuple統計フローの統計値データを記憶部12に記憶させる。
【0022】
次数中心性計算部132は、統計部131が取得した、一定期間の5-tupleフローの統計値データを基に、ノードの次数中心性を計算する。
図4及び
図5は、次数中心性計算部132及び次数中心性付与部133の処理を説明する図である。
【0023】
ノードの次数中心性は、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含む特徴量である(
図4の(1)参照)。なお、ノードの粒度は、IPアドレス、または、IPアドレスとポート番号とプロトコル情報との組み合わせである。また、
図4のノード間の矢印は、送信元のノードから送信先のノードに向かうエッジの向きを示している。また、エッジの重みの種別は、通信の有無(通信を行うエッジ数)、統計データ数、パケット数、バイト数である。
【0024】
図5の(a)に示すように、入次数は、あるノードについて、
(1)ノードが通信を行っている送信元ノード数
(2)ノードが受信しているパケット数
(3)ノードが受信しているバイト数
(4)ノードが受信しているフロー数
を表現する。なお、ノードは、IPアドレス、または、IPアドレスとポート番号との組み合わせである。入次数は、あるノードにおける他のノードからのフローの入力度を表現し、数値が高い場合には、このノードが、攻撃者から攻撃されている被害者のおそれがあることを検知する指標となる。
【0025】
図5の(b)に示すように、出次数は、ノードについて、
(1)ノードが通信を行っている通信先ノード数
(2)ノードが送出しているパケット数
(3)ノードが送信しているバイト数
(4)ノードが送出しているフロー数
を表現する。出次数は、あるノードにおける他のノードへのフローの出力度を表現し、数値が高い場合には、このノードが、攻撃者または感染者のおそれがあることを検知する指標となる。
【0026】
次数中心性計算部132は、グラフ表1221またはグラフ表1222を、解析対象のノードの粒度に応じて選択し、選択した表を用いて、一定期間の5-tupleフローの統計値データD0に対するグラフ計算を行うことにより、一定期間の5-tupleフローの統計値データの次数中心性を計算する(
図4の(A)参照)。
【0027】
図6を参照して、次数中心性計算部132の処理を具体的には説明する。
図6は、次数中心性計算部132の処理を説明する図である。
図6に示すように、次数中心性計算部132は、一定期間の5-tupleフローの統計値データD0から、解析対象のノード情報を抽出する(
図6の(1)参照)。そして、次数中心性計算部132は、解析したいノードの粒度に応じて、グラフ表1221またはグラフ表1222のいずれかを選択する。
【0028】
次数中心性計算部132は、IPアドレスを粒度とする場合には、ノードの粒度がIPアドレスであるグラフ表1221を選択し、グラフ表1221のうち、抽出したノードが記載された行にアクセスする(
図6の(2-1)参照)。また、次数中心性計算部132は、IPアドレスとポート番号とプロトコル情報との組み合わせを粒度とする場合には、ノードの粒度がIPアドレスとポート番号とプロトコル情報との組み合わせであるグラフ表1222を選択し、グラフ表1222のうち、抽出したノードが記載された行にアクセスする(
図6の(2-2)参照)。
【0029】
続いて、次数中心性計算部132は、抽出したノードが、送信先のIPアドレス(dst_ip)に対応する場合、5-tupleフローの統計値データD0から、このノードが通信するエッジの有無(エッジ数)、このノードが受信した5-tupleフロー数、このノードが受信したパケット数及び受信したデータのバイト数を取得する。そして、次数中心性計算部132は、取得した各値で、グラフ表1221,1222のアクセス行の入次数における、エッジの有無(エッジ数)、5-tupleフロー数、パケット数及びバイト数の各欄を更新する(
図6の(3-1),(4-1)参照)。
【0030】
また、次数中心性計算部132は、抽出したノードが、送信元のIPアドレス(src_ip)である場合、5-tupleフローの統計値データD0から、このノードが通信するエッジの有無(エッジ数)、このノードが送信した5-tupleフロー数、このノードが送信したパケット数及び送信したデータのバイト数を取得する。そして、次数中心性計算部132は、取得した各値で、グラフ表1221,1222のアクセス行の出次数における、エッジの有無(エッジ数)、5-tupleフロー数、パケット数及びバイト数の各欄を更新する(
図6の(3-2),(4-2)参照)。
【0031】
図7は、ノード間の通信の一例を説明する図である。
図8及び
図9は、次数中心性計算部132によるグラフ計算の結果の一例を説明する図である。
図7の例では、IPアドレス「x」のノードから、ポート「a」を介して、IPアドレス「y」のノードに、パケット数「α」、バイト数が「β」のフローが送信される。そして、IPアドレス「x」のノードから、ポート「b」を介して、IPアドレス「z」のノードに、パケット数「γ」、バイト数が「δ」のフローが送信される。
【0032】
次数中心性計算部132は、ノードの粒度がIPアドレスである場合、
図8に示すように、ノード「x」については、パケットの送信元であるため、グラフ表1221のノード「x」の行のうち、出次数のエッジ数を「2」に更新し、5-tupleフローを「2」に更新し、パケット数を「α+γ」に更新し、バイト数を「β+δ」に更新する。そして、次数中心性計算部132は、ノード「y」については、パケットの送信先であるため、グラフ表1221のノード「y」の行のうち、入次数のエッジ数を「1」に更新し、5-tupleフローを「1」に更新し、パケット数を「α」に更新し、バイト数を「β」に更新する。
【0033】
次数中心性計算部132は、ノードの粒度がIPアドレスとポート番号とプロトコル情報との組み合わせである場合、
図9に示すように、グラフ表1222のノード「(x,α,udp)」の行のうち、出次数のエッジ数を「1」に更新し、5-tupleフローを「1」に更新し、パケット数を「γ」に更新し、バイト数を「δ」に更新する。また、次数中心性計算部132は、ノード「(y,d,udp)」については、パケットの送信先であるため、グラフ表1222のノード「(y,d,udp)」の行のうち、入次数のエッジ数を「1」に更新し、5-tupleフローを「1」に更新し、パケット数を「α」に更新し、バイト数を「β」に更新する。
【0034】
このように、次数中心性計算部132は、グラフ表1221,1222を用いて、一定期間の5-tupleフローの統計値データD0から、「どのアドレスからどのアドレスに対し通信が行われ、どれほどのパケットが流れ、どれほどの統計値データがあったか」、「どの(アドレス,ポート,プロトコル)の組からどの(アドレス,ポート,プロトコル)の組に対し通信が行われ、どれほどのパケットが流れ、どれほどの統計値データがあったか」を表現するネットワークグラフを計算する。
【0035】
次に、
図1及び
図4に戻り、次数中心性付与部133について説明する。次数中心性付与部133は、一定期間の5-tupleフローの統計値データD0に、特徴量として、次数中心性計算部132が計算した次数中心性を付与する(
図4の(B)参照)。次数中心性付与部133は、5-tuple値に関連する次数中心性を付与した付与データD1を、検知部134に出力する。
【0036】
図10を参照して、次数中心性付与部133の処理を具体的には説明する。
図10は、次数中心性付与部133の処理を説明する図である。
図7に示すように、次数中心性付与部133は、一定期間の5-tupleフローの統計値データD0から、特徴量の付与対象のノード情報を抽出する(
図10の(1)参照)。そして、次数中心性付与部133は、付与対象のノードの粒度に応じて、グラフ表1221またはグラフ表1222のいずれかを選択する。
【0037】
次数中心性付与部133は、IPアドレスを粒度とする場合にはグラフ表1221を選択し、グラフ表1221のうち、抽出したノードが記載された行にアクセスする(
図10の(2-1)参照)。また、次数中心性付与部133は、IPアドレスとポート番号とプロトコル情報との組み合わせを粒度とする場合にはグラフ表1222を選択し、グラフ表1222のうち、抽出したノードが記載された行にアクセスする(
図10の(2-2)参照)。
【0038】
続いて、次数中心性付与部133は、抽出したノードが、送信先のIPアドレス(dst_ip)である場合、アクセスした行における入次数の各欄を検索する(
図10の(3-1),(4-1)参照)。また、次数中心性付与部133は、抽出したノードが、送信元のIPアドレス(src_ip)である場合、アクセスした行における出次数の各欄を検索する(
図10の(3-2),(4-2)参照)。
【0039】
そして、次数中心性付与部133は、検索した次数中心性を、特徴量として、5-tupleフローの統計値データD0に付与する(
図7の(5)参照)。
【0040】
次に、
図1戻り、検知部134について説明する。検知部134は、一定期間の5-tupleフローの統計値データD0に、5-tuple値に関連する次数中心性を付与された付与データD1を基に、この期間のフローに異常があるか否かを検知する。例えば、検知装置10では、機械学習等を用いて、正常時における一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性の特徴とを予め学習しておく。そして、検知部134は、この学習結果と、解析対象である一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性とを比較して、解析対象である5-tupleフローの異常の有無を検知する。
【0041】
例えば、検知装置10では、機械学習等を、正常時における一定期間の5-tupleフローの統計値データと該一定期間の5-tupleフローの統計値データに付与された次数中心性の特徴とを学習することによって、正常時における一定期間の5-tupleフローの統計値データとこれに対応する次数中心性とのベースラインを設定しておく。検知部134は、検知部134は、このベースラインから、解析対象である5-tupleフローの統計値データと付与された次数中心性とが、所定値以上離れた場合に、異常であると判定し、攻撃を検知する。
【0042】
[検知装置における検知処理の手順]
次に、検知装置10による検知処理の処理手順について説明する。
図11は、実施の形態に係る検知処理の処理手順を示すフローチャートである。
【0043】
図11に示すように、検知装置10では、統計部131が、一定期間バッファした受信パケットについて、5-tuple統計フローの統計値データを取得する(ステップS1)。次数中心性計算部132は、統計部131が取得した、一定期間の5-tupleフローの統計値データを基に、ノードの次数中心性を計算する(ステップS2)。
【0044】
そして、次数中心性付与部133は、一定期間の5-tupleフローの統計値データに、特徴量として、次数中心性計算部132が計算した次数中心性を付与する(ステップS3)。検知部134は、5-tuple値に関連する次数中心性を付与された付与データを基に、この期間のフローに異常があるか否かを検知し(ステップS4)、検知結果を対処装置に送信する。
【0045】
[実施の形態の効果]
このように、実施の形態に係る検知装置10は、一定期間の5-tuplフローの統計値データを基に、ノードに流入するエッジの重みの総和である入次数と、ノードから流出するエッジの重みの総和である出次数とを含むノードの次数中心性を計算し、5-tupleフローの統計値データに、特徴量として、次数中心性を付与する。
【0046】
具体的には、検知装置10は、あるノードについて、ノードが通信を行っている通信先ノード数、ノードが送出しているパケット数、ノードが送信しているバイト数、ノードが送出しているフロー数を表現する出次性と、あるノードが、ノードが通信を行っている送信元ノード数、ノードが受信しているパケット数、ノードが受信しているバイト数、ノードが受信しているフロー数を表現する入次数とを、次数中心性として計算する。すなわち、検知装置10は、ネットワーク構造に関する次数中心性を、特徴量として計算する。
【0047】
このため、検知装置10は、ネットワーク構造に関する次数中心性を特徴量として、5-tupleフローの統計値データに付与することで、ネットワーク構造の観点に基づいた攻撃検知が可能となり、DDos攻撃の検知精度の向上を図ることができる。
【0048】
ノードの粒度は、IPアドレス、または、IPアドレスとポート番号とプロトコル情報との組み合わせであり、検知装置10では、ノードのIPアドレスと、ノードの入次数及び出次数とが対応するグラフ表1221、及び、ノードのIPアドレスとポート番号とプロトコル情報との組み合わせと、ノードの入次数及び出次数とが対応するグラフ表1222とを予め保持している。このため、検知装置10は、グラフ表1221またはグラフ表1222を解析対象のノードの粒度に応じて選択し、選択した表を用いて次数中心性を計算することで、次数中心性を適切に計算することができる。
【実施例1】
【0049】
本実施の形態に係る検知装置10の機能を、通信システムの複数の装置に分散配置してもよい。
図12は、実施の形態の実施例1を説明する図である。
【0050】
図12に示すように、ルータ10Aに統計部131、次数中心性計算部132及び次数中心性付与部133(不図示)を設け、ルータ10Aが、5-tuple統計フローの統計データの取得と次数中心性の計算とを実行し、サーバ10Bが付与データD1を基に異常検知を行ってもよい。
【実施例2】
【0051】
図13は、実施の形態の実施例2を説明する図である。
図13に示すように、ルータ10Cに統計部131を設け、サーバ10Dに、次数中心性計算部132、次数中心性付与部133(不図示)及び検知部134(不図示)を設けてもよい。この場合、ルータ10Cが、5-tuple統計フローの統計データの取得を行い、サーバ10Dが、次数中心性の計算と異常検知とを行う。
【実施例3】
【0052】
図14は、実施の形態の実施例3を説明する図である。
図14に示すように、ルータ20がヘッダサンプルをサーバ10Eに送信し、サーバ10Eが、5-tuple統計フローの統計データの取得、次数中心性の計算を行ってもよい。そして、サーバ10Eとは別のサーバ10Fが、付与データD1を基に異常検知を行う。
【0053】
[システム構成等]
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0054】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0055】
[プログラム]
図16は、プログラムが実行されることにより、検知装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
【0056】
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
【0057】
ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、検知装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、検知装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
【0058】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
【0059】
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【0060】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【0061】
10 検知装置
11 通信部
12 記憶部
13 制御部
131 統計部
132 次数中心性計算部
133 次数中心性付与部
134 検知部