[go: up one dir, main page]

JP6770454B2 - Anomaly detection system and anomaly detection method - Google Patents

Anomaly detection system and anomaly detection method Download PDF

Info

Publication number
JP6770454B2
JP6770454B2 JP2017027335A JP2017027335A JP6770454B2 JP 6770454 B2 JP6770454 B2 JP 6770454B2 JP 2017027335 A JP2017027335 A JP 2017027335A JP 2017027335 A JP2017027335 A JP 2017027335A JP 6770454 B2 JP6770454 B2 JP 6770454B2
Authority
JP
Japan
Prior art keywords
cluster
feature amount
terminals
unit
detection model
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
Application number
JP2017027335A
Other languages
Japanese (ja)
Other versions
JP2018133004A (en
Inventor
幸洋 鋒
幸洋 鋒
浩明 前田
浩明 前田
小島 久史
久史 小島
正夫 相原
正夫 相原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017027335A priority Critical patent/JP6770454B2/en
Publication of JP2018133004A publication Critical patent/JP2018133004A/en
Application granted granted Critical
Publication of JP6770454B2 publication Critical patent/JP6770454B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、異常検知システム及び異常検知方法に関する。 The present invention relates to an abnormality detection system and an abnormality detection method.

近年、マルウェアに感染した多数のIoT(Internet of Things)端末(以下、単に「端末」とも表す。)をDDoS(Distributed Denial of Service attack)攻撃の踏み台にする事件が発生しており、標的となったサービスが利用不能になる等の被害が生じている。 In recent years, a large number of IoT (Internet of Things) terminals infected with malware (hereinafter, also simply referred to as "terminals") have been targeted as a stepping stone for DDoS (Distributed Denial of Service attack) attacks. There is damage such as the inability to use the service.

また、IoT端末の台数は、2020年には530億台に上ると言われており、今後も増加が予想される(非特許文献1)。このため、上記のような攻撃の踏み台とされる事件が更に増えると考えられる。したがって、マルウェアに感染したIoT端末を特定(検知)し、上記のような攻撃を防止することが求められている。 In addition, the number of IoT terminals is said to reach 53 billion in 2020, and is expected to increase in the future (Non-Patent Document 1). For this reason, it is expected that the number of cases that will be used as a stepping stone for the above attacks will increase. Therefore, it is required to identify (detect) an IoT terminal infected with malware and prevent the above-mentioned attacks.

しかしながら、IoT端末の中には、例えば価格を抑えるためにIoT端末自体の性能(CPU(Central Processing Unit)やメモリ等)が低いものが多数存在する。したがって、IoT端末自体にセキュリティ機能を具備させるのが困難な場合がある。このため、IoT端末が繋がるネットワーク側(例えば、ISP(Internet Services Provider)や電気通信事業者等のネットワーク)で、マルウェアに感染したIoT端末を特定することができれば好ましい。 However, there are many IoT terminals whose performance (CPU (Central Processing Unit), memory, etc.) of the IoT terminal itself is low in order to keep the price down. Therefore, it may be difficult to provide the IoT terminal itself with a security function. Therefore, it is preferable that the IoT terminal infected with malware can be identified on the network side to which the IoT terminal is connected (for example, a network of an ISP (Internet Services Provider) or a telecommunications carrier).

ここで、ネットワーク側でマルウェアに感染した端末を特定する技術として、アノマリ型検知が知られている(非特許文献2)。アノマリ型検知では、端末毎の正常な振る舞いを学習することで、異常検知(すなわち、マルウェア感染に感染した端末の検知)に用いるための検知モデルを作成する。このため、アノマリ型検知では、端末数に依存した計算時間を必要する。また、作成した検知モデルを保存するためのストレージ領域の容量も、端末数に応じて必要となる。 Here, as a technique for identifying a terminal infected with malware on the network side, anomaly type detection is known (Non-Patent Document 2). In the anomaly type detection, by learning the normal behavior of each terminal, a detection model for use in abnormality detection (that is, detection of a terminal infected with malware infection) is created. Therefore, the anomaly type detection requires a calculation time depending on the number of terminals. In addition, the capacity of the storage area for storing the created detection model is also required according to the number of terminals.

また、DNS(Domain Name System)ログを解析することで、マルウェアに感染した端末及びC&C(Command and Control)サーバを特定する技術が知られている(非特許文献3)。この技術では、DNSキャッシュサーバに送信された大量のDNSクエリの挙動を監視し、マルウェアに感染した端末や悪性ドメイン特有の挙動を学習することで、異常検知を行う。マルウェアに感染した端末や悪性ドメイン特有の挙動をDNSクエリから学習するためには、クエリ数に応じた計算時間を必要とする。また、DNSクエリが送信される度に異常検知を行う場合には、短時間で計算可能な検知手法が必要となる。 Further, a technique for identifying a terminal infected with malware and a C & C (Command and Control) server by analyzing a DNS (Domain Name System) log is known (Non-Patent Document 3). In this technology, anomaly detection is performed by monitoring the behavior of a large number of DNS queries sent to the DNS cache server and learning the behavior peculiar to a terminal infected with malware or a malignant domain. In order to learn the behavior peculiar to a terminal infected with malware or a malicious domain from a DNS query, a calculation time corresponding to the number of queries is required. Further, when anomaly detection is performed every time a DNS query is transmitted, a detection method that can be calculated in a short time is required.

"平成27年版 情報通信白書", [online], インターネット<URL:http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h27/html/nc254110.html>"2015 White Paper on Information and Communications", [online], Internet <URL: http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h27/html/nc254110.html> "Darktrace", [online], インターネット<URL:http://www.darktrace.jp/>"Darktrace", [online], Internet <URL: http://www.darktrace.jp/> "DNS クエリログのクエリ数に着目した異常端末の検出", 渡辺拳竜, 池部実, and 吉田和幸. マルチメディア, 分散協調とモバイルシンポジウム 2014 論文集 2014 (2014): 205-210."Detection of abnormal terminals focusing on the number of queries in the DNS query log", Kenryu Watanabe, Minoru Ikebe, and Kazuyuki Yoshida. Multimedia, Distributed Cooperation and Mobile Symposium 2014 Proceedings 2014 (2014): 205-210.

ここで、機械学習を用いたマルウェア感染端末の特定では、検知対象となる端末数に応じて、検知モデル作成のための計算時間と、ストレージ領域の容量とが必要になる。例えば、端末の台数をN、学習データの数をSとして、異常検知アルゴリズムにSVM(Support Vector Machine)を用いた場合、検知モデル作成のための計算時間はO(NSlogS)、ストレージ領域の容量はO(NS)で表される。 Here, in identifying a malware-infected terminal using machine learning, a calculation time for creating a detection model and a capacity of a storage area are required according to the number of terminals to be detected. For example, when the number of terminals is N, the number of learning data is S, and SVM (Support Vector Machine) is used as the abnormality detection algorithm, the calculation time for creating the detection model is O (NSlogS), and the capacity of the storage area is. It is represented by O (NS).

しかしながら、上述したように、IoT端末の台数は今後も増加が予想される。また、通常、機械学習アルゴリズムで検知精度を向上させるためには、大量の学習データが必要なる。 However, as mentioned above, the number of IoT terminals is expected to increase in the future. In addition, a large amount of learning data is usually required to improve the detection accuracy of the machine learning algorithm.

このため、ISPや電気通信事業者等のネットワークのように、多数のIoT端末が接続されたネットワークにおけるマルウェア感染端末の特定では、検知モデル作成のための計算時間やストレージ領域の容量が膨大になり、機械学習のアルゴリズムを用いたマルウェア感染端末の特定が困難な場合があった。 For this reason, in identifying malware-infected terminals in a network to which a large number of IoT terminals are connected, such as networks of ISPs and telecommunications carriers, the calculation time for creating a detection model and the capacity of the storage area become enormous. In some cases, it was difficult to identify malware-infected terminals using machine learning algorithms.

本発明は、上記の点に鑑みてなされたものであって、マルウェア感染端末の特定を支援することを目的とする。 The present invention has been made in view of the above points, and an object of the present invention is to support the identification of malware-infected terminals.

そこで、上記課題を解決するため、複数の端末と接続される異常検知システムであって、前記複数の端末を1以上のクラスタに分類するクラスタリング部と、前記クラスタリング部により分類されたクラスタ毎に、異常な端末が前記クラスタに属することを検知するための検知モデルを作成する検知モデル作成部と、前記複数の端末のうち、前記クラスタに属する各端末のトラヒック情報に基づいて、該クラスタの特徴量を示すクラスタ特徴量を生成する第1の特徴量生成部と、前記検知モデル作成部により作成された前記検知モデルと、前記第1の特徴量生成部により生成された前記クラスタ特徴量とに基づいて、異常な端末が前記クラスタに属することを検知する異常検知部と、を有する。 Therefore, in order to solve the above problem, in an abnormality detection system connected to a plurality of terminals, a clustering unit that classifies the plurality of terminals into one or more clusters and a cluster classified by the clustering unit are used. A feature amount of the cluster based on a detection model creation unit that creates a detection model for detecting that an abnormal terminal belongs to the cluster and traffic information of each terminal belonging to the cluster among the plurality of terminals. Based on the first feature amount generation unit that generates the cluster feature amount indicating the above, the detection model created by the detection model creation unit, and the cluster feature amount generated by the first feature amount generation unit. It also has an abnormality detection unit that detects that an abnormal terminal belongs to the cluster.

マルウェア感染端末の特定を支援することができる。 It can help identify malware-infected terminals.

本発明の実施の形態におけるシステムの全体構成の一例を示す図である。It is a figure which shows an example of the whole structure of the system in embodiment of this invention. コンピュータのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware configuration of a computer. 本発明の実施の形態における学習装置の機能構成の一例を示す図である。It is a figure which shows an example of the functional structure of the learning apparatus in embodiment of this invention. 本発明の実施の形態における異常検知装置の機能構成の一例を示す図である。It is a figure which shows an example of the functional structure of the abnormality detection apparatus in embodiment of this invention. 本発明の実施の形態における異常検知用ストレージ装置の機能構成の一例を示す図である。It is a figure which shows an example of the functional structure of the storage device for abnormality detection in embodiment of this invention. アドレス情報テーブルの一例を示す図である。It is a figure which shows an example of an address information table. クラスタ情報テーブルの一例を示す図である。It is a figure which shows an example of a cluster information table. 学習情報テーブルの一例を示す図である。It is a figure which shows an example of the learning information table. 検知モデル情報テーブルの一例を示す図である。It is a figure which shows an example of the detection model information table. 設定情報テーブルの一例を示す図である。It is a figure which shows an example of a setting information table. 本発明の実施の形態におけるクラスタリング処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the clustering process in embodiment of this invention. 本発明の実施の形態における検知モデルの作成処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the creation process of the detection model in embodiment of this invention. 本発明の実施の形態における異常検知処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the abnormality detection processing in embodiment of this invention.

以下、本発明の実施の形態について、図面を参照しながら説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.

<全体構成>
まず、本発明の実施の形態におけるシステムの全体構成例について、図1を参照しながら説明する。図1は、本発明の実施の形態におけるシステムの全体構成の一例を示す図である。
<Overall configuration>
First, an example of the overall configuration of the system according to the embodiment of the present invention will be described with reference to FIG. FIG. 1 is a diagram showing an example of the overall configuration of the system according to the embodiment of the present invention.

図1に示すように、本発明の実施の形態におけるシステムは、例えばISPや電気通信事業者等のコアネットワークであるシステム環境Eと、複数のIoT端末70とを有する。 As shown in FIG. 1, the system according to the embodiment of the present invention has, for example, a system environment E which is a core network of an ISP, a telecommunications carrier, or the like, and a plurality of IoT terminals 70.

IoT端末70は、例えば各種センサや監視カメラ、各種家電製品、スマートメータ等の種々の電子機器又は装置である。各IoT端末70は、システム環境Eに接続されており、それぞれが異なる通信特性(例えば、通信発生の頻度、宛先(送信先IPアドレス(Internet Protocol))の種類数、パケットサイズ等)を有している。 The IoT terminal 70 is, for example, various electronic devices or devices such as various sensors, surveillance cameras, various home appliances, and smart meters. Each IoT terminal 70 is connected to the system environment E, and each has different communication characteristics (for example, frequency of communication occurrence, number of types of destination (destination IP address (Internet Protocol)), packet size, etc.). ing.

システム環境Eは、転送装置10と、トラヒック情報収集装置20と、異常検知システム30と、DNSサーバ40と、DHCP(Dynamic Host Configuration Protocol)50と、セキュリティ装置60とを有する。 The system environment E includes a transfer device 10, a traffic information collection device 20, an abnormality detection system 30, a DNS server 40, a DHCP (Dynamic Host Configuration Protocol) 50, and a security device 60.

転送装置10は、例えばエッジルータ等であり、インターネットと各IoT端末70との間のパケットを中継する機能を有する。転送装置10は、IoT端末70のパケットを中継する際に、当該IoT端末70のIPアドレス等のトラヒック情報を取得する。転送装置10により取得されたトラヒック情報は、トラヒック情報収集装置20に蓄積される。トラヒック情報には、例えば、パケットのヘッダ情報、フロー情報、DNSサーバ40のログ情報、DHCPサーバ50が保持するIPアドレスのリスト情報等が挙げられる。 The transfer device 10 is, for example, an edge router or the like, and has a function of relaying packets between the Internet and each IoT terminal 70. When relaying the packet of the IoT terminal 70, the transfer device 10 acquires traffic information such as the IP address of the IoT terminal 70. The traffic information acquired by the transfer device 10 is stored in the traffic information collecting device 20. Examples of the traffic information include packet header information, flow information, log information of the DNS server 40, list information of IP addresses held by the DHCP server 50, and the like.

トラヒック情報収集装置20は、転送装置10やDNSサーバ40、DHCPサーバ50等からトラヒック情報を収集して、収集したトラヒック情報を蓄積(保存)する1以上のコンピュータである。 The traffic information collecting device 20 is one or more computers that collect traffic information from the transfer device 10, the DNS server 40, the DHCP server 50, and the like, and store (store) the collected traffic information.

DNSサーバ40は、DNS機能を有する1以上のコンピュータである。DHCPサーバ50は、DHCP機能を有する1以上のコンピュータである。 The DNS server 40 is one or more computers having a DNS function. The DHCP server 50 is one or more computers having a DHCP function.

異常検知システム30は、マルウェアに感染したIoT端末70を特定するための1以上のコンピュータにより構成されるシステムである。異常検知システム30は、学習装置31と、異常検知装置32と、異常検知用ストレージ装置33とを有する。 The anomaly detection system 30 is a system composed of one or more computers for identifying an IoT terminal 70 infected with malware. The abnormality detection system 30 includes a learning device 31, an abnormality detection device 32, and an abnormality detection storage device 33.

学習装置31は、各IoT端末70のトラヒック情報から得られる所定の特徴量に基づいて、これらIoT端末70を複数のクラスタに分類する(すなわち、IoT端末70をクラスタリングする。)。そして、学習装置31は、クラスタ単位で異常を検知するための検知モデルを作成する。クラスタ単位で異常を検知するとは、当該クラスタに属するIoT端末70の中に、マルウェアに感染しているIoT端末70が存在することを検知することである。なお、所定の特徴量とは、IoT端末70のトラヒック情報から得られる情報であり、例えば、上述した通信特性を示す情報等が挙げられる。 The learning device 31 classifies these IoT terminals 70 into a plurality of clusters (that is, clusters the IoT terminals 70) based on a predetermined feature amount obtained from the traffic information of each IoT terminal 70. Then, the learning device 31 creates a detection model for detecting an abnormality on a cluster-by-cluster basis. To detect an abnormality on a cluster-by-cluster basis is to detect the existence of an IoT terminal 70 infected with malware among the IoT terminals 70 belonging to the cluster. The predetermined feature amount is information obtained from the traffic information of the IoT terminal 70, and examples thereof include information indicating the above-mentioned communication characteristics.

異常検知装置32は、クラスタに属する各IoT端末70のトラヒック情報から得られるクラスタ単位の所定の特徴量と、学習装置31により作成された検知モデルとに基づいて、クラスタ単位で異常を検知する。すなわち、異常検知装置32は、マルウェアに感染しているIoT端末70が含まれるクラスタを検知する。 The anomaly detection device 32 detects anomalies in cluster units based on a predetermined feature amount in cluster units obtained from the traffic information of each IoT terminal 70 belonging to the cluster and a detection model created by the learning device 31. That is, the abnormality detection device 32 detects a cluster including the IoT terminal 70 infected with malware.

異常検知用ストレージ装置33は、各種の情報を管理する。例えば、異常検知用ストレージ装置33は、学習装置31により作成された検知モデルを保存する。また、異常検知用ストレージ装置33は、異常検知装置32による異常検知に用いられる各種情報を記憶している。 The abnormality detection storage device 33 manages various types of information. For example, the abnormality detection storage device 33 stores the detection model created by the learning device 31. Further, the abnormality detection storage device 33 stores various information used for abnormality detection by the abnormality detection device 32.

セキュリティ装置60は、異常検知装置32により異常と検知されたクラスタに属する各IoT端末70の中から、マルウェアに感染しているIoT端末70を特定する。セキュリティ装置60は、例えば、IPS(Intrusion Prevention System)やサンドボックス、DPI(Deep Packet Inspection)等により、当該クラスタに属する各IoT端末70の中から、マルウェアに感染しているIoT端末70を特定する。 The security device 60 identifies the IoT terminal 70 infected with malware from the IoT terminals 70 belonging to the cluster detected as abnormal by the abnormality detection device 32. The security device 60 identifies an IoT terminal 70 infected with malware from each IoT terminal 70 belonging to the cluster by, for example, an IPS (Intrusion Prevention System), a sandbox, a DPI (Deep Packet Inspection), or the like. ..

なお、図1に示すシステム構成は、一例であって、他の構成であっても良い。例えば、システム環境Eは、複数台の転送装置10、複数台のトラヒック情報収集装置20、複数の異常検知システム30、複数台のセキュリティ装置60を有していても良い。また、異常検知システム30において、学習装置31と、異常検知装置32と、異常検知用ストレージ装置33とが1台の装置(コンピュータ)で構成されていても良い。 The system configuration shown in FIG. 1 is an example and may be another configuration. For example, the system environment E may have a plurality of transfer devices 10, a plurality of traffic information collecting devices 20, a plurality of abnormality detection systems 30, and a plurality of security devices 60. Further, in the abnormality detection system 30, the learning device 31, the abnormality detection device 32, and the abnormality detection storage device 33 may be composed of one device (computer).

<ハードウェア構成>
次に、トラヒック情報収集装置20、学習装置31、異常検知装置32、及び異常検知用ストレージ装置33等を実現するコンピュータ100のハードウェア構成について、図2を参照しながら説明する。図2は、コンピュータ100のハードウェア構成の一例を示す図である。
<Hardware configuration>
Next, the hardware configuration of the computer 100 that realizes the traffic information collecting device 20, the learning device 31, the abnormality detecting device 32, the abnormality detecting storage device 33, and the like will be described with reference to FIG. FIG. 2 is a diagram showing an example of the hardware configuration of the computer 100.

図2に示すように、コンピュータ100は、外部I/F101と、RAM(Random Access Memory)102と、ROM(Read Only Memory)103と、CPU104と、通信I/F105と、補助記憶装置106とを有する。これら各ハードウェアは、それぞれがバスBを介して通信可能に接続されている。 As shown in FIG. 2, the computer 100 includes an external I / F 101, a RAM (Random Access Memory) 102, a ROM (Read Only Memory) 103, a CPU 104, a communication I / F 105, and an auxiliary storage device 106. Have. Each of these hardware is connected so as to be able to communicate with each other via the bus B.

外部I/F101は、外部装置とのインタフェースである。外部装置には、記録媒体101a等がある。コンピュータ100は、外部I/F101を介して記録媒体101a等の読み取りや書き込みを行うことができる。 The external I / F 101 is an interface with an external device. The external device includes a recording medium 101a and the like. The computer 100 can read or write the recording medium 101a or the like via the external I / F 101.

記録媒体101aには、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等がある。 The recording medium 101a includes, for example, a flexible disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), a USB (Universal Serial Bus) memory card, and the like.

RAM102は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM103は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM103には、例えば、OS(Operating System)設定やネットワーク設定等が格納されている。 The RAM 102 is a volatile semiconductor memory that temporarily holds programs and data. The ROM 103 is a non-volatile semiconductor memory capable of holding programs and data even when the power is turned off. The ROM 103 stores, for example, OS (Operating System) settings, network settings, and the like.

CPU104は、ROM103や補助記憶装置106等からプログラムやデータをRAM102上に読み出して処理を実行する演算装置である。通信I/F105は、コンピュータ100をネットワークに接続するためのインタフェースである。 The CPU 104 is an arithmetic unit that reads programs and data from the ROM 103, the auxiliary storage device 106, and the like onto the RAM 102 and executes processing. The communication I / F 105 is an interface for connecting the computer 100 to the network.

補助記憶装置106は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置106に格納されているプログラムやデータには、例えば、OS、当該OS上において各種機能を実現するアプリケーションソフトウェア、本実施形態における各種処理を実現するプログラム等がある。 The auxiliary storage device 106 is, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like, and is a non-volatile storage device that stores programs and data. The programs and data stored in the auxiliary storage device 106 include, for example, an OS, application software that realizes various functions on the OS, and a program that realizes various processes in the present embodiment.

なお、コンピュータ100は、上記の各ハードウェアに加えて、例えば、ディスプレイ等の表示装置と、キーボードやマウス等の入力装置とを有していても良い。 In addition to the above hardware, the computer 100 may have, for example, a display device such as a display and an input device such as a keyboard or mouse.

本実施形態に係るコンピュータ100は、図2に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。 By having the hardware configuration shown in FIG. 2, the computer 100 according to the present embodiment can realize various processes described later.

<機能構成>
次に、異常検知システム30に含まれる学習装置31、異常検知装置32、及び異常検知用ストレージ装置33の機能構成について説明する。
<Functional configuration>
Next, the functional configurations of the learning device 31, the abnormality detection device 32, and the abnormality detection storage device 33 included in the abnormality detection system 30 will be described.

≪学習装置31≫
まず、学習装置31の機能構成について、図3を参照しながら説明する。図3は、本発明の実施の形態における学習装置31の機能構成の一例を示す図である。
≪Learning device 31≫
First, the functional configuration of the learning device 31 will be described with reference to FIG. FIG. 3 is a diagram showing an example of the functional configuration of the learning device 31 according to the embodiment of the present invention.

図3に示すように、学習装置31は、通信部311と、特徴量生成部312と、クラスタリング部313と、検知モデル作成部314とを有する。これら各機能部は、学習装置31にインストールされた1以上のプログラムが、CPUに実行させる処理により実現される。 As shown in FIG. 3, the learning device 31 includes a communication unit 311, a feature amount generation unit 312, a clustering unit 313, and a detection model creation unit 314. Each of these functional units is realized by a process of causing the CPU to execute one or more programs installed in the learning device 31.

通信部311は、トラヒック情報収集装置20や異常検知用ストレージ装置33等との間で情報の送受信を行う。例えば、通信部311は、トラヒック情報収集装置20から各IoT端末70のトラヒック情報を受信する。 The communication unit 311 transmits and receives information to and from the traffic information collecting device 20, the abnormality detection storage device 33, and the like. For example, the communication unit 311 receives the traffic information of each IoT terminal 70 from the traffic information collecting device 20.

特徴量生成部312は、通信部311により受信されたトラヒック情報に所定の処理を施す(例えば、所定のIPアドレスが含まれる回数をカウントする等)ことで、機械学習や時系列分析を行う上で必要な所定の特徴量を生成する。 The feature amount generation unit 312 performs predetermined processing on the traffic information received by the communication unit 311 (for example, counting the number of times that a predetermined IP address is included) to perform machine learning and time series analysis. Generates the required feature amount in.

ここで、IoT端末70をクラスタリングする段階では、通信部311は、全てのIoT端末70(又は、ある転送装置10によりパケットが転送される全てのIoT端末70)のトラヒック情報を受信する。したがって、この場合、特徴量生成部312は、これら全てのIoT端末70のトラヒック情報から特徴量を生成する。 Here, at the stage of clustering the IoT terminals 70, the communication unit 311 receives the traffic information of all the IoT terminals 70 (or all the IoT terminals 70 to which packets are transferred by a certain transfer device 10). Therefore, in this case, the feature amount generation unit 312 generates the feature amount from the traffic information of all these IoT terminals 70.

一方で、検知モデルを作成する段階では、通信部311は、クラスタ単位のトラヒック情報(すなわち、当該クラスタに属するIoT端末70のトラヒック情報)を受信する。したがって、この場合、特徴量生成部312は、クラスタ毎に、当該クラスタの特徴量を生成する。以降では、クラスタの特徴量(すなわち、クラスタ単位の特徴量)を「クラスタ特徴量」とも表す。 On the other hand, at the stage of creating the detection model, the communication unit 311 receives the traffic information of each cluster (that is, the traffic information of the IoT terminal 70 belonging to the cluster). Therefore, in this case, the feature amount generation unit 312 generates the feature amount of the cluster for each cluster. Hereinafter, the feature amount of the cluster (that is, the feature amount of each cluster) is also referred to as the “cluster feature amount”.

クラスタリング部313は、特徴量生成部312により生成された特徴量に基づいて、各IoT端末70をクラスタリングする。クラスタリング部313は、クラスタリングの結果を示すクラスタ情報を異常検知用ストレージ装置33に送信する。 The clustering unit 313 clusters each IoT terminal 70 based on the feature amount generated by the feature amount generation unit 312. The clustering unit 313 transmits cluster information indicating the result of clustering to the abnormality detection storage device 33.

検知モデル作成部314は、特徴量生成部312により生成されたクラスタ特徴量に基づいて、クラスタ毎の検知モデルを作成するための学習情報を作成して、異常検知用ストレージ装置33に送信する。そして、検知モデル作成部314は、例えば所定の時間の間に作成された学習情報に基づいて、検知モデルを作成する。 The detection model creation unit 314 creates learning information for creating a detection model for each cluster based on the cluster feature amount generated by the feature amount generation unit 312, and transmits the learning information to the abnormality detection storage device 33. Then, the detection model creation unit 314 creates a detection model based on, for example, learning information created during a predetermined time.

ここで、検知モデルとは、異常検知アルゴリズムと、当該異常検知アルゴリズムに用いられるパラメータのパラメータ値とで表される。したがって、異常検知アルゴリズムが予め決められている場合、検知モデルの作成とは、当該異常検知アルゴリズムに用いられるパラメータのパラメータ値を決定することを意味する。 Here, the detection model is represented by an abnormality detection algorithm and parameter values of parameters used in the abnormality detection algorithm. Therefore, when the anomaly detection algorithm is predetermined, creating a detection model means determining the parameter value of the parameter used in the anomaly detection algorithm.

≪異常検知装置32≫
次に、異常検知装置32の機能構成について、図4を参照しながら説明する。図4は、本発明の実施の形態における異常検知装置32の機能構成の一例を示す図である。
<< Abnormality detection device 32 >>
Next, the functional configuration of the abnormality detection device 32 will be described with reference to FIG. FIG. 4 is a diagram showing an example of the functional configuration of the abnormality detection device 32 according to the embodiment of the present invention.

図4に示すように、異常検知装置32は、通信部321と、特徴量生成部322と、異常検知部323とを有する。これら各機能部は、異常検知装置32にインストールされた1以上のプログラムが、CPUに実行させる処理により実現される。 As shown in FIG. 4, the abnormality detection device 32 includes a communication unit 321, a feature amount generation unit 322, and an abnormality detection unit 323. Each of these functional units is realized by a process of causing the CPU to execute one or more programs installed in the abnormality detection device 32.

通信部321は、トラヒック情報収集装置20や異常検知用ストレージ装置33等との間で情報の送受信を行う。例えば、通信部321は、トラヒック情報収集装置20からクラスタ単位のトラヒック情報(すなわち、当該クラスタに属する各IoT端末70のトラヒック情報)を受信する。 The communication unit 321 transmits / receives information to / from the traffic information collecting device 20, the abnormality detection storage device 33, and the like. For example, the communication unit 321 receives the traffic information of each cluster (that is, the traffic information of each IoT terminal 70 belonging to the cluster) from the traffic information collecting device 20.

特徴量生成部322は、通信部321により受信したトラヒック情報からクラスタ特徴量を生成する。 The feature amount generation unit 322 generates a cluster feature amount from the traffic information received by the communication unit 321.

異常検知部323は、特徴量生成部322により生成されたクラスタ特徴量と、異常検知用ストレージ装置33から受信した検知モデルとに基づいて、該当のクラスタが異常であるか否かを判定する。すなわち、異常検知部323は、マルウェアに感染しているIoT端末70が含まれるクラスタを検知する。以降では、マルウェアに感染しているIoT端末70を「異常端末70」、異常端末70が含まれるクラスタを「異常クラスタ」とも表す。 The abnormality detection unit 323 determines whether or not the cluster is abnormal based on the cluster feature amount generated by the feature amount generation unit 322 and the detection model received from the abnormality detection storage device 33. That is, the abnormality detection unit 323 detects a cluster including the IoT terminal 70 infected with malware. Hereinafter, the IoT terminal 70 infected with malware will be referred to as an “abnormal terminal 70”, and the cluster including the abnormal terminal 70 will be referred to as an “abnormal cluster”.

異常検知部323は、異常クラスタが検知された場合、当該異常クラスタを識別するクラスタIDをセキュリティ装置60に送信する。 When an abnormal cluster is detected, the abnormality detection unit 323 transmits a cluster ID for identifying the abnormal cluster to the security device 60.

≪異常検知用ストレージ装置33≫
次に、異常検知用ストレージ装置33の機能構成について、図5を参照しながら説明する。図5は、本発明の実施の形態における異常検知用ストレージ装置33の機能構成の一例を示す図である。
<< Storage device for abnormality detection 33 >>
Next, the functional configuration of the abnormality detection storage device 33 will be described with reference to FIG. FIG. 5 is a diagram showing an example of the functional configuration of the abnormality detection storage device 33 according to the embodiment of the present invention.

図5に示すように、異常検知用ストレージ装置33は、通信部331と、情報管理部332とを有する。これら各機能部は、異常検知用ストレージ装置33にインストールされた1以上のプログラムが、CPUに実行させる処理により実現される。 As shown in FIG. 5, the abnormality detection storage device 33 includes a communication unit 331 and an information management unit 332. Each of these functional units is realized by a process of causing the CPU to execute one or more programs installed in the abnormality detection storage device 33.

また、異常検知用ストレージ装置33は、アドレス情報テーブル記憶部333と、クラスタ情報テーブル記憶部334と、学習情報テーブル記憶部335と、検知モデル情報テーブル記憶部336と、設定情報テーブル記憶部337とを有する。これら各記憶部は、例えば補助記憶装置を用いて実現可能である。 Further, the abnormality detection storage device 33 includes an address information table storage unit 333, a cluster information table storage unit 334, a learning information table storage unit 335, a detection model information table storage unit 336, and a setting information table storage unit 337. Have. Each of these storage units can be realized by using, for example, an auxiliary storage device.

通信部331は、トラヒック情報収集装置20や学習装置31、異常検知装置32、セキュリティ装置60等との間で情報の送受信を行う。例えば、通信部331は、学習装置31から学習情報や検知モデル情報を受信する。また、例えば、通信部331は、異常検知装置32から、異常クラスタのクラスタIDを受信する。 The communication unit 331 transmits / receives information to / from the traffic information collecting device 20, the learning device 31, the abnormality detection device 32, the security device 60, and the like. For example, the communication unit 331 receives the learning information and the detection model information from the learning device 31. Further, for example, the communication unit 331 receives the cluster ID of the abnormal cluster from the abnormality detecting device 32.

情報管理部332は、各種記憶部に記憶されているテーブルから情報を読み出すと共に、各種記憶部に記憶されているテーブルに情報を格納する。 The information management unit 332 reads information from the tables stored in the various storage units and stores the information in the tables stored in the various storage units.

アドレス情報テーブル記憶部333は、アドレス情報テーブル333Tを記憶する。ここで、アドレス情報テーブル333Tについて、図6を参照しながら説明する。図6は、アドレス情報テーブル333Tの一例を示す図である。 The address information table storage unit 333 stores the address information table 333T. Here, the address information table 333T will be described with reference to FIG. FIG. 6 is a diagram showing an example of the address information table 333T.

図6に示すように、アドレス情報テーブル333Tには、アドレス情報が格納されている。アドレス情報は、転送装置10を識別する転送装置IDと、当該転送装置10によりパケットが中継される各IoT端末70のIPアドレスとが関連付けられている。言い換えれば、アドレス情報は、転送装置ID毎に、当該転送装置IDの転送装置10によりパケットが中継されるIoT端末70のIPアドレスのリストが関連付けられている。このようなIPアドレスは、DHCPサーバ50により、各IoT端末70に対して割り当てられる。 As shown in FIG. 6, address information is stored in the address information table 333T. The address information is associated with the transfer device ID that identifies the transfer device 10 and the IP address of each IoT terminal 70 to which the packet is relayed by the transfer device 10. In other words, the address information is associated with a list of IP addresses of the IoT terminal 70 whose packets are relayed by the transfer device 10 of the transfer device ID for each transfer device ID. Such an IP address is assigned to each IoT terminal 70 by the DHCP server 50.

クラスタ情報テーブル記憶部334は、クラスタ情報テーブル334Tを記憶する。ここで、クラスタ情報テーブル334Tについて、図7を参照しながら説明する。図7は、クラスタ情報テーブル334Tの一例を示す図である。 The cluster information table storage unit 334 stores the cluster information table 334T. Here, the cluster information table 334T will be described with reference to FIG. 7. FIG. 7 is a diagram showing an example of the cluster information table 334T.

図7に示すように、クラスタ情報テーブル334Tには、クラスタ情報が格納されている。クラスタ情報は、クラスタを識別するクラスタIDと、当該クラスタに属するIoT端末70のIPアドレスとが関連付けられている。 As shown in FIG. 7, cluster information is stored in the cluster information table 334T. The cluster information is associated with the cluster ID that identifies the cluster and the IP address of the IoT terminal 70 that belongs to the cluster.

学習情報テーブル記憶部335は、学習情報テーブル335Tを記憶する。ここで、学習情報テーブル335Tについて、図8を参照しながら説明する。図8は、学習情報テーブル335Tの一例を示す図である。 The learning information table storage unit 335 stores the learning information table 335T. Here, the learning information table 335T will be described with reference to FIG. FIG. 8 is a diagram showing an example of the learning information table 335T.

図8に示すように、学習情報テーブル335Tには、学習情報が格納されている。学習情報は、クラスタIDと、学習データとが関連付けられている。学習データは、特徴量生成部312により生成されたクラスタ特徴量(特徴1,特徴2,・・・,特徴m)に対して、教師データ(「正常」又は「異常」)を付与したデータ(言い換えれば、「正常」又は「異常」がラベル付けされたデータ)である。 As shown in FIG. 8, the learning information table 335T stores the learning information. The learning information is associated with the cluster ID and the learning data. The training data is data (“normal” or “abnormal”) to which teacher data (“normal” or “abnormal”) is added to the cluster features (features 1, features 2, ..., Feature m) generated by the feature amount generation unit 312 (features 1, feature 2, ... In other words, the data is labeled "normal" or "abnormal").

ただし、異常検知アルゴリズムとして、教師あり学習以外のアルゴリズムを用いる場合には、教師データは不要である。この場合の学習データは、クラスタ特徴量とすれば良い。 However, when an algorithm other than supervised learning is used as the anomaly detection algorithm, supervised data is not required. The training data in this case may be a cluster feature quantity.

検知モデル情報テーブル記憶部336は、検知モデル情報テーブル336Tを記憶する。ここで、検知モデル情報テーブル336Tについて、図9を参照しながら説明する。図9は、検知モデル情報テーブル336Tの一例を示す図である。 The detection model information table storage unit 336 stores the detection model information table 336T. Here, the detection model information table 336T will be described with reference to FIG. FIG. 9 is a diagram showing an example of the detection model information table 336T.

図9に示すように、検知モデル情報テーブル336Tには、検知モデル情報が格納されている。検知モデル情報は、クラスタIDと、検知モデルのパラメータ値とが関連付けられている。なお、検知モデルのパラメータ値は、後述する設定情報により設定された異常検知アルゴリズムに用いられるパラメータのパラメータ値である。上述したように、検知モデルは、異常検知アルゴリズムと、当該異常検知アルゴリズムに用いられるパラメータのパラメータ値とで表される。 As shown in FIG. 9, the detection model information table 336T stores the detection model information. The detection model information is associated with the cluster ID and the parameter value of the detection model. The parameter value of the detection model is a parameter value of the parameter used in the abnormality detection algorithm set by the setting information described later. As described above, the detection model is represented by an abnormality detection algorithm and parameter values of parameters used in the abnormality detection algorithm.

設定情報テーブル記憶部337は、設定情報テーブル337Tを記憶する。ここで、設定情報テーブル337Tについて、図10を参照しながら説明する。図10は、設定情報テーブル337Tの一例を示す図である。 The setting information table storage unit 337 stores the setting information table 337T. Here, the setting information table 337T will be described with reference to FIG. FIG. 10 is a diagram showing an example of the setting information table 337T.

図10に示すように、設定情報テーブル337Tには、設定情報が格納されている。設定情報は、データ取得の間隔と、検知モデルの更新頻度と、異常検知アルゴリズムの種類とが含まれる。データ取得の間隔には、トラヒック情報収集装置20が転送装置10からトラヒック情報を取得する時間間隔が設定される。検知モデルの更新頻度は、上述した検知モデルのパラメータ値を更新する時間間隔が設定される。これらの情報が設定される設定情報は、例えば、システム環境Eのシステム管理者等により予め作成される。 As shown in FIG. 10, the setting information is stored in the setting information table 337T. The setting information includes the data acquisition interval, the update frequency of the detection model, and the type of abnormality detection algorithm. As the data acquisition interval, a time interval in which the traffic information collecting device 20 acquires traffic information from the transfer device 10 is set. For the update frequency of the detection model, the time interval for updating the parameter value of the detection model described above is set. The setting information in which this information is set is created in advance by, for example, the system administrator of the system environment E.

なお、異常検知アルゴリズムの種類は、機械学習や時系列分析に用いられる種々のアルゴリズムを設定することができる。これらアルゴリズムには、例えば、k−近傍法、SVM(Support Vector Machine)、ニューラルネットワーク等が挙げられる。 As the type of abnormality detection algorithm, various algorithms used for machine learning and time series analysis can be set. Examples of these algorithms include the k-nearest neighbor method, SVM (Support Vector Machine), and neural network.

<処理の詳細>
次に、本発明の実施の形態におけるシステムの処理の詳細について説明する。
<Details of processing>
Next, the details of the processing of the system according to the embodiment of the present invention will be described.

≪クラスタリング処理≫
まず、各IoT端末70を複数のクラスタに分類(クラスタリング)する処理について、図11を参照しながら説明する。図11は、本発明の実施の形態におけるクラスタリング処理の一例を示すシーケンス図である。図11に示すクラスタリング処理は、例えば、システム環境Eのシステム管理者等の操作に応じて実行されても良いし、予め決められた所定の時間に実行されても良い。また、図11に示すクラスタリング処理が実行されて各IoT端末70がクラスタリングされた場合であっても、例えば、IoT端末70の増減等に応じて再度実行されても良い。
≪Clustering process≫
First, the process of classifying (clustering) each IoT terminal 70 into a plurality of clusters will be described with reference to FIG. FIG. 11 is a sequence diagram showing an example of clustering processing according to the embodiment of the present invention. The clustering process shown in FIG. 11 may be executed, for example, in response to an operation by a system administrator or the like in the system environment E, or may be executed at a predetermined time. Further, even when the clustering process shown in FIG. 11 is executed and each IoT terminal 70 is clustered, it may be executed again according to, for example, an increase or decrease of the IoT terminal 70.

まず、トラヒック情報収集装置20は、転送装置10に対して、トラヒック情報のリクエストを送信する(ステップS101)。転送装置10は、当該リクエストに応じて、自身がパケットを転送する各IoT端末70のトラヒック情報をトラヒック情報収集装置20に送信する(ステップS102)。 First, the traffic information collecting device 20 transmits a traffic information request to the transfer device 10 (step S101). In response to the request, the transfer device 10 transmits the traffic information of each IoT terminal 70 to which the packet is transferred to the traffic information collecting device 20 (step S102).

トラヒック情報収集装置20は、転送装置10からトラヒック情報を受信すると、当該トラヒック情報を学習装置31に送信する(ステップS103)。なお、トラヒック情報収集装置20は、DNSサーバ40やDHCPサーバ50からトラヒック情報を収集して、学習装置31に送信しても良い。 When the traffic information collecting device 20 receives the traffic information from the transfer device 10, the traffic information collecting device 20 transmits the traffic information to the learning device 31 (step S103). The traffic information collecting device 20 may collect traffic information from the DNS server 40 or the DHCP server 50 and transmit it to the learning device 31.

トラヒック情報収集装置20は、例えば、所定の時間の間、設定情報の「データ取得の間隔」で設定された時間毎に転送装置10からトラヒック情報を収集した上で、収集したトラヒック情報を学習装置31に送信しても良い。 The traffic information collecting device 20 collects traffic information from the transfer device 10 at intervals set in the “data acquisition interval” of the setting information for a predetermined time, and then learns the collected traffic information. It may be transmitted to 31.

学習装置31の特徴量生成部312は、通信部311によりトラヒック情報を受信すると、各IoT端末70の特徴量を生成する(ステップS104)。特徴量生成部312は、例えば、各IoT端末70のトラヒック情報に基づいて、「通信発生の頻度」や「宛先の種類数」を特徴量として生成すれば良い。 When the feature amount generation unit 312 of the learning device 31 receives the traffic information by the communication unit 311, the feature amount generation unit 312 generates the feature amount of each IoT terminal 70 (step S104). The feature amount generation unit 312 may generate, for example, "frequency of communication occurrence" and "number of types of destinations" as feature amounts based on the traffic information of each IoT terminal 70.

「通信発生の頻度」や「宛先の種類数」は、DNSサーバ40のログ情報に基づき生成することができる。具体的には、DNSサーバ40のログ情報のうち、転送装置10に接続されたIoT端末70のIPアドレスが含まれるログ情報を抽出した上で、抽出したログ情報における当該IPアドレスの出現回数をカウントすることで、「通信発生の頻度」を得ることができる。同様に、抽出したログ情報における送信先IPアドレスの種類数をカウントすることで、「宛先の種類数」を得ることができる。 The "frequency of communication occurrence" and the "number of destination types" can be generated based on the log information of the DNS server 40. Specifically, after extracting the log information including the IP address of the IoT terminal 70 connected to the transfer device 10 from the log information of the DNS server 40, the number of appearances of the IP address in the extracted log information is calculated. By counting, the "frequency of communication occurrence" can be obtained. Similarly, the "number of destination types" can be obtained by counting the number of destination IP address types in the extracted log information.

「通信発生の頻度」や「宛先の種類数」を特徴量として用いることで、例えば、通信頻度の増加と、宛先数の増加とによる異常(例えば、C&Cサーバへの通信等)を検知することが可能となる。 By using "frequency of communication occurrence" and "number of types of destinations" as feature quantities, for example, an abnormality due to an increase in communication frequency and an increase in the number of destinations (for example, communication to a C & C server) can be detected. Is possible.

なお、特徴量は、上記の「通信発生の頻度」や「宛先の種類数」に限られない。IoT端末70(のIPアドレス)をクラスタに分類可能な特徴量であれば、任意の特徴量を用いることができる。 The feature amount is not limited to the above-mentioned "frequency of communication occurrence" and "number of destination types". Any feature amount can be used as long as the feature amount can classify the IoT terminal 70 (IP address) into a cluster.

次に、学習装置31のクラスタリング部313は、特徴量生成部312により生成された各IoT端末70の特徴量に基づいて、これら各IoT端末70をクラスタリングする(ステップS105)。クラスタリング部313は、例えば、K−Means法等を用いて、各IoT端末70をクラスタリングすれば良い。ただし、クラスタリングに用いられるアルゴリズムやパラメータ(例えば、距離の定義等)は、特定のアルゴリズムや特定のパラメータに限定されるものではなく、任意のアルゴリズムや任意のパラメータを用いることができる。 Next, the clustering unit 313 of the learning device 31 clusters each of the IoT terminals 70 based on the feature amount of each IoT terminal 70 generated by the feature amount generation unit 312 (step S105). The clustering unit 313 may cluster each IoT terminal 70 by using, for example, the K-Means method or the like. However, the algorithms and parameters used for clustering (for example, the definition of distance, etc.) are not limited to a specific algorithm or a specific parameter, and an arbitrary algorithm or an arbitrary parameter can be used.

クラスタリング部313によりクラスタリングが行われると、クラスタを識別するクラスタIDと、当該クラスタに属するIoT端末70のIPアドレスとが関連付けられたクラスタ情報が作成される。 When clustering is performed by the clustering unit 313, cluster information in which the cluster ID that identifies the cluster and the IP address of the IoT terminal 70 belonging to the cluster are associated with each other is created.

次に、学習装置31の通信部311は、クラスタリング部313により作成されたクラスタ情報を異常検知用ストレージ装置33に送信する(ステップS106)。 Next, the communication unit 311 of the learning device 31 transmits the cluster information created by the clustering unit 313 to the abnormality detection storage device 33 (step S106).

異常検知用ストレージ装置33の情報管理部332は、通信部331によりクラスタ情報を受信すると、当該クラスタ情報をクラスタ情報テーブル334Tに格納する(ステップS107)。 When the information management unit 332 of the abnormality detection storage device 33 receives the cluster information by the communication unit 331, the information management unit 332 stores the cluster information in the cluster information table 334T (step S107).

以上により、各IoT端末70の特徴量に基づいて、これら各IoT端末70がクラスタリングされる。このとき、例えば、特徴量として各IoT端末70の通信特性を用いることで、同一の通信特性を有するIoT端末70(具体的には、同一メーカのIoT端末70や同一メーカの部品を有するIoT端末70等)が同一のクラスタに分類される。 As described above, each of these IoT terminals 70 is clustered based on the feature amount of each IoT terminal 70. At this time, for example, by using the communication characteristics of each IoT terminal 70 as a feature amount, the IoT terminal 70 having the same communication characteristics (specifically, the IoT terminal 70 of the same manufacturer or the IoT terminal having parts of the same manufacturer). 70 etc.) are classified into the same cluster.

≪検知モデルの作成処理≫
次に、クラスタ毎に検知モデルを作成する処理について、図12を参照しながら説明する。図12は、本発明の実施の形態における検知モデルの作成処理の一例を示すシーケンス図である。図12に示す検知モデルの作成処理は、設定情報に含まれる「検知モデルの更新間隔」に設定された時間毎に実行される。
≪Process to create detection model≫
Next, the process of creating a detection model for each cluster will be described with reference to FIG. FIG. 12 is a sequence diagram showing an example of a detection model creation process according to the embodiment of the present invention. The detection model creation process shown in FIG. 12 is executed every time set in the "detection model update interval" included in the setting information.

まず、異常検知用ストレージ装置33の通信部331は、トラヒック情報収集装置20に対して、クラスタ単位のトラヒック情報のリクエストを送信する(ステップS201)。異常検知用ストレージ装置33は、クラスタ情報テーブル334Tを参照することで、クラスタ単位のトラヒック情報のリクエストを送信することができる。 First, the communication unit 331 of the abnormality detection storage device 33 transmits a request for traffic information in cluster units to the traffic information collecting device 20 (step S201). The abnormality detection storage device 33 can transmit a request for traffic information for each cluster by referring to the cluster information table 334T.

例えば、異常検知用ストレージ装置33は、クラスタ情報テーブル334Tを参照して、クラスタID「クラスタA」に関連付けられたIPアドレスを含むリクエストを送信することで、クラスタA単位のトラヒック情報のリクエストを行うことができる。同様に、例えば、異常検知用ストレージ装置33は、クラスタ情報テーブル334Tを参照して、クラスタID「B」に関連付けられたIPアドレスを含むリクエストを送信することで、クラスタB単位のトラヒック情報のリクエストを行うことができる。 For example, the abnormality detection storage device 33 refers to the cluster information table 334T and sends a request including the IP address associated with the cluster ID “cluster A” to request traffic information for each cluster A. be able to. Similarly, for example, the abnormality detection storage device 33 refers to the cluster information table 334T and transmits a request including the IP address associated with the cluster ID “B” to request traffic information in cluster B units. It can be performed.

異常検知用ストレージ装置33の通信部331は、クラスタ毎に、クラスタ単位のトラヒック情報のリクエストをトラヒック情報収集装置20に送信する。 The communication unit 331 of the abnormality detection storage device 33 transmits a request for traffic information for each cluster to the traffic information collecting device 20 for each cluster.

以降では、一例として、クラスタAのトラヒック情報のリクエストを送信したものとして説明する。 Hereinafter, as an example, it is assumed that a request for traffic information of cluster A is transmitted.

ここで、以降のステップS202におけるトラヒック情報のリクエストは、設定情報の「データ取得の間隔」で設定された時間毎に実行される。したがって、以降のステップS202〜ステップS208の処理は、例えば所定の時間の間、当該時間毎に繰り返し実行される。ただし、これに限られず、ステップS202〜ステップS208の処理は、例えば、後述するステップS208の処理において、学習情報テーブル335Tに所定の件数の学習情報が格納されるまで実行されるようにしても良い。 Here, the request for traffic information in the subsequent steps S202 is executed every time set in the "data acquisition interval" of the setting information. Therefore, the subsequent processes of steps S202 to S208 are repeatedly executed at each time, for example, for a predetermined time. However, the present invention is not limited to this, and the processes of steps S202 to S208 may be executed, for example, in the process of step S208 described later, until a predetermined number of learning information is stored in the learning information table 335T. ..

トラヒック情報収集装置20は、異常検知用ストレージ装置33からクラスタAのトラヒック情報のリクエストを受信すると、クラスタAに属するIoT端末70のトラヒック情報のリクエストを転送装置10に送信する(ステップS202)。なお、当該リクエストには、クラスタAに属するIoT端末70のIPアドレスが含まれる。 When the traffic information collecting device 20 receives the traffic information request of the cluster A from the abnormality detection storage device 33, the traffic information collecting device 20 transmits the traffic information request of the IoT terminal 70 belonging to the cluster A to the transfer device 10 (step S202). The request includes the IP address of the IoT terminal 70 belonging to the cluster A.

転送装置10は、当該リクエストに応じて、自身がパケットを転送する各IoT端末70のうち、クラスタAに属するIoT端末70のトラヒック情報をトラヒック情報収集装置20に送信する(ステップS203)。 In response to the request, the transfer device 10 transmits the traffic information of the IoT terminals 70 belonging to the cluster A to the traffic information collection device 20 among the IoT terminals 70 to which the packet is transferred (step S203).

トラヒック情報収集装置20は、転送装置10からクラスタAに属するIoT端末70のトラヒック情報を受信すると、当該トラヒック情報を学習装置31に送信する(ステップS204)。なお、トラヒック情報収集装置20は、DNSサーバ40やDHCPサーバ50からクラスタAに属するIoT端末70のトラヒック情報を収集して、学習装置31に送信しても良い。 When the traffic information collecting device 20 receives the traffic information of the IoT terminal 70 belonging to the cluster A from the transfer device 10, the traffic information collecting device 20 transmits the traffic information to the learning device 31 (step S204). The traffic information collecting device 20 may collect the traffic information of the IoT terminal 70 belonging to the cluster A from the DNS server 40 or the DHCP server 50 and transmit it to the learning device 31.

学習装置31の特徴量生成部312は、通信部311によりクラスタAに属するIoT端末70のトラヒック情報を受信すると、クラスタAのクラスタ特徴量を生成する(ステップS205)。特徴量生成部312は、クラスタAに属する各IoT端末70の特徴量を生成した上で、これら特徴量の平均値又は中央値を算出して、当該平均値又は中央値をクラスタ特徴量とすれば良い。 When the feature amount generation unit 312 of the learning device 31 receives the traffic information of the IoT terminal 70 belonging to the cluster A by the communication unit 311, the feature amount generation unit 312 of the learning device 31 generates the cluster feature amount of the cluster A (step S205). The feature amount generation unit 312 generates the feature amount of each IoT terminal 70 belonging to the cluster A, calculates the average value or the median value of these feature amounts, and sets the average value or the median value as the cluster feature amount. Just do it.

特徴量生成部312は、上記のステップS104と同様の特徴量を用いてクラスタ特徴量を生成しても良いし、異なる特徴量を用いてクラスタ特徴量を生成しても良い。なお、上記のステップS104と同様の特徴量を生成する場合、異常時(すなわち、クラスタに異常端末70が含まれる時)に大きく変動する特徴量をクラスタ特徴量とすることが好ましい。 The feature amount generation unit 312 may generate a cluster feature amount using the same feature amount as in step S104 above, or may generate a cluster feature amount using a different feature amount. When generating the same feature amount as in step S104 above, it is preferable to set the feature amount that greatly fluctuates at the time of abnormality (that is, when the cluster includes the abnormal terminal 70) as the cluster feature amount.

次に、学習装置31の特徴量生成部312は、クラスタ特徴量に対して教師データを付与することで、学習データを生成する(ステップS206)。なお、教師データが「正常」又は「異常」のいずれであるかは、例えば、システム環境Eのシステム管理者等により設定されても良いし、予め決められたアルゴリズムにより設定されても良い。 Next, the feature amount generation unit 312 of the learning device 31 generates learning data by adding teacher data to the cluster feature amount (step S206). Whether the teacher data is "normal" or "abnormal" may be set by, for example, the system administrator of the system environment E, or may be set by a predetermined algorithm.

ただし、異常検知アルゴリズムとして、教師あり学習以外のアルゴリズムを用いる場合(例えば、k−近傍法を用いる場合等)には、教師データは不要であり、特徴量生成部312は、クラスタ特徴量を学習データとすれば良い。 However, when an algorithm other than supervised learning is used as the anomaly detection algorithm (for example, when the k-nearest neighbor method is used), the teacher data is not required, and the feature amount generation unit 312 learns the cluster feature amount. It can be data.

学習データが生成されると、特徴量生成部312により、当該学習データと、クラスタAのクラスタIDとが関連付けられた学習情報が生成される。 When the learning data is generated, the feature amount generation unit 312 generates learning information in which the learning data is associated with the cluster ID of the cluster A.

次に、学習装置31の通信部311は、学習情報を異常検知用ストレージ装置33に送信する(ステップS207)。 Next, the communication unit 311 of the learning device 31 transmits the learning information to the abnormality detection storage device 33 (step S207).

異常検知用ストレージ装置33の情報管理部332は、通信部331により学習情報を受信すると、当該学習情報を学習情報テーブル335Tに格納する(ステップS208)。 When the information management unit 332 of the abnormality detection storage device 33 receives the learning information by the communication unit 331, the information management unit 332 stores the learning information in the learning information table 335T (step S208).

異常検知用ストレージ装置33の通信部331は、上記のステップS202〜ステップS208の処理が所定の時間の間繰り返し実行された後、クラスタ単位の学習情報を学習装置31に送信する(ステップS209)。すなわち、通信部331は、情報管理部332により学習情報テーブル335Tから取得されたクラスタAの学習情報を学習装置31に送信する。 The communication unit 331 of the abnormality detection storage device 33 repeatedly executes the processes of steps S202 to S208 for a predetermined time, and then transmits the learning information for each cluster to the learning device 31 (step S209). That is, the communication unit 331 transmits the learning information of the cluster A acquired from the learning information table 335T by the information management unit 332 to the learning device 31.

学習装置31の検知モデル作成部314は、異常検知用ストレージ装置33から受信した学習情報に基づいて、検知モデルのパラメータ値を生成する(ステップS210)。このとき、検知モデル作成部314は、設定情報の「異常検知アルゴリズムの種類」で設定された異常検知アルゴリズムに用いられるパラメータのパラメータ値を生成する。 The detection model creation unit 314 of the learning device 31 generates a parameter value of the detection model based on the learning information received from the abnormality detection storage device 33 (step S210). At this time, the detection model creation unit 314 generates the parameter value of the parameter used for the abnormality detection algorithm set in the "type of abnormality detection algorithm" of the setting information.

検知モデルのパラメータ値が生成されると、検知モデル作成部314により、当該検知モデルのパラメータ値と、クラスタAのクラスタIDとが関連付けられた検知モデル情報が作成される。 When the parameter value of the detection model is generated, the detection model creation unit 314 creates the detection model information in which the parameter value of the detection model and the cluster ID of the cluster A are associated with each other.

学習装置31の通信部311は、検知モデル情報を異常検知用ストレージ装置33に送信する(ステップS211)。 The communication unit 311 of the learning device 31 transmits the detection model information to the abnormality detection storage device 33 (step S211).

異常検知用ストレージ装置33の情報管理部332は、通信部331により検知モデル情報を受信すると、当該検知モデル情報を検知モデル情報テーブル336Tに格納する(ステップS212)。なお、情報管理部332は、同一のクラスタIDの検知モデル情報が検知モデル情報テーブル336Tに既に格納されている場合、当該検知モデル情報を、通信部331により受信された検知モデル情報で上書き更新すれば良い。 When the information management unit 332 of the abnormality detection storage device 33 receives the detection model information by the communication unit 331, the information management unit 332 stores the detection model information in the detection model information table 336T (step S212). When the detection model information of the same cluster ID is already stored in the detection model information table 336T, the information management unit 332 overwrites and updates the detection model information with the detection model information received by the communication unit 331. Just do it.

以上により、複数のIoT端末70が属するクラスタ毎に、当該クラスタ単位で異常を検知するための検知モデルが作成及び更新される。このように、クラスタ単位で検知モデルを作成することで、IoT端末70毎に個別で検知モデルを作成する場合と比較して、検知モデル作成のための計算時間やストレージ領域の容量を削減することができる。 As described above, the detection model for detecting an abnormality in each cluster is created and updated for each cluster to which the plurality of IoT terminals 70 belong. In this way, by creating the detection model for each cluster, the calculation time for creating the detection model and the capacity of the storage area can be reduced as compared with the case where the detection model is individually created for each IoT terminal 70. Can be done.

≪異常検知処理≫
次に、検知モデルに基づいて異常クラスタを特定(検知)した後に、当該異常クラスタに属する異常端末70を特定する処理について、図13を参照しながら説明する。図13は、本発明の実施の形態における異常検知処理の一例を示すシーケンス図である。
≪Anomaly detection processing≫
Next, a process of identifying (detecting) an abnormal cluster based on the detection model and then identifying an abnormal terminal 70 belonging to the abnormal cluster will be described with reference to FIG. FIG. 13 is a sequence diagram showing an example of the abnormality detection process according to the embodiment of the present invention.

まず、異常検知用ストレージ装置33の通信部331は、トラヒック情報収集装置20に対して、クラスタ単位のトラヒック情報のリクエストを送信する(ステップS301)。異常検知用ストレージ装置33は、クラスタ情報テーブル334Tを参照することで、クラスタ単位のトラヒック情報のリクエストを送信することができる。 First, the communication unit 331 of the abnormality detection storage device 33 transmits a request for traffic information in cluster units to the traffic information collecting device 20 (step S301). The abnormality detection storage device 33 can transmit a request for traffic information for each cluster by referring to the cluster information table 334T.

以降では、一例として、クラスタAのトラヒック情報のリクエストを送信したものとして説明する。 Hereinafter, as an example, it is assumed that a request for traffic information of cluster A is transmitted.

ここで、以降のステップS302におけるトラヒック情報のリクエストは、設定情報の「データ取得の間隔」で設定された時間毎に実行される。したがって、以降のステップS302〜ステップS313の処理は、当該時間毎に繰り返し実行される。 Here, the request for traffic information in the subsequent steps S302 is executed every time set in the "data acquisition interval" of the setting information. Therefore, the subsequent processes of steps S302 to S313 are repeatedly executed every time.

トラヒック情報収集装置20は、異常検知用ストレージ装置33からクラスタAのトラヒック情報のリクエストを受信すると、クラスタAに属するIoT端末70のトラヒック情報のリクエストを転送装置10に送信する(ステップS302)。なお、当該リクエストには、クラスタAに属するIoT端末70のIPアドレスが含まれる。 When the traffic information collecting device 20 receives the traffic information request of the cluster A from the abnormality detection storage device 33, the traffic information collecting device 20 transmits the traffic information request of the IoT terminal 70 belonging to the cluster A to the transfer device 10 (step S302). The request includes the IP address of the IoT terminal 70 belonging to the cluster A.

転送装置10は、当該リクエストに応じて、自身がパケットを転送する各IoT端末70のうち、クラスタAに属するIoT端末70のトラヒック情報をトラヒック情報収集装置20に送信する(ステップS303)。 In response to the request, the transfer device 10 transmits the traffic information of the IoT terminals 70 belonging to the cluster A to the traffic information collection device 20 among the IoT terminals 70 to which the packet is transferred (step S303).

トラヒック情報収集装置20は、転送装置10からクラスタAに属するIoT端末70のトラヒック情報を受信すると、当該トラヒック情報を異常検知装置32に送信する(ステップS304)。なお、トラヒック情報収集装置20は、DNSサーバ40やDHCPサーバ50からクラスタAに属するIoT端末70のトラヒック情報を収集して、異常検知装置32に送信しても良い。 When the traffic information collecting device 20 receives the traffic information of the IoT terminal 70 belonging to the cluster A from the transfer device 10, the traffic information collecting device 20 transmits the traffic information to the abnormality detecting device 32 (step S304). The traffic information collecting device 20 may collect the traffic information of the IoT terminal 70 belonging to the cluster A from the DNS server 40 or the DHCP server 50 and transmit it to the abnormality detecting device 32.

異常検知装置32の特徴量生成部322は、通信部321によりクラスタAに属するIoT端末70のトラヒック情報を受信すると、クラスタAのクラスタ特徴量を生成する(ステップS305)。特徴量生成部322は、クラスタAに属するIoT端末70の特徴量を生成した上で、これら特徴量の平均値又は中央値を算出することで、当該平均値又は中央値をクラスタ特徴量とすれば良い。なお、特徴量生成部322は、学習装置31の特徴量生成部312と同様のクラスタ特徴量を生成する。 When the feature amount generation unit 322 of the abnormality detection device 32 receives the traffic information of the IoT terminal 70 belonging to the cluster A by the communication unit 321, the feature amount generation unit 322 generates the cluster feature amount of the cluster A (step S305). The feature amount generation unit 322 generates the feature amount of the IoT terminal 70 belonging to the cluster A, and then calculates the average value or the median value of these feature amounts, so that the average value or the median value is regarded as the cluster feature amount. Just do it. The feature amount generation unit 322 generates a cluster feature amount similar to the feature amount generation unit 312 of the learning device 31.

次に、異常検知装置32の通信部321は、クラスタAの検知モデルのパラメータ値のリクエストを異常検知用ストレージ装置33に送信する(ステップS306)。 Next, the communication unit 321 of the abnormality detection device 32 transmits a request for the parameter value of the detection model of the cluster A to the abnormality detection storage device 33 (step S306).

異常検知用ストレージ装置33の通信部331は、当該リクエストを受信すると、情報管理部332によりクラスタAの検知モデルのパラメータ値を検知モデル情報テーブル336Tから取得して、異常検知装置32に送信する(ステップS307)。 When the communication unit 331 of the abnormality detection storage device 33 receives the request, the information management unit 332 acquires the parameter value of the detection model of the cluster A from the detection model information table 336T and transmits it to the abnormality detection device 32 ( Step S307).

異常検知装置32の異常検知部323は、上記のステップS305で生成されたクラスタ特徴量と、異常検知用ストレージ装置33から受信した検知モデルのパラメータ値とに基づいて、クラスタAの異常判定を行う(ステップS308)。すなわち、異常検知部323は、クラスタ特徴量と、検知モデルのパラメータとを用いて、異常検知アルゴリズムによりクラスタAが異常クラスタであるか否かを判定する。これにより、異常クラスタが特定(検知)される。 The abnormality detection unit 323 of the abnormality detection device 32 determines the abnormality of the cluster A based on the cluster feature amount generated in step S305 and the parameter value of the detection model received from the abnormality detection storage device 33. (Step S308). That is, the abnormality detection unit 323 determines whether or not the cluster A is an abnormality cluster by the abnormality detection algorithm using the cluster feature amount and the parameters of the detection model. As a result, the abnormal cluster is identified (detected).

上記のステップS308において、クラスタAが異常クラスタであると判定されなかった場合(すなわち、クラスタAに異常端末70が含まれない場合)、以降のステップS309〜ステップS313の処理は実行されない。一方で、上記のステップS308において、クラスタAが異常クラスタであると判定された場合(すなわち、クラスタAに異常端末70が含まれる場合)、以降のステップS309〜ステップS313の処理が実行される。 If the cluster A is not determined to be an abnormal cluster in step S308 above (that is, if the cluster A does not include the abnormal terminal 70), the subsequent processes of steps S309 to S313 are not executed. On the other hand, when it is determined in step S308 that cluster A is an abnormal cluster (that is, when cluster A includes an abnormal terminal 70), the subsequent processes of steps S309 to S313 are executed.

異常検知装置32の通信部321は、異常クラスタのクラスタID(本実施形態では、一例として、クラスタA)を異常検知用ストレージ装置33に送信する(ステップS309)。 The communication unit 321 of the abnormality detection device 32 transmits the cluster ID of the abnormal cluster (cluster A as an example in this embodiment) to the abnormality detection storage device 33 (step S309).

異常検知用ストレージ装置33の通信部331は、情報管理部332によりクラスタ情報テーブル334Tを参照して、クラスタID「クラスタA」に関連付けられているIPアドレスをセキュリティ装置60に送信する(ステップS310)。すなわち、通信部331は、異常クラスタと判定されたクラスタAに属するIoT端末70のIPアドレスをセキュリティ装置60に送信する。 The communication unit 331 of the anomaly detection storage device 33 refers to the cluster information table 334T by the information management unit 332 and transmits the IP address associated with the cluster ID “cluster A” to the security device 60 (step S310). .. That is, the communication unit 331 transmits the IP address of the IoT terminal 70 belonging to the cluster A determined to be the abnormal cluster to the security device 60.

セキュリティ装置60は、異常クラスタであるクラスタAに属するIoT端末70のトラヒック情報のリクエストを転送装置10に送信する(ステップS311)。なお、当該リクエストには、異常クラスタと判定されたクラスタAに属するIoT端末70のIPアドレスが含まれる。 The security device 60 transmits a request for traffic information of the IoT terminal 70 belonging to the cluster A, which is an abnormal cluster, to the transfer device 10 (step S311). The request includes the IP address of the IoT terminal 70 belonging to the cluster A determined to be an abnormal cluster.

転送装置10は、当該リクエストに応じて、自身がパケットを転送する各IoT端末70のうち、異常クラスタと判定されたクラスタAに属するIoT端末70のトラヒック情報をセキュリティ装置60に送信する(ステップS312)。 In response to the request, the transfer device 10 transmits the traffic information of the IoT terminal 70 belonging to the cluster A determined to be an abnormal cluster among the IoT terminals 70 to which the packet is transferred to the security device 60 (step S312). ).

セキュリティ装置60は、クラスタAに属するIoT端末70のトラヒック情報を受信すると、当該トラヒック情報に基づいて詳細な異常判定を行って、これら各IoT端末70のうち、マルウェアに感染しているIoT端末70を特定する(ステップS313)。なお、セキュリティ装置60は、上述したように、例えば、IPSやサンドボックス、DPI等により、異常クラスタに属する各IoT端末70の中から、マルウェアに感染しているIoT端末70を特定する。 When the security device 60 receives the traffic information of the IoT terminals 70 belonging to the cluster A, the security device 60 makes a detailed abnormality determination based on the traffic information, and among these IoT terminals 70, the IoT terminal 70 infected with malware. Is specified (step S313). As described above, the security device 60 identifies the IoT terminal 70 infected with malware from the IoT terminals 70 belonging to the abnormal cluster by, for example, IPS, sandbox, DPI, or the like.

以上により、あるクラスタに属するIoT端末70がマルウェアに感染した場合、異常検知装置32は、各クラスタの中から異常クラスタを特定することができる。このように、クラスタ単位で異常検知を行うことで、例えば、ある同一のメーカの商業用センサ(IoT端末70の一例)に脆弱性が存在し、集団感染が行った場合、これら商業用センサが属するクラスタを異常クラスタとして検知することができる。 As described above, when the IoT terminal 70 belonging to a certain cluster is infected with malware, the abnormality detection device 32 can identify the abnormal cluster from each cluster. In this way, by performing anomaly detection on a cluster-by-cluster basis, for example, if a commercial sensor of the same manufacturer (an example of IoT terminal 70) is vulnerable and an outbreak occurs, these commercial sensors will be used. The cluster to which it belongs can be detected as an abnormal cluster.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 The present invention is not limited to the above-described embodiment disclosed specifically, and various modifications and modifications can be made without departing from the scope of claims.

10 転送装置
20 トラヒック情報収集装置
30 異常検知システム
31 学習装置
32 異常検知装置
33 異常検知用ストレージ装置
40 DNSサーバ
50 DHCPサーバ
60 セキュリティ装置
70 IoT端末
311 通信部
312 特徴量生成部
313 クラスタリング部
314 検知モデル作成部
321 通信部
322 特徴量生成部
323 異常検知部
331 通信部
332 情報管理部
333 アドレス情報テーブル記憶部
334 クラスタ情報テーブル記憶部
335 学習情報テーブル記憶部
336 検知モデル情報テーブル記憶部
337 設定情報テーブル記憶部
10 Transfer device 20 Traffic information collection device 30 Anomaly detection system 31 Learning device 32 Anomaly detection device 33 Anomaly detection storage device 40 DNS server 50 DHCP server 60 Security device 70 IoT terminal 311 Communication unit 312 Feature quantity generation unit 313 Clustering unit 314 Detection Model creation unit 321 Communication unit 322 Feature quantity generation unit 323 Anomaly detection unit 331 Communication unit 332 Information management unit 333 Address information table storage unit 334 Cluster information table storage unit 335 Learning information table storage unit 336 Detection model information table storage unit 337 Setting information Table storage

Claims (4)

複数の端末と接続される異常検知システムであって、
前記複数の端末それぞれの特徴を示す複数の端末特徴量に基づいて、前記複数の端末を1以上のクラスタに分類するクラスタリング部と、
前記クラスタリング部により分類されたクラスタ毎に、前記クラスタに属する全ての端末の特徴を示す第1のクラスタ特徴量をそれぞれ用いて、異常な端末が前記クラスタに属することを検知するための検知モデルをそれぞれ作成する検知モデル作成部と、
前記1以上のクラスタのうちの一のクラスタについて、該一のクラスタに属する全ての端末のトラヒック情報に基づいて、前記一のクラスタに属する全ての端末の特徴を示す第2のクラスタ特徴量を生成する第1の特徴量生成部と、
前記検知モデル作成部により作成された前記検知モデルと、前記第1の特徴量生成部により生成された前記第2のクラスタ特徴量とに基づいて、異常な端末が前記一のクラスタに属するか否かを判定することで、異常な端末が属するクラスタを検知する異常検知部と、
を有する異常検知システム。
An anomaly detection system that connects to multiple terminals
A clustering unit that classifies the plurality of terminals into one or more clusters based on a plurality of terminal feature quantities indicating the characteristics of each of the plurality of terminals .
For each cluster classified by the clustering unit, a detection model for detecting that an abnormal terminal belongs to the cluster is created by using the first cluster feature amount indicating the characteristics of all the terminals belonging to the cluster. The detection model creation unit to be created and
An clusters of the one or more clusters, generate based on the traffic information of all the terminals belonging to the one cluster, the second cluster feature amount representing a feature of all the terminals belonging to the one cluster The first feature amount generation unit to be
Whether or not the abnormal terminal belongs to the one cluster based on the detection model created by the detection model creation unit and the second cluster feature amount generated by the first feature amount generation unit. Anomaly detection unit that detects the cluster to which the abnormal terminal belongs by determining whether
Anomaly detection system with.
前記第1の特徴量生成部は、
前記一のクラスタに属する全ての端末のトラヒック情報のそれぞれに含まれる所定の通信特性の平均値又は中央値を前記第2のクラスタ特徴量として生成する、請求項1に記載の異常検知システム。
The first feature amount generation unit is
Wherein generating the average value or the median value the second cluster feature amount of a predetermined communication characteristic included in each of the traffic information of all terminals belonging to one cluster, the abnormality detection system according to claim 1.
前記複数の端末それぞれの所定の通信特性を前記端末特徴量として生成する第2の特徴量生成部を有し、
前記クラスタリング部は、
前記複数の端末それぞれの前記端末特徴量に基づいて、前記複数の端末を1以上のクラスタに分類する、請求項1又は2に記載の異常検知システム。
A second feature amount generating unit for generating a predetermined communication characteristic of each of the plurality of terminals as the terminal characteristic quantity,
The clustering unit
The abnormality detection system according to claim 1 or 2, wherein the plurality of terminals are classified into one or more clusters based on the terminal feature amount of each of the plurality of terminals.
複数の端末と接続される異常検知システムに用いられる異常検知方法であって、
前記複数の端末それぞれの特徴を示す複数の端末特徴量に基づいて、前記複数の端末を1以上のクラスタに分類するクラスタリング手順と、
前記クラスタリング手順により分類されたクラスタ毎に、前記クラスタに属する全ての端末の特徴を示す第1のクラスタ特徴量をそれぞれ用いて、異常な端末が前記クラスタに属することを検知するための検知モデルをそれぞれ作成する検知モデル作成手順と、
前記1以上のクラスタのうちの一のクラスタについて、該一のクラスタに属する全ての端末のトラヒック情報に基づいて、前記一のクラスタに属する全ての端末の特徴を示す第2のクラスタ特徴量を生成する特徴量生成手順と、
前記検知モデル作成手順により作成された前記検知モデルと、前記特徴量生成手順により生成された前記第2のクラスタ特徴量とに基づいて、異常な端末が前記一のクラスタに属するか否かを判定することで、異常な端末が属するクラスタを検知する異常検知手順と、
を有する異常検知方法。
An anomaly detection method used in anomaly detection systems that are connected to multiple terminals.
A clustering procedure for classifying the plurality of terminals into one or more clusters based on a plurality of terminal feature quantities indicating the characteristics of each of the plurality of terminals .
For each cluster classified by the clustering procedure, a detection model for detecting that an abnormal terminal belongs to the cluster is created by using the first cluster feature amount indicating the characteristics of all the terminals belonging to the cluster. The detection model creation procedure to be created and
An clusters of the one or more clusters, generate based on the traffic information of all the terminals belonging to the one cluster, the second cluster feature amount representing a feature of all the terminals belonging to the one cluster Feature generation procedure and
Based on the detection model created by the detection model creation procedure and the second cluster feature amount generated by the feature amount generation procedure, it is determined whether or not the abnormal terminal belongs to the one cluster. By doing so, the abnormality detection procedure to detect the cluster to which the abnormal terminal belongs , and
Anomaly detection method with.
JP2017027335A 2017-02-16 2017-02-16 Anomaly detection system and anomaly detection method Active JP6770454B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017027335A JP6770454B2 (en) 2017-02-16 2017-02-16 Anomaly detection system and anomaly detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017027335A JP6770454B2 (en) 2017-02-16 2017-02-16 Anomaly detection system and anomaly detection method

Publications (2)

Publication Number Publication Date
JP2018133004A JP2018133004A (en) 2018-08-23
JP6770454B2 true JP6770454B2 (en) 2020-10-14

Family

ID=63248491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017027335A Active JP6770454B2 (en) 2017-02-16 2017-02-16 Anomaly detection system and anomaly detection method

Country Status (1)

Country Link
JP (1) JP6770454B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101990022B1 (en) 2018-11-28 2019-06-17 한국인터넷진흥원 Method for generating malicious traffic template about device group including malicious device apparatus thereof
CN110113207A (en) * 2019-05-08 2019-08-09 广州创想云科技有限公司 A kind of method for updating protocol based on Internet of Things, device, equipment and storage medium
JP7413924B2 (en) * 2020-05-25 2024-01-16 富士フイルムビジネスイノベーション株式会社 Information processing device and information processing program
JP2021189658A (en) * 2020-05-28 2021-12-13 富士フイルムビジネスイノベーション株式会社 Information processing device and information processing program
JP2021189721A (en) 2020-05-29 2021-12-13 富士フイルムビジネスイノベーション株式会社 Information processing equipment and information processing programs
KR102476700B1 (en) * 2021-05-13 2022-12-12 서울대학교산학협력단 Wireless distributed learning system including abnormal terminal and method of operation thereof
CN113612657A (en) * 2021-07-31 2021-11-05 南京云利来软件科技有限公司 Method for detecting abnormal HTTP connection

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5137339B2 (en) * 2006-06-12 2013-02-06 株式会社日立製作所 Server, system and method for retrieving clustered vector data
JP5009244B2 (en) * 2008-07-07 2012-08-22 日本電信電話株式会社 Malware detection system, malware detection method, and malware detection program
US8528088B2 (en) * 2011-05-26 2013-09-03 At&T Intellectual Property I, L.P. Modeling and outlier detection in threat management system data
JP5812282B2 (en) * 2011-12-16 2015-11-11 公立大学法人大阪市立大学 Traffic monitoring device
JP5977958B2 (en) * 2012-02-29 2016-08-24 綜合警備保障株式会社 Specific data detection apparatus and specific data detection method
JP6066877B2 (en) * 2013-09-26 2017-01-25 株式会社Kddi総合研究所 Authentication server, authentication method, and authentication program
US10721244B2 (en) * 2014-03-19 2020-07-21 Nippon Telegraph And Telephone Corporation Traffic feature information extraction method, traffic feature information extraction device, and traffic feature information extraction program
US9710752B2 (en) * 2014-09-11 2017-07-18 Qualcomm Incorporated Methods and systems for aggregated multi-application behavioral analysis of mobile device behaviors
US10038706B2 (en) * 2014-10-31 2018-07-31 Verisign, Inc. Systems, devices, and methods for separating malware and background events
JP5973636B1 (en) * 2015-08-07 2016-08-23 三菱電機インフォメーションシステムズ株式会社 Abnormal vector detection apparatus and abnormal vector detection program

Also Published As

Publication number Publication date
JP2018133004A (en) 2018-08-23

Similar Documents

Publication Publication Date Title
JP6770454B2 (en) Anomaly detection system and anomaly detection method
Perdisci et al. Iotfinder: Efficient large-scale identification of iot devices via passive dns traffic analysis
US10574695B2 (en) Gateway apparatus, detecting method of malicious domain and hacked host thereof, and non-transitory computer readable medium
Kumar et al. Early detection of Mirai-like IoT bots in large-scale networks through sub-sampled packet traffic analysis
JP5307090B2 (en) Apparatus, method, and medium for detecting payload anomalies using n-gram distribution of normal data
US10135633B2 (en) Network security analysis for smart appliances
CN106663169B (en) System and method for high speed threat intelligence management using unsupervised machine learning and priority algorithms
US10581880B2 (en) System and method for generating rules for attack detection feedback system
US8683585B1 (en) Using file reputations to identify malicious file sources in real time
US11258812B2 (en) Automatic characterization of malicious data flows
US20220159020A1 (en) Network protection
KR20140027616A (en) Apparatus and method for detecting http botnet based on the density of web transaction
US11870693B2 (en) Kernel space based capture using intelligent packet selection paradigm and event output storage determination methodology
US12069077B2 (en) Methods for detecting a cyberattack on an electronic device, method for obtaining a supervised random forest model for detecting a DDoS attack or a brute force attack, and electronic device configured to detect a cyberattack on itself
US12088602B2 (en) Estimation apparatus, estimation method and program
Hafeez et al. IoT-KEEPER: Securing IoT communications in edge networks
EP3848822B1 (en) Data classification device, data classification method, and data classification program
CN108156127A (en) Network attack mode judging device, judging method and computer readable storage medium thereof
JP2020022133A (en) Infection expansion attack detection device, attack source identification method and program
JP6813451B2 (en) Anomaly detection system and anomaly detection method
Wenda et al. A honeypot detection method based on characteristic analysis and environment detection
JP7176630B2 (en) DETECTION DEVICE, DETECTION METHOD AND DETECTION PROGRAM
JP7215571B2 (en) DETECTION DEVICE, DETECTION METHOD AND DETECTION PROGRAM
Aung et al. ATLAS: A practical attack detection and live malware analysis system for IoT threat intelligence
CN114301689B (en) Campus network security protection method and device, computing equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200225

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200427

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: 20200923

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200925

R150 Certificate of patent or registration of utility model

Ref document number: 6770454

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150