JP7790165B2 - Traffic analysis device, traffic analysis program, and traffic analysis method - Google Patents
Traffic analysis device, traffic analysis program, and traffic analysis methodInfo
- Publication number
- JP7790165B2 JP7790165B2 JP2022007243A JP2022007243A JP7790165B2 JP 7790165 B2 JP7790165 B2 JP 7790165B2 JP 2022007243 A JP2022007243 A JP 2022007243A JP 2022007243 A JP2022007243 A JP 2022007243A JP 7790165 B2 JP7790165 B2 JP 7790165B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- unsteady
- steady
- traffic data
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
この発明は、トラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法に関し、例えば、インターネットに接続するIoT機器が通信する際のトラフィックデータに基づいてこれらのIoT機器の状態を判定するシステムに適用し得る。 This invention relates to a traffic analysis device, a traffic analysis program, and a traffic analysis method, and can be applied, for example, to a system that determines the status of IoT devices connected to the Internet based on traffic data when these devices communicate.
従来、IoT機器は、家庭やオフィス、工場など様々な環境で活用されている。しかしながら、IoT機器は従来のPC等の通信機器と比べて十分なセキュリティ対策をとることができない、あるいは対策をしていない場合が多い。例えば、IoT機器は計算資源が限られているため、エージェント型のセキュリティ対策製品を導入できない場合がある。また、人手を介さずに使われるIoT機器の場合、ソフトウェアが長期間アップデートされず脆弱性を保有した状態にある場合がある。 Traditionally, IoT devices have been used in a variety of environments, including homes, offices, and factories. However, compared to traditional communication devices such as PCs, IoT devices often lack sufficient security measures, or no security measures are implemented at all. For example, IoT devices have limited computing resources, making it impossible to deploy agent-based security products. Furthermore, IoT devices that are used without human intervention may not have their software updated for long periods of time, leaving them vulnerable to vulnerabilities.
このようなIoT機器のセキュリティ対策として、IoT機器からインターネットへの接続経路上にトラフィックを収集・分析する装置を設置し、トラフィックから異常な通信を検知し対象の機器の通信を遮断するNDR(Network Detection and Response)による対策がある。NDRは、機器にセキュリティエージェントを導入する必要がないため、IoT機器のように計算資源が乏しくエージェント型セキュリティ対策を導入できないような機器を監視する場合に有用である。またエッジネットワークに不正な機器を接続し他の正規機器から秘密情報を盗み出すような内部犯行的な行為は、基幹ネットワークのファイアウォールやプロキシサーバでは検知できない場合があるが、NDRではエッジネットワークの接続ポイントに分析装置を設置することでこのような不正行為も検知することができる。 One security measure for such IoT devices is NDR (Network Detection and Response), which installs equipment that collects and analyzes traffic on the connection path from the IoT device to the Internet, detects abnormal communications from the traffic, and blocks communications from the target device. Because NDR does not require the installation of a security agent on the device, it is useful for monitoring devices such as IoT devices that have limited computing resources and cannot implement agent-based security measures. Furthermore, while backbone network firewalls and proxy servers may not be able to detect internal criminal activity, such as connecting unauthorized devices to edge networks and stealing confidential information from other legitimate devices, NDR can detect such unauthorized activity by installing analysis equipment at the connection point of the edge network.
従来、NDRで異常検知する方法の一つとして、監視するネットワーク内の機器の普段の通信パターンを学習しておき、普段の通信パターンと乖離した通信があったときに異常検知する、教師なし機械学習を使用する方法がある。教師なし機械学習では、普段と異なるあらゆる通信パターンを異常として検知するため、未知の攻撃であっても検知できる。一方、正規の通信であっても、普段と異なる使われ方をした場合に異常と誤検知してしまう場合があり、誤検知数が多いのが課題である。また、運用中にネットワークに機器が新しく追加される場合、新しい機器の定常通信パターンを学習する必要があり、新規接続されてから異常検知できるまでに時間がかかるのが課題である。 One conventional method for detecting anomalies with NDR is to use unsupervised machine learning, which learns the normal communication patterns of devices within the monitored network and then detects an anomaly when there is communication that deviates from the normal communication pattern. Unsupervised machine learning detects any communication pattern that differs from normal as an anomaly, making it possible to detect even unknown attacks. However, even legitimate communication can be falsely detected as an anomaly if it is used in an unusual way, resulting in a high number of false positives. Furthermore, when new devices are added to a network during operation, the system needs to learn the new device's steady-state communication patterns, which means it takes time to detect anomalies after the new device is connected.
特許文献1は、ゲートウェイ装置に繋がるFAN(Field Area Network)機器を監視対象とし、機器毎に、制御メッセージ、センサデータ、統計データ等の正常値を学習しておき、正常値から逸脱した時に異常検知するシステムについて記載されている。特許文献1に記載されたシステムでは、誤検知を抑制するために、異常検知された通信について、さらに検査サーバが通信データを解析し問題があるかを確認したうえで最終的に異常かを判定するようになっている。 Patent Document 1 describes a system that monitors FAN (Field Area Network) devices connected to a gateway device, learns normal values for control messages, sensor data, statistical data, etc. for each device, and detects anomalies when they deviate from the normal values. In order to reduce false positives, the system described in Patent Document 1 further analyzes the communication data for any detected anomalies by an inspection server, confirming whether there are any problems, and then ultimately determines whether there is an anomaly.
特許文献2には、スマートフォン等の端末に接続するIoT機器を監視対象とし、IoT機器のアプリケーション毎に正常通信パターンを統計処理または機械学習によって学習しておき、当該アプリケーションの通信パターンが正常通信パターンから逸脱した時に異常検知するシステムについて記載されている。特許文献2に記載されたシステムでは、複数のスマートフォン間で制御情報を交換して正常通信パターンを更新したり、定常通信パターンが学習できないと判断したアプリケーションを検知対象から除外する等、誤検知を抑制する処理等に対応している。 Patent Document 2 describes a system that monitors IoT devices connected to terminals such as smartphones, learns normal communication patterns for each application of the IoT device through statistical processing or machine learning, and detects an anomaly when the communication pattern of that application deviates from the normal communication pattern. The system described in Patent Document 2 supports processes to suppress false detections, such as exchanging control information between multiple smartphones to update normal communication patterns and excluding applications for which it is determined that a steady-state communication pattern cannot be learned from the detection targets.
しかしながら、特許文献1に記載されたシステムでは、新規機器接続時(新規通信機器接続時)に当該機器の正常通信パターンを学習する必要があり、異常検知ができるようになるまでに時間がかかる。また、特許文献1に記載されたシステムでは、センサデータ値等を異常検知に用いており、暗号化された通信では適用できない場面がある。さらに、特許文献2に記載されたシステムでは、新規機器接続時に、当該機器が使用するアプリケーションの正常通信パターンを学習する必要があり、異常検知ができるようになるまでに時間がかかる。さらにまた、特許文献2に記載されたシステムでは、登録されたアプリの通信における異常しか検知できないため、例えば機器がマルウェア感染した場合等に発生する、アプリと無関係な異常通信を検知できない。 However, the system described in Patent Document 1 needs to learn the normal communication patterns of a new device when it is connected (when a new communication device is connected), and it takes time before it can detect anomalies. Furthermore, the system described in Patent Document 1 uses sensor data values, etc., to detect anomalies, which may not be applicable to encrypted communications. Furthermore, the system described in Patent Document 2 needs to learn the normal communication patterns of the applications used by a new device when it is connected, and it takes time before it can detect anomalies. Furthermore, the system described in Patent Document 2 can only detect anomalies in communications of registered apps, and therefore cannot detect anomalous communications unrelated to apps, such as those that occur when a device is infected with malware.
以上のような問題に鑑みて、通信パターンを機械学習したモデルを用いて通信機器の異常を検知する際に、誤検知を抑制しつつ、新規通信機器検出時の導入に必要となる処理も抑制することができるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法が望まれている。 In light of the above issues, there is a need for a traffic analysis device, traffic analysis program, and traffic analysis method that can reduce false positives and the processing required to introduce new communication devices when detecting anomalies in communication devices using a model based on machine learning of communication patterns.
第1の本発明のトラフィック分析装置は、対象ネットワークに接続する通信機器の属性ごとに、定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定モデルを保持する非定常通信判定モデル保持手段と、それぞれの前記通信機器の属性を認識する属性認識手段と、前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行う非定常通信判定手段とを有し、前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行うことを特徴とする。 A traffic analysis device according to a first aspect of the present invention comprises: a non-steady communication judgment model holding means for holding a non-steady communication judgment model for determining whether or not a communication device is in a non-steady communication state from traffic data of the communication device using a learning model that has been machine-learned on a pattern of traffic data in a steady communication state for each attribute of the communication device connected to a target network; an attribute recognition means for recognizing the attributes of each of the communication devices; and a non-steady communication judgment means for performing a non-steady communication judgment process for determining whether or not the communication device is in a non-steady communication state from traffic data of the communication device using the non-steady communication judgment model, wherein the non-steady communication judgment model holding means holds traffic data for learning from each of the communication devices, divides the held traffic data for learning by flow, classifies each of the flows by the attribute, and performs machine learning to determine the non-steady communication state for each of the attributes. the non-steady communication judgment model holding means holds a device-type-specific non-steady communication judgment model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each device type of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device; the non-steady communication judgment means performs the non-steady communication judgment process using at least the device-type-specific non-steady communication judgment model; the non-steady communication judgment model holding means holds a manufacturer-specific non-steady communication judgment model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each manufacturer of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device; and the non-steady communication judgment means further performs the non-steady communication judgment process using the manufacturer-specific non-steady communication judgment model .
第2の本発明のトラフィック分析プログラムは、コンピュータを、対象ネットワークに接続する通信機器の属性ごとに、定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定モデルを保持する非定常通信判定モデル保持手段と、それぞれの前記通信機器の属性を認識する属性認識手段と、前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行う非定常通信判定手段として機能させ、前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行うことを特徴とする。 A traffic analysis program according to a second aspect of the present invention causes a computer to function as: non-steady communication judgment model holding means for holding a non-steady communication judgment model for determining whether or not a communication device is in a non-steady communication state from traffic data of the communication device using a learning model that has been machine-learned to learn traffic data patterns in a steady communication state for each attribute of the communication device connected to a target network; attribute recognition means for recognizing the attributes of each of the communication devices; and non-steady communication judgment means for performing non-steady communication judgment processing for determining whether or not a communication device is in a non-steady communication state from traffic data of the communication device using the non-steady communication judgment model , wherein the non-steady communication judgment model holding means holds learning traffic data from each of the communication devices, divides the held learning traffic data for learning by flow, classifies each of the flows by the attribute, and performs machine learning to determine whether or not the flow is in a non-steady communication state for each of the attribute. the non-steady communication determination model holding means holds a device-type-specific non-steady communication determination model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each device type of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device; the non-steady communication determination means performs the non-steady communication determination process using at least the device-type-specific non-steady communication determination model; the non-steady communication determination model holding means holds a manufacturer-specific non-steady communication determination model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each manufacturer of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device; and the non-steady communication determination means further performs the non-steady communication determination process using the manufacturer-specific non-steady communication determination model .
第3の本発明は、トラフィック分析装置が行うトラフィック分析方法において、前記トラフィック分析装置は、非定常通信判定モデル保持手段と、属性認識手段と、非定常通信判定手段とを備え、前記非定常通信判定モデル保持手段は、対象ネットワークに接続する通信機器の属性ごとに、定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定モデルを保持し、前記属性認識手段は、それぞれの前記通信機器の属性を認識し、前記非定常通信判定手段は、前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行い、前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行うことを特徴とする。 A third aspect of the present invention is a traffic analysis method performed by a traffic analysis device, wherein the traffic analysis device comprises non-stationary communication judgment model holding means, attribute recognition means, and non-stationary communication judgment means, wherein the non-stationary communication judgment model holding means holds a non-stationary communication judgment model for determining whether or not a communication device is in a non-stationary communication state from traffic data of the communication device using a learning model that has machine-learned a pattern of traffic data in a stationary communication state for each attribute of the communication device connected to a target network, the attribute recognition means recognizes the attribute of each of the communication devices, the non-stationary communication judgment means performs non-stationary communication judgment processing for determining whether or not the communication device is in a non-stationary communication state from traffic data of the communication device using the non-stationary communication judgment model , and the non-stationary communication judgment model holding means holds learning traffic data from each of the communication devices, divides the held learning traffic data by flow, and performs a non-stationary communication judgment process for determining whether or not each of the flows is in a non-stationary communication state from traffic data of the communication device, and The non-steady communication judgment model holding means holds a device-type-specific non-steady communication judgment model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each device type of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device, the non-steady communication judgment means performs the non-steady communication judgment process using at least the device-type-specific non-steady communication judgment model, the non-steady communication judgment model holding means holds a manufacturer-specific non-steady communication judgment model that uses a learning model that has been machine-learned to learn a pattern of traffic data in a steady communication state for each manufacturer of the communication device to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device, and the non-steady communication judgment means further performs the non-steady communication judgment process using the manufacturer-specific non-steady communication judgment model .
本発明によれば、通信パターンを機械学習したモデルを用いて通信機器の異常を検知する際に、誤検知を抑制しつつ、新規通信機器検出時の導入に必要となる処理も抑制することができる。 According to the present invention, when detecting anomalies in communication devices using a model based on machine learning of communication patterns, it is possible to reduce false positives while also reducing the processing required to introduce new communication devices when they are detected.
(A)第1の実施形態
以下、本発明によるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法の第1の実施形態を、図面を参照しながら詳述する。
(A) First Embodiment A first embodiment of a traffic analysis device, a traffic analysis program, and a traffic analysis method according to the present invention will be described in detail below with reference to the drawings.
(A-1)第1の実施形態の構成
図2は、第1の実施形態に関係する各装置の接続関係について示した図である。図2における括弧内の符号は後述する第2~第5の実施形態において用いられる符号である。
(A-1) Configuration of the First Embodiment Fig. 2 is a diagram showing the connection relationships of the devices related to the first embodiment. The reference numerals in parentheses in Fig. 2 are the reference numerals used in the second to fifth embodiments described later.
ここでは、トラフィック分析装置10は、監視対象(分析対象)となる監視対象ネットワークN1に接続された通信機器(通信端末)としてのIoT機器30(30ー1、30-2、・・・)から発生するトラフィックを分析する処理を行うものであるものとする。図2の構成例では、監視対象ネットワークN1には、ネットワーク機器として、ネットワークスイッチ20(レイヤ2スイッチ)とゲートウェイ40(例えば、ファイアウォールの機能に対応するゲートウェイ)が配置されているものとする。なお、監視対象ネットワークN1に接続される通信機器はIoT機器に限定されず種々の装置とするようにしてもよい。 Here, the traffic analysis device 10 performs processing to analyze traffic generated by IoT devices 30 (30-1, 30-2, ...) that serve as communication devices (communication terminals) connected to the monitored network N1, which is the target of monitoring (target of analysis). In the configuration example of Figure 2, the monitored network N1 is assumed to include a network switch 20 (Layer 2 switch) and a gateway 40 (e.g., a gateway that supports firewall functions) as network devices. Note that the communication devices connected to the monitored network N1 are not limited to IoT devices and may be various other devices.
図2の構成例では、各IoT機器30が、ネットワークスイッチ20(レイヤ2スイッチ)に接続されており、ネットワークスイッチ20とインターネットN2との間にはファイアウォール機能を備えるゲートウェイ40が接続されている。したがって、図2の例では、各IoT機器30は、ネットワークスイッチ20とゲートウェイ40を経由してインターネットN2と通信可能な状態になっている。また、ネットワークスイッチ20では、接続されるIoT機器30等の数は限定されないものであり、運用中に増減する場合もあるものとして説明する。 In the configuration example of Figure 2, each IoT device 30 is connected to a network switch 20 (Layer 2 switch), and a gateway 40 with firewall functionality is connected between the network switch 20 and the Internet N2. Therefore, in the example of Figure 2, each IoT device 30 is able to communicate with the Internet N2 via the network switch 20 and gateway 40. Furthermore, the network switch 20 does not limit the number of IoT devices 30, etc. connected, and this description will be given assuming that this number may increase or decrease during operation.
各IoT機器30の具体的な機能・構成や通信内容については限定されないものである。ここでは、基本的に各IoT機器30は、インターネットN2上の通信装置(例えば、IoT機器30からデータ受信するサーバや、IoT機器30へアクセスする端末等)と通信することによりその機能を果たすものとして説明する。 The specific functions, configurations, and communication contents of each IoT device 30 are not limited. Here, each IoT device 30 will be described as basically performing its functions by communicating with a communication device on the Internet N2 (for example, a server that receives data from the IoT device 30, or a terminal that accesses the IoT device 30).
図2の例では、トラフィック分析装置10は、ネットワークスイッチ20に接続されているものとする。ここでは、ネットワークスイッチ20において、ゲートウェイ40と接続するLANポート(イーサネット(登録商標)ポート)で送受信されるパケット(イーサネットフレーム)が、トラフィック分析装置10が接続するポートにミラーリングされる設定(いわゆるポートミラー接続)となっているものとする。これにより、トラフィック分析装置10では、ネットワークスイッチ20の配下の接続端末(IoT機器30)とインターネットN2との間を流れるトラフィック(パケット)を収集することができる。この実施形態では、ネットワークスイッチ20のポートミラー設定により、トラフィック分析装置10にIoT機器30とインターネットN2との間を流れるトラフィックに基づくデータ(以下、単に「トラフィックデータ」とも呼ぶ)を供給する構成となっているが、トラフィック分析装置10にトラフィックデータを供給する具体的な構成については限定されないものである。 In the example of FIG. 2, the traffic analysis device 10 is connected to a network switch 20. Here, the network switch 20 is configured so that packets (Ethernet frames) transmitted and received at the LAN port (Ethernet port) connected to the gateway 40 are mirrored to the port to which the traffic analysis device 10 is connected (so-called port mirror connection). This allows the traffic analysis device 10 to collect traffic (packets) flowing between a connected terminal (IoT device 30) under the network switch 20 and the Internet N2. In this embodiment, the port mirror setting of the network switch 20 is used to supply the traffic analysis device 10 with data (hereinafter simply referred to as "traffic data") based on the traffic flowing between the IoT device 30 and the Internet N2. However, the specific configuration for supplying traffic data to the traffic analysis device 10 is not limited.
トラフィック分析装置10は、トラフィックデータに基づいて、各接続端末(IoT機器30を含む)に関する分析を行う装置である。 The traffic analysis device 10 is a device that performs analysis of each connected terminal (including IoT devices 30) based on traffic data.
ここで、トラフィック分析装置10の概要について説明する。 Here, we will provide an overview of the traffic analysis device 10.
一般的に、IoT機器は、主として一つの機能(以下、「主機能」と呼ぶ)を提供するものが多い。例えば、ネットワークカメラ機能を備えるIoT機器であれば、対象領域を撮影し遠隔のPC端末等にストリーミング配信する機能に対応する。また例えば、スマート電源タップのIoT機器であれば、スイッチのON/OFFを遠隔で操作する機能に対応する。つまり、一般的に、IoT機器は、その主機能に応じた種類(以下、「機器種類」と呼ぶ)毎に主となる定常的な通信パターン(以下、「定常通信パターン」と呼ぶ)が類似するものが多いと考えられる。 In general, IoT devices primarily provide one function (hereinafter referred to as the "main function"). For example, an IoT device with a network camera function corresponds to the function of taking pictures of a target area and streaming the images to a remote PC terminal, etc. In addition, for example, an IoT device such as a smart power strip corresponds to the function of remotely turning the switch on and off. In other words, it is generally thought that many IoT devices have similar main steady-state communication patterns (hereinafter referred to as the "steady-state communication patterns") for each type (hereinafter referred to as the "device type") based on their main function.
従って、機器種類毎に定常通信パターンを学習することで、当該機器種類が提供する主機能稼働時の通信パターンが反映された学習モデルを構築することができると考えられる。そのため、トラフィック分析装置10では、監視対象ネットワークN1(ここではネットワークスイッチ20)に新規に接続されたIoT機器(以下、「新規接続機器」と呼ぶ)であっても、当該新規接続機器の定常時の通信パターンと、当該新規接続機器の機器種類の定常通信パターン(例えば、主機能稼働時の通信パターン)と比較することで、当該新規接続機器の非定常通信状態(定常通信パターンとは異なる通信パターンが発生した状態)を検知することができる。以下では、IoT機器30の非定常通信状態を、単に「異常状態」とも呼ぶものとする。つまり、トラフィック分析装置10では、非定常通信状態と判断したIoT機器30については、異常状態であると見なすものとする。 Therefore, by learning steady-state communication patterns for each device type, it is possible to construct a learning model that reflects the communication patterns when the main function provided by that device type is operating. Therefore, even for IoT devices (hereinafter referred to as "newly connected devices") that are newly connected to the monitored network N1 (here, network switch 20), the traffic analysis device 10 can detect an unsteady communication state of the newly connected device (a state in which a communication pattern different from the steady-state communication pattern occurs) by comparing the steady-state communication pattern of the newly connected device with the steady-state communication pattern of the device type of the newly connected device (e.g., the communication pattern when the main function is operating). Hereinafter, the unsteady communication state of the IoT device 30 will also be referred to simply as an "abnormal state." In other words, the traffic analysis device 10 will consider an IoT device 30 that is determined to be in an unsteady communication state to be in an abnormal state.
また、一般的に、IoT機器は、ベンダ(製造者;製造元)固有の制御通信を行うものが多い。例えば、あるベンダのIoT機器は、総じて、決められた時間間隔でNTP(Network Time Protocol)により時刻同期を実施したり、ベンダ保有のクラウドサーバと通信したりするものが存在する。つまり、一般的に、IoT機器は、ベンダ毎に制御通信の定常通信パターンは類似するものが多いと考えられる。従って、IoT機器のベンダ毎に定常通信パターンを学習することで、ベンダ特有の通信パターンが反映された学習モデルを構築することができると考えられる。そのため、トラフィック分析装置10では、新規接続機器であっても、当該新規接続機器のベンダの定常通信パターンと比較することで、非定常通信状態を検知することができる。 In addition, many IoT devices generally perform control communications specific to their vendor (manufacturer). For example, IoT devices from a certain vendor generally perform time synchronization using NTP (Network Time Protocol) at set intervals, or communicate with a cloud server owned by the vendor. In other words, it is generally believed that IoT devices from different vendors have similar steady-state control communication patterns. Therefore, by learning steady-state communication patterns for each IoT device vendor, it is possible to build a learning model that reflects vendor-specific communication patterns. Therefore, the traffic analysis device 10 can detect unsteady communication states even in newly connected devices by comparing them with the steady-state communication patterns of the vendor of the newly connected device.
言い換えると、トラフィック分析装置10では、新規接続機器(新規に監視対象/分析対象となった通信機器)であっても、属性(例えば、機器種類やベンダ等)ごとの定常通信パターンと比較することで、非定常通信状態を判定(検知)することができる。具体的には、この実施形態のトラフィック分析装置10では、属性ごとに、定常通信パターンを学習して定常通信状態/非定常通信状態を検知(判定)するモデル(以下、「非定常通信検知モデル」と呼ぶ)を構築して保持しておき、運用中に取得したトラフィックデータについてIoT機器30ごとに分類(例えば、送信元/宛先のIPアドレスごとに分類)し、当該IoT機器30に対応する非定常通信検知モデルを適用して、当該IoT機器30の状態を判定(例えば、非定常通信状態(異常状態)であるか否かを判定)する。 In other words, the traffic analysis device 10 can determine (detect) an unsteady communication state even for a newly connected device (a communication device that has become a new target for monitoring/analysis) by comparing it with steady communication patterns for each attribute (e.g., device type, vendor, etc.). Specifically, the traffic analysis device 10 of this embodiment builds and stores a model (hereinafter referred to as an "unsteady communication detection model") that learns steady communication patterns for each attribute and detects (determines) a steady communication state/unsteady communication state. Traffic data acquired during operation is classified for each IoT device 30 (e.g., by source/destination IP address), and the unsteady communication detection model corresponding to that IoT device 30 is applied to determine the state of that IoT device 30 (e.g., determine whether or not the IoT device 30 is in an unsteady communication state (abnormal state)).
この実施形態のトラフィック分析装置10では、それぞれのIoT機器30の通信の特徴を利用し、属性として機器種類(例えば、ネットワークカメラ、スマートスピーカ、スマートプラグの単位)毎にトラフィックをまとめて定常通信パターンを学習して、定常通信状態/非定常通信状態を判定(検知)するモデル(以下、「機器種類別非定常通信検知モデル」とも呼ぶ)を構築して保持するものとする。また、トラフィック分析装置10は、機器種類別非定常通信検知モデルを構築する際に、学習時の精度が低くなるトラフィックパターンについて、属性としてベンダ毎にトラフィックをまとめて定常通信パターンを学習して、定常通信状態/非定常通信状態を判定(検知)するモデル(以下、「ベンダ別非定常通信検知モデル」と呼ぶ)を構築して保持するものとする。 The traffic analysis device 10 of this embodiment uses the communication characteristics of each IoT device 30 to build and store a model (hereinafter also referred to as a "device-type-specific unsteady communication detection model") that learns steady communication patterns by aggregating traffic by device type (e.g., network camera, smart speaker, smart plug) as an attribute and determines (detects) whether the communication is steady or unsteady. Furthermore, when building the device-type-specific unsteady communication detection model, the traffic analysis device 10 builds and stores a model (hereinafter referred to as a "vendor-specific unsteady communication detection model") that learns steady communication patterns by aggregating traffic by vendor as an attribute and determines (detects) whether the communication is steady or unsteady.
トラフィック分析装置10は、各IoT機器30について、まず機器種類別非定常通信検知モデルを用いて、非定常通信状態にあるか否に基づいて非定常通信状態であるか否かの判定を行う。そして、トラフィック分析装置10は、機器種類別非定常通信検知モデルに基づいて非定常通信状態と判定されたIoT機器について、さらにベンダ別非定常通信検知モデルに基づいて非定常通信状態であるか否かを判定し、ここでも非定常通信状態と判定された場合に当該IoT機器について異常検知(異常状態であると検知)するものとする。 For each IoT device 30, the traffic analysis device 10 first determines whether the device is in an unsteady communication state based on whether the device is in an unsteady communication state using a device-type unsteady communication detection model. Then, for IoT devices determined to be in an unsteady communication state based on the device-type unsteady communication detection model, the traffic analysis device 10 further determines whether the device is in an unsteady communication state based on a vendor-specific unsteady communication detection model. If the device is determined to be in an unsteady communication state, the traffic analysis device 10 detects an anomaly in the IoT device (detects that the device is in an abnormal state).
以上のように、トラフィック分析装置10は、機器種類別非定常通信検知モデル及びベンダ別非定常通信検知モデルを用いた判定処理を行うことで、監視対象ネットワークN1に新たに接続されたIoT機器30であっても、当該IoT機器30の機器種類とベンダが分かれば非定常通信状態検知が可能なため、定常通信状態を学習する期間を短縮することが可能である。 As described above, the traffic analysis device 10 performs a determination process using a device type-specific unsteady communication detection model and a vendor-specific unsteady communication detection model. This makes it possible to detect an unsteady communication state even for an IoT device 30 that has just been connected to the monitored network N1, as long as the device type and vendor of the IoT device 30 are known, thereby shortening the time required to learn a steady communication state.
さらに、この実施形態のトラフィック分析装置10では、上記に加え、ベンダ別非定常通信検知モデルの学習時にも精度が低かったトラフィックパターン(つまり機器固有の通信パターン)をまとめて定常通信パターンとして学習した非定常通信検知モデル(以下、「機器固有非定常通信検知モデル」と呼ぶ)を構築して保持するものとする。そして、トラフィック分析装置10では、機器種類別非定常通信検知モデル及びベンダ別非定常通信検知モデルを用いた判定処理のいずれの判定処理でも非定常通信状態を検知できなかった通信パターンについて機器固有非定常通信検知モデルで非定常通信状態であるか否かを判定し、非定常通信状態と判定できた場合に非定常通信状態(異常状態)を検知するものとする。 Furthermore, in this embodiment, the traffic analysis device 10 constructs and stores an unsteady communication detection model (hereinafter referred to as a "device-specific unsteady communication detection model") that collectively learns traffic patterns (i.e., device-specific communication patterns) that had low accuracy even when learning the vendor-specific unsteady communication detection model as steady communication patterns. The traffic analysis device 10 then determines whether a communication pattern that could not be detected as an unsteady communication state in either the device-type-specific unsteady communication detection model or the vendor-specific unsteady communication detection model is an unsteady communication state using the device-specific unsteady communication detection model, and detects an unsteady communication state (abnormal state) if it is determined to be an unsteady communication state.
以上のような判定処理を実現するため、この実施形態のトラフィック分析装置10(主として処理部101)は、以下の3つの動作モードのいずれかで動作するものとする。 To achieve the above-described determination process, the traffic analysis device 10 (mainly the processing unit 101) in this embodiment operates in one of the following three operating modes:
トラフィック分析装置10は、第1の動作モード(以下、「学習モード」とも呼ぶ)で動作する場合、監視対象ネットワークN1に接続された各IoT機器30の定常通信パターンのトラフィックデータを収集して学習処理を行って各非定常通信状態検知モデル(機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル、及び機器固有非定常通信検知モデル)を構築する処理を行う。 When operating in the first operating mode (hereinafter also referred to as "learning mode"), the traffic analysis device 10 collects traffic data of the steady communication patterns of each IoT device 30 connected to the monitored network N1, performs a learning process, and constructs each unsteady communication state detection model (unsteady communication detection model by device type, unsteady communication detection model by vendor, and device-specific unsteady communication detection model).
トラフィック分析装置10は、第2の動作モード(以下、「運用モード」とも呼ぶ)で動作する場合、リアルタイムに監視対象ネットワークN1からトラフィックデータを取得し、各IoT機器30について各非定常通信状態検知モデルを用いて、非定常通信状態(異常状態)にあるか否かを判定する処理を行う。 When operating in the second operating mode (hereinafter also referred to as the "operational mode"), the traffic analysis device 10 acquires traffic data from the monitored network N1 in real time and performs processing to determine whether each IoT device 30 is in an unsteady communication state (abnormal state) using each unsteady communication state detection model.
トラフィック分析装置10は、運用モードで動作しているときに、未知の機器種類又はベンダのIoT機器30を検出した場合、運用モードの動作に並列して、当該未知のIoT機器30の機器種類又はベンダについて定常通信パターンを学習して非定常通信状態検知モデルを構築する動作モード(以下、「混在モード」と呼ぶ)で動作するようにしてもよい。 When the traffic analysis device 10 detects an IoT device 30 of an unknown device type or vendor while operating in operation mode, it may operate in an operation mode (hereinafter referred to as "mixed mode") in parallel with operation in operation mode, in which the traffic analysis device 10 learns steady-state communication patterns for the device type or vendor of the unknown IoT device 30 and constructs an unsteady communication state detection model.
次に、トラフィック分析装置10の内部構成について、図1を用いて説明する。 Next, the internal configuration of the traffic analysis device 10 will be explained using Figure 1.
図1は、トラフィック分析装置10の機能的構成について示したブロック図である。 Figure 1 is a block diagram showing the functional configuration of the traffic analysis device 10.
図1に示すように、トラフィック分析装置10は、処理部101、トラフィックデータ収集部102、定常通信パターン学習部103、非定常通信状態判定部104、機器種類判定部105、ベンダ情報判定部106、通信制御部107、及び記憶部108を有している。 As shown in FIG. 1, the traffic analysis device 10 includes a processing unit 101, a traffic data collection unit 102, a steady-state communication pattern learning unit 103, a non-steady-state communication state determination unit 104, a device type determination unit 105, a vendor information determination unit 106, a communication control unit 107, and a memory unit 108.
トラフィック分析装置10は、例えば、プロセッサやメモリ等を有するコンピュータ上にプログラム(実施形態に係るトラフィック分析プログラムを含む)をインストールすることにより実現することができる。
[処理部101の構成]
処理部101は、トラフィック分析装置10の全体の処理を制御する機能を担っている。また、処理部101は、他の要素から通知されたデータを記録する記録処理、及び他の要素から要求されたデータを読み込んで通知(出力)する処理を行う。
[記憶部108の構成]
記憶部108は、トラフィック分析装置10における各処理で用いられるデータを記憶・保持する記録手段である。
[トラフィックデータ収集部102]
トラフィックデータ収集部102は、ネットワークスイッチ20からのトラフィックデータ(イーサネットフレーム又はIPパケットのデータ)をキャプチャし、キャプチャ内容を解析してIPパケット形式に変換して出力する。トラフィックデータ収集部102は、出力するトラフィックデータの元となるイーサネットフレームの情報(例えば、送信元/宛先のMACアドレス等)やタイムスタンプ(例えば、当該フレーム/パケットをキャプチャした時刻)等を付加情報として付加するようにしてもよい。トラフィックデータ収集部102は、IPパケット形式のトラフィックデータを処理部101に通知(出力)する。
The traffic analysis device 10 can be realized, for example, by installing a program (including the traffic analysis program according to the embodiment) on a computer having a processor, memory, and the like.
[Configuration of processing unit 101]
The processing unit 101 has the function of controlling the overall processing of the traffic analysis device 10. The processing unit 101 also performs a recording process for recording data notified from other elements, and a process for reading and notifying (outputting) data requested by other elements.
[Configuration of storage unit 108]
The storage unit 108 is a recording means for storing and holding data used in each process in the traffic analysis device 10 .
[Traffic Data Collection Unit 102]
The traffic data collection unit 102 captures traffic data (Ethernet frame or IP packet data) from the network switch 20, analyzes the captured content, converts it into IP packet format, and outputs it. The traffic data collection unit 102 may add additional information such as information on the Ethernet frame that is the source of the traffic data to be output (e.g., source/destination MAC addresses) and a timestamp (e.g., the time the frame/packet was captured). The traffic data collection unit 102 notifies (outputs) the traffic data in IP packet format to the processing unit 101.
処理部101は、トラフィックデータ収集部102からトラフィックデータ(IPパケットのデータ)を受信すると、受信したトラフィックデータの送信元又は宛先に係るIoT機器30の機器種類の判定処理を機器種類判定部105に要求して判定結果を得る。 When the processing unit 101 receives traffic data (IP packet data) from the traffic data collection unit 102, it requests the device type determination unit 105 to determine the device type of the IoT device 30 associated with the source or destination of the received traffic data, and obtains the determination result.
また、処理部101は、トラフィックデータ収集部102からトラフィックデータを受信すると、受信したトラフィックデータの送信元又は宛先に係るIoT機器30のベンダを示すベンダ情報の判定処理をベンダ情報判定部106に要求して判定結果を得る。 In addition, when the processing unit 101 receives traffic data from the traffic data collection unit 102, it requests the vendor information determination unit 106 to perform a determination process on the vendor information indicating the vendor of the IoT device 30 related to the source or destination of the received traffic data, and obtains the determination result.
さらに、処理部101は、学習モードで動作する場合、定常通信パターンの学習を定常通信パターン学習部103に要求し、結果を得る。処理部101は、運用モードで動作する場合、異常判定を非定常通信状態判定部104に要求し、その結果を得る。 Furthermore, when operating in learning mode, the processing unit 101 requests the steady communication pattern learning unit 103 to learn steady communication patterns and obtains the results. When operating in operation mode, the processing unit 101 requests the non-steady communication state determination unit 104 to determine an abnormality and obtains the results.
さらにまた、処理部101は、混在モードで動作中である場合、学習中の機器種類/ベンダのトラフィックデータを受信すると、定常通信パターン学習部103に当該トラフィックデータを用いた学習を要求し、学習中でない機器種類/ベンダのトラフィックデータを受信すると非定常通信状態判定部104に当該トラフィックデータを用いた異常判定処理を要求してその結果を得る。 Furthermore, when the processing unit 101 is operating in mixed mode and receives traffic data for a device type/vendor that is currently being learned, it requests the steady-state communication pattern learning unit 103 to learn using that traffic data, and when it receives traffic data for a device type/vendor that is not currently being learned, it requests the non-steady-state communication state determination unit 104 to perform an abnormality determination process using that traffic data and obtains the results.
さらにまた、処理部101は、運用モード又は混在モードで動作中に、非定常通信状態判定部104の判定結果に応じた任意のアクションを行うようにしてもよい。例えば、処理部101は、非定常通信状態判定部104で異常検知されたIoT機器30に対する通信遮断を通信制御部107に要求することや、異常検知されたことを種々の通信方式(例えば、電子メールや所定の方式の電文(メッセージ))のいずれかで送信出力ようにしてもよい。 Furthermore, while operating in the operational mode or the mixed mode, the processing unit 101 may take any action depending on the determination result of the unsteady communication state determination unit 104. For example, the processing unit 101 may request the communication control unit 107 to cut off communication with the IoT device 30 for which an abnormality has been detected by the unsteady communication state determination unit 104, or may transmit or output information about the detected abnormality using one of various communication methods (e.g., email or a message in a specified method).
さらにまた、処理部101は、トラフィックデータ収集部102が収集したトラフィックデータ、各IoT機器30の種類を示す情報(以下、「機器種類情報」と呼ぶ)、各IoT機器30のベンダ(メーカ)を示す情報(以下、「ベンダ情報」と呼ぶ)、機器種類毎の機器種類別非定常通信検知モデル、ベンダ毎のベンダ別非定常通信検知モデル、及び機器固有非定常通信検知モデルの保存を記憶部108に要求し、必要に応じて保存した情報を記憶部108から取得する。
[機器種類判定部105の構成]
機器種類判定部105は、入力されたトラフィックデータから機器種類を判定する機能を担っている。
Furthermore, the processing unit 101 requests the memory unit 108 to store the traffic data collected by the traffic data collection unit 102, information indicating the type of each IoT device 30 (hereinafter referred to as "device type information"), information indicating the vendor (manufacturer) of each IoT device 30 (hereinafter referred to as "vendor information"), a device-type-specific unsteady communication detection model for each device type, a vendor-specific unsteady communication detection model for each vendor, and a device-specific unsteady communication detection model, and obtains the stored information from the memory unit 108 as needed.
[Configuration of device type determination unit 105]
The device type determination unit 105 has a function of determining the device type from the input traffic data.
機器種類判定部105は、例えば、機器種類ごとにトラフィックデータを分類して定常通信パターンを機械学習器等により学習することで、トラフィックデータに対応する機器種類を判定するモデル(以下、「機器種類判定モデル」と呼ぶ)を保持し、保持した機器種類判定モデルに基づき入力されたトラフィックデータに対応する機器種類を判定するようにしてもよい。機器種類判定部105は、学習モードで動作する際に、予めIoT機器30ごとの機器種類のデータ(例えば、各IoT機器30のIPアドレスに機器種類を対応付けたデータ)を保持(例えば、オペレータ等により手動で入力を受け付けて保持)するようにしてもよい。そして、機器種類判定部105は、学習モードで動作する際に、機器種類ごとにトラフィックデータを分類し、分類した各機器種類のトラフィックデータ(複数のIPパケット列により構成されるデータ)について、通信パターンを示す特徴量に変換して機械学習器に学習させることで機器種類判定モデルを構築するようにしてもよい。通信パターンを示す特徴量の形式については限定されないものであるが、例えば、トラフィックデータを構成する各IPパケットのサイズやパケット到着間隔等のトラフィックデータに基づく統計値や、ポート番号(TCP又はUDPのポート番号)から推測されるサービス情報(例えばTCP80番ならばHTTP、TCP23番ならばTELNET等)等を適用するようにしてもよい。つまり、機器種類判定部105では、教師データ(IoT機器30ごとの機器種類のデータと、学習モードで動作した際に取得したトラフィックデータ)を機械学習器に供給して学習処理を行うことで、機器種類判定モデルを取得することができる。 The device type determination unit 105 may, for example, classify traffic data by device type and learn steady-state communication patterns using a machine learning device or the like, thereby retaining a model (hereinafter referred to as a "device type determination model") for determining the device type corresponding to traffic data, and may determine the device type corresponding to input traffic data based on the retained device type determination model. When operating in the learning mode, the device type determination unit 105 may pre-retain (e.g., accept and retain manual input by an operator, etc.) device type data for each IoT device 30 (e.g., data associating the device type with the IP address of each IoT device 30). Then, when operating in the learning mode, the device type determination unit 105 may classify traffic data by device type, convert the traffic data for each classified device type (data consisting of multiple IP packet sequences) into features indicative of communication patterns, and have the machine learning device learn the data, thereby constructing a device type determination model. The format of the feature indicating the communication pattern is not limited, but may be, for example, statistical values based on traffic data such as the size of each IP packet constituting the traffic data and the packet arrival interval, or service information inferred from port numbers (TCP or UDP port numbers) (for example, HTTP for TCP 80, TELNET for TCP 23, etc.). In other words, the device type determination unit 105 can acquire a device type determination model by supplying training data (device type data for each IoT device 30 and traffic data acquired when operating in learning mode) to a machine learning device and performing a learning process.
なお、機器種類判定部105では、学習モードで動作する際に上記のような処理により機器種類判定モデルを保持してもよいし、予め機器種類判定モデルを保持させておくようにしてもよい。ここで、機器種類判定モデルでは、学習した機器種類の通信パターンのいずれにも類似しない通信パターンが入力された場合、未知の機器種類であるという判定結果を出力するように構成してもよい。例えば、機器種類判定部105は、学習時にトラフィックデータを分類する際に、既知の機器種類+1のクラス(+1は未知の機器種類を表すクラス)に、トラフィックデータを分類して学習し、判定時には未知の機器種類を表すクラスである確率が一定値以上であれば未知の機器種類と判定するように、機器種類判定モデルを構成するようにしてもよい。 The device type determination unit 105 may store a device type determination model using the above-mentioned processing when operating in learning mode, or may store a device type determination model in advance. Here, the device type determination model may be configured to output a determination result that the device type is unknown when a communication pattern that is not similar to any of the communication patterns of learned device types is input. For example, when classifying traffic data during learning, the device type determination unit 105 may classify and learn traffic data into a class of known device types + 1 (+1 is a class representing an unknown device type), and may configure a device type determination model so that during determination, if the probability that the traffic data is in a class representing an unknown device type is equal to or greater than a certain value, the device type is determined to be an unknown device type.
そして、機器種類判定部105は、処理部101から、トラフィックデータと共に機器種類の判定を要求されると、当該トラフィックデータに基づいて機器種類を判定し、結果(機器種類が未知であるという結果を含む)を処理部101に通知する。 When the processing unit 101 requests the device type determination unit 105 to determine the device type along with the traffic data, the device type determination unit 105 determines the device type based on the traffic data and notifies the processing unit 101 of the result (including the result that the device type is unknown).
処理部101は、機器種類判定部105の判定結果に基づいて、IoT機器30ごとの機器種類を認識し、IoT機器30ごとの機器種類情報を生成して記憶部108に記憶させる。機器種類情報の具体的な形式は限定されないものであるが、例えば、IoT機器30の識別子(例えば、IPアドレス、ホスト名、任意のID番号等)に機器種類の識別子(例えば、機器種類の名称、ID番号等)を対応付けた情報としてもよい。
[ベンダ情報判定部106の構成]
ベンダ情報判定部106は、トラフィックデータから、当該トラフィックデータに対応するIoT機器30のベンダ(製造元)を判定する機能を担っている。
The processing unit 101 recognizes the device type of each IoT device 30 based on the determination result of the device type determination unit 105, generates device type information for each IoT device 30, and stores the information in the storage unit 108. The specific format of the device type information is not limited, but may be, for example, information in which an identifier of the IoT device 30 (e.g., IP address, host name, arbitrary ID number, etc.) is associated with an identifier of the device type (e.g., device type name, ID number, etc.).
[Configuration of vendor information determination unit 106]
The vendor information determination unit 106 has a function of determining, from the traffic data, the vendor (manufacturer) of the IoT device 30 corresponding to the traffic data.
イーサネットに対応する通信装置には、固有のMACアドレスが付与されており、通常、MACアドレスの前半部分(例えば、第1~第3オクテット)は、いわゆるベンダコード(OUI:Organizationally Unique Identifier)で構成されている。したがって、ベンダ情報判定部106では、トラフィックデータ(対応するIoT機器30のMACアドレスが付加されたトラフィックデータ)ごとに、送信元/宛先のIoT機器30のMACアドレスを取得し、取得したMACアドレスからベンダコードを抽出することで、トラフィックデータに対応するIoT機器30のベンダを判定することができる。 Each communication device that supports Ethernet is assigned a unique MAC address, and the first half of the MAC address (e.g., the first to third octets) is usually composed of a so-called vendor code (OUI: Organizationally Unique Identifier). Therefore, the vendor information determination unit 106 obtains the MAC addresses of the source and destination IoT devices 30 for each piece of traffic data (traffic data with the MAC address of the corresponding IoT device 30 added), and extracts the vendor code from the obtained MAC addresses, thereby determining the vendor of the IoT device 30 that corresponds to the traffic data.
例えば、ベンダ情報判定部106は、トラフィックデータから取得したベンダコードに対応するベンダの識別子(例えば、ベンダ名等)を、インターネットN2上のサイト(例えば、ベンダコードからベンダ名等の識別子を検索可能なサイト)から検索して確認するようにしてもよい。また、例えば、ベンダ情報判定部106は、予めベンダコードとベンダの識別子を対応付けた情報を保持しておいて、抽出したベンダコードに対応するベンダ名を確認するようにしてもよい。 For example, the vendor information determination unit 106 may search for and confirm the vendor identifier (e.g., vendor name, etc.) corresponding to the vendor code obtained from the traffic data from a site on the Internet N2 (e.g., a site where an identifier such as a vendor name can be searched for from a vendor code). Also, for example, the vendor information determination unit 106 may store information in advance that associates vendor codes with vendor identifiers, and confirm the vendor name corresponding to the extracted vendor code.
以上のように、ベンダ情報判定部106は、処理部101からトラフィックデータ(対応するIoT機器30のMACアドレスが付加されたトラフィックデータ)と共にベンダの判定を要求されると、当該トラフィックデータに対応するベンダの識別子(例えば、ベンダ名)を取得して、結果を処理部101に通知する。 As described above, when the processing unit 101 requests the vendor to be determined along with traffic data (traffic data to which the MAC address of the corresponding IoT device 30 is added), the vendor information determination unit 106 obtains the vendor identifier (e.g., vendor name) corresponding to the traffic data and notifies the processing unit 101 of the result.
処理部101は、ベンダ情報判定部106の判定結果に基づいて、IoT機器30ごとのベンダを認識し、IoT機器30ごとのベンダ情報を生成して記憶部108に記憶させる。ベンダ情報の具体的な形式は限定されないものであるが、例えば、IoT機器30の識別子(例えば、IPアドレス、ホスト名、任意のID番号等)にベンダの識別子(例えば、ベンダ名等)を対応付けた情報としてもよい。
[定常通信パターン学習部103の構成]
定常通信パターン学習部103は、トラフィックデータから、各非定常通信検知モデル(機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル、及び機器固有非定常通信検知モデル)を構築する機能を担っている。定常通信パターン学習部103は、トラフィックデータと共に処理部101からの要求を受けると各種非定常通信検知モデルを構築し、完了を処理部101に通知する。
The processing unit 101 recognizes the vendor of each IoT device 30 based on the determination result of the vendor information determination unit 106, generates vendor information for each IoT device 30, and stores the vendor information in the storage unit 108. The specific format of the vendor information is not limited, and may be, for example, information in which a vendor identifier (e.g., a vendor name) is associated with an identifier of the IoT device 30 (e.g., an IP address, a host name, an arbitrary ID number, etc.).
[Configuration of steady-state communication pattern learning unit 103]
The steady communication pattern learning unit 103 has the function of constructing various unsteady communication detection models (unsteady communication detection model by device type, unsteady communication detection model by vendor, and unsteady communication detection model specific to device) from traffic data. Upon receiving a request from the processing unit 101 along with traffic data, the steady communication pattern learning unit 103 constructs various unsteady communication detection models and notifies the processing unit 101 of completion.
次に、定常通信パターン学習部103が機器種類別非定常通信検知モデルを構築する処理について説明する。 Next, we will explain the process by which the steady-state communication pattern learning unit 103 builds a non-steady-state communication detection model by device type.
図3は、機器種類別非定常通信検知モデルの構築処理の流れについて示したフローチャートである。 Figure 3 is a flowchart showing the process for building an unsteady communication detection model by device type.
定常通信パターン学習部103は、学習モードで動作している間に収集したトラフィックデータ(処理部101から供給されたトラフィックデータ)をフロー単位(例えば、送信元IPアドレス、送信元ポート番号、宛先IPアドレス、及び宛先ポート番号の組合せにより分類されるフロー単位)に分割する(S101)。 The steady-state communication pattern learning unit 103 divides the traffic data collected while operating in learning mode (traffic data supplied from the processing unit 101) into flow units (for example, flow units classified by a combination of source IP address, source port number, destination IP address, and destination port number) (S101).
次に、定常通信パターン学習部103は、分割した各フローを、機器種類(IoT機器30の機器種類)ごとに分類する(S102)。 Next, the steady-state communication pattern learning unit 103 classifies each divided flow by device type (device type of IoT device 30) (S102).
次に、定常通信パターン学習部103は、フロー単位にトラフィックデータに基づく特徴量(統計特徴量)を計算して取得する(S103)。定常通信パターン学習部103が取得する特徴量の形式は限定されないものであるが、例えば、各フロー(トラフィックデータ)を構成する各IPパケットのサイズやパケット到着間隔等のトラフィックデータに基づく統計値や、ポート番号(TCP又はUDPのポート番号)から推測されるサービス情報(例えばTCP80番ならばHTTP、TCP23番ならばTELNET等)等を適用するようにしてもよい。 Next, the steady-state communication pattern learning unit 103 calculates and acquires features (statistical features) based on traffic data for each flow (S103). The format of the features acquired by the steady-state communication pattern learning unit 103 is not limited, but may be, for example, statistical values based on traffic data such as the size of each IP packet constituting each flow (traffic data) and the packet arrival interval, or service information inferred from port numbers (TCP or UDP port numbers) (for example, HTTP for TCP 80, TELNET for TCP 23, etc.).
次に、定常通信パターン学習部103は、特徴量の類似するフロー同士をグループ化する処理を行う(S104)。定常通信パターン学習部103が行うグループ化の方法は限定しないが、例えばk-meansやDBSCAN等のクラスタリングアルゴリズムによって機械的にグループ化する方法が適用し得る。 Next, the steady-state communication pattern learning unit 103 performs a process of grouping flows with similar features (S104). The grouping method performed by the steady-state communication pattern learning unit 103 is not limited, but a method of mechanical grouping using a clustering algorithm such as k-means or DBSCAN can be applied.
次に、定常通信パターン学習部103は、各グループに属するフローのIoT機器30に対応する機器種類を確認し、その結果に基づいて機器種類別非定常通信検知モデルの学習に用いるグループを抽出する(S105)。 Next, the steady-state communication pattern learning unit 103 checks the device types corresponding to the IoT devices 30 of the flows belonging to each group, and based on the results, extracts groups to be used for learning the non-steady-state communication detection model by device type (S105).
図4は、ステップS105におけるフロー(機器種類別非定常通信検知モデルの学習に用いるフロー)をグループ化する処理について示した図(イメージ図)である。 Figure 4 is a diagram (image) showing the process of grouping the flow in step S105 (the flow used to learn the device type-specific unsteady communication detection model).
図4では、説明を簡易とするため、任意の機器種類A、B、Cのフローをそれぞれ円形、三角形、四角形のシンボルで表し、それぞれのシンボルをフローの特徴量に対応する位置にマッピングしている。つまり、図4では、距離の近いシンボルのフロー同士は特徴量が近いことを視覚的に表している。図4では、機器種類Aのフローに係るシンボルが5つ、機器種類Bのフローに係るシンボルが2つ、機器種類Cのフローに係るシンボルが7つ図示されている。そして、図4では、距離が所定以下のシンボル同士をグルーピングした結果として、3つのグループG1~G3(破線で囲われたグループ)に分けられている。 For ease of explanation, in Figure 4, flows for any device type A, B, or C are represented by circular, triangular, or rectangular symbols, respectively, and each symbol is mapped to a position corresponding to the flow's features. In other words, Figure 4 visually indicates that flows with symbols close in distance have similar features. Figure 4 shows five symbols related to flows for device type A, two symbols related to flows for device type B, and seven symbols related to flows for device type C. Furthermore, in Figure 4, symbols with a distance less than a predetermined value are grouped together, resulting in three groups G1 to G3 (groups surrounded by dashed lines).
なお、ここでは、トラフィック分析装置10で分析対象(監視対象)となっているIoT機器30の機器種類(以下、「対象機器種類」と呼ぶ)は、A、B、Cで全部であるものとする。 Here, it is assumed that the device types (hereinafter referred to as "target device types") of the IoT devices 30 that are the targets of analysis (monitoring) by the traffic analysis device 10 are all A, B, and C.
ここでは、定常通信パターン学習部103は、全ての対象機器種類の含まれているグループの各フローを、共通的な通信パターンを構成するものとみなして抽出し、機械学習器を用いた機器種類別非定常通信検知モデルの構築に用いるものとする。 Here, the steady-state communication pattern learning unit 103 extracts each flow of a group that includes all target device types, regarding it as constituting a common communication pattern, and uses it to build a non-steady-state communication detection model by device type using a machine learning machine.
図4では、グループG1とグループG2には全ての対象機器種類(機器種類A、B、C)のフローが含まれており、グループG3には機器種類A、Bのフローのみが含まれており機器種類Cのフローは含まれていない。したがって、この場合、定常通信パターン学習部103は、グループG1、G2のフローについては学習対象として抽出し、グループG3のフローについては学習対象として抽出しないことになる。 In Figure 4, groups G1 and G2 contain flows for all target device types (device types A, B, and C), while group G3 contains only flows for device types A and B, but does not contain flows for device type C. Therefore, in this case, the steady-state communication pattern learning unit 103 extracts flows for groups G1 and G2 as learning targets, but does not extract flows for group G3 as learning targets.
次に、定常通信パターン学習部103は、抽出した各フローのトラフィックデータを機械学習器に入力する特徴量に変換して取得し(S106)、取得した特徴量を用いて機器種類別非定常通信検知モデルを機械学習器で構築する(S107)。 Next, the steady-state communication pattern learning unit 103 converts the traffic data of each extracted flow into features to be input into a machine learning machine (S106), and uses the acquired features to construct a non-steady-state communication detection model by device type in the machine learning machine (S107).
ここで、各フローの通信パターンを示す特徴量の形式については限定されないものであるが、例えば、トラフィックデータを構成する各IPパケットのサイズやパケット到着間隔等のトラフィックデータに基づく統計値や、ポート番号(TCP又はUDPのポート番号)から推測されるサービス情報(例えばTCP80番ならばHTTP、TCP23番ならばTELNET等)等を適用するようにしてもよい。 Here, the format of the features indicating the communication pattern of each flow is not limited, but it may be, for example, statistical values based on traffic data such as the size of each IP packet constituting the traffic data and the packet arrival interval, or service information inferred from port numbers (TCP or UDP port numbers) (for example, HTTP for TCP 80, TELNET for TCP 23, etc.).
定常通信パターン学習部103は、例えば、機械学習器にフローの先頭からNパケット分の特徴量を入力し、N+1番目のパケットの特徴量を予測するような学習モデルを構築するようにしてもよい。また、この際、定常通信パターン学習部103は、フローの先頭をMパケット(Mは1以上の整数)ずつずらしながら機械学習器に学習させることで、より多くの通信パターンを定常通信パターンとしてモデルに反映するようにしてもよい。定常通信パターン学習部103において用いる機械学習器についても限定しないが、例えばRNN(Recurrent Neural Network)を適用することができる。 The steady-state communication pattern learning unit 103 may, for example, input features for N packets from the beginning of a flow into a machine learning device and construct a learning model that predicts the features of the N+1th packet. In this case, the steady-state communication pattern learning unit 103 may also have the machine learning device learn while shifting the beginning of the flow by M packets (M is an integer greater than or equal to 1), thereby reflecting more communication patterns in the model as steady-state communication patterns. The machine learning device used in the steady-state communication pattern learning unit 103 is not limited, but an RNN (Recurrent Neural Network), for example, can be applied.
以上のような処理により、処理部101は、定常通信パターン学習部103を用いて、機器種類ごとの機器種類別非定常通信検知モデルを取得し、記憶部108に記憶させる。 Through the above processing, the processing unit 101 uses the steady communication pattern learning unit 103 to obtain a device type-specific non-steady communication detection model for each device type and stores it in the memory unit 108.
次に、定常通信パターン学習部103がベンダ別非定常通信検知モデルを構築する処理について説明する。 Next, we will explain the process by which the steady-state communication pattern learning unit 103 builds a vendor-specific non-steady-state communication detection model.
図5は、ベンダ別非定常通信検知モデルの構築処理の流れについて示したフローチャートである。 Figure 5 is a flowchart showing the process for building vendor-specific unsteady communication detection models.
定常通信パターン学習部103は、学習モードで動作している間に、上述のステップS107に続いて、図5のフローチャートの処理を実行することで、ベンダ別非定常通信検知モデルの構築を行う。 While operating in learning mode, the steady communication pattern learning unit 103 executes the processing of the flowchart in Figure 5 following step S107 described above, thereby constructing a vendor-specific non-steady communication detection model.
まず、定常通信パターン学習部103は、機器種類別非定常通信検知モデルの学習モデル構築に用いられなかったフロー(上述のステップS105で抽出されなかった方のフロー)のデータ(トラフィックデータ)を取得する(S201)。 First, the steady-state communication pattern learning unit 103 acquires data (traffic data) of flows that were not used to construct the learning model for the device-type-specific non-steady-state communication detection model (flows that were not extracted in step S105 described above) (S201).
次に、定常通信パターン学習部103は、取得したフローについて、ベンダごと(IoT機器30のベンダごと)に分類する(S202)。 Next, the steady-state communication pattern learning unit 103 classifies the acquired flows by vendor (by vendor of the IoT device 30) (S202).
次に、定常通信パターン学習部103は、取得したフロー単位にトラフィックデータに基づく特徴量を計算して取得する(S203)。このとき、定常通信パターン学習部103が取得する特徴量の形式は、機器種類別非定常通信検知モデルのとき(上述のステップS103)と同様であるため詳しい説明は省略する。 Next, the steady-state communication pattern learning unit 103 calculates and acquires features based on traffic data for each acquired flow (S203). At this time, the format of the features acquired by the steady-state communication pattern learning unit 103 is the same as that for the device type-specific non-steady-state communication detection model (step S103 described above), so a detailed explanation will be omitted.
次に、定常通信パターン学習部103は、特徴量の類似するフロー同士をグループ化する処理を行う(S204)。このとき、定常通信パターン学習部103がグループ化する処理については、機器種類別非定常通信検知モデルのとき(上述のステップS104)と同様であるため詳しい説明は省略する。 Next, the steady-state communication pattern learning unit 103 performs a process of grouping flows with similar features (S204). At this time, the grouping process performed by the steady-state communication pattern learning unit 103 is the same as that performed in the case of the device type-specific non-steady-state communication detection model (step S104 described above), so a detailed explanation will be omitted.
次に、定常通信パターン学習部103は、各グループに属するフローに対応する機器種類を確認し、その結果に基づいてベンダ別非定常通信検知モデルの学習に用いるグループを抽出する(S205)。 Next, the steady communication pattern learning unit 103 checks the device types corresponding to the flows belonging to each group, and based on the results, extracts groups to be used for learning the vendor-specific unsteady communication detection model (S205).
定常通信パターン学習部103は、例えば、同じベンダに属するフローだけで構成されているグループを抽出するようにしてもよい。 The steady-state communication pattern learning unit 103 may, for example, extract a group consisting only of flows belonging to the same vendor.
図6は、ステップS205におけるフロー(ベンダ別非定常通信検知モデルの学習に用いるフロー)をグループ化する処理について示した図(イメージ図)である。 Figure 6 is a diagram (image) showing the process of grouping the flow in step S205 (the flow used to learn the vendor-specific unsteady communication detection model).
図6では、上述の図4と同様に、任意の機器種類A、B、Cのフローをそれぞれ円形、三角形、四角形のシンボルで表し、それぞれのシンボルをフローの特徴量に対応する位置にマッピングしている。また、図6では、各シンボルの図形の内側に当該シンボルのフローに係るベンダを示す記号を付記している。図6では、各シンボルにベンダA、B、Cを表す記号としてそれぞれα、β、γを付記している。 In Figure 6, similar to Figure 4 above, flows for arbitrary device types A, B, and C are represented by circular, triangular, and rectangular symbols, respectively, and each symbol is mapped to a position corresponding to the flow's features. Also, in Figure 6, a symbol indicating the vendor associated with the flow of each symbol is added inside the shape of each symbol. In Figure 6, each symbol is added with α, β, and γ to represent vendors A, B, and C, respectively.
図6では、距離が所定以下のシンボル同士をグルーピングした結果として、2つのグループG1、G2(破線で囲われたグループ)に分けられている。 In Figure 6, symbols whose distance is less than a predetermined value are grouped together, resulting in two groups G1 and G2 (groups surrounded by dashed lines).
ここでは、定常通信パターン学習部103は、同じベンダに属するフローだけで構成されているグループの各フローを、当該ベンダの共通的な通信パターンを構成するものとみなして抽出し、機械学習器を用いたベンダ別非定常通信検知モデルの構築に用いるものとする。 Here, the steady-state communication pattern learning unit 103 extracts each flow in a group consisting only of flows belonging to the same vendor, assuming that it constitutes a common communication pattern for that vendor, and uses this to build a vendor-specific non-steady-state communication detection model using a machine learning device.
図6では、グループG1では、全てのフローのベンダがベンダA(シンボルにαが付記)のフローだけで構成されている。一方、グループG2では、機器種類A、Bのフローのみが含まれており、かつ、2つのベンダA、Bが混在している。したがって、この場合、定常通信パターン学習部103は、グループG1のフローについては学習対象として抽出し、グループG2のフローについては学習対象として抽出しないことになる。 In Figure 6, group G1 is composed of flows from only vendor A (symbol with α added). On the other hand, group G2 contains flows from only device types A and B, and both vendors A and B are mixed. Therefore, in this case, the steady-state communication pattern learning unit 103 extracts flows from group G1 as learning targets, but does not extract flows from group G2 as learning targets.
次に、定常通信パターン学習部103は、抽出した各フローのトラフィックデータを機械学習器に入力する特徴量に変換して取得し(S206)、取得した特徴量を用いてベンダ別非定常通信検知モデルを機械学習器で構築する(S207)。定常通信パターン学習部103が行う特徴量抽出処理及び非定常通信モデルを作成する処理自体は機器種類別非定常通信検知モデルの場合(上述のステップS106、S107)と同様であるため詳しい説明は省略する。 Next, the steady-state communication pattern learning unit 103 converts the extracted traffic data of each flow into features to be input to the machine learning machine (S206), and uses the acquired features to construct a vendor-specific unsteady communication detection model in the machine learning machine (S207). The feature extraction process and the process of creating an unsteady communication model performed by the steady-state communication pattern learning unit 103 are the same as in the case of an unsteady communication detection model by device type (steps S106 and S107 described above), so a detailed description will be omitted.
以上のような処理により、処理部101は、定常通信パターン学習部103を用いて、ベンダ毎のベンダ別非定常通信検知モデルを取得して、記憶部108に記憶させる。 Through the above processing, the processing unit 101 uses the steady communication pattern learning unit 103 to acquire a vendor-specific unsteady communication detection model for each vendor and stores it in the storage unit 108.
次に、定常通信パターン学習部103が、機器固有非定常通信検知モデルを構築する処理について説明する。 Next, we will explain the process by which the steady-state communication pattern learning unit 103 constructs a device-specific unsteady-state communication detection model.
図7は、機器固有非定常通信検知モデルの構築処理の流れについて示したフローチャートである。 Figure 7 is a flowchart showing the process for building a device-specific unsteady communication detection model.
定常通信パターン学習部103は、学習モードで動作している間に、上述のステップS207に続いて、図7のフローチャートの処理を実行することで、ベンダ別非定常通信検知モデルの構築を行う。 While operating in learning mode, the steady communication pattern learning unit 103 executes the processing of the flowchart in Figure 7 following step S207 described above, thereby constructing a vendor-specific unsteady communication detection model.
まず、定常通信パターン学習部103は、機器種類別非定常通信検知モデルの学習モデル及びベンダ別非定常通信検知モデルの構築に用いられなかったフロー(上述のステップS105、S205のいずれでも抽出されなかった方のフロー)のトラフィックデータを取得する(S301)。 First, the steady-state communication pattern learning unit 103 acquires traffic data for flows that were not used to build the learning model for the device-type-specific unsteady-state communication detection model and the vendor-specific unsteady-state communication detection model (flows that were not extracted in either step S105 or S205 described above) (S301).
次に、定常通信パターン学習部103は、抽出した各フローのトラフィックデータを機械学習器に入力する特徴量に変換して取得し(S302)、取得した特徴量を用いて機器固有非定常通信検知モデルを機械学習器で構築する(S303)。ここで、定常通信パターン学習部103が行う特徴量抽出処理及び機器固有非定常通信検知モデルを作成する処理自体は機器種類別非定常通信検知モデルの場合(上述のステップS106、S107)と同様であるため詳しい説明は省略する。 Next, the steady communication pattern learning unit 103 converts the extracted traffic data of each flow into features to be input to the machine learning machine (S302), and uses the acquired features to construct a device-specific unsteady communication detection model in the machine learning machine (S303). Here, the feature extraction process and the process of creating a device-specific unsteady communication detection model performed by the steady communication pattern learning unit 103 are the same as in the case of the device-type-specific unsteady communication detection model (steps S106 and S107 described above), so detailed explanations will be omitted.
以上のような処理により、処理部101は、定常通信パターン学習部103を用いて、機器固有非定常通信検知モデルを保持して、記憶部108に記憶させる。
[非定常通信状態判定部104の構成]
非定常通信状態判定部104は、運用モード又は混在モードで動作する場合、トラフィックデータを用いて、各IoT機器30が非定常通信状態にあるか否かを判定する機能を担っている。
Through the above-described processing, the processing unit 101 uses the steady communication pattern learning unit 103 to hold the device-specific unsteady communication detection model and stores it in the storage unit 108 .
[Configuration of the unsteady communication state determination unit 104]
When operating in the operation mode or the mixed mode, the unsteady communication state determination unit 104 has the function of determining whether or not each IoT device 30 is in an unsteady communication state using traffic data.
非定常通信状態判定部104は、処理部101から、トラフィックデータと共に非定常通信状態であるか否かを判定する処理(以下、「非定常通信状態判定処理」、「異常判定処理」又は「異常検知処理」と呼ぶ)の通知を受けつけると、その非定常通信状態判定処理を開始する。非定常通信状態判定部104は、非定常通信状態判定処理を開始するとトラフィックデータを、各非定常通信検知モデル(機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル、および機器固有非定常通信検知モデル)に入力するための特徴量に変換し、変換した特徴量を各非定常通信検知モデルに入力して当該トラフィックデータに係るIoT機器30が非定常通信状態にあるかを判定する。非定常通信状態判定部104は、判定結果を処理部101に通知する。 When the unsteady communication state determination unit 104 receives notification from the processing unit 101 of a process for determining whether or not an unsteady communication state is occurring (hereinafter referred to as the "unsteady communication state determination process," "abnormality determination process," or "abnormality detection process") along with traffic data, it starts the unsteady communication state determination process. When the unsteady communication state determination unit 104 starts the unsteady communication state determination process, it converts the traffic data into features to be input into each unsteady communication detection model (a device-type-specific unsteady communication detection model, a vendor-specific unsteady communication detection model, and a device-specific unsteady communication detection model), inputs the converted features into each unsteady communication detection model, and determines whether the IoT device 30 related to the traffic data is in an unsteady communication state. The unsteady communication state determination unit 104 notifies the processing unit 101 of the determination result.
図8は、非定常通信状態判定部104が行う非定常通信状態判定処理の動作について示したフローチャートである。 Figure 8 is a flowchart showing the operation of the unsteady communication state determination process performed by the unsteady communication state determination unit 104.
非定常通信状態判定部104は、非定常通信状態判定処理を開始すると、取得したトラフィックデータを各非定常通信検知モデルに適用する特徴量に変換する(S401)。ここで、非定常通信状態判定部104では、任意のIoT機器30(以下、このIoT機器30を「注目機器」と呼ぶ)取得したサンプル(特徴量)が、各非定常通信検知モデルで判定可能なだけ蓄積されたものとする。 When the unsteady communication state determination unit 104 starts the unsteady communication state determination process, it converts the acquired traffic data into features to be applied to each unsteady communication detection model (S401). Here, the unsteady communication state determination unit 104 accumulates as many samples (features) acquired from an arbitrary IoT device 30 (hereinafter, this IoT device 30 will be referred to as the "device of interest") as are necessary for determination by each unsteady communication detection model.
次に、非定常通信状態判定部104は、注目機器について取得した特徴量のサンプルを、注目機器の機器種類に対応する機器種類別非定常通信検知モデルに適用して(S402)、非定常通信状態であるか否か(異常であるか否か)を判定する(S403)。非定常通信状態判定部104は、機器種類別非定常通信検知モデルに基づいて、注目機器が定常通信状態であると判定した場合は、ステップS409に移行して非定常通信状態判定処理を終了し、非定常通信状態と判定した場合は後述するステップS404に移行する。 Next, the unsteady communication state determination unit 104 applies the feature sample acquired for the device of interest to an unsteady communication detection model by device type that corresponds to the device type of the device of interest (S402), and determines whether or not the device is in an unsteady communication state (whether or not an abnormality exists) (S403). If the unsteady communication state determination unit 104 determines that the device of interest is in a steady communication state based on the unsteady communication detection model by device type, it proceeds to step S409 and terminates the unsteady communication state determination process; if it determines that the device of interest is in an unsteady communication state, it proceeds to step S404, which will be described later.
ステップS403で、非定常通信状態と判定された場合、非定常通信状態判定部104は、注目機器について取得した特徴量のサンプルを注目機器のベンダに対応するベンダ別非定常通信検知モデルに適用して(S404)、非定常通信状態であるか否か(異常であるか否か)を判定する(S405)。非定常通信状態判定部104は、ベンダ別非定常通信検知モデルに基づいて、注目機器が定常通信状態であると判定した場合は、ステップS409に移行して非定常通信状態判定処理を終了し、非定常通信状態と判定した場合は後述するステップS406に移行する。 If step S403 determines that the device is in an unsteady communication state, the unsteady communication state determination unit 104 applies the feature sample acquired for the device of interest to a vendor-specific unsteady communication detection model corresponding to the vendor of the device of interest (S404) to determine whether the device is in an unsteady communication state (whether an abnormality exists) (S405). If the unsteady communication state determination unit 104 determines that the device of interest is in a steady communication state based on the vendor-specific unsteady communication detection model, it proceeds to step S409 and terminates the unsteady communication state determination process; if it determines that the device of interest is in an unsteady communication state, it proceeds to step S406, which will be described later.
ステップS405で、非定常通信状態と判定された場合、非定常通信状態判定部104は、注目機器について取得した特徴量のサンプルを、機器固有非定常通信検知モデルに適用して(S406)、非定常通信状態であるか否か(異常であるか否か)を判定する(S407)。非定常通信状態判定部104は、機器固有非定常通信検知モデルに基づいて、注目機器が定常通信状態であると判定した場合は、ステップS409に移行して非定常通信状態判定処理を終了し、非定常通信状態と判定した場合は後述するステップS408に移行する。 If an unsteady communication state is determined in step S405, the unsteady communication state determination unit 104 applies the feature sample acquired for the device of interest to the device-specific unsteady communication detection model (S406) to determine whether or not the device is in an unsteady communication state (whether or not an abnormality exists) (S407). If the unsteady communication state determination unit 104 determines that the device of interest is in a steady communication state based on the device-specific unsteady communication detection model, it proceeds to step S409 and terminates the unsteady communication state determination process; if it determines that the device of interest is in an unsteady communication state, it proceeds to step S408, which will be described later.
ステップS407で、非定常通信状態と判定された場合、非定常通信状態判定部104は、最終的に、注目機器について最終的に非定常通信状態(異常状態)と判定し(S408)判定結果(注目機器が非定常通信状態(異常状態)である旨の結果)を出力する。 If an unsteady communication state is determined in step S407, the unsteady communication state determination unit 104 finally determines that the target device is in an unsteady communication state (abnormal state) (S408) and outputs the determination result (a result indicating that the target device is in an unsteady communication state (abnormal state)).
ステップ409に移行した場合、非定常通信状態判定部104は定常通信状態(異常状態ではない)と判定して、その判定結果を出力する。 When the process proceeds to step 409, the non-steady communication state determination unit 104 determines that the communication state is steady (not an abnormal state) and outputs the determination result.
なお、図8のようなフローチャートの処理で、3つの非定常通信状態検知モデルを用いて多段的に判断した場合でも100%誤検知を避けることは難しい。そのため、非定常通信状態判定部104は、注目機器について、ある時点のトラフィックデータに基づいて上記のフローチャートで一度異常を検知してもすぐに異常の判定結果を出力(例えば、アラートの送信等)せずに、その後の異常検知率が一定以上となった場合(例えば、その後も異常検知を繰返し、判定した回数の中で異常検知となった割合が一定以上となった場合)に初めて最終な異常判定を出力するようにしてもよい。
[通信制御部107の構成]
通信制御部107は、処理部101からの通知に基づいて、非定常通信状態判定部104で異常状態(非定常通信状態)と判定されたIoT機器30に関する通信制御をする機能を担っている。通信制御部107は、処理部101からあるIoT機器30の通信遮断の要求を受けると、当該IoT機器30の通信を遮断し、結果を処理部101に通知するようにしてもよい。
It is difficult to avoid 100% false detections even when a multi-stage determination is made using three unsteady communication state detection models in the processing of the flowchart shown in Fig. 8. For this reason, the unsteady communication state determination unit 104 may not immediately output an abnormality determination result (for example, by sending an alert) even if it detects an abnormality once for a target device in the above flowchart based on traffic data at a certain point in time, but may output a final abnormality determination only when the subsequent abnormality detection rate reaches a certain level or more (for example, when anomaly detection is repeated thereafter and the rate of abnormality detections among the number of determinations reaches a certain level or more).
[Configuration of communication control unit 107]
The communication control unit 107 has a function of controlling communication for the IoT device 30 that has been determined to be in an abnormal state (unsteady communication state) by the unsteady communication state determination unit 104 based on a notification from the processing unit 101. When the communication control unit 107 receives a request from the processing unit 101 to cut off communication with a certain IoT device 30, it may cut off communication with the IoT device 30 and notify the processing unit 101 of the result.
例えば、通信制御部107は、IoT機器30による通信(インターネットN2との通信)を遮断する通信制御を行うようにしてもよい。通信制御部107が注目機器の通信を遮断する方式については限定されないものである。例えば、図1のようなネットワーク構成の場合、通信制御部107は、あるIoT機器30について異常状態(非定常通信状態)と判定された場合、ゲートウェイ40(ファイアウォールのポリシー管理機能)を制御して、当該IoT機器30の通信(例えば、当該IoT機器30のIPアドレスに関する通信)を遮断するようなポリシー(ルール)を追加させるような構成としてもよい。 For example, the communication control unit 107 may perform communication control to block communication by the IoT device 30 (communication with the Internet N2). The method by which the communication control unit 107 blocks communication of a target device is not limited. For example, in the case of a network configuration such as that shown in Figure 1, if the communication control unit 107 determines that a certain IoT device 30 is in an abnormal state (unsteady communication state), it may be configured to control the gateway 40 (firewall policy management function) to add a policy (rule) that blocks communication by the IoT device 30 (for example, communication related to the IP address of the IoT device 30).
(A-2)第1の実施形態の動作
次に、以上のような構成を有する第1の実施形態のトラフィック分析装置10の動作(実施形態に係るトラフィック分析方法)を説明する。
(A-2) Operation of the First Embodiment Next, the operation of the traffic analysis device 10 of the first embodiment having the above-described configuration (traffic analysis method according to the embodiment) will be described.
図9は、トラフィック分析装置10が学習モードで動作中にトラフィックデータを受信した場合の動作の一例について示したフローチャートである。 Figure 9 is a flowchart showing an example of the operation when traffic analysis device 10 receives traffic data while operating in learning mode.
トラフィック分析装置10では、ネットワークスイッチ20から供給されたトラフィックデータ収集部102は、新たにトラフィックデータをキャプチャすると(S501)、キャプチャ内容を解析しIPパケットに整形して処理部101に通知する。 In the traffic analysis device 10, when the traffic data collection unit 102 captures new traffic data supplied from the network switch 20 (S501), it analyzes the captured content, formats it into an IP packet, and notifies the processing unit 101.
次に、処理部101は、学習モードが開始されてから定常通信パターンを学習するのに必要な期間(以下、「定常学習期間」が終了したかを確認する(S502)。例えば、処理部101は、トラフィックデータの収集を開始(学習モードの動作を開始)してから一定期間経過したときに定常学習期間が終了したものと判断するようにしてもよいし、トラフィックデータが一定量蓄積されたとき(例えば、IPパケットが一定数蓄積されたとき)に定常学習期間が終了したものと判断するようにしてもよい。トラフィック分析装置10は、定常学習期間が終了した場合は後述するステップS506に移行し、定常学習期間内の場合は後述するステップS503から動作する。 Next, the processing unit 101 checks whether the period required to learn a steady communication pattern after the learning mode is started (hereinafter referred to as the "steady learning period") has ended (S502). For example, the processing unit 101 may determine that the steady learning period has ended when a certain period has elapsed since the start of traffic data collection (start of learning mode operation), or when a certain amount of traffic data has accumulated (for example, when a certain number of IP packets have accumulated). If the steady learning period has ended, the traffic analysis device 10 proceeds to step S506, which will be described later, and if it is still within the steady learning period, it proceeds to step S503, which will be described later.
定常学習期間内の場合、処理部101は、記憶部108が保持しているベンダ情報を確認し、最新に受信したトラフィックデータに係るIoT機器30のベンダ情報が存在するか確認し(S503)、当該IoT機器30のベンダ情報が保持されていなかった場合は、ベンダ情報判定部106にトラフィックデータを通知し、ベンダ情報の判定を要求して取得する(S504)。このとき、ベンダ情報判定部106は、受信したトラフィックデータからMACアドレスを抽出し、抽出したMACアドレス(MACアドレスを構成するOUI)に基づいてベンダ情報を取得する。ベンダ情報判定部106は、取得したベンダ情報を処理部101に通知する。このとき、処理部101は、ベンダ情報判定部106が受信したベンダ情報を記憶部108に記憶させる。 If the device is within the steady learning period, the processing unit 101 checks the vendor information stored in the storage unit 108 to determine whether vendor information for the IoT device 30 associated with the most recently received traffic data exists (S503). If no vendor information for the IoT device 30 is stored, the processing unit 101 notifies the vendor information determination unit 106 of the traffic data and requests that the vendor information be determined and acquired (S504). At this time, the vendor information determination unit 106 extracts the MAC address from the received traffic data and acquires the vendor information based on the extracted MAC address (the OUI that constitutes the MAC address). The vendor information determination unit 106 notifies the processing unit 101 of the acquired vendor information. At this time, the processing unit 101 stores the vendor information received by the vendor information determination unit 106 in the storage unit 108.
次に、トラフィック分析装置10(処理部101)は、受信したトラフィックデータを保存し(S505)、上述のステップS501に戻って動作する。 Next, the traffic analysis device 10 (processing unit 101) saves the received traffic data (S505) and returns to step S501 described above.
上述のステップS502で定常学習期間が終了したと判定された場合、処理部101は、定常学習期間に記憶部108に蓄積されたトラフィックデータを取得し、機器種類判定部105に機器種類判定モデルの構築を要求する(S506)。 If it is determined in step S502 above that the steady-state learning period has ended, the processing unit 101 acquires the traffic data accumulated in the memory unit 108 during the steady-state learning period and requests the device type determination unit 105 to construct a device type determination model (S506).
機器種類判定部105は、外部(例えばトラフィック分析装置の管理者)から機器と機器種類との対応情報を取得(例えば対応情報を入力するインタフェースをトラフィック分析装置が持ちそこに管理者が入力する)する。機器種類判定部105は、トラフィックデータを特徴量に変換し、機器と機器種類との対応情報をもとに教師ラベル付け行い、教師あり機械学習器で機器種類判定モデルを構築する。この時、未知の機器種類のクラスを設け、いずれの機器種類にも類似しない通信パターンが未知の機器種類クラスに分類されるようにする。機器種類判定部105は、構築した機器種類判定モデルを処理部101に通知する。処理部101は、記憶部108に受信した機器種類判定モデルの保存を要求して記憶させる。また、処理部101は、定常通信パターン学習部103に、トラフィックデータと監視対象機器の機器種類情報を通知し、機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル及び機器固有非定常通信検知モデルの構築を要求する。定常通信パターン学習部103は、各種非定常通信検知モデルを構築し、構築した非定常通信検知モデルを記憶部108に通知して記憶させる(S507)。 The device type determination unit 105 acquires correspondence information between devices and device types from an external source (e.g., an administrator of the traffic analysis device) (e.g., the traffic analysis device has an interface for inputting correspondence information, and the administrator enters the information there). The device type determination unit 105 converts the traffic data into features, assigns supervised labels based on the correspondence information between devices and device types, and constructs a device type determination model using a supervised machine learning engine. At this time, a class for unknown device types is created so that communication patterns that are not similar to any device type are classified into the unknown device type class. The device type determination unit 105 notifies the processing unit 101 of the constructed device type determination model. The processing unit 101 requests the storage unit 108 to store the received device type determination model. The processing unit 101 also notifies the steady communication pattern learning unit 103 of the traffic data and device type information of the monitored devices, and requests the construction of a device-type-specific unsteady communication detection model, a vendor-specific unsteady communication detection model, and a device-specific unsteady communication detection model. The steady communication pattern learning unit 103 constructs various unsteady communication detection models and notifies the memory unit 108 of the constructed unsteady communication detection models for storage (S507).
次に、処理部101は、運用モードに移行する(S508)。 Next, the processing unit 101 transitions to operation mode (S508).
図10は、トラフィック分析装置10が運用モードで動作中にトラフィックデータを受信した場合の動作の一例について示したフローチャートである。 Figure 10 is a flowchart showing an example of the operation of the traffic analysis device 10 when it receives traffic data while operating in operational mode.
ここでは、トラフィック分析装置10が運用モードで動作中に、監視対象ネットワークN1(ネットワークスイッチ20)のトラフィックデータをキャプチャしたものとして説明する。 Here, we will assume that the traffic analysis device 10 is operating in operational mode and has captured traffic data from the monitored network N1 (network switch 20).
このとき、トラフィックデータ収集部102は、トラフィックデータをキャプチャすると、キャプチャ内容を解析しIPパケットに整形して処理部101に通知する(S601)。以下では、当該トラフィックデータに係るIoT機器30を注目機器と呼ぶものとする。 At this time, when the traffic data collection unit 102 captures the traffic data, it analyzes the captured content, formats it into an IP packet, and notifies the processing unit 101 (S601). Hereinafter, the IoT device 30 related to the traffic data will be referred to as the device of interest.
処理部101は、記憶部108に記憶されている機器種類情報(現時点において管理されている各IoT機器30の機器種類情報)を取得し、注目機器が機器種類判定済みであるか否か(注目機器の機器種類情報が記憶部108に保持されているか否か)を確認する(S602)。 The processing unit 101 acquires the device type information stored in the memory unit 108 (device type information for each IoT device 30 currently being managed) and checks whether the device type of the target device has been determined (whether the device type information for the target device is stored in the memory unit 108) (S602).
注目機器が機器種類判定済でない場合、処理部101は、機器種類判定部105に、トラフィックデータと機器種類判定モデルを通知し、注目機器の機器種類の判定を要求する。そして、機器種類判定部105は、受信したトラフィックデータから特徴量を生成し機器種類判定モデルに適用して、判定結果を処理部101に返答する。そして、処理部101は、機器種類判定部105の判定結果に基づく機器種類情報(注目機器と機器種類の識別子を対応付けた情報)を記憶部108に記憶させる(S603)。このとき、処理部101は、機器種類判定モデルで未知の機器である確率がある一定値以上であれば、未知の機器種類(機器種類別非定常通信検知モデルで未学習の機器種類)として処理部101に通知し、それ以外の場合判定された機器種類を処理部101に通知するようにしてもよい。 If the device type of the device of interest has not yet been determined, the processing unit 101 notifies the device type determination unit 105 of the traffic data and the device type determination model, and requests that the device type of the device of interest be determined. The device type determination unit 105 then generates features from the received traffic data, applies them to the device type determination model, and returns the determination result to the processing unit 101. The processing unit 101 then stores device type information (information associating the device of interest with the device type identifier) based on the determination result of the device type determination unit 105 in the storage unit 108 (S603). At this time, if the probability that the device is an unknown device in the device type determination model is equal to or greater than a certain value, the processing unit 101 may notify the processing unit 101 that the device is an unknown device type (a device type that has not been learned in the device type-specific non-steady communication detection model); otherwise, it may notify the processing unit 101 of the determined device type.
次に、処理部101は、注目機器の機器種類について機器種類別非定常通信検知モデルが存在するか否か(記憶部108に記憶されているか否か)を確認し(S604)、存在する場合後述するステップS605に移行し、そうでない場合は、未学習の機器種類のIoT機器30が接続されたとみなし、学習を開始するため、ステップS610へ移行(混在モードへ移行)する。 Next, the processing unit 101 checks whether a device type-specific unsteady communication detection model exists for the device type of the device of interest (whether it is stored in the memory unit 108) (S604), and if so, proceeds to step S605, described below; if not, it assumes that an IoT device 30 of an unlearned device type has been connected, and proceeds to step S610 (transition to mixed mode) to start learning.
次に、処理部101は、記憶部108に記憶されているベンダ情報(現時点において管理されている各IoT機器30のベンダ情報)を取得し、注目機器がベンダ判定済みであるか否か(注目機器のベンダ情報が記憶部108に保持されているか否か)を確認する(S605)。 Next, the processing unit 101 acquires the vendor information stored in the memory unit 108 (vendor information for each IoT device 30 currently being managed) and checks whether the vendor of the target device has been determined (whether the vendor information for the target device is stored in the memory unit 108) (S605).
注目機器がベンダ判定済でない場合、処理部101は、ベンダ情報判定部106に、トラフィックデータ(MACアドレスの情報が付加されたトラフィックデータ)を通知し、注目機器のベンダの判定を要求する。ベンダ情報判定部106は、受信したトラフィックデータからMACアドレスを抽出しインターネットから、当該MACアドレスのベンダコードに対応するベンダの識別子(例えば、ベンダ名)を取得する。ベンダ情報判定部106は、取得したベンダの識別子を処理部101に通知する。そして、処理部101は、ベンダ情報判定部106の判定結果に基づくベンダ情報を記憶部108に記憶させる(S606)。 If the vendor of the device of interest has not yet been determined, the processing unit 101 notifies the vendor information determination unit 106 of the traffic data (traffic data with MAC address information added) and requests that the vendor of the device of interest be determined. The vendor information determination unit 106 extracts the MAC address from the received traffic data and obtains from the Internet the vendor identifier (e.g., vendor name) corresponding to the vendor code of the MAC address. The vendor information determination unit 106 notifies the processing unit 101 of the obtained vendor identifier. The processing unit 101 then stores vendor information based on the determination result of the vendor information determination unit 106 in the storage unit 108 (S606).
次に、処理部101は、注目機器のベンダについてベンダ別非定常通信検知モデルが存在するか否か(記憶部108に記憶されているか否か)を判断し(S607)、存在する場合後述するステップS605に移行し、そうでない場合は、未学習のベンダのIoT機器30が接続されたとみなして学習を開始するため、ステップS610へ移行(混在モードへ移行)する。 Next, the processing unit 101 determines whether a vendor-specific unsteady communication detection model exists for the vendor of the device of interest (whether it is stored in the memory unit 108) (S607), and if so, proceeds to step S605, described below; if not, proceeds to step S610 (transition to mixed mode) to start learning, assuming that an IoT device 30 from an unlearned vendor has been connected.
次に、処理部101は、注目機器に対応する機器種類別非定常通信検知モデルとベンダ別非定常通信検知モデル、及び機器固有非定常通信検知モデルを記憶部108から取得し、非定常通信状態判定部104に非定常通信状態判定(異常判定)を要求する。非定常通信状態判定部104は、受信したトラフィックデータと各種非定常通信検知モデルを用いて非定常通信状態判定処理(異常判定処理;上述の図8のフローチャートの処理)を行う。非定常通信状態判定部104は、非定常通信状態判定処理の結果を処理部101に通知する(S608)。 Next, the processing unit 101 acquires the device type-specific unsteady communication detection model, vendor-specific unsteady communication detection model, and device-specific unsteady communication detection model corresponding to the device of interest from the storage unit 108, and requests the unsteady communication state determination unit 104 to determine an unsteady communication state (abnormality determination). The unsteady communication state determination unit 104 performs unsteady communication state determination processing (abnormality determination processing; processing of the flowchart in Figure 8 described above) using the received traffic data and various unsteady communication detection models. The unsteady communication state determination unit 104 notifies the processing unit 101 of the results of the unsteady communication state determination processing (S608).
処理部101は、非定常通信状態判定処理(異常判定処理)の結果を確認し(S609)、注目機器について非定常通信状態(異常状態)でないという判定結果されなかった場合、処理(トラフィックデータ受信に伴う注目機器に関する一連の処理)を終了する(S612)。 The processing unit 101 checks the results of the non-steady communication state determination process (abnormality determination process) (S609), and if the determination result does not indicate that the target device is not in a non-steady communication state (abnormality state), it terminates the process (a series of processes related to the target device associated with receiving traffic data) (S612).
一方、注目機器について非定常通信状態(異常状態)と判定された場合、処理部101は、通信制御部107に注目機器の通信の遮断を要求する。通信制御部107は、注目機器の通信を遮断する制御情報をゲートウェイ40(ファイアウォール)に対して送信し、当該機器の通信を遮断し(S613)、処理(トラフィックデータ受信に伴う注目機器に関する一連の処理)を終了する。 On the other hand, if the device of interest is determined to be in an unsteady communication state (abnormal state), the processing unit 101 requests the communication control unit 107 to cut off communication with the device of interest. The communication control unit 107 sends control information to the gateway 40 (firewall) to cut off communication with the device of interest, cutting off communication with the device (S613), and ends the process (a series of processes related to the device of interest associated with receiving traffic data).
図11は、トラフィック分析装置10が混在モードで動作中にトラフィックデータを受信した場合の動作の一例について示したフローチャートである。 Figure 11 is a flowchart showing an example of the operation when the traffic analysis device 10 receives traffic data while operating in mixed mode.
ここでは、トラフィック分析装置10が混在モードで動作中に、監視対象ネットワークN1(ネットワークスイッチ20)のトラフィックデータをキャプチャしたものとして説明する。 Here, we will explain the situation assuming that the traffic analysis device 10 is operating in mixed mode and has captured traffic data from the monitored network N1 (network switch 20).
このとき、トラフィックデータ収集部102は、まず、キャプチャしたトラフィックデータの内容を解析しIPパケットに整形して処理部101に通知する(S701)。 At this time, the traffic data collection unit 102 first analyzes the contents of the captured traffic data, formats it into IP packets, and notifies the processing unit 101 (S701).
処理部101は、記憶部108に記憶されている機器種類情報を取得し、注目機器が機器種類判定済みであるか否かを確認する(S702)。注目機器が機器種類判定済でない場合、処理部101は、機器種類判定部105に、トラフィックデータと機器種類判定モデルを通知し、注目機器の機器種類の判定を要求して、判定結果を得て、判定結果に基づく注目機器の機器種類情報を記憶部108に記憶させる(S703)。 The processing unit 101 acquires the device type information stored in the memory unit 108 and checks whether the device type of the device of interest has been determined (S702). If the device type of the device of interest has not been determined, the processing unit 101 notifies the device type determination unit 105 of the traffic data and the device type determination model, requests it to determine the device type of the device of interest, obtains the determination result, and stores the device type information of the device of interest based on the determination result in the memory unit 108 (S703).
次に、処理部101は、注目機器の機器種類に対応する機器種類別非定常通信検知モデルが存在するか否か(学習済であるか否か)を確認し(S704)、存在する場合後述するステップS705に移行し、そうでない場合は、未学習の機器種類のIoT機器30が接続されたとみなし、後述するステップS714へ移行して学習処理(注目機器の機器種類に対応する機器種類別非定常通信検知モデルの構築)を開始/継続する。 Next, the processing unit 101 checks whether a device-type-specific unsteady communication detection model corresponding to the device type of the target device exists (whether it has been learned or not) (S704), and if it exists, proceeds to step S705, which will be described later; if not, it assumes that an IoT device 30 of an unlearned device type has been connected, and proceeds to step S714, which will be described later, to start/continue the learning process (construction of a device-type-specific unsteady communication detection model corresponding to the device type of the target device).
次に、処理部101は、記憶部108に記憶されているベンダ情報を取得し、注目機器がベンダ情報判定済みであるか否か(注目機器のベンダ情報が記憶部108に保持されているか否か)を確認する(S705)。 Next, the processing unit 101 acquires the vendor information stored in the memory unit 108 and checks whether the vendor information of the target device has been determined (whether the vendor information of the target device is stored in the memory unit 108) (S705).
注目機器がベンダ判定済でない場合、処理部101は、ベンダ情報判定部106に注目機器のベンダの判定を要求して判定結果を取得し、判定結果に基づくベンダ情報を記憶部108に記憶させる(S706)。 If the vendor of the device of interest has not been determined, the processing unit 101 requests the vendor information determination unit 106 to determine the vendor of the device of interest, obtains the determination result, and stores vendor information based on the determination result in the storage unit 108 (S706).
次に、処理部101は、注目機器に対応するベンダ別非定常通信検知モデルが存在するか否か(学習済であるか否か)を確認し(S707)、存在する場合は後述するステップS708に移行し、そうでない場合は、未学習のベンダのIoT機器30が接続されたとみなし、後述するステップS716へ移行して、学習処理(注目機器のベンダに対応するベンダ別非定常通信検知モデルの構築)を開始/継続する。 Next, the processing unit 101 checks whether a vendor-specific unsteady communication detection model corresponding to the device of interest exists (whether it has been learned or not) (S707), and if it does exist, proceeds to step S708, which will be described later; if not, it assumes that an IoT device 30 of an unlearned vendor has been connected, and proceeds to step S716, which will be described later, to start/continue the learning process (construction of a vendor-specific unsteady communication detection model corresponding to the vendor of the device of interest).
次に、処理部101は、注目機器に対応する非定常通信状態(異常状態)の判定を要求して判定結果を取得して記憶部108に通知して記憶させ(S708)る。非定常通信状態と判定された場合、後述するステップS710の処理に移行する。一方、注目機器について非定常通信状態(異常状態)と判定されなかった場合、処理部101は、後述するステップS711の処理に移行する。 Next, the processing unit 101 requests a determination of an unsteady communication state (abnormal state) corresponding to the device of interest, obtains the determination result, and notifies the storage unit 108 of the determination result for storage (S708). If an unsteady communication state is determined, the processing proceeds to step S710, which will be described later. On the other hand, if an unsteady communication state (abnormal state) is not determined for the device of interest, the processing unit 101 proceeds to step S711, which will be described later.
なお、ステップS701~S710の処理自体は、運用モードの処理とほぼ同様であるため詳しい説明は省略する。 Note that the processing of steps S701 to S710 is almost identical to the processing in operational mode, so a detailed explanation will be omitted.
注目機器について非定常通信状態(異常状態)と判定されなかった場合、処理部101は、通信制御部107に当該トラフィックデータに係るIoT機器30の通信の遮断を要求して、当該機器の通信を遮断させる(S710)。 If the device of interest is not determined to be in an unsteady communication state (abnormal state), the processing unit 101 requests the communication control unit 107 to cut off communication with the IoT device 30 related to the traffic data, thereby cutting off communication with the device (S710).
上述のステップS704で、注目機器の機器種類に係る機器種類別非定常通信検知モデルが存在しない場合、処理部101は、当該機器種類の定常通信パターンの学習期間が終了したか確認し(S714)、学習期間が終了していた場合には後述するステップS715に移行し、そうでない場合には後述するステップS718に移行して、取得したトラフィックデータを記憶部108に記憶させて処理(当該トラフィックデータの受信をトリガとする一連の処理)を終了する。 If, in step S704 described above, there is no device-type-specific non-steady communication detection model related to the device type of the device of interest, the processing unit 101 checks whether the learning period for the steady communication pattern of that device type has ended (S714), and if the learning period has ended, proceeds to step S715 described below; if not, proceeds to step S718 described below, stores the acquired traffic data in the storage unit 108, and ends the processing (a series of processes triggered by the reception of that traffic data).
一方、学習期間が終了していた場合、処理部101は、記憶部108から蓄積された当該機器種類のトラフィックデータを取得して、定常通信パターン学習部103に当該機器種類の機器種類別非定常通信検知モデルの構築をさせて取得し、取得した機器種類別非定常通信検知モデルを記憶部108に記憶させ(S715)、上述のステップS705の処理に移行する。このとき、定常通信パターン学習部103は、機器種類別非定常通信検知モデルの構築対象となるIoT機器30のトラフィックデータについて所定の学習期間分収集して上述の図3のフローチャートの処理に適用することで、当該IoT機器30の機器種類に対応する機器種類別非定常通信検知モデルを得るようにしてもよい。また、このとき、定常通信パターン学習部103は、ベンダ別非定常通信検知モデルを構築するためのグルーピングの処理(図5のステップS201~ステップS204)を行った上で、図7のフローチャートの処理により当該IoT機器30に対応する機器固有非定常通信検知モデルを構築するようにしてもよい。 On the other hand, if the learning period has ended, the processing unit 101 acquires the accumulated traffic data for the device type from the storage unit 108, causes the steady communication pattern learning unit 103 to construct and acquire a device-type-specific unsteady communication detection model for the device type, stores the acquired device-type-specific unsteady communication detection model in the storage unit 108 (S715), and proceeds to the processing of step S705 described above. At this time, the steady communication pattern learning unit 103 may collect traffic data for the IoT device 30 for which the device-type-specific unsteady communication detection model is to be constructed, for a predetermined learning period, and apply the data to the processing of the flowchart in FIG. 3 described above, thereby obtaining a device-type-specific unsteady communication detection model corresponding to the device type of the IoT device 30. Furthermore, at this time, the steady communication pattern learning unit 103 may perform grouping processing (steps S201 to S204 in FIG. 5) for constructing a vendor-specific unsteady communication detection model, and then construct a device-specific unsteady communication detection model corresponding to the IoT device 30 by the processing of the flowchart in FIG. 7.
上述のステップS707で、注目機器のベンダに係るベンダ別非定常通信検知モデルが存在しない場合、処理部101は、当該ベンダの定常通信パターンの学習期間が終了したか確認し(S716)、学習期間が終了していた場合には後述するステップS717に移行し、そうでない場合には後述するステップS718に移行して、取得したトラフィックデータを記憶部108に記憶させて処理(当該トラフィックデータの受信をトリガとする一連の処理)を終了する。 If, in step S707 described above, there is no vendor-specific unsteady communication detection model for the vendor of the device of interest, the processing unit 101 checks whether the learning period for the steady communication pattern of that vendor has ended (S716), and if the learning period has ended, proceeds to step S717 described below; if not, proceeds to step S718 described below, stores the acquired traffic data in the storage unit 108, and ends the processing (a series of processes triggered by the reception of that traffic data).
一方、学習期間が終了していた場合、処理部101は、記憶部108から蓄積された当該ベンダのトラフィックデータを取得して、定常通信パターン学習部103に当該ベンダのベンダ別非定常通信検知モデルの構築をさせて取得し、取得したベンダ別非定常通信検知モデルを記憶部108に記憶させ(S717)、上述のステップS708の処理に移行する。このとき、定常通信パターン学習部103は、ベンダ別非定常通信検知モデルの構築対象となるIoT機器30のトラフィックデータについて所定の学習期間分収集して上述の図5のフローチャートの処理に適用することで、当該IoT機器30のベンダに対応するベンダ別非定常通信検知モデルを得るようにしてもよい。この場合、定常通信パターン学習部103は、ステップS201の処理において、混在モードの学習期間中に取得した全てのトラフィックデータからフローを抽出するようにしてもよいし、図3のフローチャートのステップS101~S104の処理を実行してステップS104で抽出されなかったトラフィックデータを取得してから図5のフローチャートの処理を実行するようにしてもよい。また、このとき、定常通信パターン学習部103は、図7のフローチャートの処理により当該IoT機器30に対応する機器固有非定常通信検知モデルを構築するようにしてもよい。 On the other hand, if the learning period has ended, the processing unit 101 acquires the accumulated traffic data for the vendor from the storage unit 108, causes the steady-state communication pattern learning unit 103 to construct and acquire a vendor-specific unsteady communication detection model for the vendor, stores the acquired vendor-specific unsteady communication detection model in the storage unit 108 (S717), and proceeds to the processing of step S708 described above. At this time, the steady-state communication pattern learning unit 103 may collect traffic data for the IoT device 30 for which the vendor-specific unsteady communication detection model is to be constructed for a predetermined learning period and apply the data to the processing of the flowchart of FIG. 5 described above to obtain a vendor-specific unsteady communication detection model corresponding to the vendor of the IoT device 30. In this case, the steady-state communication pattern learning unit 103 may extract flows from all traffic data acquired during the mixed mode learning period in the processing of step S201, or may execute the processing of steps S101 to S104 of the flowchart of FIG. 3 to acquire traffic data not extracted in step S104 and then execute the processing of the flowchart of FIG. 5. At this time, the steady communication pattern learning unit 103 may also construct a device-specific unsteady communication detection model corresponding to the IoT device 30 by processing the flowchart in Figure 7.
処理部101は、上述のステップS710の次に、現在の状態(混在モードの状態)で、いずれかの非定常通信検知モデルを構築するために学習期間中の機器種類またはベンダが存在するか否かを確認し(S711)、学習期間中の機器種類またはベンダが存在する場合運用モードに移行し、そうでない場合処理(当該トラフィックデータの受信をトリガとする一連の処理)を終了する。 Following step S710 described above, the processing unit 101 checks whether a device type or vendor is in the learning period in the current state (mixed mode state) in order to construct any non-stationary communication detection model (S711), and if a device type or vendor is in the learning period, it transitions to operational mode; if not, it terminates the processing (a series of processes triggered by the reception of the traffic data).
(A-3)第1の実施形態の効果
第1の実施形態によれば、以下のような効果を奏することができる。
(A-3) Effects of the First Embodiment According to the first embodiment, the following effects can be achieved.
第1の実施形態のトラフィック分析装置10では、IoT機器30の属性に応じた非定常通信検知モデルを構築し、非定常通信検知モデルを用いて各IoT機器30の非定常通信状態(異常状態)を判定する。また、この実施形態の第1の実施形態のトラフィック分析装置10では、非定常通信検知モデルとして、機器種類別非定常通信検知モデル(機器種類毎にその機器種類が持つ主機能の定常通信パターンを学習したモデル)、ベンダ別非定常通信検知モデル(ベンダ毎にベンダ特有の制御通信等の定常通信パターンを学習したモデル)、及び機器固有非定常通信検知モデル(上記以外の通信パターンを学習した機器固有非定常通信検知モデル)が採用されている。これにより、第1の実施形態のトラフィック分析装置10では、当初の定常通信の学習期間に存在しなかったIoT機器30が監視対象ネットワークN1に接続された場合でも、機器種類毎/ベンダ毎に非定常通信検知モデルを用いて非定常通信状態(異常状態)の判定が可能であるため、当該IoT機器30に関する学習処理を要せずに、他のIoT機器30と同様に学習済の非定常通信検知モデルを用いた非定常通信の判定処理が可能となる。 In the traffic analysis device 10 of the first embodiment, a non-steady communication detection model is constructed according to the attributes of the IoT device 30, and the non-steady communication state (abnormal state) of each IoT device 30 is determined using the non-steady communication detection model. Furthermore, in the traffic analysis device 10 of this first embodiment, the non-steady communication detection models used include a device-type-specific non-steady communication detection model (a model that learns the steady communication patterns of the main functions of each device type), a vendor-specific non-steady communication detection model (a model that learns the steady communication patterns of vendor-specific control communications, etc., for each vendor), and a device-specific non-steady communication detection model (a device-specific non-steady communication detection model that learns communication patterns other than those mentioned above). As a result, in the traffic analysis device 10 of the first embodiment, even if an IoT device 30 that was not present during the initial steady-state communication learning period is connected to the monitored network N1, it is possible to determine an unsteady communication state (abnormal state) using the unsteady communication detection model for each device type/vendor, and therefore, it is possible to perform unsteady communication determination processing using the learned unsteady communication detection model in the same way as for other IoT devices 30, without requiring learning processing for the IoT device 30.
また、機器種類別非定常通信検知モデルではIoT機器30の主機能に関する定常通信パターンからの逸脱が判定可能であり、ベンダ別非定常通信検知モデルではベンダ特有の定常通信パターンからの逸脱が判定可能である。そのため、トラフィック分析装置10では、あるIoT機器30の全ての通信を用いて一つの非定常通信検知モデルを構築する場合に比べて、異常検知精度を高めることができる。 Furthermore, the device-type unsteady communication detection model can determine deviations from steady communication patterns related to the main functions of the IoT device 30, and the vendor-specific unsteady communication detection model can determine deviations from vendor-specific steady communication patterns. Therefore, the traffic analysis device 10 can improve the accuracy of anomaly detection compared to building a single unsteady communication detection model using all communications from a certain IoT device 30.
さらに、トラフィック分析装置10では、非定常通信の判定処理の最後に機器固有非定常通信検知モデルを適用することにより、機器固有の正常な通信パターンとそれ以外の異常な通信パターンとを分別することができるため、より判定精度を高めることができる。 Furthermore, by applying a device-specific unsteady communication detection model at the end of the unsteady communication determination process, the traffic analysis device 10 can distinguish between device-specific normal communication patterns and other abnormal communication patterns, thereby further improving determination accuracy.
(B)第2の実施形態
以下、本発明によるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法の第2の実施形態を、図面を参照しながら詳述する。
(B) Second Embodiment A second embodiment of the traffic analysis device, traffic analysis program, and traffic analysis method according to the present invention will now be described in detail with reference to the drawings.
(B-1)第2の実施形態の構成
第2の実施形態に関係する各装置の接続関係についても、図2を用いて示すことができる。図2において末尾がAの符号は、第2の実施形態においてのみ用いられる符号である。
(B-1) Configuration of the Second Embodiment The connection relationships of the devices related to the second embodiment can also be shown using Figure 2. In Figure 2, symbols ending with A are symbols used only in the second embodiment.
第2の実施形態においては、トラフィック分析装置10がトラフィック分析装置10Aに置き換えられている。 In the second embodiment, the traffic analysis device 10 is replaced with a traffic analysis device 10A.
図12は、第2の実施形態のトラフィック分析装置10Aの機能的構成について示したブロック図である。 Figure 12 is a block diagram showing the functional configuration of the traffic analysis device 10A of the second embodiment.
図12では、上述の図1と同一部分または対応部分には同一又は対応する符号が付されている。以下では、第2の実施形態について第1の実施形態との差異を中心として説明する。 In Figure 12, parts that are the same as or correspond to those in Figure 1 above are assigned the same or corresponding reference numerals. The following describes the second embodiment, focusing on the differences from the first embodiment.
トラフィック分析装置10Aでは、処理部101と定常通信パターン学習部103が、処理部101Aと定常通信パターン学習部103Aに置き換わり、さらにフィードバック部109が追加されている点で第1の実施形態と異なっている。 The traffic analysis device 10A differs from the first embodiment in that the processing unit 101 and the steady-state communication pattern learning unit 103 are replaced with a processing unit 101A and a steady-state communication pattern learning unit 103A, and a feedback unit 109 is further added.
フィードバック部109は、非定常通信状態判定部104による判定結果を、オペレータOPが使用するオペレータ端末TEに供給すると共に、判定結果に対するフィードバック情報(例えば、誤った判定結果に対するフィードバック情報)の入力受付を行う。 The feedback unit 109 supplies the determination result by the non-steady communication state determination unit 104 to the operator terminal TE used by the operator OP, and also accepts input of feedback information regarding the determination result (e.g., feedback information regarding an erroneous determination result).
フィードバック部109が、オペレータ端末TEとの間で情報を入出力する際の形式については限定されないものであるが、例えば、操作画面(GUI画面;Web画面;Webコンテンツ)の形式でオペレータ端末TEに判定結果を提示すると共にフィードバック情報の入力を受け付けるようにしても良い。ここでは、フィードバック部109が、オペレータ端末TEに判定結果を提示すると共にフィードバック情報の入力を受け付ける際の操作画面を「フィードバック入力受付画面」と呼ぶものとする。 The format in which the feedback unit 109 inputs and outputs information to and from the operator terminal TE is not limited, but for example, the feedback unit 109 may present the determination result to the operator terminal TE and accept input of feedback information in the form of an operation screen (GUI screen; web screen; web content). Here, the operation screen in which the feedback unit 109 presents the determination result to the operator terminal TE and accepts input of feedback information is referred to as the "feedback input acceptance screen."
第2の実施形態のトラフィック分析装置10Aでは、異常検知された通信パターンについてオペレータ端末TEを介してオペレータOPに提示されるため、オペレータOPにより、当該通信パターンが真に異常か否かが判断される。そして、トラフィック分析装置10Aでは、オペレータOPから誤検知(非定常通信ではない通信パターンについて非定常通信状態とした判定結果)についてフィードバック情報の入力を受け付けることができる。以下では、オペレータ端末TEから供給された誤検知を示すフィードバック情報を「誤検知フィードバック」と呼ぶものとする。 In the traffic analysis device 10A of the second embodiment, a communication pattern for which an abnormality has been detected is presented to the operator OP via the operator terminal TE, allowing the operator OP to determine whether the communication pattern is truly abnormal. The traffic analysis device 10A can then accept input of feedback information from the operator OP regarding a false detection (a determination result that a communication pattern that is not a non-steady communication state is an unsteady communication state). Hereinafter, feedback information indicating a false detection supplied from the operator terminal TE will be referred to as "false detection feedback."
図13、図14は、フィードバック入力受付画面の構成例について示した図である。 Figures 13 and 14 show examples of the configuration of the feedback input reception screen.
図13では、フィードバック部109において判定結果(非定常通信状態判定部104の判定結果)に基づくイベントの情報を表示するフィールドF101について示している。 Figure 13 shows field F101, which displays event information based on the judgment result (judgment result of the unsteady communication state judgment unit 104) in the feedback unit 109.
フィールドF101には、判定結果ごとにイベント(アラート)として表示するサブフィールドSFが配置されている。図13に示すフィールドF101には、上から時系列順にサブフィールドSF111、SF112、・・・が表示されている。 Field F101 contains subfields SF that display each judgment result as an event (alert). In field F101 shown in Figure 13, subfields SF111, SF112, etc. are displayed in chronological order from top to bottom.
図13に示す各サブフィールドには、当該イベントの名称を示す「イベント名」、当該イベントに係るIoT機器30を示す「機器情報」(ここではIPアドレスで表示しているがホスト名等他の表示形式でも良い)、当該イベントの「発生時刻」、及び当該イベントに係るログ情報の表示を受け付けるための詳細確認ボタンB101が配置されている。 Each subfield shown in Figure 13 contains an "Event Name" indicating the name of the event, "Device Information" indicating the IoT device 30 related to the event (displayed here as an IP address, but other display formats such as a host name may also be used), the "Occurrence Time" of the event, and a Details Confirmation button B101 for accepting the display of log information related to the event.
例えば、図13に示すサブフィールドSF111には、イベント名として「非定常通信常置検知」(非定常通信状態(異常状態)を検知したことを示すイベント名)、機器情報として、IoT機器30-1のIPアドレスを示す「xxx.xxx.xxx.xxx」、発生時刻として「14:50」と、当該イベント(異常)の検知に用いられたトラフィックデータの詳細(各IPパケットを示す情報)の表示を受け付けるための詳細確認ボタンB101が配置されている。 For example, subfield SF111 shown in FIG. 13 displays the event name "Permanent detection of non-steady communication" (an event name indicating that a non-steady communication state (abnormal state) has been detected), the device information includes "xxx.xxx.xxx.xxx" indicating the IP address of IoT device 30-1, the time of occurrence is "14:50", and a details confirmation button B101 for accepting a display of details of the traffic data (information indicating each IP packet) used to detect the event (abnormality).
この状態で、サブフィールドSF111の詳細確認ボタンB101が押下されると、フィードバック部109は、フィードバック入力受付画面で図14のフィールドF201を表示(例えば、ポップアップ表示)する。フィールドF201には、当該イベント(異常)の検知に用いられたトラフィックデータの詳細(各IPパケットを示す情報)を表示するためのサブフィールドSF201と、当該イベントについて誤検知フィードバックを受け付けるためのボタンB201が配置されている。図14の状態で、フィールドF201のボタンB201が押下されると、フィードバック部109は、当該イベントに係る判定結果について誤検知フィードバックがあったことを処理部101に通知する。フィードバック部109はサブフィールドSF201(トラフィックデータの詳細)を表示する際、処理部101Aを介して記憶部108から対応するトラフィックデータを取得する。 When the Confirm Details button B101 in subfield SF111 is pressed in this state, the feedback unit 109 displays field F201 in FIG. 14 on the feedback input acceptance screen (e.g., as a pop-up display). Field F201 contains subfield SF201 for displaying details of the traffic data (information indicating each IP packet) used to detect the event (anomaly), and button B201 for accepting false positive feedback for the event. When button B201 in field F201 is pressed in the state shown in FIG. 14, the feedback unit 109 notifies the processing unit 101 that false positive feedback has been received for the judgment result related to the event. When displaying subfield SF201 (traffic data details), the feedback unit 109 obtains the corresponding traffic data from the memory unit 108 via the processing unit 101A.
以上のように、フィードバック部109では、例えば、図13、図14に示すような構成のフィードバック入力受付画面で、誤検知フィードバックの受付を行う。 As described above, the feedback unit 109 accepts false detection feedback, for example, on a feedback input acceptance screen configured as shown in Figures 13 and 14.
処理部101Aは、フィードバック部109から誤検知フィードバックの通知を受けると、定常通信パターン学習部103Aに、機器固有非定常通信検知モデルと誤検知フィードバックされた通信パターンを通知し、機器固有非定常通信検知モデルの再学習を要求する。 When the processing unit 101A receives notification of false positive feedback from the feedback unit 109, it notifies the steady communication pattern learning unit 103A of the device-specific unsteady communication detection model and the communication pattern for which false positive feedback has been received, and requests that the device-specific unsteady communication detection model be re-learned.
定常通信パターン学習部103Aは、第1の実施形態に加え、処理部101から機器固有非定常通信検知モデルの再学習要求を受けると、逐次学習処理によって機器固有非定常通信検知モデルに誤検知フィードバックされた通信パターンを適用(誤検知フィードバックの内容を考慮)し、各非定常通信検知モデルを再構築する。定常通信パターン学習部103Aは、再構築した各機器固有非定常通信検知モデルを処理部101に通知する。 In addition to the first embodiment, when the steady communication pattern learning unit 103A receives a request from the processing unit 101 to re-learn the device-specific unsteady communication detection models, it applies the communication patterns that have been falsely detected as feedback to the device-specific unsteady communication detection models through a sequential learning process (taking into account the content of the false detection feedback) and reconstructs each unsteady communication detection model. The steady communication pattern learning unit 103A notifies the processing unit 101 of each reconstructed device-specific unsteady communication detection model.
これにより、トラフィック分析装置10Aでは、誤検知フィードバックされた通信パターンについて、以後の異常判定において異常検知されないように考慮して、当該通信パターンを正常通信パターンとして機械学習器で学習することができる。トラフィック分析装置10Aでは、この機械学習器として、逐次学習型の機械学習器(データが入力する度に内部パラメータを更新してモデルが再構築される機械学習器)を用いるようにしてもよい。この逐次学習型の機械学習器は、第2の実施形態の定常通信パターン学習部103Aにおいて、各機器固有非定常通信検知モデルの構築に用いられる。 As a result, the traffic analysis device 10A can use a machine learning machine to learn a communication pattern that has been falsely detected as feedback as a normal communication pattern, taking into consideration that the communication pattern will not be detected as an anomaly in subsequent anomaly determinations. The traffic analysis device 10A may use a sequential learning machine learning machine (a machine learning machine that updates internal parameters each time data is input and reconstructs a model) as this machine learning machine. This sequential learning machine is used in the steady communication pattern learning unit 103A of the second embodiment to build a device-specific unsteady communication detection model.
(B-2)第2の実施形態の動作
次に、以上のような構成を有する第2の実施形態におけるトラフィック分析装置10Aの動作(実施形態に係るトラフィック分析方法)を説明する。ここでは、トラフィック分析装置10Aの動作のうち第1の実施形態との差異についてのみ説明する。
(B-2) Operation of the Second Embodiment Next, the operation of the traffic analysis device 10A in the second embodiment having the above configuration (the traffic analysis method according to the embodiment) will be described. Here, only the differences between the operation of the traffic analysis device 10A and the first embodiment will be described.
ここでは、第2の実施形態におけるトラフィック分析装置10Aが運用モードあるいは混在モードで動作している時に、オペレータ端末TE(オペレータOP)から誤検知フィードバックを受信した時の動作を説明する。 Here, we will explain the operation of the traffic analysis device 10A in the second embodiment when it receives false detection feedback from the operator terminal TE (operator OP) while operating in operational mode or mixed mode.
ここでは、処理部101Aは、非定常通信状態判定部104から異常状態(非定常通信状態)のIoT機器30を検知したという判定結果を得た場合、フィードバック部109を制御して、オペレータ端末TEに提示するフィードバック入力受付画面(例えば、図13、図14のような操作画面)に当該判定結果の内容を追加表示させ、誤検知フィードバックの入力受付可能な状態とする。 Here, when the processing unit 101A receives a determination result from the non-steady communication state determination unit 104 that an IoT device 30 in an abnormal state (non-steady communication state) has been detected, it controls the feedback unit 109 to additionally display the contents of the determination result on a feedback input acceptance screen (for example, an operation screen such as those shown in Figures 13 and 14) presented on the operator terminal TE, thereby enabling the input of false detection feedback to be accepted.
ここでは、オペレータ端末TEにおいて、オペレータOPにより、図13に示すサブフィールドSF111(IoT機器30ー1に係る異常検知イベントを示すサブフィールド)の詳細確認ボタンB101が押下され、その後図14に示すフィールドF201においてボタンB201が押下されたものとする。これにより、フィードバック部109では、IoT機器30ー1に係る異常判定の結果について誤検知フィードバックを受け付けることができる。 Here, it is assumed that the operator OP presses the details confirmation button B101 in subfield SF111 (a subfield indicating an abnormality detection event related to IoT device 30-1) shown in FIG. 13 on the operator terminal TE, and then presses button B201 in field F201 shown in FIG. 14. This enables the feedback unit 109 to receive false detection feedback regarding the results of the abnormality determination related to IoT device 30-1.
フィードバック部109は、オペレータ端末TEから誤検知フィードバックの入力を受け付けると、誤検知フィードバックされたトラフィックデータを処理部101に通知する。処理部101は、記憶部108から機器固有非定常通信検知モデルを取得し、誤検知フィードバックされたトラフィックデータとともに定常通信パターン学習部103Aに通知し、各非常通信検知モデル(機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル、及び機器固有非定常通信検知モデル)の再学習(誤検知フィードバックの内容を考慮した再学習処理)を要求する。 When the feedback unit 109 receives input of false detection feedback from the operator terminal TE, it notifies the processing unit 101 of the traffic data that was falsely detected as feedback. The processing unit 101 acquires the device-specific unsteady communication detection model from the memory unit 108, notifies the steady communication pattern learning unit 103A of the traffic data that was falsely detected as feedback, and requests relearning (relearning processing that takes into account the content of the false detection feedback) of each emergency communication detection model (device type-specific unsteady communication detection model, vendor-specific unsteady communication detection model, and device-specific unsteady communication detection model).
定常通信パターン学習部103Aは、誤検知フィードバックされたトラフィックデータを逐次学習処理で各非定常通信検知モデルを再構築する。定常通信パターン学習部103Aは、再構築した各非定常通信検知モデルを処理部101に通知する。処理部101は、再構築された各非定常通信検知モデルを記憶部108に保存する。 The steady communication pattern learning unit 103A reconstructs each unsteady communication detection model through a sequential learning process using traffic data that has been fed back as false positives. The steady communication pattern learning unit 103A notifies the processing unit 101 of each reconstructed unsteady communication detection model. The processing unit 101 stores each reconstructed unsteady communication detection model in the memory unit 108.
(B-3)第2の実施形態の効果
この実施形態によれば、第1の実施形態の効果に加えて以下のような効果を奏することができる。
(B-3) Advantages of the Second Embodiment According to this embodiment, in addition to the advantages of the first embodiment, the following advantages can be achieved.
第2の実施形態におけるトラフィック分析装置10Aは、運用者から異常検知結果の誤検知フィードバック機能を有し、誤検知フィードバックされた通信パターンを正常な通信として再学習するために、各非定常通信検知モデルを逐次学習型の機械学習器で構築し、誤検知フィードバックの際には、誤検知フィードバックされた通信パターンを当該機械学習器に適用しモデルを再構築する。これにより、第2の実施形態におけるトラフィック分析装置10Aでは、例えば新規接続されたIoT機器30の固有通信パターンを異常と誤検知してしまう場合にも、誤検知フィードバックによって即座に定常通信モデルに適用されるため、誤検知が継続するのを抑制することができる。 The traffic analysis device 10A in the second embodiment has a function for receiving false positive feedback of anomaly detection results from the operator. In order to re-learn communication patterns that have been falsely detected as normal communication, each non-steady communication detection model is constructed using a sequential learning machine learning machine, and in the event of false positive feedback, the communication pattern that has been falsely detected as normal communication is applied to the machine learning machine to reconstruct the model. As a result, even if the traffic analysis device 10A in the second embodiment falsely detects the unique communication pattern of a newly connected IoT device 30 as an anomaly, for example, the false positive feedback immediately applies it to the steady communication model, thereby preventing the false positive from continuing.
(C)第3の実施形態
以下、本発明によるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法の第3の実施形態を、図面を参照しながら詳述する。
(C) Third Embodiment A traffic analysis device, a traffic analysis program, and a traffic analysis method according to a third embodiment of the present invention will now be described in detail with reference to the drawings.
第3の実施形態に関係する各装置の接続関係についても、図2を用いて示すことができる。図2において末尾がBの符号は、第3の実施形態においてのみ用いられる符号である。 The connection relationships of the devices related to the third embodiment can also be shown using Figure 2. In Figure 2, symbols ending with B are symbols used only in the third embodiment.
第3の実施形態においては、トラフィック分析装置10がトラフィック分析装置10Bに置き換えられている。 In the third embodiment, the traffic analysis device 10 is replaced with a traffic analysis device 10B.
図15は、第3の実施形態のトラフィック分析装置10Bの機能的構成について示したブロック図である。図15では、上述の図1と同一部分または対応部分には同一又は対応する符号が付されている。以下では、第1の実施形態について第1の実施形態との差異を中心として説明する。 Figure 15 is a block diagram showing the functional configuration of a traffic analysis device 10B according to the third embodiment. In Figure 15, parts that are the same as or correspond to those in Figure 1 described above are assigned the same or corresponding reference numerals. The following description of the first embodiment will focus on the differences from the first embodiment.
トラフィック分析装置10Bでは、処理部101が、処理部101Bに置き換わり、さらに定常通信パターン学習部103が除外されている点で第1の実施形態と異なっている。 The traffic analysis device 10B differs from the first embodiment in that the processing unit 101 is replaced with a processing unit 101B, and the steady-state communication pattern learning unit 103 is excluded.
上記の各実施形態では、トラフィック分析装置10、10Aは、定常通信パターン学習部103を有していたが、これに限定されるものではない。例えば、トラフィック分析装置10Bのように、定常通信パターン学習部103を持たない構成としてもよい。 In the above embodiments, the traffic analysis devices 10 and 10A have a steady-state communication pattern learning unit 103, but this is not limited to this. For example, a configuration without a steady-state communication pattern learning unit 103, like the traffic analysis device 10B, may also be used.
トラフィック分析装置10Bでは、各非定常通信検知モデル(機器種類別非定常通信検知モデル、ベンダ別非定常通信検知モデル、機器固有非定常通信検知モデル)について、外部装置(例えば、外部の図示しないクラウドサーバ)から取得して、非定常通信状態判定部104にセットし、判定処理を行うようにしてもよい。 The traffic analysis device 10B may acquire each unsteady communication detection model (unsteady communication detection model by device type, unsteady communication detection model by vendor, and device-specific unsteady communication detection model) from an external device (for example, an external cloud server not shown), set it in the unsteady communication state determination unit 104, and perform determination processing.
このとき、トラフィック分析装置10Bでは、定常通信パターン学習部103の処理を外部装置(例えば、外部の図示しないクラウドサーバ)に依頼して実行させるようにしてもよい。このように、複数のエッジネットワーク(監視対象ネットワーク)に係るトラフィック分析装置10Bからトラフィックデータを収集して学習処理を行うクラウドシステムでは、複数のエッジネットワーク(監視対象ネットワーク)に係るトラフィック分析装置10Bからトラフィックデータを集約して学習することで、より多くのデータを用いて非定常通信検知モデルを構築できるため、検知精度を高めることができる。 At this time, the traffic analysis device 10B may request an external device (for example, an external cloud server, not shown) to execute the processing of the steady communication pattern learning unit 103. In this way, in a cloud system that collects traffic data from traffic analysis devices 10B related to multiple edge networks (networks to be monitored) and performs learning processing, by aggregating and learning traffic data from traffic analysis devices 10B related to multiple edge networks (networks to be monitored), a non-steady communication detection model can be constructed using more data, thereby improving detection accuracy.
また、機械学習は一般に学習に多くの計算資源が必要となるため、第3の実施形態では、上記のような構成とすることで、トラフィック分析装置10Bの動作に必要な計算資源を抑えることができる。 Furthermore, because machine learning generally requires a large amount of computational resources for learning, the third embodiment uses the above-described configuration to reduce the computational resources required for the operation of the traffic analysis device 10B.
(D)第4の実施形態
以下、本発明によるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法の第4の実施形態を、図面を参照しながら詳述する。
(D) Fourth Embodiment A fourth embodiment of the traffic analysis device, traffic analysis program, and traffic analysis method according to the present invention will now be described in detail with reference to the drawings.
第4の実施形態に関係する各装置の接続関係についても、図2を用いて示すことができる。図2において末尾がCの符号は、第4の実施形態においてのみ用いられる符号である。 The connection relationships of the devices related to the fourth embodiment can also be shown using Figure 2. In Figure 2, symbols ending with C are symbols used only in the fourth embodiment.
第4の実施形態においては、トラフィック分析装置10がトラフィック分析装置10Cに置き換えられている。 In the fourth embodiment, the traffic analysis device 10 is replaced with a traffic analysis device 10C.
図16は、第4の実施形態のトラフィック分析装置10Cの機能的構成について示したブロック図である。図16では、上述の図1と同一部分または対応部分には同一又は対応する符号が付されている。以下では、第1の実施形態について第1の実施形態との差異を中心として説明する。 Figure 16 is a block diagram showing the functional configuration of a traffic analysis device 10C according to the fourth embodiment. In Figure 16, parts that are the same as or correspond to those in Figure 1 described above are assigned the same or corresponding reference numerals. The following description of the first embodiment will focus on the differences from the first embodiment.
トラフィック分析装置10Cでは、処理部101と非定常通信状態判定部104が、処理部101Cと非定常通信状態判定部104に置き換わり、さらにベンダ情報判定部106が除外されている点で第1の実施形態と異なっている。 The traffic analysis device 10C differs from the first embodiment in that the processing unit 101 and the unsteady communication state determination unit 104 are replaced with a processing unit 101C and an unsteady communication state determination unit 104, and further in that the vendor information determination unit 106 is excluded.
第3の実施形態のトラフィック分析装置10Cの非定常通信状態判定部104Cでは、ベンダ別非定常通信検知モデルによる異常判定処理を省略する点で第1の実施形態と異なっている。つまり、第3の実施形態のトラフィック分析装置10Cの非定常通信状態判定部104Cでは、機器種類別非定常通信検知モデルで異常判定し、異常検知されたトラフィックデータを機器固有非定常通信検知モデルで異常判定することで異常判定を行う。つまり、第3の実施形態の処理部101Cでは、ベンダ別非定常通信検知モデルに係る処理について一切行わない点で第1の実施形態と異なっている。 The unsteady communication state determination unit 104C of the traffic analysis device 10C of the third embodiment differs from the first embodiment in that it omits the anomaly determination process using a vendor-specific unsteady communication detection model. In other words, the unsteady communication state determination unit 104C of the traffic analysis device 10C of the third embodiment performs anomaly determination by determining anomalies using a device-type-specific unsteady communication detection model, and then determining anomalies in traffic data for which anomalies have been detected using a device-specific unsteady communication detection model. In other words, the processing unit 101C of the third embodiment differs from the first embodiment in that it does not perform any processing related to the vendor-specific unsteady communication detection model.
第3の実施形態のトラフィック分析装置10Cでは、ベンダ別非定常通信検知モデルの適用を除くことで、定常通信パターンの学習、および異常判定にかかる時間を短縮することができる。 In the traffic analysis device 10C of the third embodiment, by eliminating the application of vendor-specific unsteady communication detection models, the time required to learn steady communication patterns and determine anomalies can be reduced.
(E)第5の実施形態
以下、本発明によるトラフィック分析装置、トラフィック分析プログラム及びトラフィック分析方法の第5の実施形態を、図面を参照しながら詳述する。
(E) Fifth Embodiment A fifth embodiment of the traffic analysis device, traffic analysis program, and traffic analysis method according to the present invention will now be described in detail with reference to the drawings.
第5の実施形態に関係する各装置の接続関係についても、図2を用いて示すことができる。図2において末尾がDの符号は、第5の実施形態においてのみ用いられる符号である。 The connection relationships of the devices related to the fifth embodiment can also be shown using Figure 2. In Figure 2, symbols ending with D are symbols used only in the fifth embodiment.
第5の実施形態においては、トラフィック分析装置10がトラフィック分析装置10Dに置き換えられている。 In the fifth embodiment, the traffic analysis device 10 is replaced with a traffic analysis device 10D.
図17は、第5の実施形態のトラフィック分析装置10Dの機能的構成について示したブロック図である。図17では、上述の図1と同一部分または対応部分には同一又は対応する符号が付されている。以下では、第1の実施形態について第1の実施形態との差異を中心として説明する。 Figure 17 is a block diagram showing the functional configuration of a traffic analysis device 10D according to the fifth embodiment. In Figure 17, parts that are the same as or correspond to those in Figure 1 above are assigned the same or corresponding reference numerals. The following describes the first embodiment, focusing on the differences from the first embodiment.
トラフィック分析装置10Dでは、定常通信パターン学習部103が、定常通信パターン学習部103Dに置き換わっている点で第1の実施形態と異なっている。 The traffic analysis device 10D differs from the first embodiment in that the steady-state communication pattern learning unit 103 is replaced with a steady-state communication pattern learning unit 103D.
第1の実施形態のトラフィック分析装置10では、学習対象のフローを抽出する際、クラスタリングにより同一機器種類または同一ベンダの機器全てのいずれかのフローが属するグループ等を各種非定常通信検知モデル構築の学習データ対象としたが、これに限定されるものではない。この実施形態の、トラフィック分析装置10Dの定常通信パターン学習部103Dでは、学習モードで取得された全体のフロー数に対して、機器固有非定常通信検知モデルとベンダ別非定常通信検知モデルの構築で使用するフロー数の割合をパラメータで設定しておき、その割合を満たすように学習に使用するグループを抽出するものとする。 In the traffic analysis device 10 of the first embodiment, when extracting flows to be learned, groups to which flows from either the same device type or all devices from the same vendor belong by clustering are used as learning data targets for constructing various unsteady communication detection models, but this is not limited to this. In this embodiment, the steady communication pattern learning unit 103D of the traffic analysis device 10D sets a parameter for the ratio of the number of flows used to construct device-specific unsteady communication detection models and vendor-specific unsteady communication detection models to the total number of flows acquired in learning mode, and extracts groups to be used for learning so that this ratio is satisfied.
具体的には、この実施形態の定常通信パターン学習部103Dでは、あるグループにおいて含まれるフローに係るIoT機器30の機器種類を集計した場合に全ての対象機器種類に対して何割含まれているかを示すパラメータ(以下、「機器種類グループ所属率」と呼ぶ)と、グループにおいて含まれるフローに係るIoT機器30のベンダを集計した場合に最もフロー数の多いベンダの比率(グループ内の全フロー数に対する比率)を示すパラメータ(以下、「ベンダグループ所属率」と呼ぶ)を導入するものとする。例えば、あるグループにおいて含まれるフローに係るIoT機器30の機器種類を集計した際に、全ての対象機器が含まれていれば機器種類グループ所属率は100%であり、全ての対象機器のうち8割の対象機器が含まれていれば機器種類グループ所属率は80%となる。また、例えば、グループにおいて含まれるフローに係るIoT機器30のベンダを集計した際に、全てのフローに係るIoT機器30が同じベンダであった場合ベンダグループ所属率は100%であり、最も数の多いベンダのフロー数がグループ全体の8割であった場合ベンダグループ所属率は80%となる。 Specifically, the steady-state communication pattern learning unit 103D of this embodiment introduces a parameter (hereinafter referred to as the "device type group membership rate") that indicates the percentage of all target device types included when the device types of IoT devices 30 related to the flows included in a certain group are tallied, and a parameter (hereinafter referred to as the "vendor group membership rate") that indicates the proportion of the vendor with the largest number of flows (proportion to the total number of flows in the group) when the vendors of IoT devices 30 related to the flows included in a certain group are tallied. For example, when the device types of IoT devices 30 related to the flows included in a certain group are tallied, if all target devices are included, the device type group membership rate is 100%, and if 80% of all target devices are included, the device type group membership rate is 80%. Furthermore, for example, when the vendors of the IoT devices 30 related to the flows included in a group are tallied, if the IoT devices 30 related to all flows are from the same vendor, the vendor group affiliation rate is 100%, and if the number of flows from the vendor with the largest number accounts for 80% of the total number of flows in the group, the vendor group affiliation rate is 80%.
この実施形態の定常通信パターン学習部103Dは、機器種類別非定常通信検知モデルの学習に利用するグループを抽出する際に、グループごとに機器種類グループ所属率を算出し、機器種類グループ所属率が基準以上(以下、この基準を「基準機器種類グループ所属率」と呼ぶ)であった場合に当該グループを学習対象として抽出するものとする。また、この実施形態の定常通信パターン学習部103Dは、ベンダ別非定常通信検知モデルの学習に利用するグループを抽出する際に、グループごとにベンダグループ所属率を算出し、ベンダグループ所属率が基準以上(以下、この基準を「基準ベンダグループ所属率」と呼ぶ)であった場合に当該グループを学習対象として抽出するものとする。 When extracting groups to be used in learning the device type-specific unsteady communication detection model, the steady communication pattern learning unit 103D in this embodiment calculates the device type group affiliation rate for each group, and extracts the group as a learning target if the device type group affiliation rate is equal to or greater than a standard (hereinafter, this standard will be referred to as the "standard device type group affiliation rate"). When extracting groups to be used in learning the vendor-specific unsteady communication detection model, the steady communication pattern learning unit 103D in this embodiment calculates the vendor group affiliation rate for each group, and extracts the group as a learning target if the vendor group affiliation rate is equal to or greater than a standard (hereinafter, this standard will be referred to as the "standard vendor group affiliation rate").
この実施形態において、基準機器種類グループ所属率の初期値は100%であり、基準機器種類グループ所属率が100%の場合は、全ての対象機器種類のフローが含まれるグループについて学習に利用することを意味する。また、この実施形態において、基準ベンダグループ所属率の初期値は100%であり、基準ベンダグループ所属率が100%の場合は、全ての機器のベンダが同一となるグループについて学習に利用することを意味する。つまり、第1の実施形態において基準機器種類グループ所属率及び基準ベンダグループ所属率は100%で固定されていたが、この実施形態では基準機器種類グループ所属率及び基準ベンダグループ所属率は可変のパラメータとなっているものとする。 In this embodiment, the initial value of the reference device type group affiliation rate is 100%, and a reference device type group affiliation rate of 100% means that a group containing flows of all target device types is used for learning. Also, in this embodiment, the initial value of the reference vendor group affiliation rate is 100%, and a reference vendor group affiliation rate of 100% means that a group in which all devices have the same vendor is used for learning. In other words, while in the first embodiment the reference device type group affiliation rate and reference vendor group affiliation rate were fixed at 100%, in this embodiment the reference device type group affiliation rate and reference vendor group affiliation rate are variable parameters.
さらに、この実施形態において、当初学習用に入力されたトラフィックデータの全てのフロー(以下、「全体フロー」と呼ぶ)に対して、機器種類別非定常通信検知モデル及びベンダ別非定常通信検知モデルの学習用に抽出されなかったフロー(以下、「未抽出フロー」と呼ぶ)の比率を「フロー未抽出率」と呼ぶものとする。例えば、全体フローが100で未抽出フローが10であれば、フロー未抽出率は10%となる。そして、この実施形態の定常通信パターン学習部103では、フロー未抽出率の目標値(以下、「目標フロー未抽出率」と呼ぶ)が設けられており、フロー未抽出率が目標フロー未抽出率より大きくなる場合、フロー未抽出率が目標フロー未抽出率以下となるまで、基準機器種類グループ所属率及び又は基準ベンダグループ所属率を下げる処理を行うものとする。ここで、定常通信パターン学習部103は、基準機器種類グループ所属率と基準ベンダグループ所属率を同時に下げる処理は行わず、基準機器種類グループ所属率と基準ベンダグループ所属率を交互に下げて、フロー未抽出率を確認する処理を行うものとする。ここでは、定常通信パターン学習部103は、繰り返し回数(フロー未抽出率を確認する処理の回数)が奇数回の場合は基準機器種類グループ所属率を低減(1度に5%低減)し、繰り返し回数(フロー未抽出率を確認する処理の回数)が偶数回の場合はベンダ別非定常通信検知モデルを低減(1度に5%低減)するものとして説明するものとするがこれに限定されるものではない。基準機器種類グループ所属率及び基準ベンダグループ所属率を一度に低減する幅は5%に限定されず他の値を適用するようにしてもよい。 Furthermore, in this embodiment, the ratio of flows not extracted for learning the device type-specific unsteady communication detection model and the vendor-specific unsteady communication detection model (hereinafter referred to as "unextracted flows") to all flows of traffic data initially input for learning (hereinafter referred to as "total flows") is referred to as the "flow unextraction rate." For example, if the total flow is 100 and the unextracted flows are 10, the flow unextraction rate is 10%. In this embodiment, the steady communication pattern learning unit 103 is set to a target value for the flow unextraction rate (hereinafter referred to as the "target flow unextraction rate"). If the flow unextraction rate exceeds the target flow unextraction rate, the steady communication pattern learning unit 103 performs processing to lower the reference device type group affiliation rate and/or the reference vendor group affiliation rate until the flow unextraction rate becomes equal to or less than the target flow unextraction rate. Here, the steady communication pattern learning unit 103 does not simultaneously lower the reference device type group affiliation rate and the reference vendor group affiliation rate, but instead performs processing to confirm the flow unextraction rate by alternately lowering the reference device type group affiliation rate and the reference vendor group affiliation rate. Here, the steady communication pattern learning unit 103 is described as reducing the reference device type group membership rate (by 5% at a time) when the number of repetitions (number of times the process checks the flow unextraction rate) is odd, and reducing the vendor-specific unsteady communication detection model (by 5% at a time) when the number of repetitions (number of times the process checks the flow unextraction rate) is even, but is not limited to this. The amount by which the reference device type group membership rate and reference vendor group membership rate are reduced at one time is not limited to 5%, and other values may be applied.
ここでは、目標フロー未抽出率を達成するために基準ベンダグループ所属率を調整(減算)するためのパラメータをi(iは0~100の範囲で変動)とし、ベンダグループ所属率を調整(減算)するためのパラメータをj(jは0~100の範囲で変動)とする。つまり、機器種類グループ所属率は、「100-i[%]」であり、ベンダグループ所属率は、「100-j[%]」となる。したがって、iとjの初期値を0とすると、基準機器種類グループ所属率と基準ベンダグループ所属率の初期値が100%となる。目標フロー未抽出率については、例えば、1%としてもよい。 Here, the parameter for adjusting (subtracting) the reference vendor group affiliation rate to achieve the target flow unextraction rate is i (i varies between 0 and 100), and the parameter for adjusting (subtracting) the vendor group affiliation rate is j (j varies between 0 and 100). In other words, the device type group affiliation rate is "100-i [%]", and the vendor group affiliation rate is "100-j [%]". Therefore, if the initial values of i and j are set to 0, the initial values of the reference device type group affiliation rate and the reference vendor group affiliation rate will be 100%. The target flow unextraction rate may be set to 1%, for example.
図18は、この実施形態の処理部101Dの学習モード時の動作について示したフローチャートである。 Figure 18 is a flowchart showing the operation of the processing unit 101D in this embodiment in learning mode.
まず、定常通信パターン学習部103Dは、取得したトラフィックデータの通信フローを機器種類別に分割する(S801)。 First, the steady-state communication pattern learning unit 103D divides the communication flows of the acquired traffic data by device type (S801).
次に、定常通信パターン学習部103Dは、クラスタリング(機器種類別のクラスタリング)でフローをグループ化した時の学習に利用するグループの抽出条件として、基準機器種類グループ所属率を「100-i[%]」に設定し(S802)、基準機器種類グループ所属率を満たすように、トラフィックデータから学習に利用するグループ(フローのグループ)を抽出する(S803)。 Next, the steady-state communication pattern learning unit 103D sets the standard device type group membership rate to "100-i [%]" as the extraction condition for groups to be used for learning when flows are grouped by clustering (clustering by device type) (S802), and extracts groups (flow groups) to be used for learning from the traffic data so that the standard device type group membership rate is satisfied (S803).
次に、定常通信パターン学習部103Dは、ステップS801の処理で抽出されなかったフロー(機器種類別非定常通信検知モデルの構築に用いられなかったフロー)について、ベンダ毎にフローを分類する(S804)。 Next, the steady communication pattern learning unit 103D classifies flows that were not extracted in the processing of step S801 (flows that were not used to build the device type-specific unsteady communication detection model) by vendor (S804).
次に、定常通信パターン学習部103Dは、クラスタリング(ベンダ別のクラスタリング)でフローをグループ化した時の学習に利用するグループの抽出条件として、基準ベンダグループ所属率を「100-j[%]」に設定し(S805)、基準ベンダグループ所属率を満たすように、トラフィックデータから学習に利用するグループ(フローのグループ)を抽出する(S806)。 Next, the steady-state communication pattern learning unit 103D sets the reference vendor group affiliation rate to "100-j [%]" as the extraction condition for groups to be used for learning when flows are grouped by clustering (clustering by vendor) (S805), and extracts groups (groups of flows) to be used for learning from the traffic data so that the reference vendor group affiliation rate is satisfied (S806).
次に、定常通信パターン学習部103Dは、フロー未抽出率を計算し、目標フロー未抽出率以下であるか確認する(S807)。 Next, the steady-state communication pattern learning unit 103D calculates the flow unextracted rate and checks whether it is equal to or less than the target flow unextracted rate (S807).
フロー未抽出率が目標フロー未抽出率以下の場合、定常通信パターン学習部103Dは、グループ化処理を完了する(S811)。そして、定常通信パターン学習部103Dは、最後にステップS801で抽出したグループのフローを用いて機器種類別非定常通信検知モデルを構築し、最後にステップS806で抽出したグループのフローを用いてベンダ別非定常通信検知モデルの構築を行うものとする。 If the unextracted flow rate is equal to or less than the target unextracted flow rate, the steady communication pattern learning unit 103D completes the grouping process (S811). The steady communication pattern learning unit 103D then constructs an unsteady communication detection model by device type using the flows of the group extracted in step S801, and finally constructs an unsteady communication detection model by vendor using the flows of the group extracted in step S806.
フロー未抽出率が目標フロー未抽出率より大きい場合、定常通信パターン学習部103Dは、繰り返し回数が偶数か奇数か確認する(S808)。 If the unextracted flow rate is greater than the target unextracted flow rate, the steady-state communication pattern learning unit 103D checks whether the number of repetitions is even or odd (S808).
繰り返し回数が偶数だった場合、定常通信パターン学習部103Dは、基準機器種類グループ所属率を5%減算(iに5を加算;i=i+5)して(S809)、上述のステップS802に戻って動作する。一方、繰り返し回数が奇数だった場合、定常通信パターン学習部103Dは、基準ベンダグループ所属率を5%減算(jに5を加算;j=i+5)して(S810)、上述のステップS802に戻って動作する。なお、このとき、iとjの減算幅は5%に限定されないものである。 If the number of repetitions is an even number, the steady-state communication pattern learning unit 103D subtracts 5% from the reference device type group affiliation rate (adds 5 to i; i = i + 5) (S809) and returns to step S802 described above for operation. On the other hand, if the number of repetitions is an odd number, the steady-state communication pattern learning unit 103D subtracts 5% from the reference vendor group affiliation rate (adds 5 to j; j = i + 5) (S810) and returns to step S802 described above for operation. Note that the amount of subtraction of i and j is not limited to 5% at this time.
以上のような処理により、定常通信パターン学習部103Dでは、機器固有非定常通信検知モデル及びベンダ別非定常通信検知モデルの学習難易度を調整することが可能になる。 Through the above processing, the steady communication pattern learning unit 103D is able to adjust the learning difficulty of the device-specific unsteady communication detection model and the vendor-specific unsteady communication detection model.
なお、機器固有非定常通信検知モデル/ベンダ別非定常通信検知モデルで学習する通信パターンが多いほど、機器固有非定常通信検知モデル/ベンダ別非定常通信検知モデルにおける検知精度は低くなっていく。一方、機器固有非定常通信検知モデル/ベンダ別非定常通信検知モデルで学習する通信パターンが少ないほど、機器固有非定常通信検知モデル/ベンダ別非定常通信検知モデルにおける検知精度は高くなるが、機器種類別非定常通信検知モデル/ベンダ別非定常通信検知モデルの学習データが複雑化するため、これらのモデルの検知精度は低くなる。そのため、この実施形態では、この目標値を全体の検知精度を最大化するように調整(目標フロー未抽出率を達成するようにiとjを調整)することにより検知精度を高めることができる。 Note that the more communication patterns the device-specific unsteady communication detection model/vendor-specific unsteady communication detection model learns, the lower the detection accuracy of the device-specific unsteady communication detection model/vendor-specific unsteady communication detection model. On the other hand, the fewer communication patterns the device-specific unsteady communication detection model/vendor-specific unsteady communication detection model learns, the higher the detection accuracy of the device-specific unsteady communication detection model/vendor-specific unsteady communication detection model. However, the learning data for the device-type-specific unsteady communication detection model/vendor-specific unsteady communication detection model becomes more complex, resulting in lower detection accuracy for these models. Therefore, in this embodiment, detection accuracy can be improved by adjusting this target value to maximize overall detection accuracy (adjusting i and j to achieve the target flow unextraction rate).
なお、ここで、目標フロー未抽出率を0(機器固有非定常通信検知モデルで学習するフロー数がゼロ)になるように設定するようにしてもよい。これにより、機器種類別非定常通信検知モデルとベンダ別非定常通信検知モデルのみで異常判定することができるようになり、機器固有非定常通信検知モデルの学習と異常判定にかかる時間を短縮することができる。 Note that the target flow unextraction rate may be set to 0 (the number of flows learned by the device-specific unsteady communication detection model is zero). This allows anomalies to be detected using only the device-type-specific unsteady communication detection model and the vendor-specific unsteady communication detection model, thereby shortening the time required for learning the device-specific unsteady communication detection model and for anomaly detection.
(F)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(F) Other Embodiments The present invention is not limited to the above-described embodiments, and modified embodiments such as those exemplified below can also be mentioned.
(F-1)上記の各実施形態の機器種類判定部105における機器種類判定方法は、トラフィックデータを用いて教師あり機械学習により構築した判定モデルを利用したが、これに限定されるものではない。例えば、トラフィック分析装置10では、新たなIoT機器30が監視対象ネットワークN1に接続される度に、オペレータから手動で当該IoT機器30の機器種類情報(当該IoT機器30と機器種類との関係を示す情報)入力を受け付けるようにしてもよい。機器種類判定部105において、機械学習器で機器種類を判定する場合誤検知する可能性があるが、上記のように機器種類情報について手動で入力を受け付けることにより、機器種類を確実に認識することができる。 (F-1) In each of the above embodiments, the device type determination method in the device type determination unit 105 utilizes a determination model constructed through supervised machine learning using traffic data, but is not limited to this. For example, the traffic analysis device 10 may be configured to receive manual input of device type information (information indicating the relationship between the IoT device 30 and the device type) for the IoT device 30 from an operator each time a new IoT device 30 is connected to the monitored network N1. While the device type determination unit 105 may make erroneous detections when determining device type using a machine learning device, receiving manual input of device type information as described above allows for reliable recognition of device type.
(F-2)上記の各実施形態の機器種類判定部105における機器種類判定モデルは、未知の機器種類を含むいずれかの機器種類に分類する機械学習器を用いたが、これに限定されるものではない。例えば、機器種類判定部105において、機器種類毎にトラフィックデータを集約し、その機器種類であるか否かを出力する2値分類器を構築する方法が考えられる。この場合、機器種類判定部105では、各機器種類の2値分類器に順に適用していき機器種類を判定することになる。例えば、機器種類判定部105では、複数の機器種類の2値分類器で機器種類判定された場合(例えば2値分類器の出力として当該機器種類である確率値が出力される場合)は、最も値の大きい2値分類器の機器種類を判定結果とするようにしても良い。また、例えば、機器種類判定部105では、いずれの2値分類器でも確率値が一定値以下ならば、未知の機器種類と判定するようにしてもよい。機器種類判定部105では、上記の各実施形態で説明した判定方法を適用すると未知の機器種類を新たに学習する際に判定モデル全体の再構築が必要だったが、上記の変形例の判定方法では新しい機器種類のみの機械学習器を構築するだけでよいため、学習にかかる時間を短縮することができる。 (F-2) In each of the above embodiments, the device type determination model in the device type determination unit 105 uses a machine learning machine that classifies the device into one of several types, including unknown device types. However, this is not limited to this. For example, the device type determination unit 105 may aggregate traffic data by device type and construct a binary classifier that outputs whether the device is of that type. In this case, the device type determination unit 105 sequentially applies the binary classifiers for each device type to determine the device type. For example, if the device type determination unit 105 determines the device type using multiple binary classifiers for device types (e.g., if the binary classifier outputs a probability value indicating the device type), the device type determination unit 105 may use the binary classifier with the largest value as the determination result. Furthermore, for example, the device type determination unit 105 may determine the device type as unknown if the probability value in all binary classifiers is below a certain value. When the device type determination unit 105 applies the determination methods described in the above embodiments, it is necessary to reconstruct the entire determination model when learning a new, unknown device type. However, with the determination method of the above modified example, it is only necessary to construct a machine learning machine for only the new device type, thereby reducing the time required for learning.
(F-3)上記の各実施形態では、機器固有非定常通信検知モデルとして、全てのIoT機器30の固有通信パターンのトラフィックデータをまとめて一つの検知モデルを構築したが、これに限定されるものではない。例えば、定常通信パターン学習部103では、IoT機器30毎に機器固有非定常通信検知モデルを構築する方法を適用するようにしてもよい。この場合、定常通信パターン学習部103では、運用モード中に新規接続されたIoT機器30について定常通信パターンの学習をする必要があるが、機器種類別非定常通信検知モデルとベンダ別非定常通信検知モデルで共通的な通信パターンは学習済みであるため、IoT機器30毎の機器固有非定常通信検知モデルの学習に必要な時間を短縮できる効果を保有した上で、検知精度も高めることができる。 (F-3) In the above embodiments, a single detection model is constructed as a device-specific unsteady communication detection model by aggregating the traffic data of the unique communication patterns of all IoT devices 30, but this is not limited to this. For example, the steady communication pattern learning unit 103 may apply a method of constructing a device-specific unsteady communication detection model for each IoT device 30. In this case, the steady communication pattern learning unit 103 needs to learn the steady communication patterns of IoT devices 30 that are newly connected during operation mode. However, because communication patterns common to the device-type-specific unsteady communication detection model and the vendor-specific unsteady communication detection model have already been learned, it is possible to shorten the time required to learn a device-specific unsteady communication detection model for each IoT device 30, while also improving detection accuracy.
(F-4)第2の実施形態のトラフィック分析装置10Aでは、誤検知フィードバックされたトラフィックデータを逐次型機械学習により機器固有非定常通信検知モデルを再構築する方法を説明したが、これに限定されるものではない。例えば、トラフィック分析装置10Aにおいて、誤検知フィードバックされたトラフィックデータの特定のフィールド値をホワイトリストとして保持し、非定常通信状態判定部104で当該ホワイトリストに含まれるトラフィックデータを異常検知しないようにする方法が考えられる。この方法では、例えばオペレータOPが、管理画面(フィードバック入力受付画面)からトラフィックデータを確認し誤検知フィードバックする際に、宛先IPアドレスやTCPポート番号やペイロードの特定のワードというような単位で誤検知とみなした要因を通知することでホワイトリストを作成するようにしてもよい。フィードバック入力受付画面では、上記のようなホワイトリスト型の処理を適用することにより、誤検知フィードバックに係るトラフィックデータを以後確実に異常検知しないようにすることができる。また、第3の実施形態のトラフィック分析装置10Bのように、定常通信パターン学習部103を持たない構成でも、上記のようなホワイトリスト型の処理を適用することにより、誤検知フィードバックによる誤検知抑制を実行することができる。 (F-4) In the traffic analysis device 10A of the second embodiment, a method for reconstructing a device-specific unsteady communication detection model using sequential machine learning on traffic data that has received false positive feedback has been described. However, this is not limiting. For example, the traffic analysis device 10A may store specific field values of traffic data that has received false positive feedback as a whitelist, and the unsteady communication state determination unit 104 may prevent traffic data included in the whitelist from being detected as an anomaly. In this method, for example, when an operator OP checks traffic data on a management screen (feedback input reception screen) and provides false positive feedback, the operator OP may create a whitelist by notifying the operator of the cause of the false positive, such as the destination IP address, TCP port number, or specific words in the payload. By applying the above-described whitelist-type processing on the feedback input reception screen, it is possible to reliably prevent traffic data related to false positive feedback from being detected as an anomaly in the future. Furthermore, even in a configuration that does not have the steady communication pattern learning unit 103, such as the traffic analysis device 10B of the third embodiment, false positives due to false positive feedback can be suppressed by applying the above-described whitelist-type processing.
(F-5)上記の各実施形態では、ベンダ情報判定部106においてベンダ情報を取得方法として、MACアドレスのベンダコード(OUI)をインターネットに問い合わせる方法を利用したが、これに限定されるものではない。例えば、ベンダ情報判定部106において、MACアドレスとベンダの組み合わせを予めトラフィック分析装置に格納しておき、格納した情報を参照する形でIoT機器30ごとのベンダ情報を取得しても良い。この方法では、トラフィック分析装置10がインターネットN2への接続をしなくてもベンダ情報を保持できるため、インターネット接続ができないクローズドな環境でも使用可能となる。 (F-5) In the above embodiments, the vendor information determination unit 106 acquires vendor information by querying the Internet for the vendor code (OUI) of the MAC address, but this is not limited to this method. For example, the vendor information determination unit 106 may store a combination of MAC address and vendor in advance in the traffic analysis device, and acquire vendor information for each IoT device 30 by referencing the stored information. This method allows the traffic analysis device 10 to retain vendor information without connecting to the Internet N2, making it usable even in closed environments where Internet connectivity is unavailable.
10…トラフィック分析装置、101…処理部、102…トラフィックデータ収集部、103…定常通信パターン学習部、104…非定常通信状態判定部、105…機器種類判定部、106…ベンダ情報判定部、107…通信制御部、108…記憶部、20…ネットワークスイッチ、40…ゲートウェイ、30(30ー1~30-N)…IoT機器、N1…監視対象ネットワーク、N2…インターネット。 10...traffic analysis device, 101...processing unit, 102...traffic data collection unit, 103...steady communication pattern learning unit, 104...unsteady communication state determination unit, 105...device type determination unit, 106...vendor information determination unit, 107...communication control unit, 108...storage unit, 20...network switch, 40...gateway, 30 (30-1 to 30-N)...IoT device, N1...monitored network, N2...Internet.
Claims (8)
それぞれの前記通信機器の属性を認識する属性認識手段と、
前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行う非定常通信判定手段とを有し、
前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、
前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、
前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行う
ことを特徴とするトラフィック分析装置。 an unsteady communication determination model holding means for holding an unsteady communication determination model that uses a learning model that has been machine-learned to learn traffic data patterns in a steady communication state for each attribute of a communication device connected to a target network to determine whether the communication device is in an unsteady communication state from the traffic data of the communication device;
attribute recognition means for recognizing attributes of each of the communication devices;
an unsteady communication determination means for performing an unsteady communication determination process using the unsteady communication determination model to determine whether or not the communication device is in an unsteady communication state from traffic data of the communication device;
the non-steady communication determination model holding means holds learning traffic data from each of the communication devices, divides the held learning traffic data into flows, classifies each of the flows into the attributes, and performs machine learning to build and hold the non-steady communication determination model for each of the attributes;
the non-steady communication determination model holding means holds a device type-specific non-steady communication determination model that determines whether the communication device is in a non-steady communication state from the traffic data of the communication device using a learning model that has been machine-learned based on a traffic data pattern in a steady communication state for each device type of the communication device;
the unsteady communication determination means performs the unsteady communication determination process using at least the device type-specific unsteady communication determination model;
the unsteady communication determination model holding means holds an unsteady communication determination model for each manufacturer of the communication devices, which determines whether the communication devices are in an unsteady communication state from the traffic data of the communication devices, using a learning model that has been machine-learned based on a pattern of traffic data in a steady communication state for each manufacturer of the communication devices;
The unsteady communication determination means further performs the unsteady communication determination process using the unsteady communication determination model by manufacturer.
A traffic analysis device characterized by:
前記非定常通信判定手段は、さらに、前記機器固有非定常通信判定モデルも用いて前記非定常通信判定処理を行う
ことを特徴とする請求項3に記載のトラフィック分析装置。 the unsteady communication determination model holding means further constructs and holds a device-specific unsteady communication determination model that determines whether the communication device is in an unsteady communication state from traffic data of the communication device, using a learning model that has been machine-learned from the flows that were not extracted in either the first extraction process or the second extraction process;
The traffic analysis device according to claim 3 , wherein the unsteady communication determination means performs the unsteady communication determination process by further using the device-specific unsteady communication determination model.
前記非定常通信判定モデル保持手段は、前記フィードバック情報を考慮して前記非定常通信判定モデルを構築して保持することを特徴とする請求項1~5のいずれかに記載のトラフィック分析装置。 a feedback receiving unit configured to receive feedback information relating to a result of the unsteady communication determination process performed by the unsteady communication determining unit;
6. The traffic analysis device according to claim 1 , wherein the non-steady communication determination model holding means builds and holds the non-steady communication determination model in consideration of the feedback information.
対象ネットワークに接続する通信機器の属性ごとに、定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定モデルを保持する非定常通信判定モデル保持手段と、
それぞれの前記通信機器の属性を認識する属性認識手段と、
前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行う非定常通信判定手段として機能させ、
前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、
前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、
前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行う
ことを特徴とするトラフィック分析プログラム。 Computer,
an unsteady communication determination model holding means for holding an unsteady communication determination model that uses a learning model that has been machine-learned to learn traffic data patterns in a steady communication state for each attribute of a communication device connected to a target network to determine whether the communication device is in an unsteady communication state from the traffic data of the communication device;
attribute recognition means for recognizing attributes of each of the communication devices;
using the unsteady communication determination model, and causing the communication device to function as unsteady communication determination means for performing unsteady communication determination processing to determine whether or not the communication device is in an unsteady communication state from traffic data of the communication device;
the non-steady communication determination model holding means holds learning traffic data from each of the communication devices, divides the held learning traffic data into flows, classifies each of the flows into the attributes, and performs machine learning to build and hold the non-steady communication determination model for each of the attributes;
the non-steady communication determination model holding means holds a device type-specific non-steady communication determination model that determines whether the communication device is in a non-steady communication state from the traffic data of the communication device using a learning model that has been machine-learned based on a traffic data pattern in a steady communication state for each device type of the communication device;
the unsteady communication determination means performs the unsteady communication determination process using at least the device type-specific unsteady communication determination model;
the unsteady communication determination model holding means holds an unsteady communication determination model for each manufacturer of the communication devices, which determines whether the communication devices are in an unsteady communication state from the traffic data of the communication devices, using a learning model that has been machine-learned based on a pattern of traffic data in a steady communication state for each manufacturer of the communication devices;
The unsteady communication determination means further performs the unsteady communication determination process using the unsteady communication determination model by manufacturer.
A traffic analysis program characterized by:
前記トラフィック分析装置は、非定常通信判定モデル保持手段と、属性認識手段と、非定常通信判定手段とを備え、
前記非定常通信判定モデル保持手段は、対象ネットワークに接続する通信機器の属性ごとに、定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定モデルを保持し、
前記属性認識手段は、それぞれの前記通信機器の属性を認識し、
前記非定常通信判定手段は、前記非定常通信判定モデルを用いて、前記通信機器のトラフィックデータから、前記通信機器が非定常通信状態であるか否かを判定する非定常通信判定処理を行い、
前記非定常通信判定モデル保持手段は、それぞれの前記通信機器から学習用のトラフィックデータを保持し、保持した前記学習用のトラフィックデータをフロー毎に分割し、それぞれの前記フローを前記属性ごとに分類して機械学習を行うことにより、前記属性ごとの前記非定常通信判定モデルを構築して保持し、
前記非定常通信判定モデル保持手段は、前記通信機器の機器種類ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する機器種類別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、少なくとも前記機器種類別非定常通信判定モデルを用いて前記非定常通信判定処理を行い、
前記非定常通信判定モデル保持手段は、前記通信機器の製造元ごとに定常通信状態におけるトラフィックデータのパターンを機械学習した学習モデルを用いて、前記通信機器のトラフィックデータから前記通信機器が非定常通信状態であるか否かを判定する製造元別非定常通信判定モデルを保持し、
前記非定常通信判定手段は、さらに、前記製造元別非定常通信判定モデルも用いて前記非定常通信判定処理を行う
ことを特徴とするトラフィック分析方法。 A traffic analysis method performed by a traffic analysis device,
the traffic analysis device comprises an unsteady communication determination model storage means, an attribute recognition means, and an unsteady communication determination means;
the non-steady communication determination model holding means holds a non-steady communication determination model that uses a learning model that has machine-learned traffic data patterns in a steady communication state for each attribute of a communication device connected to a target network to determine whether the communication device is in a non-steady communication state from the traffic data of the communication device;
the attribute recognition means recognizes the attributes of each of the communication devices;
the unsteady communication determination means performs unsteady communication determination processing to determine whether the communication device is in an unsteady communication state from traffic data of the communication device using the unsteady communication determination model;
the non-steady communication determination model holding means holds learning traffic data from each of the communication devices, divides the held learning traffic data into flows, classifies each of the flows into the attributes, and performs machine learning to build and hold the non-steady communication determination model for each of the attributes;
the non-steady communication determination model holding means holds a device type-specific non-steady communication determination model that determines whether the communication device is in a non-steady communication state from the traffic data of the communication device using a learning model that has been machine-learned based on a traffic data pattern in a steady communication state for each device type of the communication device;
the unsteady communication determination means performs the unsteady communication determination process using at least the device type-specific unsteady communication determination model;
the unsteady communication determination model holding means holds an unsteady communication determination model for each manufacturer of the communication devices, which determines whether the communication devices are in an unsteady communication state from the traffic data of the communication devices, using a learning model that has been machine-learned based on a pattern of traffic data in a steady communication state for each manufacturer of the communication devices;
The unsteady communication determination means further performs the unsteady communication determination process using the unsteady communication determination model by manufacturer.
A traffic analysis method comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022007243A JP7790165B2 (en) | 2022-01-20 | 2022-01-20 | Traffic analysis device, traffic analysis program, and traffic analysis method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022007243A JP7790165B2 (en) | 2022-01-20 | 2022-01-20 | Traffic analysis device, traffic analysis program, and traffic analysis method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023106103A JP2023106103A (en) | 2023-08-01 |
| JP7790165B2 true JP7790165B2 (en) | 2025-12-23 |
Family
ID=87473100
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022007243A Active JP7790165B2 (en) | 2022-01-20 | 2022-01-20 | Traffic analysis device, traffic analysis program, and traffic analysis method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7790165B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025115164A1 (en) * | 2023-11-30 | 2025-06-05 | 日本電信電話株式会社 | Feature amount extraction device and feature amount extraction method |
| WO2025177335A1 (en) * | 2024-02-19 | 2025-08-28 | Ntt株式会社 | Information processing device and information processing method |
| CN120354242B (en) * | 2025-06-23 | 2025-09-02 | 青岛科技大学 | Data cleaning and steady-state detection method and system based on robust time series modeling |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017163179A (en) | 2016-03-07 | 2017-09-14 | 株式会社日立製作所 | Computer system, gateway device, and server device |
| WO2019240020A1 (en) | 2018-06-13 | 2019-12-19 | パナソニックIpマネジメント株式会社 | Improper communication detector, improper communication detection method, and manufacturing system |
| JP2020135816A (en) | 2019-02-26 | 2020-08-31 | 株式会社日立製作所 | Unauthorized communication detection device and unauthorized communication detection program |
-
2022
- 2022-01-20 JP JP2022007243A patent/JP7790165B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017163179A (en) | 2016-03-07 | 2017-09-14 | 株式会社日立製作所 | Computer system, gateway device, and server device |
| WO2019240020A1 (en) | 2018-06-13 | 2019-12-19 | パナソニックIpマネジメント株式会社 | Improper communication detector, improper communication detection method, and manufacturing system |
| JP2020135816A (en) | 2019-02-26 | 2020-08-31 | 株式会社日立製作所 | Unauthorized communication detection device and unauthorized communication detection program |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023106103A (en) | 2023-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11770400B2 (en) | Presenting, at a graphical user interface, device photos and risk categories associated with devices in a network | |
| JP7790165B2 (en) | Traffic analysis device, traffic analysis program, and traffic analysis method | |
| US12218912B2 (en) | Telemetry collection and policy enforcement using asset tagging | |
| JP7414391B2 (en) | Enhanced smart process control switch port lockdown | |
| US20200076853A1 (en) | Determining A Device Profile And Anomalous Behavior Associated With A Device In A Network | |
| US8635307B2 (en) | Sensor discovery and configuration | |
| US11722508B2 (en) | Methods, systems, and media for dynamically separating internet of things devices in a network | |
| JP6763898B2 (en) | Communication control device, communication control method and communication control program | |
| US11516229B2 (en) | Control device and control system | |
| EP4409854B1 (en) | Entity attribute designation based on logic programming | |
| WO2022151680A1 (en) | Automata-based internet of things device flow anomaly detection method and apparatus | |
| US20230379350A1 (en) | Continuous trusted access of endpoints | |
| Graveto et al. | A network intrusion detection system for building automation and control systems | |
| US20220321484A1 (en) | Data pipeline configuration using network sensors | |
| CN119051889B (en) | A method for identifying industrial control honeypots based on multidimensional feature distribution | |
| CN115766252A (en) | Flow abnormity detection method and device, electronic equipment and storage medium | |
| US12418537B2 (en) | Industrial device MAC authentication bypass bootstrapping | |
| CN109688142B (en) | Threat management method and system in an industrial control system network | |
| US20250055833A1 (en) | Automated detection and configuration of protocols and ports for device access | |
| CN115297022B (en) | Camera data leakage risk analysis method, device, equipment and storage medium | |
| CN110505443A (en) | A kind of video monitoring equipment replacement automatic testing method and device | |
| GB2567556A (en) | Enhanced smart process control switch port lockdown | |
| CN117880862A (en) | Wireless monitoring method and related device for network flow of industrial control system | |
| CN111400703A (en) | Honeypot system in industrial control field with signature function | |
| Andrei-Traian et al. | A CYBER SECURITY APPLICATION FOR REPORTING MALICIOUS ATTACKS ON IOT NETWORKS THAT USE THE MQTT PROTOCOL |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20241106 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20250627 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250708 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250904 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20251111 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251124 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7790165 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |