(57)【要約】【課題】学習結果を用いた場合の誤判定率の低減化を図ること。【解決手段】不正通信検知装置は、運用データを送信元から受信する受信部と、受信部によって受信された運用データを宛先に送信する送信部と、学習データ群の特徴量に関する複数の学習モデルの中の特定の学習モデルの適用範囲を拡張するパラメータと、受信部によって受信された運用データの複数の特徴量のうち特定の学習モデルに対応する特定の特徴量と、に基づいて、運用データが不正通信であるか否かを判定するスコアを算出する判定式を修正する修正値を取得する取得部と、複数の学習モデルと複数の特徴量と取得部によって取得された修正値とに基づいて、判定式でスコアを算出し、当該算出されたスコアに基づいて、不正通信であるか否かを判定する判定部と、判定部による判定結果に基づいて、送信部による運用データの送信を制御する送信制御部と、を有する。【選択図】図４
2020135816.tif 000002
【特許請求の範囲】
【請求項１】
運用データを送信元から受信する受信部と、
前記受信部によって受信された運用データを宛先に送信する送信部と、
学習データ群の特徴量に関する複数の学習モデルの中の特定の学習モデルの適用範囲を拡張するパラメータと、前記受信部によって受信された運用データの複数の特徴量のうち前記特定の学習モデルに対応する特定の特徴量と、に基づいて、前記運用データが不正通信であるか否かを判定するスコアを算出する判定式を修正する修正値を取得する取得部と、
前記複数の学習モデルと前記複数の特徴量と前記取得部によって取得された修正値とに基づいて、前記判定式で前記スコアを算出し、当該算出されたスコアに基づいて、不正通信であるか否かを判定する判定部と、
前記判定部による判定結果に基づいて、前記送信部による前記運用データの送信を制御する送信制御部と、
を有することを特徴とする不正通信検知装置。
【請求項２】
請求項１に記載の不正通信検知装置であって、
前記送信制御部は、前記判定結果が不正通信である場合、当該不正通信と判定された運用データを遮断することを特徴とする不正通信検知装置。
【請求項３】
請求項２に記載の不正通信検知装置であって、
前記判定部は、前記スコアが不正通信の基準となる第１しきい値よりも低い場合、前記運用データを不正通信のデータと判定し、
前記送信制御部は、前記不正通信と判定された運用データを遮断することを特徴とする不正通信検知装置。
【請求項４】
請求項２に記載の不正通信検知装置であって、
前記判定結果が不正通信である場合、当該判定結果を通知する通知部を有することを特徴とする不正通信検知装置。
【請求項５】
請求項２に記載の不正通信検知装置であって、
前記判定部は、前記不正通信のデータと判定された運用データの特徴量を前記送信制御部に出力し、
前記送信制御部は、前記不正通信のデータと判定された運用データの特徴量に基づいて、前記不正通信と判定された運用データを遮断することを特徴とする不正通信検知装置。
【請求項６】
請求項１に記載の不正通信検知装置であって、
前記判定結果を通知する通知部を有し、
前記送信制御部は、前記判定結果が不正通信の可能性がある場合、当該不正通信の可能性があると判定された運用データを前記送信部に出力し、
前記通知部は、前記判定結果が不正通信の可能性がある場合、当該判定結果を通知することを特徴とする不正通信検知装置。
【請求項７】
請求項６に記載の不正通信検知装置であって、
前記判定部は、前記スコアが、不正通信の基準となる第１しきい値以上で、かつ、前記第１しきい値よりも高い不正通信の可能性の基準となる第２しきい値よりも低い場合、前記運用データを不正通信の可能性があると判定することを特徴とする不正通信検知装置。
【請求項８】
請求項１に記載の不正通信検知装置であって、
前記送信制御部は、前記判定結果が不正通信でない場合、当該不正通信でないと判定された運用データを前記送信部に出力することを特徴とする不正通信検知装置。
【請求項９】
請求項８に記載の不正通信検知装置であって、
前記判定部は、前記スコアが不正通信の可能性の基準となる第２しきい値以上である場合、前記運用データを不正通信でないと判定することを特徴とする不正通信検知装置。
【請求項１０】
請求項１に記載の不正通信検知装置であって、
前記判定部は、前記運用データが受信される都度、前記判定式で前記運用データのスコアを算出することを特徴とする不正通信検知装置。
【請求項１１】
請求項１０に記載の不正通信検知装置であって、
前記運用データの通信中の累積した特徴量に関する第１通信中情報を生成する第１生成部を有し、
前記第１生成部は、先着の運用データが受信されてから最新の運用データが受信されるまでの運用データ群について、前記運用データが受信される都度、前記第１通信中情報を更新し、
前記判定部は、前記第１生成部によって更新された最新の第１通信中情報に基づいて、前記判定式により前記最新の運用データのスコアを算出することを特徴とする不正通信検知装置。
【請求項１２】
請求項１に記載の不正通信検知装置であって、
前記学習モデルを生成する第２生成部を有し、
前記判定部は、前記第２生成部によって生成された学習モデルに基づく前記判定式で、前記運用データのスコアを算出し、当該算出されたスコアに基づいて、不正通信であるか否かを判定することを特徴とする不正通信検知装置。
【請求項１３】
請求項１２に記載の不正通信検知装置であって、
前記学習データ群の通信中の累積した特徴量に関する第２通信中情報を生成する第１生成部を有し、
前記第１生成部は、先着の学習データが受信されてから最新の学習データが受信されるまでの学習データ群について、前記学習データが受信される都度、前記第２通信中情報を更新し、
前記第２生成部は、前記学習データ群の通信が終了した場合、前記第１生成部によって更新された最新の第２通信中情報に基づいて、前記学習モデルを確定することを特徴とする不正通信検知装置。
【請求項１４】
請求項１に記載の不正通信検知装置であって、送信部は、無線通信区間で前記運用データを前記宛先に送信することを特徴とする不正通信検知装置。
【請求項１５】
プロセッサに、
運用データを送信元から受信する受信処理と、
前記受信処理によって受信された運用データを宛先に送信する送信処理と、
学習データ群の特徴量に関する複数の学習モデルの中の特定の学習モデルの適用範囲を拡張するパラメータと、前記受信処理によって受信された運用データの複数の特徴量のうち前記特定の学習モデルに対応する特定の特徴量と、に基づいて、前記運用データが不正通信であるか否かを判定するスコアを算出する判定式を修正する修正値を取得する取得処理と、
前記複数の学習モデルと前記複数の特徴量と前記取得処理によって取得された修正値とに基づいて、前記判定式で前記スコアを算出し、当該算出されたスコアに基づいて、不正通信であるか否かを判定する判定処理と、
前記判定処理による判定結果に基づいて、前記送信処理による前記運用データの送信を制御する送信制御処理と、
を実行させることを特徴とする不正通信検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正通信を検知する不正通信検知装置および不正通信検知プログラムに関する。
【背景技術】
【０００２】
モノがインターネットに繋がるＩｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ（ＩｏＴ）が幅広い分野で採用されてきている。しかし、ＩｏＴデバイス（インターネットに繋がるモノ）やＩｏＴシステム（１以上のＩｏＴデバイスとその通信相手（たとえば、サーバ））へのセキュリティ対策は以下三つの理由から難しい。
【０００３】
（１）ＩｏＴデバイスの限られた計算能力およびメモリ容量では、ＩｏＴデバイスは不正通信検知のための複雑な計算処理を実行できない。
【０００４】
（２）ＩｏＴデバイスやアプリケーション、プロトコルの多様性のため、ＩｏＴデバイスへの一様なセキュリティ対策が困難であるため、デバイスベンダごと、アプリごとの開発者がセキュリティ対策を行う必要がある。
【０００５】
（３）また従来、マルウェアへのセキュリティ対策には、あらかじめ既知マルウェアの特徴（シグニチャ）を定義して登録しておくことで不正通信を検知し遮断することができるシグニチャ型が用いられてきた。しかし、ＩｏＴデバイスが用いられる環境は、帯域幅の限られたネットワーク内であり、当該環境には高い可用性が求められる。したがって、ＩｏＴデバイスの台数が多くなるほど、定期的なシグニチャの更新パッチを適応することは困難である。
【０００６】
また、ＩｏＴデバイスがＩｏＴゲートウェイを介して通信を行うシステムにおいて、ＩｏＴゲートウェイ上で不正通信の検知制御を行うアノマリ型のセキュリティソフトウェアがある。アノマリ型とは、正常の通信を学習し、正常とは異なる通信を異常（アノマリ)として判定する手法であり、シグニチャのアップデートが必要なく、未知の攻撃手法にも対応できる手法である。具体的には、アノマリ型は、一般的にパケットから得ることができるネットワーク特徴量を取得することで正常な通信を定義し、正常通信の閾値を超えたものを異常とみなす。
【０００７】
したがって、正常な通信であっても通信速度や通信量が定義したネットワーク特徴量と比べて変化している場合、異常な通信と判定してしまうことがある。一方、ＩｏＴゲートウェイは、無線デバイスを搭載した複数のＩｏＴデバイス群に接続され、ＩｏＴデバイスから受信したデータを有線ネットワークまたは無線ネットワークを介してサーバに転送する。一般的に、有線ネットワークの通信品質（帯域幅やパケットロス率）は安定しているが、無線ネットワークの通信品質は周辺のノイズ（工場の大型モータの駆動）によって安定しておらず、常に変動していることが知られている。この性質から正常な通信のネットワーク特徴量は、定義時のネットワーク特徴量と比べ無線環境の影響を受けて変化するため、正常な通信を異常な通信と誤判定する可能性が増加してしまうことがある。
【０００８】
特許文献１は、攻撃サーバからＩｏＴ機器への侵入を防ぐ検知システムを開示する。この検知システムは、ＧＷ装置と、ＧＷ装置を介しネットワークに接続して使用するセンサ端末とを備える。検知システムでは、ＧＷ装置が、センサ端末のセンサ動作ログを取得するステップと、ＧＷ装置が、センサ動作ログと、センサ端末に関連する通信のパケットヘッダ情報とを用いて、センサ端末に関連する通信に異常があるか否かを判定するステップと、センサ端末に関連する通信に異常があると判定した場合、ＧＷ装置が、センサ端末と外部ネットワークとの間の送受信処理を停止するステップとが実行される。
【０００９】
特許文献２は、ＩＴネットワークおよびＯＴネットワークそれぞれの監視を行う監視装置を開示する。この監視装置は、ＩＴネットワークおよびＯＴネットワークの両方から各ネットワークで送受信されたパケットの通信ログをファイアウォールから取得する。そして、監視装置は、取得された通信ログからパケットの宛先数、パケットのデータサイズであるパケットサイズおよびダウンロードのデータサイズとアップロードのデータサイズとの比率のうち、いずれか一つまたは複数に基づいて、通信ログがＩＴネットワークの通信ログであるのかＯＴネットワークの通信ログであるのかを判定する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１７−８４２９６号公報
【特許文献２】特開２０１８−７１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献１の検知システムでは、ＩｏＴゲートウェイを介するセンサ端末と外部ネットワーク間の通信が、短い間隔で連続的にデータを送信する通信や、常にデータを送信し続けている通信である場合、ＩｏＴゲートウェイが管理するセンサ端末の休止状態の期間が短くなる。無線環境の影響によって正常な通信の通信間隔が延長された場合、ＩｏＴゲートウェイがその通信の送受信処理を停止する。これにより、ＩｏＴゲートウェイはセンシングデータを欠落させてしまう。これにより、有効なデータ活用ができなくなるといったリスクがある。
【００１２】
また、特許文献１の検知システムでは、センサ端末とサーバ間の通信が、短い間隔で連続的にデータを送信する特徴を有する場合、ＩｏＴデバイスの管理するセンサ端末の動作状態と休止状態の期間が短くなる。このとき、無線環境の影響によってセンサ端末とサーバ間の通信時間が延長したり、パケットロスに伴う再送パケット数が増加したりする。これにより、ＩｏＴデバイスがセンサ端末の状態を休止状態であると管理している期間中に、センサ端末とサーバ間の正常な通信が継続して行われ、異常な通信と誤判定される可能性がある。
【００１３】
また、特許文献２の監視装置では、ＯＴネットワーク内のある特定の通信において、無線環境の影響によりパケットの通信頻度や通信間隔が変化する。したがって、監視装置があらかじめ学習しているＯＴネットワークにおける各通信の特徴量を１つでも超えてしまうと、監視装置は異常と誤判定してしまい、アラームを発報する。このため、調査に必要な人の作業が増加する。また、異常と判定しても通信が遮断されないため、アラームの原因調査中に感染が拡大するといったリスクがある。
【００１４】
また、特許文献２の監視装置は、ファイアウォールを介するＯＴネットワークと外部ネットワーク上のサーバの通信に対して、監視装置があらかじめ学習した通信の特徴量（パケットサイズ、パケットの通信頻度、パケットの通信間隔）とファイアウォールから送られてくる通信ログを比較し、比較対象の通信の特徴量が１つでも学習した値の範囲外であった場合に異常な通信と判定する。
【００１５】
監視装置があらかじめ学習した通信の特徴量には、マージンが設けられており、対象の通信の揺らぎに対応できるため、有線環境や通信品質がある程度安定している無線環境では有効である。しかし、無線環境の通信品質の変化が大きい環境では、帯域幅の減少によってパケットの通信頻度の低下や通信間隔の増加を招く場合がある。また、パケットロスによる再送率の増加に伴い総受信パケット数の増加が複合的に発生する環境では、監視装置は、正常な通信を誤判定する可能性が増加する。
【００１６】
本発明は、学習結果を用いた場合の誤判定率の低減化を図ることを目的とする。
【課題を解決するための手段】
【００１７】
本願において開示される発明の一側面となる不正通信検知装置は、運用データを送信元から受信する受信部と、前記受信部によって受信された運用データを宛先に送信する送信部と、学習データ群の特徴量に関する複数の学習モデルの中の特定の学習モデルの適用範囲を拡張するパラメータと、前記受信部によって受信された運用データの複数の特徴量のうち前記特定の学習モデルに対応する特定の特徴量と、に基づいて、前記運用データが不正通信であるか否かを判定するスコアを算出する判定式を修正する修正値を取得する取得部と、前記複数の学習モデルと前記複数の特徴量と前記取得部によって取得された修正値とに基づいて、前記判定式で前記スコアを算出し、当該算出されたスコアに基づいて、不正通信であるか否かを判定する判定部と、前記判定部による判定結果に基づいて、前記送信部による前記運用データの送信を制御する送信制御部と、を有することを特徴とする。
【発明の効果】
【００１８】
本発明の代表的な実施の形態によれば、学習結果を用いた場合の誤判定率の低減化を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１９】
【図１】図１は、ＩｏＴシステムのシステム構成例を示す説明図である。
【図２】図２は、ＩｏＴゲートウェイのハードウェア構成例を示すブロック図である。
【図３】図３は、ＩｏＴゲートウェイによる学習および運用処理手順例を示すフローチャートである。
【図４】図４は、ＩｏＴゲートウェイの機能的構成例を示すブロック図である。
【図５】図５は、ネットワーク特徴量を示す説明図である。
【図６】図６は、第１設定ファイルの一例を示す説明図である。
【図７】図７は、第２設定ファイルの一例を示す説明図である。
【図８】図８は、通信中情報テーブルのデータ構造例を示す説明図である。
【図９】図９は、学習モデルＤＢのデータ構造例を示す説明図である。
【図１０】図１０は、学習モデルの一例を示す説明図である。
【図１１】図１１は、判定部における学習モデルと運用パケットから生成された第１通信中情報との比較条件の一例を示す説明図である。
【図１２】図１２は、ＩｏＴゲートウェイの学習時におけるパケット処理シーケンス例を示すシーケンス図である。
【図１３】図１３は、ＩｏＴゲートウェイの運用時におけるパケット処理シーケンス例を示すシーケンス図である。
【図１４】図１４は、図１３に示した通信判定処理（ステップＳ１３０２）の詳細な処理手順例を示すフローチャートである。
【図１５】図１５は、第３設定ファイルの一例を示す説明図である。
【図１６】図１６は、図１５に示した第３設定ファイルに基づく揺らぎの範囲を示すグラフである。
【図１７】図１７は、第４設定ファイルの一例を示す説明図である。
【発明を実施するための形態】
【００２０】
＜ＩｏＴシステム構成例＞
図１は、ＩｏＴシステムのシステム構成例を示す説明図である。ＩｏＴシステム１００は、クラウドシステム１０１と、拠点システム１０２と、が無線ネットワーク１０３により通信可能に接続される。また、端末１０４は、クラウドシステム１０１と、拠点システム１０２と、が無線ネットワーク１０３により通信可能に接続される。
【００２１】
クラウドシステム１０１は、計算資源やアプリケーション、データ群などを、インターネットなどのネットワークを通じてサービスの形で必要に応じて利用可能な１以上のサーバ１１１である。サーバ１１１は、ＩｏＴゲートウェイ１２０を介してＩｏＴデバイス１２１とパケットを送受信する。
【００２２】
拠点システム１０２の各々は、ＩｏＴゲートウェイ１２０と１以上のＩｏＴデバイス１２１とを有する。拠点システム１０２は、たとえば、工場やオフィス、公共施設、一般家庭のような拠点に設置される。ＩｏＴゲートウェイ１２０は、サーバ１１１や端末１０４とＩｏＴデバイス１２１との間の不正通信を検知する不正通信検知装置である。ＩｏＴデバイス１２１は、有線または無線のネットワーク１２２を介して、ＩｏＴゲートウェイ１２０を介してデータをサーバ１１１や端末１０４に送信したり、サーバ１１１や端末１０４からデータを受信したりするデバイスであり、たとえば、監視カメラ、ロボット、温度や湿度、降水量などの環境に関する値を計測するセンサ、エレベータがある。
【００２３】
端末１０４は、パーソナルコンピュータやスマートフォン、タブレットのようなコンピュータである。たとえば、端末１０４は、ＩｏＴゲートウェイ１２０を介してＩｏＴデバイス１２１で検出されたデータを受信して表示することができる。
【００２４】
＜ＩｏＴゲートウェイ１２０のハードウェア構成例＞
図２は、ＩｏＴゲートウェイ１２０のハードウェア構成例を示すブロック図である。ＩｏＴゲートウェイ１２０は、プロセッサ２０１と、記憶デバイス２０２と、電源入力口２０３と、電源ブロック２０４と、バッテリ２０５と、長距離無線モジュール２０６と、Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ（ＳＩＭ）カードスロット２０７と、長距離無線Ｉｎｔｅｒｆａｃｅ（ＩＦ）２０８と、短距離無線モジュール２０９と、短距離無線ＩＦ２１０と、有線ＩＦ２１１と、を有する。
【００２５】
プロセッサ２０１は、ＩｏＴゲートウェイ１２０を制御する。記憶デバイス２０２は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）２２１、フラッシュメモリ２２２と、を含む。ＲＡＭ２２１は、プロセッサ２０１の作業エリアとなる。フラッシュメモリ２２２は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。電源入力口２０３は、商用電源に接続されるコネクタである。電源ブロック２０４は、商用電源からの電力を他のモジュールに供給したり、バッテリ２０５に対し充放電する。
【００２６】
長距離無線モジュール２０６は、３Ｇ，Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）などの４Ｇ，Ｗｉｒｅｌｅｓｓ  Ｓｍａｒｔ  Ｕｔｉｌｉｔｙ  Ｎｅｔｗｏｒｋ（Ｗｉ−ＳＵＮ）などのＬｏｗ  Ｐｏｗｅｒ  Ｗｉｄｅ  Ａｒｅａ（ＬＰＷＡ），５Ｇのような長距離無線通信を制御するモジュールである。ＳＩＭカードスロット２０７は、ＳＩＭカードが挿抜自在なスロットである。ＳＩＭカードは、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｍｏｂｉｌｅ  Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ（ＩＭＳＩ）と呼ばれる固有の番号が記憶されたメモリカードである。長距離無線モジュール２０６は、ＩＭＳＩが認識された状態で通信可能となる。長距離無線ＩＦ２０８は、長距離無線モジュール２０６がデータを送受信するインタフェースである。
【００２７】
短距離無線モジュール２０９は、ブルートゥース（登録商標）やＷｉＦｉのような短距離無線通信を制御するモジュールである。短距離無線ＩＦ２１０は、短距離無線モジュール２０９がデータを送受信するインタフェースである。有線ＩＦ２１１は、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＬＡＮ）ケーブルやモジュラーケーブルを接続するコネクタである。
【００２８】
＜ＩｏＴゲートウェイ１２０による学習と運用＞
図３は、ＩｏＴゲートウェイ１２０による学習および運用処理手順例を示すフローチャートである。不正通信の検知遮断を行うソフトウェアを導入する際には、ネットワーク特徴量ごとの重みと、検知および遮断の各しきい値と、学習モデルの揺らぎ範囲と、スコア修正値と、を含む設定ファイルが作成され、記憶デバイス２０２に格納される。ＩｏＴゲートウェイ１２０は、記憶デバイス２０２から設定ファイルを読み込む（ステップＳ３０１）。
【００２９】
つぎに、ＩｏＴゲートウェイ１２０は、正常通信の学習期間において、ある一定期間の通信、またはある一定期間のパケットキャプチャファイルから正常通信を学習することで、学習モデルを構築する（ステップＳ３０２）。そして、ＩｏＴゲートウェイ１２０は、不正通信検知遮断の運用期間において、学習モデルと受信したパケットのネットワーク特徴量とを比較することで不正通信の検知遮断を行う（ステップＳ３０３）。また、ステップＳ３０３では、ＩｏＴゲートウェイ１２０は、運用後も正常とみなされたパケットを随時学習モデルに反映する。
【００３０】
＜ＩｏＴゲートウェイ１２０の機能的構成例＞
図４は、ＩｏＴゲートウェイ１２０の機能的構成例を示すブロック図である。ＩｏＴゲートウェイ１２０は、第１ＩＦ４０１と、第２ＩＦ４０２と、受信部４０３と、第１生成部４０５と、第２生成部４０６と、判定部４０７と、通知部４０８と、送信制御部４０９と、送信部４０４と、設定ファイル４１０と、通信中情報テーブル４１１と、学習モデルＤＢ４１２と、を有する。
【００３１】
第１ＩＦ４０１は、サーバ１１１、端末１０４、ＩｏＴデバイス１２１からのパケットがＩｏＴゲートウェイ１２０内部に入力されるインタフェースである。第１ＩＦ４０１は、具体的には、たとえば、図２に示した長距離無線ＩＦ２０８、短距離無線ＩＦ２１０、または有線ＩＦ２１１により実現される。
【００３２】
第２ＩＦ４０２は、ＩｏＴゲートウェイ１２０からのパケットがサーバ１１１、端末１０４、ＩｏＴデバイス１２１に出力されるインタフェースである。第２ＩＦ４０２は、具体的には、たとえば、図２に示した長距離無線ＩＦ２０８、短距離無線ＩＦ２１０、または有線ＩＦ２１１により実現される。
【００３３】
第１ＩＦ４０１で入力されるパケットおよび第２ＩＦ４０２から出力されるパケットには、２種類ある。１つは、図３のステップＳ３０２の学習に使用されるパケットであり、もう１つは、運用に使用されるパケットである。以降、学習に使用されるパケットを学習パケットと称し、運用に使用されるパケットを運用パケットと称する場合がある。なお、学習および運用の区別をしない場合には、単にパケットと表記する。
【００３４】
受信部４０３は、第１ＩＦ４０１からのパケットを受信して、送信制御部４０９に転送する。また、受信部４０３は、第１ＩＦ４０１からのパケットを複製して、第１生成部４０５に転送する。受信部４０３は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより、または、長距離無線モジュール２０６や短距離無線モジュール２０９により実現される。
【００３５】
送信部４０４は、送信制御部４０９から転送されてきたパケットを第２ＩＦ４０２から宛先に送信する。受信部４０３は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより、または、長距離無線モジュール２０６や短距離無線モジュール２０９により実現される。
【００３６】
第１生成部４０５は、受信部４０３で複製されたパケットから通信中情報を生成し、通信中情報テーブル４１１に格納する。通信中情報とは、パケットの通信中の累積した特徴量に関する情報であり、詳細は図８で後述する。第１生成部４０５は、通信セッションごとに、通信セッション中のパケット群のネットワーク特徴量を用いて通信中情報を生成する。なお、学習パケットを用いて生成された通信中情報を第２通信中情報と称し、運用パケットを用いて生成された通信中情報を第１通信中情報と称す。なお、学習および運用の区別をしない場合には、単に通信中情報と表記する。第１生成部４０５は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００３７】
第２生成部４０６は、通信中情報テーブル４１１を参照して、学習データ群のネットワーク特徴量に関する学習モデルを学習結果として生成し、学習モデルＤＢ４１２に格納する。第２生成部４０６は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００３８】
取得部４２０は、設定ファイル４１０内の学習モデルの揺らぎ範囲と学習モデルＤＢ内の学習モデルとに基づいて、スコア修正値（ｒｐ，ｒｔ）を取得する。ｒｐは、第１通信中情報Ｃ８−３（累積パケットサイズ）の重みｗ８−３に割り当てられるスコア修正値である。ｒｔは、第１通信中情報Ｃ１１（通信時間）の重みｗ１１に割り当てられるスコア修正値である。スコア修正値（ｒｐ，ｒｔ）は、無線環境であるサーバ１１１とＩｏＴゲートウェイ１２０との間の無線ネットワーク１０３の影響を考慮した学習モデルＬｎの揺らぎ範囲に対応する。
【００３９】
取得部４２０は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００４０】
判定部４０７は、学習モデルに基づき運用パケットが不正通信であるか否かを判定するスコアを算出する判定式で、運用パケットのスコアを算出し、当該算出されたスコアに基づいて、当該運用パケットが不正通信であるか否かを判定する。判定式は、下記式（１）により表現される。
【００４１】
【数１】
2020135816.tif 000003
【００４２】
上記式（１）中、ｎは１以上の整数である。ただし、枝番を有する場合もある。ｘｎは、ｎ番目の学習モデルＬｎと、ｎ番目の第１通信中情報Ｃｎと、を比較した場合の真偽値である。Ｓ（ｎ）はスコアである。本実施例では、スコアＳ（ｎ）が高いほど正常と判定されやすくなるため、ｘｎの真値は偽値よりも高い値である。本例では、真値を「１」、偽値を「０」とする。ｗｎは、ネットワーク特徴量に設定された重みである。重みｗｎは設定ファイル４１０により設定される。
【００４３】
また、判定部４０７は、上記式（１）の判定式で算出されたスコアＳ（ｎ）を、下記式（２）〜（４）の条件式に適用することにより、スコアＳ（ｎ）の算出元の運用パケットが不正通信であるか否かを判定する。
【００４４】
【数２】
2020135816.tif 000004
【００４５】
上記式（２）〜（４）において、αは検知しきい値であり、β（＜α）は遮断しきい値である。式（２）は正常判定条件式、式（３）は検知判定条件式、式（４）は遮断判定条件式である。すなわち、式（２）において、スコアＳ（ｎ）がα以上であれば、その運用パケットは正常通信であることを示す。式（３）において、スコアＳ（ｎ）がβ以上α未満であれば、その運用パケットは不正通信の可能性が高いため検知されるべきであることを示す。式（４）において、スコアＳ（ｎ）がβ未満であれば、その運用パケットは不正通信であるため、遮断されるべきであることを示す。
【００４６】
判定部４０７は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００４７】
通知部４０８は、判定部４０７によって検知または遮断と判定された場合、すなわち、スコアＳ（ｎ）が検知判定条件式（式（３））または遮断判定条件式（式（４））を充足する場合、その旨を外部装置またはＩｏＴゲートウェイ１２０のモニタ（不図示）に通知する。これにより、ユーザは、不正通信またはその可能性があったことを確認することができる。通知部４０８は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００４８】
送信制御部４０９は、判定部４０７による判定結果に基づいて、送信部４０４による運用パケットの送信を制御する。具体的には、たとえば、送信制御部４０９は、スコアＳ（ｎ）が遮断判定条件式（式（４））を充足する場合、運用パケットを送信部４０４に転送せずに廃棄する。これにより、運用パケットの不正送信がＩｏＴゲートウェイ１２０に遮断される。なお、送信制御部４０９は、スコアＳ（ｎ）が正常判定条件式（式（２））または検知判定条件式（式（３））を充足する場合、運用パケットを送信部４０４に転送する。送信制御部４０９は、具体的には、たとえば、記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００４９】
設定ファイル４１０は、ネットワーク特徴量に対応する重みｗｎ、検知しきい値α、遮断しきい値β（＜α）、正常判定条件式（式（２））、検知判定条件式（式（３））、遮断判定条件式（式（４））を規定したファイルであり、判定部４０７が読み込む。
【００５０】
＜ネットワーク特徴量＞
図５は、ネットワーク特徴量を示す説明図である。ネットワーク特徴量Ｆｎは、第１生成部４０５が、受信部４０３で複製されたパケットから抽出した特徴量である。本例では、たとえば、図５に示した１１個のネットワーク特徴量Ｆｎが抽出される。
【００５１】
項番ｎ＝１〜８のネットワーク特徴量Ｆ１〜Ｆ８は、パケット自体から取得された特徴量である。項番ｎ＝９〜１１のネットワーク特徴量Ｆ９〜Ｆ１１は、通信セッションごとに算出される特徴量である。ネットワーク特徴量Ｆ９である受信開始時刻は、通信セッションが開始した時刻であり、秒単位までの細かさでは記録せず、時間ごとに記録するなど幅をもつものとする。たとえば、ある通信セッションについて９時５分に最初のパケットを受信した場合、受信開始時刻は、単に、「９時」とする。なお、ネットワーク特徴量Ｆ１０の計算でその通信セッションで最初にパケットを受信した時刻が用いられるため、第１生成部４０５は、「９時５分３７秒」のように秒単位まで保持しておく。
【００５２】
ネットワーク特徴量Ｆ１０である秒間受信パケット数（ｐｐｓ）は、その通信セッション中の各秒において受信したパケット数である。ネットワーク特徴量Ｆ１１である通信時間は、通信セッションの開始から終了までの時間（ｍｓｅｃ）である。たとえば、通信セッションの開始が「９時５分３７秒」、終了が「９時８分４３秒」である場合、通信時間は、「１８６秒」となる。
【００５３】
＜設定ファイル４１０＞
図６は、第１設定ファイルの一例を示す説明図である。第１設定ファイル６００は、ネットワーク特徴量Ｆｎごとに重みｗｎを有する。重みｗｎの値は、ユーザが任意に設定可能である。したがって、新規のＩｏＴデバイス１２１が追加されたり、通信量が変化したりするようなＩｏＴシステム１００の場合、送信元ＩＰアドレスの変化を許容するなど、ネットワーク特徴量Ｆｎごとに細かな設定が可能となる。なお、上記式（１）の判定式で、真偽値ｘｎの項番ｎに枝番が含まれる場合には、各枝番に同一の重みｗｎが用いられる。たとえば、項番ｎ＝８−３の場合、重みｗｎの値が、重みｗ８−１、ｗ８−２、ｗ８−３の値に適用される。第１設定ファイル６００は、具体的には、たとえば、フラッシュメモリ２２２に格納され、判定部４０７に読み込まれる。
【００５４】
図７は、第２設定ファイルの一例を示す説明図である。第２設定ファイル７００は、判定結果７０１としきい値７０２とを対応付けたファイルである。判定結果７０１が「正常」であるしきい値７０２は「８０以上」であり、当該エントリは、正常判定条件式（式（２））に対応する。判定結果７０１が「検知」であるしきい値７０２は「２０〜７９」であり、当該エントリは、検知判定条件式（式（３））に対応する。判定結果７０１が「遮断」であるしきい値７０２は「２０未満」であり、当該エントリは、遮断判定条件式（式（４））に対応する。
【００５５】
検知しきい値α、および遮断しきい値β（＜α）は、ユーザが任意に設定可能である。したがって、新規のＩｏＴデバイス１２１が追加されたり、通信量が変化したりするようなＩｏＴシステム１００の場合、送信元ＩＰアドレスの変化を許容するなど、ネットワーク特徴量Ｆｎごとに細かな設定が可能となる。第２設定ファイル７００は、具体的には、たとえば、フラッシュメモリ２２２に格納され、判定部４０７に読み込まれる。
【００５６】
図１５は、第３設定ファイルの一例を示す説明図である。第３設定ファイル１５００は、判定部４０７による不正通信判定処理において、無線環境の影響による特定の通信中情報（後述する図８の累積パケットサイズＣ８−３、通信時間Ｃ１１）の揺らぎを考慮して判定をするため、学習モデルの値に揺らぎを許容する範囲を規定する。具体的には、たとえば、第３設定ファイル１５００は、揺らぎを考慮した学習モデル１５０１と、揺らぎの度合い１５０２、とを対応付けたファイルである。揺らぎを考慮した学習モデル１５０１の値Ｌ８−３，Ｌ８−４，Ｌ１１−１，Ｌ１１−２は、後述する図９から設定された項目である。揺らぎの度合い１５０２の値「＋５％」、「−５％」、「＋１０％」、「−１０％」は、あらかじめ設定された値の一例であり、他の値でもよい。
【００５７】
図１６は、図１５に示した第３設定ファイル１５００に基づく揺らぎの範囲を示すグラフである。グラフ１６００の縦軸が累積パケットサイズ、横軸が通信時間である。縦軸において、Ｐｍａｘは、学習時の累積最大パケットサイズＬ８−３の値である。Ｐ´ｍａｘは、累積最大パケットサイズの上限値であり、累積最大パケットサイズＬ８−３の値を＋５％（１．０５倍）した値である。「＋５％」は、第３設定ファイル１５００において累積最大パケットサイズＬ８−３に対応する揺らぎの度合い１５０２の値である。
【００５８】
Ｐｍｉｎは、学習時の累積最小パケットサイズＬ８−４の値である。Ｐ´ｍｉｎは、累積最小パケットサイズの下限値であり、累積最小パケットサイズＬ８−４の値を−５％（０．９５倍）した値である。「−５％」は、第３設定ファイル１５００において累積最大パケットサイズＬ８−４に対応する揺らぎの度合い１５０２の値である。
【００５９】
横軸において、Ｔｍａｘは、学習時の最大通信時間Ｌ１１−１の値である。Ｔ´ｍａｘは、最大通信時間の上限値であり、最大通信時間Ｌ１１−１の値を＋１０％（１．１０倍）した値である。「＋１０％」は、第３設定ファイル１５００において最大通信時間Ｌ１１−１に対応する揺らぎの度合い１５０２の値である。
【００６０】
Ｔｍｉｎは、学習時の最小通信時間Ｌ１１−２の値である。Ｔ´ｍｉｎは、最小通信時間の下限値であり、最小通信時間Ｌ１１−２の値を−１０％（０．９０倍）した値である。「−１０％」は、第３設定ファイル１５００において最小通信時間Ｌ１１−２に対応する揺らぎの度合い１５０２の値である。
【００６１】
Ｐｍａｘ、Ｐ´ｍａｘ、Ｐｍｉｎ、Ｐ´ｍｉｎ、Ｔｍａｘ、Ｔ´ｍａｘ、Ｔｍｉｎ、およびＴ´ｍｉｎで９分割された各領域をブロックＢ１〜Ｂ９と称す。ブロックＢ５は、第３設定ファイル１５００を考慮しない場合の学習モデルＬ８−３，Ｌ８−４，Ｌ１１−１，Ｌ１１−２の範囲である。第３設定ファイル１５００は、具体的には、たとえば、フラッシュメモリ２２２に格納され、判定部４０７に読み込まれる。
【００６２】
図１７は、第４設定ファイルの一例を示す説明図である。第４設定ファイル１７００は、後述する図８の第１通信中情報Ｃｎのうち累積パケットサイズＣ８−３の値Ｐ８−３と、通信時間Ｃ１１の値Ｔ１１と、により特定されるスコア修正値（ｒｐ，ｒｔ）をブロックＢ１〜Ｂ９ごとに保持する。第４設定ファイル１７００は、具体的には、たとえば、フラッシュメモリ２２２に格納され、判定部４０７に読み込まれる。
【００６３】
＜通信中情報テーブル４１１＞
図８は、通信中情報テーブル４１１のデータ構造例を示す説明図である。通信中情報テーブル４１１は通信中情報を格納するテーブルである。通信中情報テーブル４１１は、具体的には、たとえば、フラッシュメモリ２２２に格納される。通信中情報テーブル４１１は、学習および運用を問わず、通信セッションごとに第１生成部４０５によって生成される。
【００６４】
通信中情報Ｃｎは、ネットワーク特徴量Ｆｎに対応する。ただし、通信中情報Ｃｎは、ネットワーク特徴量Ｆｎをより詳細に規定するため、１つのネットワーク特徴量Ｆｎに対し複数の通信中情報Ｃｎが規定される場合がある。この場合、通信中情報Ｃｎの末尾に枝番を付して区別する。
【００６５】
通信中情報Ｃ１〜Ｃ７は、受信したパケットのヘッダから抽出される。その通信セッション中に既抽出の通信中情報Ｃ１〜Ｃ７の値とは異なる値が抽出された場合には、追加される。たとえば、ある通信セッションにおいてあるパケットから宛先ＩＰアドレス「１０．１０.１０．１」が抽出された場合、通信中情報Ｃ１として保持され、その後、同一通信セッションで受信された後続パケットの宛先ＩＰアドレスが「１０．１０.１０．２」である場合、「１０．１０.１０．２」も通信中情報Ｃ１として保持される。
【００６６】
通信中情報Ｃ８−１（最大パケットサイズ）、通信中情報Ｃ８−２（最小パケットサイズ）、および通信中情報Ｃ８−３（累積パケットサイズ）は、ネットワーク特徴量Ｆ８（パケットデータサイズ）から生成される。
【００６７】
通信中情報Ｃ８−１（最大パケットサイズ）は、その通信セッションにおいてパケットの受信開始から現時点までのパケット群の中の最大パケットサイズである。したがって、パケットが受信される都度、現時点の最大パケットサイズと今回の受信パケットのパケットサイズとが比較され、最大パケットサイズを上回った場合に、通信中情報Ｃ８−１（最大パケットサイズ）は、リアルタイムで今回の受信パケットのパケットサイズに更新される。
【００６８】
通信中情報Ｃ８−２（最小パケットサイズ）は、その通信セッションにおいてパケットの受信開始から現時点までのパケット群の中の最小パケットサイズである。したがって、パケットが受信される都度、現時点の最小パケットサイズと今回の受信パケットのパケットサイズとが比較され、最小パケットサイズを下回った場合に、通信中情報Ｃ８−２（最小パケットサイズ）は、リアルタイムで今回の受信パケットのパケットサイズに更新される。
【００６９】
通信中情報Ｃ８−３（累積パケットサイズ）は、その通信セッションにおいてパケットの受信開始から現時点までのパケット群のパケットサイズを累積した現時点におけるパケットサイズである。したがって、パケットが受信される都度、通信中情報Ｃ８−３（累積パケットサイズ）はリアルタイムに更新される。
【００７０】
通信中情報Ｃ９である受信開始時刻は、ネットワーク特徴量Ｆ９と同様、通信セッションが開始した時刻であり、秒単位までの細かさでは記録せず、時間ごとに記録するなど幅をもつものとする。たとえば、ある通信セッションについて９時５分に最初のパケットを受信した場合、受信開始時刻は、単に、「９時」とする。
【００７１】
通信中情報Ｃ１０−１（最大受信秒間パケット数）、および通信中情報Ｃ１０−２（最小受信秒間パケット数）は、ネットワーク特徴量Ｆ１０である秒間受信パケット数（ｐｐｓ）から生成される。
【００７２】
通信中情報Ｃ１０−１（最大受信秒間パケット数）は、その通信セッションにおいてパケットの受信開始から現時点までの各秒で計測された秒間パケット数の最大値である。したがって、通信セッション中に秒単位で時間が進行する都度、現時点の最大受信秒間パケット数と今回の受信秒間パケット数とが比較され、最大受信秒間パケット数を上回った場合に、通信中情報Ｃ１０−１（最大受信秒間パケット数）は、リアルタイムで今回の受信秒間パケット数に更新される。
【００７３】
通信中情報Ｃ１０−２（最小受信秒間パケット数）は、その通信セッションにおいてパケットの受信開始から現時点までの各秒で計測された秒間パケット数の最小値である。したがって、通信セッション中に秒単位で時間が進行する都度、現時点の最小受信秒間パケット数と今回の受信秒間パケット数とが比較され、最小受信秒間パケット数を下回った場合に、通信中情報Ｃ１０−２（最小受信秒間パケット数）は、リアルタイムで今回の受信秒間パケット数に更新される。
【００７４】
通信中情報Ｃ１１である通信時間は、ネットワーク特徴量Ｆ１１と同様、通信セッションの開始から終了までの時間（ｍｓｅｃ）である。たとえば、通信セッションの開始が「９時５分３７秒」、終了が「９時８分４３秒」である場合、通信時間は、「１８６秒」となる。
【００７５】
＜学習モデルＤＢ４１２＞
図９は、学習モデルＤＢ４１２のデータ構造例を示す説明図であり、図１０は、学習モデルＬｎの一例を示す説明図である。学習モデルＤＢ４１２は、ネットワーク特徴量Ｆ１〜Ｆ１１に対応する学習モデルＬ１〜Ｌ１１−２をリスト化したデータベースである。学習モデルＤＢ４１２は、学習期間中に生成された通信中情報Ｃｎ、すなわち、学習期間中の全通信セッションにより第２生成部４０６によって生成される。学習モデルＤＢ４１２は、具体的には、たとえば、フラッシュメモリ２２２に格納される。
【００７６】
学習モデルＬｎは、ネットワーク特徴量Ｆｎに対応する。ただし、学習モデルＬｎは、通信中情報Ｃｎと同様、ネットワーク特徴量Ｆｎをより詳細に規定するため、１つのネットワーク特徴量Ｆｎに対し複数の学習モデルＬｎが規定される場合がある。この場合、学習モデルＬｎの末尾に枝番を付して区別する。
【００７７】
学習モデルＬ１〜Ｌ７はそれぞれ、学習期間中に生成された各通信セッションの通信中情報Ｃ１〜Ｃ７の各々の和集合として生成される。たとえば、ある通信セッションの通信中情報Ｃ１である宛先ＩＰアドレスが「１０．１０.１０．１」であり、同一学習期間中の他の通信セッションの通信中情報Ｃ１である宛先ＩＰアドレスが「１０．１０.１０．２」である場合、学習モデルＬ１は、「１０．１０.１０．１」および「１０．１０.１０．２」となる。
【００７８】
学習モデルＬ８−１（最大パケットサイズ）、学習モデルＬ８−２（最小パケットサイズ）、学習モデルＬ８−３（累積最大パケットサイズ）、および学習モデルＬ８−４（累積最小パケットサイズ）は、通信中情報Ｃ８−１〜Ｃ８−３から生成される。
【００７９】
学習モデルＬ８−１（最大パケットサイズ）は、学習期間中の各通信セッションの通信中情報Ｃ８−１である最大パケットサイズの中の最大値となる。学習モデルＬ８−２（最小パケットサイズ）は、学習期間中の各通信セッションの通信中情報Ｃ８−２である最小パケットサイズの中の最小値となる。学習モデルＬ８−３（累積最大パケットサイズ）は、学習期間中の各通信セッションの通信中情報Ｃ８−３である累積パケットサイズの中の最大値となる。学習モデルＬ８−４（累積最小パケットサイズ）は、学習期間中の各通信セッションの通信中情報Ｃ８−３である累積パケットサイズの中の最小値となる。
【００８０】
学習モデルＬ９（受信開始時刻）は、学習期間中の各通信セッションの通信中情報Ｃ９である受信開始時刻のうち、最古の受信開始時刻となる。たとえば、ある通信セッションの最初のパケットを９時５０分に受信し、その通信セッションが１０時１０分まで継続した場合、学習モデルＬ９(受信開始時刻)は９時となる。
【００８１】
学習モデルＬ１０−１（最大受信秒間パケット数）は、学習期間中の各通信セッションの通信中情報Ｃ１０−１である最大受信秒間パケット数の中の最大値となる。学習モデルＬ１０−２（最小受信秒間パケット数）は、学習期間中の各通信セッションの通信中情報Ｃ１０−２である最小受信秒間パケット数の中の最小値となる。
【００８２】
学習モデルＬ１１−１（最大通信時間）、および学習モデルＬ１１−２（最小通信時間）は、通信中情報Ｃ１１から生成される。学習モデルＬ１１−１（最大通信時間）は、学習期間中の各通信セッションの通信中情報Ｃ１１である通信時間の中の最大値となる。学習モデルＬ１１−２（最小通信時間）は、学習期間中の各通信セッションの通信中情報Ｃ１１である通信時間の中の最小値となる。
【００８３】
＜学習モデルＬｎと第１通信中情報Ｃｎとの比較例＞
図１１は、判定部４０７における学習モデルＬｎと運用パケットから生成された第１通信中情報Ｃｎとの比較条件の一例を示す説明図である。判定部４０７は、第１通信中情報Ｃ１〜Ｃ７、Ｃ９の各々について、対応する学習モデルＬ１〜Ｌ７、Ｌ９内に一致する値があるか否かを判定する。具体的には、たとえば、学習モデルＬ１（宛先ＩＰアドレス）の値が「１０．１０.１０．１」および「１０．１０.１０．２」であり、第１通信中情報Ｃ１（宛先ＩＰアドレス）の値が「１０．１０.１０．１」である場合、判定部４０７は、一致する値「１０．１０.１０．１」が学習モデルＬ１に存在すると判定する。
【００８４】
また、判定部４０７は、学習モデルＬ８−１、Ｌ８−３、Ｌ１０−１、およびＬ１１−１の各々の値が、対応する第１通信中情報Ｃ８−１、Ｃ８−３、Ｃ１０−１、およびＣ１１の値よりも大きいか否かを判定する。具体的には、たとえば、学習モデルＬ８−１（最大パケットデータサイズ）の値が「１５００［ｂｙｔｅ］」であり、第１通信中情報Ｃ８−１（最大パケットデータサイズ）の値が「１４００［ｂｙｔｅ］」である場合、判定部４０７は、学習モデルＬ８−１（最大パケットデータサイズ）の値「１５００［ｂｙｔｅ］」が、第１通信中情報Ｃ８−１（最大パケットデータサイズ）の値「１４００［ｂｙｔｅ］」よりも大きいと判定する。
【００８５】
また、判定部４０７は、学習モデルＬ８−２、Ｌ８−４、Ｌ１０−２、およびＬ１１−２の各々の値が、対応する第１通信中情報Ｃ８−２、Ｃ８−４、Ｃ１０−２、およびＣ１１の値よりも小さいか否かを判定する。具体的には、たとえば、学習モデルＬ８−２（最小パケットデータサイズ）の値が「６０［ｂｙｔｅ］」であり、第１通信中情報Ｃ８−１（最大パケットデータサイズ）の値が「７０［ｂｙｔｅ］」である場合、判定部４０７は、学習モデルＬ８−２（最小パケットデータサイズ）の値「６０［ｂｙｔｅ］」が、第１通信中情報Ｃ８−２（最小パケットデータサイズ）の値「７０［ｂｙｔｅ］」よりも小さいと判定する。
【００８６】
なお、充足した比較条件については、判定部４０７は、学習モデルＬｎと第１通信中情報Ｃｎとを比較した結果、充足した場合には上記式（１）の判定式の真偽値ｘｎの値をｘｎ＝１に設定し、充足しなかった比較条件については、上記式（１）の判定式の真偽値ｘｎの値をｘｎ＝０に設定する。
【００８７】
＜学習時のパケット処理シーケンス例＞
図１２は、ＩｏＴゲートウェイ１２０の学習時におけるパケット処理シーケンス例を示すシーケンス図である。なお、第１生成部４０５には、あらかじめ学習期間が設定されているものとする。学習期間中において、受信部４０３は、第１ＩＦ４０１からパケットを受信すると、送信制御部４０９を経由して、受信したパケットを送信部４０４に転送する（ステップＳ１２０１）。これにより、送信部４０４は、第２ＩＦ４０２を介してパケットを宛先に送信することができる。また、受信部４０３は、受信したパケットを複製して、複製パケットを第１生成部４０５に転送する（ステップＳ１２０２）。
【００８８】
第１生成部４０５は、複製パケットを受信すると、通信セッションごとに第２通信中情報を生成し、通信中情報テーブル４１１に格納する（ステップＳ１２０３）。第１生成部４０５は、あらかじめ設定された学習期間の終了を検知すると、学習期間終了通知を第２生成部４０６に送信する（ステップＳ１２０４）。
【００８９】
第２生成部４０６は、学習期間終了通知を受信すると、学習対象となる当該学習期間の第２通信中情報を通信中情報テーブル４１１から検索し（ステップＳ１２０５）、ヒットした第２通信中情報を取得する（ステップＳ１２０６）。そして、第２生成部４０６は、取得した第２通信中情報を用いて学習モデルＬｎを生成する（ステップＳ２１０７）。これにより、ＩｏＴゲートウェイ１２０は、ある学習期間における学習処理を終了する。
【００９０】
図１３は、ＩｏＴゲートウェイ１２０の運用時におけるパケット処理シーケンス例を示すシーケンス図である。運用期間中において、受信部４０３は、第１ＩＦ４０１からパケットを受信すると、送信制御部４０９を経由して、受信したパケットを送信部４０４に転送する（ステップＳ１２０１）。これにより、送信部４０４は、第２ＩＦ４０２を介してパケットを宛先に送信することができる。また、受信部４０３は、受信したパケットを複製して、複製パケットを第１生成部４０５に転送する（ステップＳ１２０２）。第１生成部４０５は、複製パケットを受信する都度、第１通信中情報を生成、更新し、通信中情報テーブル４１１に格納する（ステップＳ１３０１）。
【００９１】
判定部４０７は、パケットが受信部４０３から送信制御部４０９に転送される都度、換言すれば、第１通信中情報が生成、更新される都度、通信判定処理を実行する（ステップＳ１３０２）。通信判定処理（ステップＳ１３０２）では、判定部４０７は、通信判定処理（ステップＳ１３０２）の開始時に、学習モデルＤＢ４１２に対し学習モデルＬｎ取得要求を送り（ステップＳ１３２１）、学習モデルＤＢ４１２から学習モデルＬｎを取得する（ステップＳ１３２２）。ステップＳ１３２１、Ｓ１３２２は、通信セッションの開始時に実行されればよく、開始時以降は実行されない。
【００９２】
判定部４０７は、不正通信判定処理を実行する（ステップＳ１３２３）。不正通信判定処理（ステップＳ１３２３）は、学習モデルＬｎと最新の第１通信中情報とを比較して上記式（１）の判定式を計算することにより、今回受信したパケットが、正常通信のパケット、不正通信の可能性があるパケット、および、不正通信のパケットのいずれであるかを判定する処理である。不正通信判定処理（ステップＳ１３２３）の詳細な処理は、後述の図１４のステップＳ１４０１〜Ｓ１４０４に相当する。
【００９３】
不正通信判定処理（ステップＳ１３２３）において、今回受信したパケットが正常通信のパケットと判定された場合、パケットは送信制御部４０９で遮断されず、送信部４０４に転送される。また、判定部４０７は、最新の第１通信中情報に基づいて、学習モデルＬｎを更新する（ステップＳ１３２４）。更新対象となる学習モデルＬｎは、第１通信中情報Ｃｎと不一致な学習モデルＬｎである。たとえば、学習モデルＬ１〜Ｌ７，Ｌ９が充足されなかった場合、比較対象となった第１通信中情報Ｃ１〜Ｃ７，Ｃ９が、学習モデルＬ１〜Ｌ７，Ｌ９に追加される。
【００９４】
たとえば、学習モデルＬ１（宛先ＩＰアドレス）の値が「１０．１０.１０．１」および「１０．１０.１０．２」であり、第１通信中情報Ｃ１（宛先ＩＰアドレス）の値が「１０．１０.１０．３」である場合、判定部４０７は、不一致な第１通信中情報Ｃ１（宛先ＩＰアドレス）の値「１０．１０.１０．３」を、学習モデルＬ１（宛先ＩＰアドレス）に追加する。これにより、更新後の学習モデルＬ１（宛先ＩＰアドレス）の値は、「１０．１０.１０．１」「１０．１０.１０．２」および「１０．１０.１０．３」となる。
【００９５】
また、学習モデルＬ８−１〜Ｌ８−４，Ｌ１０−１〜Ｌ１１−２が充足されなかった場合、学習モデルＬ８−１〜Ｌ８−４，Ｌ１０−１〜Ｌ１１−２に、比較対象となった第１通信中情報Ｃ８−１〜Ｌ８−３，Ｃ１０−１〜Ｃ１１が上書きされる。
【００９６】
たとえば、学習モデルＬ８−１（最大パケットデータサイズ）の値が「１５００［ｂｙｔｅ］」であり、第１通信中情報Ｃ８−１（最大パケットデータサイズ）の値が「１６００［ｂｙｔｅ］」である場合、判定部４０７は、学習モデルＬ８−１（最大パケットデータサイズ）の値「１５００［ｂｙｔｅ］」を、充足しなかった第１通信中情報Ｃ８−１（最大パケットデータサイズ）の値「１６００［ｂｙｔｅ］」に上書きする。これにより、更新後の学習モデルＬ８−１（最大パケットデータサイズ）の値は、「１６００［ｂｙｔｅ］」となる。
【００９７】
また、不正通信判定処理（ステップＳ１３２３）において、今回受信したパケットが不正通信の可能性があるパケットと判定された場合、パケットは送信制御部４０９で遮断されず、送信部４０４に転送される。また、判定部４０７は、不正通信の可能性を検知したとして、不正通信の可能性の検知通知依頼を通知部４０８に送信する（ステップＳ１３２５）。通知部４０８は、当該検知依頼を受信すると、その旨を通知する（ステップＳ１３２７）。当該通知には、たとえば、パケットを特定可能な５タプル（宛先ＩＰアドレス（Ｆ１）、送信元ＩＰアドレス（Ｆ２）、プロトコル（Ｆ３）、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７））や受信時刻がある。また、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７）の代わりに、宛先ポート（Ｆ４）、送信元ポート（Ｆ５）であってもよい。これにより、どのパケットが不正通信の可能性のあるパケットで、それがどの時点で受信されたかをユーザは確認することができる。
【００９８】
また、不正通信判定処理（ステップＳ１３２３）において、今回受信したパケットが不正通信のパケットと判定された場合、判定部４０７は、当該パケットの遮断通知依頼を通知部４０８に送信する（ステップＳ１３２６）。通知部４０８は、当該遮断通知依頼を受信すると、その旨を通知する（ステップＳ１３２７）。当該通知には、たとえば、パケットを特定可能な５タプル（宛先ＩＰアドレス（Ｆ１）、送信元ＩＰアドレス（Ｆ２）、プロトコル（Ｆ３）、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７））や受信時刻がある。また、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７）の代わりに、宛先ポート（Ｆ４）、送信元ポート（Ｆ５）であってもよい。これにより、どのパケットが不正通信のパケットで、それがどの時点で受信されたかをユーザは確認することができる。
【００９９】
また、判定部４０７は、当該パケットの遮断依頼を送信制御部４０９に送信する（ステップＳ１３２８）。遮断依頼には、当該パケットのネットワーク特徴量Ｆｎが含まれる。遮断依頼に含まれるネットワーク特徴量Ｆｎとしては、たとえば、パケットを特定可能な５タプル（宛先ＩＰアドレス（Ｆ１）、送信元ＩＰアドレス（Ｆ２）、プロトコル（Ｆ３）、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７））や受信時刻がある。また、宛先ＭＡＣアドレス（Ｆ６）、送信元ＭＡＣアドレス（Ｆ７）の代わりに、宛先ポート（Ｆ４）、送信元ポート（Ｆ５）であってもよい。遮断依頼に含まれるネットワーク特徴量Ｆｎを遮断特徴量Ｆｓと称す。
【０１００】
送信制御部４０９は、遮断依頼を受信した場合に遮断特徴量Ｆｓを保持し、遮断依頼の受信時以降、受信部４０３からパケットが転送されてくる都度、遮断特徴量Ｆｓに該当するパケットを遮断、すなわち、送信部４０４に転送せずに廃棄する（ステップＳ１３２９）。不正通信判定処理（ステップＳ１３２３）と遮断処理（ステップＳ１３２９）とは非同期であるため、受信部４０３からのパケットは、遮断特徴量Ｆｓに該当しない限り、送信部４０４に転送される。したがって、パケット転送の効率化を図ることができる。
【０１０１】
また、送信制御部４０９は、遮断依頼を受信した場合に遮断特徴量Ｆｓを保持することで、後続のパケット群のうち遮断特徴量Ｆｓに該当するパケットについては、不正通信判定処理（ステップＳ１３２３）による不正通信である旨の判定結果を待たずに廃棄する。したがって、遮断処理（ステップＳ１３２９）の効率化を図ることができる。
【０１０２】
＜通信判定処理（ステップＳ１３０２）＞
図１４は、図１３に示した通信判定処理（ステップＳ１３０２）の詳細な処理手順例を示すフローチャートである。ＩｏＴゲートウェイ１２０は、学習モデルＬｎを取得した後（ステップＳ１３２２）、判定部４０７および取得部４２０により、図１３に示した不正通信判定処理（ステップＳ１３２３）として、ステップＳ１４０１〜Ｓ１４０７を実行する。
【０１０３】
具体的には、たとえば、ＩｏＴゲートウェイ１２０は、判定部４０７により、未選択の第１通信中情報Ｃｎを選択し（ステップＳ１４０１）、対応する学習モデルＬｎを選択する（ステップＳ１４０２）。そして、ＩｏＴゲートウェイ１２０は、判定部４０７により、図１１に示したように、選択した第１通信中情報Ｃｎと選択した学習モデルＬｎとを比較する（ステップＳ１４０３）。
【０１０４】
そして、充足した比較条件については、判定部４０７は、学習モデルＬｎと第１通信中情報Ｃｎとを比較した結果、充足した場合には上記式（１）の判定式の真偽値ｘｎの値をｘｎ＝１に設定し、充足しなかった比較条件については、上記式（１）の判定式の真偽値ｘｎの値をｘｎ＝０に設定する。
【０１０５】
ＩｏＴゲートウェイ１２０は、判定部４０７により、未選択の第１通信中情報Ｃｎの有無を確認し（ステップＳ１４０４）、未選択の第１通信中情報Ｃｎがある場合には、ステップＳ１４０１に戻り、未選択の第１通信中情報Ｃｎを選択する。一方、未選択の第１通信中情報Ｃｎがない場合には、上記式（１）の判定式のすべての真偽値ｘｎが設定済みであるため、ステップＳ１４０５に移行する。
【０１０６】
ＩｏＴゲートウェイ１２０は、第１通信中情報Ｃｎのうち累積パケットサイズＣ８−３の値Ｐ８−３と、通信時間Ｃ１１の値Ｔ１１と、により、Ｐ８−３およびＴ１１が含まれるブロックをブロックＢ１〜Ｂ９の中から特定する。そして、ＩｏＴゲートウェイ１２０は、特定したブロックのスコア修正値（ｒｐ、ｒｔ）を、第４設定ファイル１７００から取得して、上記式（１）の判定式に設定する（ステップＳ１４０５）。
【０１０７】
ＩｏＴゲートウェイ１２０は、判定部４０７により、上記式（１）の判定式を計算してスコアＳ（ｎ）を算出する（ステップＳ１４０６）。そして、ＩｏＴゲートウェイ１２０は、判定部４０７により、正常な通信か、すなわち、算出したスコアＳ（ｎ）が、正常判定条件式（式（２））を充足するかを判定する（ステップＳ１４０７）。正常判定条件式（式（２））を充足する場合（ステップＳ１４０７：Ｙｅｓ）、図１３のステップＳ１３２４に示したように、ＩｏＴゲートウェイ１２０は、判定部４０７により、学習モデルＬｎを更新して（ステップＳ１４０８）、通信判定処理（ステップＳ１３０２）を終了する。
【０１０８】
一方、正常判定条件式（式（２））を充足しなかった場合（ステップＳ１４０７：Ｎｏ）、ＩｏＴゲートウェイ１２０は、判定部４０７により、パケットの遮断が必要か、すなわち、算出したスコアＳ（ｎ）が、検知判定条件式（式（３））および遮断判定条件式（式（４））のいずれを充足するかを判定する（ステップＳ１４０９）。遮断が必要ない場合、すなわち、スコアＳ（ｎ）が検知判定条件式（式（３））を充足する場合（ステップＳ１４０９：Ｎｏ）、図１３のステップＳ１３２５，Ｓ１３２７に示したように、ＩｏＴゲートウェイ１２０は、判定部４０７により、不正通信の可能性を検知したとして不正通信の可能性の検知通知依頼を通知部４０８に送信し、通知部４０８により、その旨を通知する（ステップＳ１４１０）。そして、ＩｏＴゲートウェイ１２０は通信判定処理（ステップＳ１３０２）を終了する。
【０１０９】
一方、遮断が必要である場合、すなわち、スコアＳ（ｎ）が遮断判定条件式（式（４））を充足する場合（ステップＳ１４０９：Ｙｅｓ）、図１３のステップＳ１３２６，Ｓ１３２７に示したように、ＩｏＴゲートウェイ１２０は、判定部４０７により、当該パケットの遮断通知依頼を通知部４０８に送信して、通知部４０８によりその旨を通知する（ステップＳ１３２７）。
【０１１０】
また、図１３のステップＳ１３２８，Ｓ１３２９に示したように、ＩｏＴゲートウェイ１２０は、判定部４０７により、当該パケットの遮断依頼を送信制御部４０９に送信して、送信制御部４０９により、当該パケットを遮断する（ステップＳ１４１１）。そして、ＩｏＴゲートウェイ１２０は通信判定処理（ステップＳ１３０２）を終了する。
【０１１１】
（１）このように、本実施例にかかるＩｏＴゲートウェイ１２０は、学習データ群の特徴量（第２通信中情報Ｃｎ）に関する複数の学習モデルＬｎの中の特定の学習モデルＬ８−３，Ｌ８−４，Ｌ１１−１，Ｌ１１−２の適用範囲（ブロックＢ５）を拡張するパラメータ（揺らぎの度合い１５０２）と、運用データの複数の特徴量（第１通信中情報Ｃｎ）のうち特定の学習モデルＬ８−３，Ｌ８−４，Ｌ１１−１，Ｌ１１−２に対応する特定の特徴量（第１通信中情報Ｃ８−３，Ｃ１１）と、に基づいて、運用データが不正通信であるか否かを判定するスコアＳ（ｎ）を算出する判定式を修正するスコア修正値（ｒｐ，ｒｔ）を取得し、複数の学習モデルＬｎと複数の特徴量（第１通信中情報Ｃｎ）とスコア修正値（ｒｐ，ｒｔ）とに基づいて、判定式でスコアＳ（ｎ）を算出し、当該算出されたスコアＳ（ｎ）に基づいて、不正通信であるか否かを判定し、判定結果に基づいて、送信部４０４による運用データの送信を制御する。
【０１１２】
たとえば、無線環境が悪くなると、利用可能な帯域幅の減少により通信時間が延長し、パケットロス率の増加に伴いパケットの再送数が増加することでＩｏＴゲートウェイ１２０が受信するパケット数が増加する。ＩｏＴゲートウェイ１２０は、このような特徴を利用して周辺の無線環境の推定を行い、推定した無線ネットワークの通信品質のパターンに対応したスコアの修正値を用いて、無線環境の変動に対応して正常な通信を異常な通信と検知遮断してしまうことを防ぐ。したがって、学習モデルＬｎを用いた場合の誤判定率の低減化を図ることができる。
【０１１３】
（２）また、ＩｏＴゲートウェイ１２０は、上記（１）において、判定結果が不正通信である場合、当該不正通信と判定された運用データを遮断する。これにより、セキュリティの向上を図ることができる。
【０１１４】
（３）また、ＩｏＴゲートウェイ１２０は、上記（２）において、スコアＳ（ｎ）が不正通信の基準となる第１しきい値（遮断しきい値β）よりも低い場合、運用データを不正通信のデータと判定し、不正通信と判定された運用データを遮断する。これにより、ＩｏＴゲートウェイ１２０は、学習モデルＬｎよりも学習モデルＬｎに基づくスコアＳ（ｎ）を優先して不正通信と判定された運用データを誤って転送せずに遮断することができる。したがって、学習モデルＬｎを用いた場合の誤判定を抑制することができる。
【０１１５】
（４）また、ＩｏＴゲートウェイ１２０は、上記（２）において、判定結果が不正通信である場合、当該判定結果を通知する。これにより、ユーザは、不正通信があったパケットがどのようなパケットでどの時点で受信されたかを確認することができる。
【０１１６】
（５）また、ＩｏＴゲートウェイ１２０は、上記（２）において、不正通信のデータと判定された運用データの特徴量に基づいて、不正通信と判定された運用データを遮断する。これにより、ＩｏＴゲートウェイ１２０は、当該特徴量に該当する後続パケットについては、判定結果を待つことなく強制的に遮断することができる。したがって、ＩｏＴゲートウェイ１２０は、不正通信のパケットを効率的に遮断することができる。
【０１１７】
（６）また、ＩｏＴゲートウェイ１２０は、上記（１）において、判定結果が不正通信の可能性がある場合、当該不正通信の可能性があると判定された運用データの前記送信部４０４による送信を遮断せず、判定結果が不正通信の可能性がある場合、当該判定結果を通知する。これにより、不正通信の可能性があったパケットについては効率的に転送し、かつ、ユーザは、不正通信の可能性があったパケットがどのようなパケットでどの時点で受信されたかを確認することができる。
【０１１８】
（７）また、ＩｏＴゲートウェイ１２０は、上記（６）において、スコアＳ（ｎ）が、不正通信の基準となる第１しきい値（遮断しきい値β）以上で、かつ、不正通信の可能性の基準となる第２しきい値（遮断しきい値βよりも高い検知しきい値α）よりも低い場合、運用データを不正通信の可能性があると判定する。これにより、ＩｏＴゲートウェイ１２０は、学習モデルＬｎよりも学習モデルＬｎに基づくスコアＳ（ｎ）を優先して不正通信の可能性ありと判定された運用データを誤って遮断せずに転送することができる。したがって、学習モデルＬｎを用いた場合の誤判定を抑制することができる。
【０１１９】
（８）また、ＩｏＴゲートウェイ１２０は、上記（１）において、判定結果が不正通信でない場合、当該不正通信でないと判定された運用データを遮断しない。これにより、正常通信のパケットを効率的に転送することができる。
【０１２０】
（９）また、ＩｏＴゲートウェイ１２０は、上記（８）において、スコアＳ（ｎ）が不正通信の可能性の基準となる第２しきい値（検知しきい値α）以上である場合、運用データを不正通信でないと判定する。これにより、ＩｏＴゲートウェイ１２０は、学習モデルＬｎよりも学習モデルＬｎに基づくスコアＳ（ｎ）を優先して不正通信でないと判定された運用データを誤って遮断せずに転送することができる。したがって、学習モデルＬｎを用いた場合の誤判定を抑制することができる。
【０１２１】
（１０）また、ＩｏＴゲートウェイ１２０は、上記（１）において、運用データが受信される都度、判定式で運用データのスコアＳ（ｎ）を算出する。これにより、運用データごとに学習モデルＬｎよりも学習モデルＬｎに基づくスコアＳ（ｎ）を優先して、学習モデルＬｎを用いた場合の誤判定率の低減化を図ることができる。
【０１２２】
（１１）また、ＩｏＴゲートウェイ１２０は、上記（１０）において、先着の運用データが受信されてから最新の運用データが受信されるまでの運用データ群について、運用データが受信される都度、第１通信中情報を更新し、更新された最新の第１通信中情報に基づいて、判定式により前記最新の運用データのスコアＳ（ｎ）を算出する。これにより、リアルタイムで、学習モデルＬｎを用いた場合の誤判定率の低減化を図ることができる。
【０１２３】
（１２）また、ＩｏＴゲートウェイ１２０は、上記（１１）において、学習モデルＬｎを生成し、生成された学習モデルＬｎに基づく判定式で、運用データのスコアＳ（ｎ）を算出し、当該算出されたスコアＳ（ｎ）に基づいて、不正通信であるか否かを判定する。これにより、ＩｏＴゲートウェイ１２０自身が生成した学習モデルＬｎを用いて、誤判定率の低減化を図ることができる。
【０１２４】
（１３）また、ＩｏＴゲートウェイ１２０は、上記（１２）において、先着の学習データが受信されてから最新の学習データが受信されるまでの学習データ群について、前記学習データが受信される都度、第２通信中情報を更新し、学習データ群の通信が終了した場合、更新された最新の第２通信中情報に基づいて、学習モデルＬｎを確定する。これにより、ＩｏＴゲートウェイ１２０は、リアルタイムで学習モデルＬｎを生成することができる。
【０１２５】
（１４）また、ＩｏＴゲートウェイ１２０は、上記（１）において、送信部４０４は、無線通信区間（無線ネットワーク１０３、無線のネットワーク１２２）で運用データを宛先（サーバ１１１、ＩｏＴデバイス１２１）に送信する。これにより、無線環境の変化に伴う、学習モデルＬｎを用いた場合の誤判定率の低減化を図ることができる。
【０１２６】
（１５）また、ＩｏＴゲートウェイ１２０は、上記（１）において、受信部４０３は、無線通信区間（無線のネットワーク１２２、無線ネットワーク１０３）で運用データを送信元（ＩｏＴデバイス１２１、サーバ１１１）から受信する。これにより、無線環境の変化に伴う、学習モデルＬｎを用いた場合の誤判定率の低減化を図ることができる。
【０１２７】
以上説明したように、本実施例のＩｏＴゲートウェイ１２０は、プロトコルやアプリケーションに依存しないネットワーク特徴量Ｆｎを用いて正常通信を学習し、正常とは異なる通信をネットワーク特徴量Ｆｎ毎にスコアづけし、不正通信の検知または検知と遮断を行う。その際、プラントネットワークや工場ネットワークなどのＩｏＴシステム１００ごとに合わせて、判定に使うネットワーク特徴量Ｆｎごとに重みｗｎや検知しきい値α、遮断しきい値βの調整が可能であるため、不正通信判定を柔軟に適応することができる。
【０１２８】
また、本実施例のＩｏＴゲートウェイ１２０は、一定間隔のパケット数が増えないＤｏＳ攻撃（ＳｌｏｗＲｅａｄＤｏＳ）に対しても、ＩＰアドレスや通信ポートなど他のネットワーク特徴量Ｆｎにおける正当性を組み合わせた判定により、不正通信の可能性の検知や不正通信の検知および遮断が可能となる。したがって、ＩｏＴシステム１００ごとの特徴に柔軟に対応することができ、結果として、誤判定率の低減を図ることができる。
【０１２９】
また、上述した実施例のＩｏＴゲートウェイ１２０では、送信部４０４と受信部４０３との間に送信制御部４０９を設けた構成としたが、送信部４０４と第２ＩＦ４０２との間に送信制御部４０９を設けてもよい。
【０１３０】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１３１】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサ２０１がそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１３２】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１３３】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１３４】
１２０  ＩｏＴゲートウェイ
１２１  ＩｏＴデバイス
４０３  受信部
４０４  送信部
４０５  第１生成部
４０６  第２生成部
４０７  判定部
４０８  通知部
４０９  送信制御部
４１０  設定ファイル
４１１  通信中情報テーブル
４１２  学習モデルＤＢ
４２０  取得部
６００  第１設定ファイル
７００  第２設定ファイル
１５００  第３設定ファイル
１７００  第４設定ファイル
Ｃｎ  通信中情報
Ｆｎ  ネットワーク特徴量
Ｆｓ  遮断特徴量
Ｌｎ  学習モデル
Ｓ（ｎ）  スコア
α  検知しきい値
β  遮断しきい値
【図１】
2020135816.tif 000005
【図２】
2020135816.tif 000006
【図３】
2020135816.tif 000007
【図４】
2020135816.tif 000008
【図５】
2020135816.tif 000009
【図６】
2020135816.tif 000010
【図７】
2020135816.tif 000011
【図８】
2020135816.tif 000012
【図９】
2020135816.tif 000013
【図１０】
2020135816.tif 000014
【図１１】
2020135816.tif 000015
【図１２】
2020135816.tif 000016
【図１３】
2020135816.tif 000017
【図１４】
2020135816.tif 000018
【図１５】
2020135816.tif 000019
【図１６】
2020135816.tif 000020
【図１７】
2020135816.tif 000021