JP2019185183A - 通信装置保護管理サーバおよび通信装置保護システム - Google Patents
通信装置保護管理サーバおよび通信装置保護システム Download PDFInfo
- Publication number
- JP2019185183A JP2019185183A JP2018071812A JP2018071812A JP2019185183A JP 2019185183 A JP2019185183 A JP 2019185183A JP 2018071812 A JP2018071812 A JP 2018071812A JP 2018071812 A JP2018071812 A JP 2018071812A JP 2019185183 A JP2019185183 A JP 2019185183A
- Authority
- JP
- Japan
- Prior art keywords
- communication data
- communication
- data
- communication device
- learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 336
- 238000000034 method Methods 0.000 claims description 75
- 230000008569 process Effects 0.000 claims description 64
- 238000007689 inspection Methods 0.000 claims description 45
- 238000012544 monitoring process Methods 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 39
- 230000005540 biological transmission Effects 0.000 claims description 13
- 230000002776 aggregation Effects 0.000 abstract description 76
- 238000004220 aggregation Methods 0.000 abstract description 76
- 239000000284 extract Substances 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 56
- 238000007726 management method Methods 0.000 description 51
- 238000001514 detection method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000012986 modification Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 7
- 230000003068 static effect Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
インターネットに接続されたサーバやパソコンにおけるサイバー攻撃への対策としては、ファイアウォールやウィルス対策ソフトウェアが普及している(非特許文献1参照)。
以下に本発明を実施するための形態(実施形態)における通信装置保護システムについて説明する。図1は、第1の実施形態に係る通信装置保護システムの保護対象となる集約装置(通信装置)300X、300Yとデバイス(通信装置)400V〜400Zを含むIoTシステム10の全体構成を例示する図である。
図2は、第1の実施形態に係る管理サーバ(通信装置保護管理サーバ)100の全体構成を例示する図である。管理サーバ100は、CPU(Central Processing Unit)から構成される制御部110、RAM(Random Access Memory)、ハードディスク、フラッシュメモリ等から構成される記憶部160、NIC(Network Interface Card)から構成される通信部180を含んで構成される。
図3は、第1の実施形態に係る集約装置300の全体構成を例示する図である。集約装置300は、ハードウェアとしての制御部(CPU)301、記憶部(RAMやフラッシュメモリ)302および通信部(NIC)303を含む。集約装置300は、論理的には、ゲストシステム310、ルートシステム320およびハイパーバイザ330を含んで構成される。
図4は、第1の実施形態に係るデバイス400の全体構成を例示する図である。デバイス400は、ハードウェアとしての制御部(CPU)401、記憶部(RAM、フラッシュメモリなど)402、通信部(NIC)403およびセンサ404を含む。センサ404は、カメラ、温度計や振動測定用のセンサなどである。図4では、センサ404は、デバイス400に内蔵されるように記載されているが、外付けの場合もある。デバイス400は、論理的には、ゲストシステム410、ルートシステム420およびハイパーバイザ430を含んで構成される。
なお、デバイス400がアクチュエータのデバイスである場合には、デバイス400は、センサ404とセンサ制御部411の替わりにアクチュエータとアクチュエータ制御部を備える。
図5は、第1の実施形態に係る、管理サーバ100の制御部110(図5では不図示)に含まれる攻撃判定学習部120の動作、および、集約装置300の通信データ監視部340の動作を説明するための図である。
攻撃判定学習部120は、学習結果である攻撃判定モデル121の攻撃判定パラメータ122に更新データ鍵162を用いてデジタル署名を付与し、暗号化して、集約装置300に送信する(ステップS13)。
図6は、第1の実施形態に係る、通信データのパラメータに含まれるバイナリ列(図6ではバイト列として記載)に基づいた攻撃判定モデルにおける学習データ512を例示する図である。図5では、学習用通信データ(通信データ群)からコマンド列を生成して学習データ511としている。図6は、コマンド列に替わり、1つの通信データに含まれるパラメータをバイナリ列として扱い学習データ512とする。学習データ512には、通信データに含まれるパラメータのバイト列と、正常または異常の種別を示すラベルとが含まれている。
図5のコマンド列は、各通信データに含まれるコマンドを通信データの受信した順に抜き出したコマンド列であったが、受信間隔を含めるようにしてもよい。
図7は、第1の実施形態の変形例に係る、時間間隔を含む通信データのコマンド列に基づいた攻撃判定モデルに対する学習データ513を例示する図である。学習データ513の1行目は、最初の通信データのコマンドがC1であり、2.0秒後にコマンドC2を含んだ通信データを受信して、その1.4秒後にコマンドC1を含んだ通信データを受信した場合の学習データである。
図9は、第1の実施形態に係る管理サーバ100の攻撃判定学習部120が実行する攻撃判定モデルの学習処理を示すフローチャートである。
ステップS101において、攻撃判定学習部120は、学習用通信データ501(図5参照)に含まれる通信データそれぞれからコマンドを抜き出して、学習データ511を生成する。
ステップS103において、攻撃判定学習部120は、学習処理の結果である攻撃判定モデル121の攻撃判定パラメータ122にデジタル署名を付与し、暗号化して、集約装置300に送信する。デジタル署名生成や暗号化には、更新データ鍵162が用いられる。
図10は、第1の実施形態に係る集約装置300の通信データ監視部340が実行する通信データ監視処理を示すフローチャートである。
ステップS121において、集約装置300は、攻撃判定学習部120が送信した攻撃判定パラメータを受信し、受信データを検証して、攻撃判定モデル341(図5参照)に攻撃判定パラメータ342を設定する。詳しくは、ゲストシステム310は、受信データをルートシステム320に出力する。次に、ルートシステム320のシステム更新部321は、更新データ鍵322を用いて受信データを復号し、デジタル署名を検証した後に、ゲストシステム310の通信データ監視部340に出力する。通信データ監視部340は、出力されたデータを攻撃判定モデル341の攻撃判定パラメータ342として設定する(図5参照)。なお、システム更新部321が、受信したデータの復号またはデジタル署名の検証に失敗した場合には、管理サーバ100に通知する。
ステップS123において、通信データ監視部340は、通信データからコマンドを抜き出し、攻撃判定モデル341に入力して、攻撃か否かを判定する。通信データのパラメータのバイナリ列を学習した機械学習モデルを採用している場合には、通信データ監視部340は、通信データからパラメータのバイナリ列を抜き出し、攻撃判定モデル341に入力して、攻撃か否か、攻撃であればその種別を判定する。
ステップS125において、通信データ監視部340は、通信データを集約機能部311に出力し、ステップS130に進む。
ステップS126において、通信データ監視部340は、攻撃種別がDoS攻撃であれば(S126→DoS攻撃)ステップS127に進み、攻撃種別が総当り攻撃であれば(S126→総当たり攻撃)ステップS128に進み、攻撃種別がその他攻撃であれば(S126→その他攻撃)ステップS129に進む。
ステップS128において、通信データ監視部340は、通信データのコマンドと同じコマンドを含む通信データを所定時間フィルタリングして、当該コマンドの通信データを受信しないようにし、ステップS130に進む。
ステップS129において、通信データ監視部340は、通信データを破棄し、ステップS130に進む。
ステップS130において、通信データ監視部340は、ステップS123に戻る。
コマンド列を基にした攻撃判定モデルは、1以上の長さのコマンド列から攻撃の当否や攻撃種別を判定している。このために、当初正常だが途中から攻撃に変化する通信データ列による攻撃や長い期間に亘って続くような攻撃も判定できる。
パラメータのバイナリ列を基にした攻撃判定モデルを採用することにより、コマンド列だけでは判定できないような、パラメータに攻撃の特徴が現れるような攻撃でも判定できる。また、パラメータのバイナリ列を時系列として扱う攻撃判定モデルを採用することにより、パラメータを変化させながら攻撃するような場合でも、攻撃と判定できるようになる。
以上において、集約装置300における攻撃判定モデルの生成(図5参照)や通信データ監視(図10参照)を説明したが、デバイス400に関しても同様に攻撃判定モデルの生成や通信データの監視が可能である。
図5に示した学習用通信データ501は、通信データ蓄積部161に記憶された、1つ以上の通信データを含む通信データのセットであり、正常か不正か予め分類されている。通信データの送信元によって、さらに分類されて、1つの学習用通信データ501に含まれる通信データの送信元は同一であるように分類されてもよい。この場合には、通信データ監視部340における判定データ521の生成も送信元ごとに行う。詳しくは、通信データ監視部340は、送信元ごとに攻撃判定モデル341を設けて、ゲストシステム310が通信データを受信したら、判定データ521を生成(ステップS21)して、送信元に対応する攻撃判定モデル341に入力(ステップS22)し、攻撃判定結果522を出力として得る(ステップS23)。
集約装置300において、ゲストシステム310の通信データ監視部340が、通信データを攻撃判定モデル341に入力して、攻撃か否かを判定して、攻撃と判定されたならば通信パケットをフィルタリング(破棄)していた。この通信データ監視の処理を、ゲストシステム310ではなく、ハイパーバイザ330で実行してもよい。詳しくは、ハイパーバイザ330が、ゲストシステム310宛ての通信データを、ハイパーバイザ内の攻撃判定モデルに入力して、攻撃か否かを判定して、攻撃と判定されたならば通信パケットをフィルタリング(破棄)するようにしてもよい。
ステップS127〜S129(図10参照)のフィルタリング処理において、通信データ監視部340が管理サーバ100に攻撃を検知したことを通知するようにしてもよい。
管理サーバ100は、IoTシステム10の管理サーバであり、集約装置300やデバイス400の通信装置を保護する通信装置保護システムの管理サーバでもある。IoTシステム10の管理サーバと、通信装置保護システムの管理サーバとを異なるサーバにしてもよい。
攻撃判定学習部120は、正常と不正の学習用通信データ501を用いて学習する(図5参照)。正常な学習用通信データのみから攻撃判定モデル121を生成して、不正な通信データを異常として検出するようにしてもよい。このような機械学習モデル(アルゴリズム) として、1クラスSVM、クラスタリング、k近傍法などがある。
第1の実施形態では、学習用通信データは、正常と攻撃種別により、予め分類されて通信データ蓄積部161に格納されていた。これに対して、第2の実施形態の管理サーバでは、未分類の通信データ(通信データ群)を集約装置300のクローン(図11参照)に処理させて、動作が正常か否かを観察することで、正常と攻撃種別とを分類する。
図11は、第2の実施形態に係る通信装置保護システムにおける管理サーバ100Aの全体構成を示す。第1の実施形態の管理サーバ100と比較すると、制御部110にクローン130と通信データ検査部140とが加わり、記憶部160にプログラムリポジトリ163とHB適否判定グラフ164とが加わる。なお、HBはHeart Beatの略記である。
図12と図13を参照しながら、通信データをクローン130に処理させ、HBの受信順序や受信間隔を観察することで正常に処理するか否かを判断して、通信データが正常か不正かを判断する手法を説明する。
HB適否判定グラフ164は、プログラム(図12参照)を解析して、処理の流れから生成してもよいし、正常な通信データをクローン130に処理させたときに受信したHBの種別や間隔から生成してもよい。
図14は、第2の実施形態に係る通信データ検査部140が実行する通信データ検査処理を示すフローチャートである。
ステップS201において、通信データ検査部140は、通信データ蓄積部161から集約装置300向けの通信データのセット(学習用通信データ)を取得して、所定の単位時間当たりの通信データ数が所定の閾値以上である期間の長さを測定する。
ステップS203において、通信データ検査部140は、ステップS201で取得した学習用通信データは、DoS攻撃の学習用通信データと判定し、図14の通信データ検査処理を終了する。
ステップS205において、通信データ検査部140は、所定の単位時間当たりの、処理結果がエラーである通信データ数が所定の閾値以上である期間の長さを測定する。
ステップS207において、通信データ検査部140は、ステップS201で取得した学習用通信データは、総当たり攻撃の学習用通信データと判定し、図14の通信データ検査処理を終了する。
ステップS209において、通信データ検査部140は、通信データをクローン130に入力し処理させて、HBを受信する。
ステップS210において、通信データ検査部140は、受信したHBの順序や受信間隔がHB適否判定グラフから逸脱しているか否かを判定する。
ステップS212において、通信データ検査部140は、ステップS201で取得した学習用通信データは、脆弱性攻撃の学習用通信データと判定し、図14の通信データ検査処理を終了する。
ステップS214において、通信データ検査部140は、ステップS201で取得した学習用通信データは、正常な学習用通信データと判定する。
第1の実施形態では、学習用通信データの正常や攻撃種別を人手で予め分類することを想定している。これに対して、第2の実施形態では、管理サーバ100Aが、通信データ検査処理を実行することで、学習用通信データを正常か不正(異常)か分類し、さらに、不正ならば攻撃種別を分類することができる。取得した通信データについて管理サーバ100Aが分類して、学習処理を実行することで、大量の学習データを用いて学習することが可能となり、攻撃判定精度を向上させることができる。また、1つの集約装置で攻撃が発生した場合に、この攻撃に用いられた通信データを別の集約装置のクローンで正常か不正かを分類して、学習用通信データとすることで、他の集約装置に対する攻撃を未然に防ぐとことができるようになる。
以上、集約装置300に対する通信データ検査処理について説明したが、デバイス400についても同様に通信データの検査処理が可能である。
第3の実施形態では、第2の実施形態において脆弱性攻撃と判断された通信データを利用して、管理サーバがプログラムの脆弱性を修正するパッチ(更新プログラム、修正プログラム)を生成する。
図15は、第3の実施形態に係る通信装置保護システムにおける管理サーバ100Bの全体構成を示す。第2の実施形態の管理サーバ100A(図11参照)と比較すると、制御部110にパッチ生成部150が加わり、記憶部160に使用メモリデータベース(図15では使用メモリDB(Database)と記載)170が加わる。
以下に、パッチ生成部150が実行するパッチ生成処理における、脆弱性の検出手法と修正手法について説明する。図17Aと図17Bとは、第3の実施形態に係るパッチ生成部150の不正ポインタ参照の脆弱性(不正なデータ操作)を検出する手法と修正する手法を説明するための図である。図17Aは、不正ポインタ参照の脆弱性がある関数Dのプログラムを示し、図17Bは、不正ポインタ参照の脆弱性を修正した後の関数Dのプログラムを示す。脆弱性攻撃を含む通信データの処理中に関数Dは、引数D2が指すデータを引数D1が指す領域にstrcpy関数を用いてコピーする(図17Aの2行目参照)が、D1が不正ポインタであり、コピーしようとしてD1がポイントするメモリ領域を参照しようとすると、不正が発生してプログラムが異常終了する。
不正と判断された場合には、不正な参照が発生する箇所(図17Aの2行目、図17Bの4行目)の直前に、変数のポインタを検査するコード(図17Bの2行目)と、不正である場合に例外処理を実行するコード(図17Bの3行目)を挿入するパッチを生成する。
図18Aと図18Bとは、第3の実施形態に係るパッチ生成部150のバッファ溢れ(buffer overflow)の脆弱性(不正なデータ操作)を検出する手法と修正する手法を説明するための図である。図18Aは、バッファ溢れの脆弱性がある関数Eのプログラムを示し、図18Bは、バッファ溢れの脆弱性を修正した後の関数Eのプログラムを示す。脆弱性攻撃を含む通信データの処理中に関数Eは、引数E1が指すデータを変数bufferが指す領域にstrcpy関数を用いてコピーする(図18Aの3行目参照)が、コピー元のE1が示すデータのサイズが、コピー先のbufferのサイズより大きく、コピーするとバッファ溢れが生じ、不正発生の原因となる。
図19Aと図19Bとは、第3の実施形態に係るパッチ生成部150の二重解放(double-free)の脆弱性(不正なデータ操作)を検出する手法と修正する手法を説明するための図である。図19Aは、二重解放の脆弱性がある関数Fのプログラムを示し、図19Bは、二重解放の脆弱性を修正した後の関数Fのプログラムを示す。脆弱性攻撃を含む通信データの処理中に関数Fは、引数F1が指すポインタが指すメモリ領域を、free関数を用いて解放する(図19Aの2行目参照)が、既に解放済みのメモリ領域を解放すると不正発生の原因となる。
図20Aと図20Bとは、第3の実施形態に係るパッチ生成部150の整数溢れの脆弱性(不正なデータ操作)を検出する手法と修正する手法を説明するための図である。図20Aは、整数溢れの脆弱性がある関数Gのプログラムを示し、図20Bは、整数溢れの脆弱性を修正した後の関数Gのプログラムを示す。脆弱性攻撃を含む通信データの処理中に関数Gは、引数G1に引数G2を加算して変数xに格納する(図20Aの3行目参照)が、加算の結果が変数xの最大値を超える(整数溢れ)と不正発生の原因となる。
その他の脆弱性についても、不正な通信データを処理するプロセスを監視することで、不正が発生する箇所を検出するようにしてもよい。例えば、printf関数などの書式指定出力関数において、書式を指定する変数に書式を指定する文字列("%s"など)が含まれている場合に不正と判断するようにしてもよい。
図21〜図24を参照して、管理サーバにおける、脆弱性を検出し、検出された脆弱性を修正する更新プログラム(パッチ)を生成して、集約装置に送信する処理と、集約装置における、更新プログラムを受信して、システムを更新する処理とを説明する。
ステップS301において、パッチ生成部150は、脆弱性攻撃の通信データをクローン130に入力して、クローン130のプログラム(集約機能部311のプログラム)に通信データの処理を開始させる。
ステップS306において、パッチ生成部150は、現コードがバッファ(メモリ領域)のコピー処理でありバッファ溢れが発生するか否かを判定する。バッファのサイズは、使用メモリデータベース170を参照して算出できる(図18Aと図18Bの説明参照)。なお、コピー元が文字列である場合には、文字列の長さからバッファのサイズを算出する。例えば、文字の型がcharである「"abcd"」の文字列のサイズは終端文字を含めて5バイトである。コピー元のサイズがコピー先より大きい場合にはバッファ溢れが発生すると判定する。
ステップS308において、パッチ生成部150は、現コードにバッファ溢れ(図21ではBOF(buffer overflow)と記載)の脆弱性があると判定し、図21の脆弱性検出処理を終了する。
ステップS310において、パッチ生成部150は、ステップS309の判定において二重解放が発生すれば(ステップS310→Y)ステップS311に進み、なければ(ステップS310→N)ステップS312に進む。
ステップS312において、パッチ生成部150は、現コードが整数演算の処理であり整数溢れが発生するか否かを判定する。整数溢れか否かは、演算の結果が、変数の型の最大値と最小値の間にあるか否かで判定する。
ステップS313において、パッチ生成部150は、ステップS312の判定において整数溢れが発生すれば(ステップS313→Y)ステップS314に進み、なければ(ステップS313→N)ステップS315に進む。
ステップS315において、パッチ生成部150は、通信データの処理に係るプログラムの全ステップを実行したか判断し、未処理のステップ(コード)があれば、ステップS303に戻り、全ステップを実行した場合には、脆弱性検査処理を終了する。
パッチ生成部150は、脆弱性攻撃を含む通信データをクローン130に処理させて、不正が発生するプログラムの箇所を特定することで、脆弱性のあるプログラムの場所(コード)を特定することができる。
プログラムを解析して、脆弱性を指摘するコード検査ツールが存在している。このような検査ツールは、静的な検査を行うために、変数の値であるポインタが解放済みか否かを判定できない、ポインタが指す文字列の長さが算出できずバッファ溢れが発生するか否かを判定できないといった問題があった。パッチ生成部150は、脆弱性攻撃を含む通信データを処理する過程で検査を行っており、ポインタが解放済みか否かを判定したり、文字列の長さを算出してバッファ溢れが発生するか否かを判定したりできる。このため、従来までの検査ツールでは検出できなかったプログラムの脆弱性のある箇所(コード)を特定することができる。引いては、後記するように、特定した脆弱性を修正するパッチを生成することができるようになる。
図22と図23を参照して、管理サーバと集約装置とで実行されるプログラム更新処理を説明する。図22は、第3の実施形態に係る管理サーバ100Bのパッチ生成部150(図15参照)が実行する更新プログラム(パッチ)生成処理のフローチャートである。図22を参照して、脆弱性検出処理(図21参照)で検出された脆弱性を修正する更新プログラムを生成する処理を説明する。
ステップS332において、パッチ生成部150は、更新プログラムに署名を付与し、暗号化する。署名や暗号化に用いる鍵は、更新データ鍵162に含まれている。
ステップS333において、パッチ生成部150は、署名が付与され暗号化された更新プログラムを集約装置に送信する。
ステップS351において、ゲストシステム310は、管理サーバ100Bが送信した更新プログラムを受信する。
ステップS353において、ルートシステム320のシステム更新部321は、更新プログラムを検査する。詳しくは、システム更新部321は、更新プログラムを復号して、署名を検査する。復号や署名の検証の際には、更新データ鍵322を用いる。
ステップS354において、システム更新部321は、ステップS353の検査に合格(復号できて署名検証に成功)すれば(ステップS354→Y)ステップS356に進み、失敗すれば(ステップS354→N)ステップS355に進む。
ステップS356において、システム更新部321は、ハイパーバイザ330を介してゲストシステム310にシャットダウンを指示する。
ステップS357において、システム更新部321は、ゲストシステム310のシャットダウン後に、更新プログラムを適用して、ゲストシステム310を更新する。詳しくは、記憶部302上の集約機能部311のプログラムを修正して更新する。
ステップS359において、システム更新部321は、更新が完了したことを管理サーバ100Bに報告する。
図24は、第3の実施形態に係る集約装置300Aの全体構成を例示する図である。第1の実施形態の集約装置300(図3参照)と比較すると、ハイパーバイザ330内に使用メモリデータベース350が追加される。使用メモリデータベース350は、使用メモリデータベース170(図15と図16参照)と同様のデータ構成をしており、更新プログラムに含まれるポインタや領域サイズを検査するコードが実行されると参照される。
脆弱性攻撃を含む通信データを受信しても、システム更新後の集約機能部311は、不正(不正なデータ操作)を検出して、例外処理を実行することで、攻撃を未然に防ぐことができる。引いては、集約機能部311が停止したり、不正に操作されたりするなどのサイバー攻撃を防ぐことができる。
以上、集約装置300Aに対するパッチ(更新プログラム)生成とシステム更新について説明したが、デバイス400についても同様に可能である。
第2の実施形態では、管理サーバ100Aのクローン130を用いて、脆弱性攻撃を含む通信データを検出していた(図14のステップS208〜S213参照)。この検出を、集約装置で実行してもよい。
図25は、第2の実施形態の変形例に係る、通信データが脆弱性攻撃を含むか否かを検出する集約装置の全体構成を例示する図である。集約装置300(図3参照)と比較すると、ルートシステム320に、通信データ検査部323とHB適否判定グラフ324とが追加されている。通信データ検査部323およびHB適否判定グラフ324は、通信データ検査部140およびHB適否判定グラフ164と同様である。通信データ検査部323は、通信データを処理している集約機能部311が送信するHBをハイパーバイザ330経由で受信して、HBの受信順序や受信間隔がHB適否判定グラフ324から逸脱していないかを監視することで、処理中の通信データが脆弱性攻撃を含むか否か判断する。
以上、集約装置300Bに対する脆弱性攻撃を含む通信データ検出処理について説明したが、デバイス400についても同様に検出処理が可能である。
120 攻撃判定学習部
130 クローン(仮想マシン)
140 通信データ検査部
150 パッチ生成部
300,300A,300B 集約装置(通信装置)
340,440 通信データ監視部
400 デバイス(通信装置)
Claims (5)
- 通信装置に対する正常な通信データ群に含まれる通信データおよび不正な通信データ群に含まれる通信データから、前記通信装置に対するコマンドおよび前記コマンドのパラメータの何れか1つまたは双方を抜き出して作成した学習データを用いて教師ありの学習をさせることで、前記通信装置に対する通信データが正常か不正かを判定する攻撃判定モデルを生成する攻撃判定学習部を備える
ことを特徴とする通信装置保護管理サーバ。 - 前記コマンドから作成された学習データは、
前記正常な通信データ群の通信パケットから時系列のコマンド、および、前記不正な通信データ群の通信パケットから時系列のコマンドを抜き出して作成される
ことを特徴とする請求項1に記載の通信装置保護管理サーバ。 - 前記通信装置保護管理サーバ上で動作する仮想マシンであって、前記通信装置をシミュレートする仮想マシンの上で動作する前記通信データの処理プログラムに、前記通信装置に対する通信データ群を処理させて、前記処理プログラムが送信するハートビートの種別と送信間隔とが、前記正常な通信データ群を処理するときの前記ハートビートの種別と送信間隔と異なる場合に、前記処理プログラムが処理する通信データ群を不正と判断する通信データ検査部を備え、
前記攻撃判定学習部は、前記通信データ検査部が不正と判断した通信データ群から前記学習データを作成する
ことを特徴とする請求項1または請求項2に記載の通信装置保護管理サーバ。 - 前記通信装置保護管理サーバ上で動作する仮想マシンであって、前記通信装置をシミュレートする仮想マシンの上で動作する前記通信データの処理プログラムに、前記不正な通信データ群に含まれる通信データの処理を1ステップずつ実行させて、所定の不正なデータ操作を実行するステップを検出し、検出されたステップの直前に、前記不正なデータ操作の対象となるデータを検出して例外処理を実行するコードを前記処理プログラムに挿入する修正プログラムを生成するパッチ生成部を備える
ことを特徴とする請求項1〜3の何れか1項に記載の通信装置保護管理サーバ。 - 通信装置と通信装置保護管理サーバから構成される通信装置保護システムであって、
前記通信装置保護管理サーバは、
前記通信装置に対する正常な通信データ群に含まれる通信データおよび不正な通信データ群に含まれる通信データから、前記通信装置に対するコマンドおよび前記コマンドのパラメータの何れか1つまたは双方を抜き出して作成した学習データを用いて教師ありの学習をさせることで、前記通信装置に対する通信データが正常か不正かを判定する攻撃判定モデルを生成して、前記攻撃判定モデルのパラメータを前記通信装置に送信する攻撃判定学習部を備え、
前記通信装置は、
前記攻撃判定モデルのパラメータを自身の攻撃判定モデルに設定して、自身が受信した通信データを前記自身の攻撃判定モデルが不正と判定した場合には、当該通信データを破棄する、または、当該通信データを送信した通信装置からの通信データを破棄する通信データ監視部を備える
ことを特徴とする通信装置保護システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018071812A JP2019185183A (ja) | 2018-04-03 | 2018-04-03 | 通信装置保護管理サーバおよび通信装置保護システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018071812A JP2019185183A (ja) | 2018-04-03 | 2018-04-03 | 通信装置保護管理サーバおよび通信装置保護システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019185183A true JP2019185183A (ja) | 2019-10-24 |
Family
ID=68341177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018071812A Pending JP2019185183A (ja) | 2018-04-03 | 2018-04-03 | 通信装置保護管理サーバおよび通信装置保護システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019185183A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102120214B1 (ko) * | 2019-11-15 | 2020-06-08 | (주)유엠로직스 | 앙상블 기계학습 기법을 이용한 사이버 표적공격 탐지 시스템 및 그 탐지 방법 |
JP2021082948A (ja) * | 2019-11-19 | 2021-05-27 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 閾値出力装置、閾値出力方法および閾値出力プログラム |
JP2021117773A (ja) * | 2020-01-27 | 2021-08-10 | 富士通株式会社 | 情報処理装置、分析用データ生成プログラム及び方法 |
JP7391313B2 (ja) | 2020-02-25 | 2023-12-05 | エフ・1・セキュリティ・インコーポレイテッド | 人工知能マシンラーニング行為ベースウェブプロトコル分析によるウェブ攻撃検知および遮断システムおよび方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263661A1 (en) * | 2007-04-23 | 2008-10-23 | Mitsubishi Electric Corporation | Detecting anomalies in signaling flows |
JP2010198054A (ja) * | 2009-02-23 | 2010-09-09 | National Institute Of Information & Communication Technology | コンピュータ検査システム、コンピュータ検査方法 |
US20110030059A1 (en) * | 2009-07-30 | 2011-02-03 | Greenwald Lloyd G | Method for testing the security posture of a system |
JP2011258019A (ja) * | 2010-06-09 | 2011-12-22 | Nippon Telegr & Teleph Corp <Ntt> | 異常検知装置、異常検知プログラムおよび異常検知方法 |
JP2016173782A (ja) * | 2015-03-18 | 2016-09-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 故障予測システム、故障予測方法、故障予測装置、学習装置、故障予測プログラム及び学習プログラム |
WO2017094377A1 (ja) * | 2015-11-30 | 2017-06-08 | 日本電信電話株式会社 | 分類方法、分類装置および分類プログラム |
WO2017221667A1 (ja) * | 2016-06-20 | 2017-12-28 | 日本電信電話株式会社 | 悪性通信ログ検出装置、悪性通信ログ検出方法、悪性通信ログ検出プログラム |
-
2018
- 2018-04-03 JP JP2018071812A patent/JP2019185183A/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263661A1 (en) * | 2007-04-23 | 2008-10-23 | Mitsubishi Electric Corporation | Detecting anomalies in signaling flows |
JP2008306706A (ja) * | 2007-04-23 | 2008-12-18 | Mitsubishi Electric Information Technology Centre Europa Bv | シグナリングフローの異常を検知する方法及び装置 |
JP2010198054A (ja) * | 2009-02-23 | 2010-09-09 | National Institute Of Information & Communication Technology | コンピュータ検査システム、コンピュータ検査方法 |
US20110030059A1 (en) * | 2009-07-30 | 2011-02-03 | Greenwald Lloyd G | Method for testing the security posture of a system |
JP2011258019A (ja) * | 2010-06-09 | 2011-12-22 | Nippon Telegr & Teleph Corp <Ntt> | 異常検知装置、異常検知プログラムおよび異常検知方法 |
JP2016173782A (ja) * | 2015-03-18 | 2016-09-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 故障予測システム、故障予測方法、故障予測装置、学習装置、故障予測プログラム及び学習プログラム |
WO2017094377A1 (ja) * | 2015-11-30 | 2017-06-08 | 日本電信電話株式会社 | 分類方法、分類装置および分類プログラム |
WO2017221667A1 (ja) * | 2016-06-20 | 2017-12-28 | 日本電信電話株式会社 | 悪性通信ログ検出装置、悪性通信ログ検出方法、悪性通信ログ検出プログラム |
Non-Patent Citations (2)
Title |
---|
三村 守,大坪 雄平,田中 英彦: "プロキシのログからの機械学習によるRATの検知方式 Detecting RAT Activity in Proxy Server Logs with", CSS2015 コンピュータセキュリティシンポジウム2015 論文集 合同開催 マルウェア対策研究人, vol. 2015, no. 3, JPN6020009530, 14 October 2015 (2015-10-14), JP, pages 528 - 535, ISSN: 0004681942 * |
木内 舞 KIUCHI MAI, 小野田 崇 ONODA TAKASHI: "監視制御通信におけるシーケンスを考慮した侵入検知 Intrusion Detection in Control Systems using Seque", 電気学会論文誌C IEEJ TRANSACTIONS ON ELECTRONICS, INFORMATION AND SYSTEMS, vol. 132, no. 1, JPN6019000498, 2012, JP, pages 14 - 20, ISSN: 0004816074 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102120214B1 (ko) * | 2019-11-15 | 2020-06-08 | (주)유엠로직스 | 앙상블 기계학습 기법을 이용한 사이버 표적공격 탐지 시스템 및 그 탐지 방법 |
JP2021082948A (ja) * | 2019-11-19 | 2021-05-27 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 閾値出力装置、閾値出力方法および閾値出力プログラム |
JP7311402B2 (ja) | 2019-11-19 | 2023-07-19 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 閾値出力装置、閾値出力方法および閾値出力プログラム |
JP2021117773A (ja) * | 2020-01-27 | 2021-08-10 | 富士通株式会社 | 情報処理装置、分析用データ生成プログラム及び方法 |
JP7393642B2 (ja) | 2020-01-27 | 2023-12-07 | 富士通株式会社 | 情報処理装置、分析用データ生成プログラム及び方法 |
JP7391313B2 (ja) | 2020-02-25 | 2023-12-05 | エフ・1・セキュリティ・インコーポレイテッド | 人工知能マシンラーニング行為ベースウェブプロトコル分析によるウェブ攻撃検知および遮断システムおよび方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110619B2 (en) | Method and product for providing a predictive security product and evaluating existing security products | |
US7603715B2 (en) | Containment of worms | |
JP2019185183A (ja) | 通信装置保護管理サーバおよび通信装置保護システム | |
JP6557774B2 (ja) | プロセストレースを用いたグラフベースの侵入検知 | |
KR101137128B1 (ko) | 웜 봉쇄 방법 | |
EP3270318B1 (en) | Dynamic security module terminal device and method for operating same | |
US20080256631A1 (en) | Renewable integrity rooted system | |
Said et al. | Detection of mirai by syntactic and behavioral analysis | |
US10482251B1 (en) | Using integrity reports to detect network instrusion | |
WO2021214429A1 (en) | Analytics processing circuitry for mitigating attacks against computing systems | |
US20210084061A1 (en) | Bio-inspired agile cyber-security assurance framework | |
Obeidat et al. | Smart approach for botnet detection based on Network Traffic analysis | |
Said et al. | Detection of mirai by syntactic and semantic analysis | |
Murthy et al. | Hybrid intelligent intrusion detection system using bayesian and genetic algorithm (baga): comparitive study | |
WO2021214430A1 (en) | Moderator system for a security analytics framework | |
Colombo et al. | Towards a Comprehensive Solution for Secure Cryptographic Protocol Execution based on Runtime Verification. | |
CN106096402A (zh) | 一种信息拦截方法及装置 | |
Pan et al. | Efficient and Transparent Method for Large-Scale TLS Traffic Analysis of Browsers and Analogous Programs | |
Wang et al. | Incorporating Gradients to Rules: Towards Lightweight, Adaptive Provenance-based Intrusion Detection | |
Cho | Replay-based Worm Detection System | |
Skormin et al. | Towards fully automatic defense mechanism for a computer network emulating active immune response |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20190416 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220113 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220704 |