(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023150853
(43)【公開日】2023-10-16
(54)【発明の名称】異常通信検知装置、異常通信検知方法及び異常通信検知プログラム
(51)【国際特許分類】
H04L 43/04 20220101AFI20231005BHJP
H04L 43/02 20220101ALI20231005BHJP
【FI】
H04L43/04
H04L43/02
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022060174
(22)【出願日】2022-03-31
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(71)【出願人】
【識別番号】517297980
【氏名又は名称】株式会社ARISE analytics
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】奥井 宣広
(72)【発明者】
【氏名】窪田 歩
(72)【発明者】
【氏名】近藤 真暉
(72)【発明者】
【氏名】秋元 裕介
(72)【発明者】
【氏名】寺尾 康宏
(72)【発明者】
【氏名】吉田 琢也
(72)【発明者】
【氏名】伊藤 雅典
(72)【発明者】
【氏名】大野 允裕
(72)【発明者】
【氏名】本江 政司
(57)【要約】
【課題】多種類の異常通信を低コストで検知できる異常通信検知装置、異常通信検知方法及び異常通信検知プログラムを提供すること。
【解決手段】異常通信検知装置1は、通信のフローデータに含まれる情報を、複数の形式のデータに変換するデータ変換部11と、複数の形式のデータから、それぞれ特徴量を抽出する特徴抽出部12と、複数の形式のデータそれぞれについて、特徴量の次元を圧縮するデータ圧縮部13と、通信種別毎の特性に基づいて、特徴量それぞれに寄与比率を動的に設定する寄与比率設定部14と、寄与比率に応じて異常検知モデルのパラメータを変更したうえで、特徴量を当該異常検知モデルに入力し、判定結果を出力する異常検知部15と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
通信のフローデータに含まれる情報を、複数の形式のデータに変換するデータ変換部と、
前記複数の形式のデータから、それぞれ特徴量を抽出する特徴抽出部と、
前記複数の形式のデータそれぞれについて、前記特徴量の次元を圧縮するデータ圧縮部と、
通信種別毎の特性に基づいて、前記特徴量それぞれに寄与比率を動的に設定する寄与比率設定部と、
前記寄与比率に応じて異常検知モデルのパラメータを変更したうえで、前記特徴量を当該異常検知モデルに入力し、判定結果を出力する異常検知部と、を備える異常通信検知装置。
【請求項2】
前記データ変換部は、前記フローデータの集約値を含む情報を、表形式のデータに変換する請求項1に記載の異常通信検知装置。
【請求項3】
前記データ変換部は、前記フローデータの情報を、グラフ形式のデータに変換する請求項1又は請求項2に記載の異常通信検知装置。
【請求項4】
前記データ変換部は、前記フローデータのペイロード情報を、画像形式のデータに変換する請求項1から請求項3のいずれかに記載の異常通信検知装置。
【請求項5】
前記データ圧縮部は、前記複数の形式のデータから抽出された特徴量を、それぞれ異なるアルゴリズムにより次元圧縮する請求項1から請求項4のいずれかに記載の異常通信検知装置。
【請求項6】
前記データ圧縮部は、前記複数の形式のデータから抽出された特徴量の少なくとも一つを、異なる複数のアルゴリズムにより次元圧縮して複数の特徴量を生成する請求項1から請求項5のいずれかに記載の異常通信検知装置。
【請求項7】
前記フローデータは、車両通信ネットワークから取得され、
前記寄与比率設定部は、車両の認証情報に基づいて特定される車種に応じて、前記寄与比率を設定する請求項1から請求項6のいずれかに記載の異常通信検知装置。
【請求項8】
前記フローデータは、車両通信ネットワークから取得され、
前記寄与比率設定部は、前記フローデータにより識別される車載アプリケーションの種別に応じて、前記寄与比率を設定する請求項1から請求項7のいずれかに記載の異常通信検知装置。
【請求項9】
通信のフローデータに含まれる情報を、複数の形式のデータに変換するデータ変換ステップと、
前記複数の形式のデータから、それぞれ特徴量を抽出する特徴抽出ステップと、
前記複数の形式のデータそれぞれについて、前記特徴量の次元を圧縮するデータ圧縮ステップと、
通信種別毎の特性に基づいて、前記特徴量それぞれに寄与比率を動的に設定する寄与比率設定ステップと、
前記寄与比率に応じて異常検知モデルのパラメータを変更したうえで、前記特徴量を当該異常検知モデルに入力し、判定結果を出力する異常検知ステップと、をコンピュータが実行する異常通信検知方法。
【請求項10】
請求項1から請求項8のいずれかに記載の異常通信検知装置としてコンピュータを機能させるための異常通信検知プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異常な通信を検知するための装置、方法及びプログラムに関する。
【背景技術】
【0002】
従来、通信の異常検知において使われる技術として、多くのIDS(Intrusion Detection System)、IPS(Intrusion Prevention System)では、シグネチャ型とアノマリ型とが組み合わせて用いられている。
シグネチャ型では、既知の異常なパターンに一致する通信を異常と判定し、アノマリ型では、辞書ベース又は機械学習により作成した正常なパターン以外の通信を異常と判定する。
【0003】
シグネチャ型は、既知の異常に対しては効果的であるが変化に弱く、アノマリ型は、パターンを作成するために利用する情報によっては誤検知が生じやすい。
アノマリ型でパターンを生成する際には、機械学習・深層学習の教師なし学習が利用されることが多い。これは、多くの攻撃手法が日々生成されるため、一般的な教師あり学習において実世界の様々な攻撃手法に対してラベルを作成することが困難であり、教師データを用いたモデルのパラメータ更新が行えないためである。
【0004】
また、適切な表現を生成することは、学習器を構築する上で重要であり、表現に多様性を持たせる考え方としてアンサンブル学習が存在する。アンサンブル学習には、例えば次のような方法が存在する。
・あるデータに対して異なるノイズを加える。
・あるデータに、異なる期間又はサンプルで学習を行った結果を統合する。
・あるアルゴリズムに対して、異なるパラメータを適用する。
・複数の異なるアルゴリズムを利用した学習器を利用する。
アンサンブル学習の中でも、異なる情報を統合して扱う考え方は、マルチモーダルアンサンブルと呼ばれる。
【0005】
特許文献1では、パケット特徴量とペイロード情報とを利用して、時系列の定常性を判定することを目的とし、判定後のデータを異常検知に利用する方法が提案されている。
特許文献2では、通信データ中の時間的特性とペイロードの特性とを含んだ情報をルールに従って振り分け、モデルの学習及び異常検知を行うことで過検知を減らす異常通信検知手法が提案されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】再表2019/102911号
【特許文献2】特開2019-4419号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
アノマリ型のIDSでは、しばしば、正常か否かの閾値を設定して異常検知を行うOne-Class分類として設定されるが、なぜ異常であったかといった原因、及び攻撃手法の種類を判定することは難しかった。
例えば、通信量が短期間に増加するDDoS攻撃を受けている場合には、ペイロードの情報のみでは判断が難しく、マルウェア感染時にroot権限を取得する等の命令コマンドの送受信といった動作が単一で行われるような通信では、統計量のみでは判断が難しかった。
【0008】
単一の情報では、アンサンブルを行って表現に多様性を持たせることはできるものの、異なる情報源から取得される表現を得ることは難しいため、異常通信の切り分けができない攻撃も存在する。このため、未知の攻撃においても、マルチモーダルな情報を利用する必要がある。
一方で、マルチモーダルな情報を利用することで次元数が増え、計算コストが増大していた。特許文献1及び2は、ともに時間的特性及びペイロードの特性に注目しているものの、複数の情報を扱うことにより増大する計算コストに課題があった。
【0009】
本発明は、多種類の異常通信を低コストで検知できる異常通信検知装置、異常通信検知方法及び異常通信検知プログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明に係る異常通信検知装置は、通信のフローデータに含まれる情報を、複数の形式のデータに変換するデータ変換部と、前記複数の形式のデータから、それぞれ特徴量を抽出する特徴抽出部と、前記複数の形式のデータそれぞれについて、前記特徴量の次元を圧縮するデータ圧縮部と、通信種別毎の特性に基づいて、前記特徴量それぞれに寄与比率を動的に設定する寄与比率設定部と、前記寄与比率に応じて異常検知モデルのパラメータを変更したうえで、前記特徴量を当該異常検知モデルに入力し、判定結果を出力する異常検知部と、を備える。
【0011】
前記データ変換部は、前記フローデータの集約値を含む情報を、表形式のデータに変換してもよい。
【0012】
前記データ変換部は、前記フローデータの情報を、グラフ形式のデータに変換してもよい。
【0013】
前記データ変換部は、前記フローデータのペイロード情報を、画像形式のデータに変換してもよい。
【0014】
前記データ圧縮部は、前記複数の形式のデータから抽出された特徴量を、それぞれ異なるアルゴリズムにより次元圧縮してもよい。
【0015】
前記データ圧縮部は、前記複数の形式のデータから抽出された特徴量の少なくとも一つを、異なる複数のアルゴリズムにより次元圧縮して複数の特徴量を生成してもよい。
【0016】
前記フローデータは、車両通信ネットワークから取得され、前記寄与比率設定部は、車両の認証情報に基づいて特定される車種に応じて、前記寄与比率を設定してもよい。
【0017】
前記フローデータは、車両通信ネットワークから取得され、前記寄与比率設定部は、前記フローデータにより識別される車載アプリケーションの種別に応じて、前記寄与比率を設定してもよい。
【0018】
本発明に係る異常通信検知方法は、通信のフローデータに含まれる情報を、複数の形式のデータに変換するデータ変換ステップと、前記複数の形式のデータから、それぞれ特徴量を抽出する特徴抽出ステップと、前記複数の形式のデータそれぞれについて、前記特徴量の次元を圧縮するデータ圧縮ステップと、通信種別毎の特性に基づいて、前記特徴量それぞれに寄与比率を動的に設定する寄与比率設定ステップと、前記寄与比率に応じて異常検知モデルのパラメータを変更したうえで、前記特徴量を当該異常検知モデルに入力し、判定結果を出力する異常検知ステップと、をコンピュータが実行する。
【0019】
本発明に係る異常通信検知プログラムは、前記異常通信検知装置としてコンピュータを機能させるためのものである。
【発明の効果】
【0020】
本発明によれば、多種類の異常通信を低コストで検知できる。
【図面の簡単な説明】
【0021】
【
図1】実施形態における異常通信検知装置の機能構成を示す図である。
【
図2】実施形態における異常通信検知装置の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、本発明の実施形態の一例について説明する。
本実施形態の異常通信検知方法は、マルチモーダルな情報として、統計的な情報、ネットワーク自体の情報、ペイロードの情報を組み合わせて活用することで、異常通信の種類を切り分ける。さらに、これらの情報を軽量化することで、機械学習・深層学習で起こりうる次元の呪いが回避され、必要な計算資源が低減される。
【0023】
ここでは、異常通信の切り分けに必要な情報を、「統計的な数値情報」、「データの隣接・繋がりを示す情報」、「通信そのものの意味情報」と定義し、異常通信検知装置は、通信データを、表形式、グラフ、画像へと変換する。
例えば、表形式の場合には、パケット数、バイトの数、接続数等の統計量に、グラフの場合には、ネットワーク内の通信間のつながり、時間情報等の関係に、画像の場合には、ペイロードのメッセージにといったように、それぞれ注目している情報が異なる。
このように、複数の情報を並列して活用することにより、異常通信検知装置は、異常度のスコアを算出すると同時に、利用された情報の寄与度に注目することで、どのような異常であるかを判断できる。
【0024】
本実施形態では、異常検知対象の通信ネットワークとして、車両通信ネットワークを例示する。車両通信ネットワークにおいては、短期間に大量の通信が行われることが想定され、かつ、未知の異常通信に対する原因の切り分けが求められる。このため、本実施形態では、通信のフローデータの情報を失わず、かつ、計算資源を考慮して各情報に合わせた次元削減手法を適用することで、データの表現を維持しつつ、計算コストを低減する。
【0025】
図1は、本実施形態における異常通信検知装置1の機能構成を示す図である。
異常通信検知装置1は、制御部10及び記憶部20の他、各種データの入出力デバイス及び通信デバイス等を備えた情報処理装置である。
【0026】
制御部10は、異常通信検知装置1の全体を制御する部分であり、記憶部20に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部10は、CPUであってよい。
具体的には、制御部10は、データ変換部11と、特徴抽出部12と、データ圧縮部13と、寄与比率設定部14と、異常検知部15とを備える。
【0027】
記憶部20は、ハードウェア群を異常通信検知装置1として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)等であってよい。具体的には、記憶部20は、本実施形態の各機能を制御部10に実行させるためのプログラム(異常通信検知プログラム)を記憶し、さらに、処理対象として受信したフローデータ、変換された各型式のデータ、異常検知モデル、各種パラメータ等を記憶する。
【0028】
データ変換部11は、通信のフローデータに含まれる情報を、複数の形式のデータに変換する。
複数の形式は、例えば、表形式データ、グラフ、及び画像データであってよい。
【0029】
具体的には、データ変換部11は、フローデータの集約値を含む情報を、表形式のデータに変換する。このとき、データ変換部11は、フローデータにおいて一般的に利用される要素に加え、任意の集計方法やルールに基づき算出される連続値、カテゴリ値、バイナリ値を特徴量として表形式のデータに追加してもよい。
【0030】
また、データ変換部11は、フローデータの情報を、グラフ形式のデータに変換する。すなわち、データ変換部11は、フローデータをノードとして時系列方向にエッジを構成する、あるいは、送信元ホスト及び送信先ホストのIPアドレス又はMACアドレス、及びポート番号の情報を用いてホストをノードとするグラフを構成する。
【0031】
さらに、データ変換部11は、フローデータのペイロード情報を、画像形式のデータに変換する。
ここで、画像への変換方法は特に限られず、例えば次のような、所定のルールに基づいて二次元配列へ写像する方法を適用できる。
【0032】
(1)IPアドレス及び通信量をもとにハッシュテーブルを更新するSketch(例えば、次の文献A参照)を利用して、ハッシュテーブルの配列を二次元配列の画像として表現する。
文献A: S. Chang et al., "A flow-based anomaly detection method using sketch and combinations of traffic features," 2010 International Conference on Network and Service Management, 2010, pp. 302-305.
【0033】
(2)ASCII文字をRGB値の行列に変換する(例えば、次の文献B参照)。
文献B: R. Shire et al., "Malware Squid: A Novel IoT Malware Traffic Analysis Framework Using Convolutional Neural Network and Binary Visualisation," Internet of Things, Smart Spaces, and Next Generation Networks and Systems, Springer, 2019, pp. 65-76.
【0034】
(3)各Byte情報を0~255の値の行列に変換する(例えば、次の文献C参照)。
文献C: P. Parmuval, "Malware Family Detection Approach using Image Processing Techniques: Visualization Technique," International Journal of Computer Applications Technology and Research, Volume 7 Issue 03, 2018, pp. 129-132.
【0035】
なお、(2)又は(3)の行列は、所定サイズ(M×N)の二次元配列として生成される。M×Nの行列とするためにデータが不足する場合は、ゼロ埋め等により補完することにより画像化される。
【0036】
特徴抽出部12は、変換された複数の形式のデータから、それぞれ所定のアルゴリズムにより多次元の特徴量を抽出する。
なお、特徴抽出のアルゴリズムは限定されず、データの形式に応じて既知の様々な手法を適用できる。
【0037】
データ圧縮部13は、複数の形式のデータそれぞれについて、抽出された特徴量の次元を圧縮し、次元を削減した複数の特徴量を生成する。
なお、次元圧縮の方法は限定されず、主成分分析又はUMAP等、既知の様々な手法を適用できる。また、圧縮される次元数は、2次元に限らず、異常通信検知装置1の処理能力又はデータに合わせて任意の次元としてよい。
【0038】
ここで、データ圧縮部13は、複数の形式のデータから抽出された特徴量を、同一のアルゴリズムにより次元圧縮してもよいし、それぞれ異なるアルゴリズムにより次元圧縮してもよい。
また、データ圧縮部13は、複数の形式のデータから抽出された特徴量の少なくとも一つを、異なる複数のアルゴリズムにより次元圧縮して複数の特徴量を生成してもよい。
【0039】
寄与比率設定部14は、通信種別毎のデータ特性に基づいて、複数の特徴量それぞれに寄与比率を動的に設定する。
例えば、車両通信ネットワークから取得されたフローデータの場合、寄与比率設定部14は、車両の認証情報とIPアドレス又はMACアドレスとに基づいて特定される車種又は年代等に応じて、あるいは、フローデータにより識別される車載アプリケーションの種別に応じて、寄与比率を設定してもよい。
【0040】
異常検知部15は、寄与比率に応じて異常検知モデルのパラメータを変更したうえで、複数の特徴量を異常検知モデルに入力し、統合した情報に基づく判定結果を出力する。
ここで、異常検知部15は、判定結果である異常度(尤度)が閾値を超えた場合、異常という判定結果がどの特徴量に寄与しているかを合わせて出力する。これにより、既知又は想定される異常内容を特定し、異常原因の切り分けが可能となる。
【0041】
図2は、本実施形態における異常通信検知装置1の処理手順を示すフローチャートである。
ステップS1において、データ変換部11は、通信のフローデータから取得可能な情報を、表形式、画像、グラフといった複数の形式のデータへ変換する。
【0042】
ステップS2において、特徴抽出部12は、ステップS1で変換された複数の形式のデータそれぞれから、特徴量を抽出する。
【0043】
ステップS3において、データ圧縮部13は、ステップS2で抽出された特徴量のそれぞれについて、次元を圧縮し軽量化する。
【0044】
ステップS4において、寄与比率設定部14は、処理対象のフローデータから車種又は車載アプリケーション種別を取得できるか否かを判定する。この判定がYESの場合、処理はステップS5に移り、判定がNOの場合、処理はステップS6に移る。
【0045】
ステップS5において、寄与比率設定部14は、取得された車種又は車載アプリケーション種別に応じて、表形式、画像、グラフの各形式のデータの寄与比率を設定する。
【0046】
ステップS6において、異常検知部15は、異常検知モデルに対して各形式のデータの寄与比率に応じた重み付けのパラメータを設定し、ステップS3で軽量化された特徴量を入力した判定結果を出力する。
【0047】
本実施形態によれば、異常通信検知装置1は、取得したフローデータを画像、グラフ、表形式といった、それぞれ目的の異なる形式のデータへ変換し、通信種別毎の特性に応じた寄与比率を設定することで異常検知に利用する。さらに、異常通信検知装置1は、各形式のデータから抽出された特徴量の次元を圧縮することにより軽量化するので、単一の情報では失われるデータの関係性を保持して異常原因となる情報を切り分け、かつ、低コストで異常検知を実施できる。
【0048】
異常通信検知装置1は、複数の形式のデータから抽出された特徴量を、それぞれ異なるアルゴリズムにより次元圧縮することにより、形式毎に適したアルゴリズムを選択して圧縮による情報量の低下を抑制でき、異常検知精度を向上できる。
【0049】
異常通信検知装置1は、特徴量の少なくとも一つを、異なる複数のアルゴリズムにより次元圧縮して複数の特徴量を生成することにより、同じ形式のデータからも複数の表現を獲得することができるため、アンサンブル学習による効果が期待できる。
【0050】
異常通信検知装置1は、車種、車載アプリケーション種別に応じて、各形式の寄与比率を設定するので、車両通信ネットワークにおいて、アプリケーションによって異なるデータの特性に合わせて動的に比率を変更でき、より高い異常検知性能が得られる。
【0051】
なお、前述の実施形態により、例えば、ネットワークにおける異常通信を効率的に検知できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【0052】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【0053】
異常通信検知装置1による異常通信検知方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD-ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
【符号の説明】
【0054】
1 異常通信検知装置
10 制御部
11 データ変換部
12 特徴抽出部
13 データ圧縮部
14 寄与比率設定部
15 異常検知部
20 記憶部