JP2016054435A - Operation detection device, operation method of the same, and computer program - Google Patents
Operation detection device, operation method of the same, and computer program Download PDFInfo
- Publication number
- JP2016054435A JP2016054435A JP2014179976A JP2014179976A JP2016054435A JP 2016054435 A JP2016054435 A JP 2016054435A JP 2014179976 A JP2014179976 A JP 2014179976A JP 2014179976 A JP2014179976 A JP 2014179976A JP 2016054435 A JP2016054435 A JP 2016054435A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- feature vector
- feature
- time
- similarity
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
Description
本発明は、機器にアプリケーションをインストールせずに機器に対する操作を検出する技術に関する。 The present invention relates to a technique for detecting an operation on a device without installing an application in the device.
PC及びプリンタなどの機器をネットワークに接続するに際して障害が発生した場合、ネットワークの専門知識を有する者が対応にあたることが多いが、その際、利用者がどのような操作を行ったかを知ることができれば対応が容易となる。 If a failure occurs when connecting a device such as a PC or printer to the network, a person with network expertise often responds, but at that time, the user can know what operation has been performed. If possible, it will be easier to handle.
しかし、利用者が操作を記憶していない場合や、複数人で機器を使用している場合や、電源断などやアプリケーションに起因する障害の場合は、どのような操作が行われたかを知ることが困難であり、原因の探求に時間がかかる。 However, if the user does not remember the operation, if the device is used by multiple people, or if the failure is caused by an application such as a power failure, know what operation has been performed Is difficult and it takes time to investigate the cause.
この問題に対し、非特許文献1及び特許文献1では、例えば、PCにアプリケーションをインストールし、アプリケーションにより操作情報を収集する技術を開示している。
To deal with this problem, Non-Patent
しかし、アプリケーションのインストールは面倒であり、利用者の負担となる。また、アプリケーションがオペレーティングシステムに依存する場合、設定の手間が生じる。また、アプリケーションを常時動作させる必要があり、機器への負荷がかかる。 However, application installation is cumbersome and burdens the user. Further, when the application depends on the operating system, setting work is required. In addition, it is necessary to always operate the application, which places a load on the device.
一方、特許文献2では、ネットワーク上を流れるトラヒックを分析することで、利用しているアプリケーション種別を検出する技術を開示している。この技術を使用すれば、アプリケーションのインストールは不要となる。
On the other hand,
しかし、この技術では、通信を行うアプリケーション種別しか検出できない。つまり、操作は検出できない。例えば、PCの再起動やネットワーク設定の変更のような操作、オペレーティングシステムのアップデートのような操作が行われたことがわかれば有用だが、特許文献2の技術では不可能である。
However, this technique can detect only the type of application that performs communication. That is, the operation cannot be detected. For example, it is useful to know that operations such as restarting the PC, changing network settings, and operating system updating are performed, but this is not possible with the technique of
さらに、ウェブブラウザを経由して新たなソフトウェアをダウンロードし、インストールした場合、特許文献2の技術では、ウェブブラウザを使用したことは検出できるが、ソフトウェアをダウンロードする操作が行われたことは検出できない。
Furthermore, when new software is downloaded and installed via a web browser, the technology of
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、機器にアプリケーションをインストールせずに機器に対する操作を検出できる操作検出装置を提供することにある。 The present invention has been made in view of the above problems, and an object of the present invention is to provide an operation detection device that can detect an operation on a device without installing an application in the device.
上記の課題を解決するために、第1の本発明は、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置であって、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースと、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段と、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段と、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段と、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段と、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段と、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数の操作クラスタを生成する操作クラスタ生成手段と、前記各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、前記操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段と、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段と、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段とを備えることを特徴とする。 In order to solve the above-described problem, the first aspect of the present invention is an operation detection device that detects an operation on a device based on a packet used for communication by the device. An operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector, and a center vector generated based on a packet at a time when the user is not likely to perform the operation. A packet corresponding to the predetermined information in the unit time for each of the predetermined information included in the header of the packet for each unit time in the noise database storing the record including A first feature amount calculating means for calculating a feature amount of a plurality of predetermined consecutive times starting from the unit time for a plurality of unit times. First feature vector generation means for generating a feature vector composed of feature amounts calculated for unit time, and an operation that is a feature vector of a time at which the user of the device may operate the plurality of feature vectors Feature vector dividing means for dividing a time feature vector into a noise time feature vector that is a time feature vector that is not likely to be operated by the user, and similarity between the noise time feature vectors from the plurality of noise time feature vectors Noise cluster generating means for generating a plurality of noise clusters based on the characteristics, and for each noise cluster, a center vector of a noise time feature vector in the noise cluster is generated and stored in the noise database Generating means, and for each operation time feature vector, the operation time A first similarity calculating means for calculating a similarity between the characteristic vector and each central vector of the noise database, a corresponding operation time feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold, and the maximum A first difference feature vector generating means for generating a difference feature vector having a difference from a center vector corresponding to the value as a feature amount; a corresponding operation time feature vector when the maximum value is less than the threshold; and the difference feature An operation cluster generating means for generating a plurality of operation clusters from a plurality of feature vectors consisting of vectors based on similarity between the feature vectors, and for each operation cluster, generating a center vector of the feature vectors in the operation cluster , Search the operation name database for a record including a rule that matches the center vector, and Second center vector generation means for associating the operation name in the record with the predetermined information in the unit time for each of the predetermined information included in the header of the packet for each unit time in the operation detection period Second feature quantity calculating means for calculating the feature quantity of the packet corresponding to the information of the above, second feature vector generating means for generating a feature vector composed of the feature quantity, and for each feature vector, A second similarity calculating means for calculating a similarity with each center vector of the noise database; a corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold; and a center corresponding to the maximum value A second difference feature vector generating means for calculating a difference from the vector and generating a difference feature vector having the difference as a feature amount; and the operation name data For each center vector in the base, the similarity with each of the difference feature vectors and the similarity with each corresponding feature vector when the maximum similarity calculated by the second similarity calculation means is greater than or equal to a threshold value are calculated. A third similarity calculating unit that reads out an operation name associated with a center vector corresponding to the maximum value from the operation name database if the maximum value of the similarity is equal to or greater than a predetermined threshold value. It is characterized by providing.
第2の本発明は、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置であって、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースと、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段と、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段と、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段と、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段と、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段と、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルのそれぞれにつき、前記操作名データベースにおける当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成する操作クラスタ生成手段と、当該各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、前記操作名データベースから、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段と、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段と、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段と、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段とを備えることを特徴とする。 The second aspect of the present invention is an operation detection device for detecting an operation on a device based on a packet used for communication by the device, and for a plurality of types of operations, the operation name of the operation and the operation Operation name database in which records including rules and center vectors applied at the time are stored, and a noise database in which records including center vectors generated based on packets at times when there is no possibility of user operation are stored And calculating a feature amount of the packet corresponding to the predetermined information in the unit time for each predetermined information included in the header of the packet for each unit time in a period before detecting the operation. Calculated for a plurality of predetermined unit times starting from the unit time for the feature amount calculation means and a plurality of unit times A first feature vector generating means for generating a feature vector composed of the collected amount; an operation time feature vector which is a feature vector of a time at which a user of the device may operate the plurality of feature vectors; and the user A feature vector dividing unit that divides a noise time feature vector that is a time feature vector that is unlikely to be operated, and a plurality of noise time feature vectors based on the similarity between the noise time feature vectors. Noise cluster generating means for generating a noise cluster; for each noise cluster, a first center vector generating means for generating a center vector of a noise time feature vector in the noise cluster and storing it in the noise database; and For the operation time feature vector, the operation time feature vector and the noise data A first similarity calculating means for calculating a similarity to each base vector of the base, a corresponding operation time feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold, and a center corresponding to the maximum value A first difference feature vector generating means for generating a difference feature vector having a difference from the vector as a feature quantity; a plurality of operation time feature vectors when the maximum value is less than the threshold; and a plurality of the difference feature vectors Operation cluster generation for determining whether or not there is a rule that matches the feature vector in the operation name database for each feature vector, and generating an operation cluster composed of feature vectors that match the rule for each rule determined to be compatible And for each operation cluster, a center vector of the operation cluster is generated, and the operation name database is generated. A second center vector generating means for searching a record including a rule corresponding to the operation cluster from the source and associating the center vector with an operation name in the record; In addition, for each piece of predetermined information included in the header of the packet, a second feature amount calculating means for calculating a feature amount of the packet corresponding to the predetermined information in the unit time, and a feature vector comprising the feature amount A second feature vector generating means for generating; a second similarity calculating means for calculating a similarity between the feature vector and each center vector of the noise database; and a maximum value of the similarity The difference between the corresponding feature vector when the value is equal to or greater than a predetermined threshold and the center vector corresponding to the maximum value is calculated, and the difference is characterized. Second difference feature vector generation means for generating a difference feature vector, and for each center vector in the operation name database, the similarity to each difference feature vector and the similarity calculated by the second similarity calculation means A third similarity calculating means for calculating a similarity with each corresponding feature vector when the maximum value of the degree is equal to or greater than a threshold; and if the maximum value of the similarity is equal to or greater than a predetermined threshold, the operation name database Operation name reading means for reading an operation name associated with the center vector corresponding to the maximum value is provided.
第3の本発明は、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置の動作方法であって、前記操作検出装置は、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースとを備え、前記動作方法は、前記操作検出装置の第1の特徴量算出手段が、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、前記操作検出装置の第1の特徴ベクトル生成手段が、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成し、前記操作検出装置の特徴ベクトル分割手段が、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割し、前記操作検出装置のノイズクラスタ生成手段が、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成し、前記操作検出装置の第1の中心ベクトル生成手段が、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させ、前記操作検出装置の第1の類似度算出手段が、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、前記操作検出装置の第1の差分特徴ベクトル生成手段が、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成し、前記操作検出装置の操作クラスタ生成手段が、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数の操作クラスタを生成し、前記操作検出装置の第2の中心ベクトル生成手段が、前記各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、前記操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づけ、前記操作検出装置の第2の特徴量算出手段が、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、前記操作検出装置の第2の特徴ベクトル生成手段が、当該特徴量からなる特徴ベクトルを生成し、前記操作検出装置の第2の類似度算出手段が、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、前記操作検出装置の第2の差分特徴ベクトル生成手段が、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成し、前記操作検出装置の第3の類似度算出手段が、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出し、前記操作検出装置の操作名読出手段が、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出すことを特徴とする。 3rd this invention is the operation | movement method of the operation detection apparatus which detects operation with respect to the said apparatus based on the packet used for an apparatus to communicate, Comprising: The said operation detection apparatus is about multiple types of operation, An operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector, and a center vector generated based on a packet at a time when the user is not likely to perform the operation. And a noise database in which a record including the information is stored, and the operation method includes a first feature value calculating unit of the operation detecting device in a header of a packet for each unit time in a period before detecting an operation. For each of the predetermined information included, the feature amount of the packet corresponding to the predetermined information in the unit time is calculated, and the first characteristic of the operation detecting device is calculated. For each of the plurality of unit times, the vector generation unit generates a feature vector composed of feature amounts calculated for a plurality of predetermined unit times starting from the unit time, and the feature vector dividing unit of the operation detection device The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by a user of the device and a noise time feature that is a feature vector of a time that is not likely to be operated by the user. And the noise cluster generation means of the operation detection device generates a plurality of noise clusters from the plurality of noise time feature vectors based on the similarity between the noise time feature vectors, and the operation detection device includes: The first center vector generation means is configured to generate, for each noise cluster, a noise time characteristic in the noise cluster. A center vector of the vector is generated and stored in the noise database, and the first similarity calculation unit of the operation detection device is configured to determine, for each operation time feature vector, the operation time feature vector and each center vector of the noise database. The first difference feature vector generation unit of the operation detection device corresponds to the corresponding operation time feature vector and the maximum value when the maximum value of the similarity is equal to or greater than a predetermined threshold value. A difference feature vector having a difference from a center vector to be processed as a feature amount, and the operation cluster generation unit of the operation detection device includes the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value. Generating a plurality of operation clusters from a plurality of feature vectors based on similarity between the feature vectors, A second center vector generation unit for each operation cluster generates a center vector of a feature vector in the operation cluster, and searches the operation name database for a record including a rule that matches the center vector. The center vector is associated with the operation name in the record, and predetermined information included in the header of the packet for each unit time in the period in which the second feature amount calculation unit of the operation detection device detects the operation. , The feature amount of the packet corresponding to the predetermined information in the unit time is calculated, the second feature vector generation means of the operation detection device generates a feature vector composed of the feature amount, and the operation For each feature vector, the second similarity calculation unit of the detection device performs the feature vector and each center of the noise database. The similarity with the kuttle is calculated, and the second difference feature vector generation unit of the operation detection device corresponds to the corresponding feature vector and the maximum value when the maximum value of the similarity is equal to or greater than a predetermined threshold. Calculating a difference from the center vector, generating a difference feature vector having the difference as a feature quantity, and the third similarity calculating means of the operation detecting device, for each center vector in the operation name database, The similarity with the feature vector and the similarity with each corresponding feature vector when the maximum similarity calculated by the second similarity calculation means is greater than or equal to a threshold value are read, and the operation name of the operation detecting device is read The means reads out an operation name associated with a center vector corresponding to the maximum value from the operation name database if the maximum value of the similarity is equal to or greater than a predetermined threshold value. That.
第4の本発明は、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置の動作方法であって、前記操作検出装置は、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースとを備え、前記動作方法は、前記操作検出装置の第1の特徴量算出手段が、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、前記操作検出装置の第1の特徴ベクトル生成手段が、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成し、前記操作検出装置の特徴ベクトル分割手段が、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割し、前記操作検出装置のノイズクラスタ生成手段が、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成し、前記操作検出装置の第1の中心ベクトル生成手段が、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させ、前記操作検出装置の第1の類似度算出手段が、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、前記操作検出装置の第1の差分特徴ベクトル生成手段が、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成し、前記操作検出装置の操作クラスタ生成手段が、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルのそれぞれにつき、前記操作名データベースにおける当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成し、前記操作検出装置の第2の中心ベクトル生成手段が、当該各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、前記操作名データベースから、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づけ、前記操作検出装置の第2の特徴量算出手段が、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、前記操作検出装置の第2の特徴ベクトル生成手段が、当該特徴量からなる特徴ベクトルを生成し、前記操作検出装置の第2の類似度算出手段が、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、前記操作検出装置の第2の差分特徴ベクトル生成手段が、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成し、前記操作検出装置の第3の類似度算出手段が、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出し、前記操作検出装置の操作名読出手段が、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出すことを特徴とする。 A fourth aspect of the present invention is an operation method of an operation detection device that detects an operation on the device based on a packet used for communication by the device, and the operation detection device includes a plurality of types of operations. An operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector, and a center vector generated based on a packet at a time when the user is not likely to perform the operation. And a noise database in which a record including the information is stored, and the operation method includes a first feature value calculating unit of the operation detecting device in a header of a packet for each unit time in a period before detecting an operation. For each of the predetermined information included, the feature amount of the packet corresponding to the predetermined information in the unit time is calculated, and the first characteristic of the operation detecting device is calculated. For each of the plurality of unit times, the vector generation unit generates a feature vector composed of feature amounts calculated for a plurality of predetermined unit times starting from the unit time, and the feature vector dividing unit of the operation detection device The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by a user of the device and a noise time feature that is a feature vector of a time that is not likely to be operated by the user. And the noise cluster generation means of the operation detection device generates a plurality of noise clusters from the plurality of noise time feature vectors based on the similarity between the noise time feature vectors, and the operation detection device includes: The first center vector generation means is configured to generate, for each noise cluster, a noise time characteristic in the noise cluster. A center vector of the vector is generated and stored in the noise database, and the first similarity calculation unit of the operation detection device is configured to determine, for each operation time feature vector, the operation time feature vector and each center vector of the noise database. The first difference feature vector generation unit of the operation detection device corresponds to the corresponding operation time feature vector and the maximum value when the maximum value of the similarity is equal to or greater than a predetermined threshold value. A difference feature vector having a difference from a center vector to be processed as a feature amount, and the operation cluster generation unit of the operation detection device includes the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value. For each of a plurality of feature vectors consisting of: a rule that matches the feature vector in the operation name database The presence / absence is determined, and for each rule determined to be compatible, an operation cluster including a feature vector that matches the rule is generated, and the second center vector generation unit of the operation detection device A center vector of the operation cluster is generated, a record including a rule corresponding to the operation cluster is searched from the operation name database, the center vector is associated with the operation name in the record, and the second operation detection device The feature amount calculation means calculates a feature amount of the packet corresponding to the predetermined information in the unit time for each of the predetermined information included in the header of the packet for each unit time in the period for detecting the operation. The second feature vector generation means of the operation detection device generates a feature vector composed of the feature amount, and the operation Second similarity calculation means of the detection device calculates, for each feature vector, the similarity between the feature vector and each center vector of the noise database, and second difference feature vector generation means of the operation detection device Calculates the difference between the corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and the center vector corresponding to the maximum value, and generates a difference feature vector using the difference as a feature amount. The third similarity calculation means of the operation detection device has a maximum similarity between the similarity to each difference feature vector and the similarity calculated by the second similarity calculation means for each center vector in the operation name database. When the value is equal to or greater than a threshold value, the similarity with each corresponding feature vector is calculated, and the operation name reading unit of the operation detection device determines that the maximum value of the similarity is equal to or less than a predetermined threshold value. Nara, wherein the reading out operation name associated with the center vector corresponding to the maximum value from the operation name database.
第5の本発明は、第1の本発明または第2の本発明の操作検出装置としてコンピュータを機能させるためのコンピュータプログラムであることを特徴とする。 The fifth aspect of the present invention is a computer program for causing a computer to function as the operation detection device of the first aspect of the present invention or the second aspect of the present invention.
本発明によれば、機器にアプリケーションをインストールせずに機器に対する操作を検出でき、さらに、操作が行われていないときにも発生するパケットデータの影響をなくすことができる。 According to the present invention, it is possible to detect an operation on a device without installing an application in the device, and it is possible to eliminate the influence of packet data generated even when no operation is performed.
以下、本発明の実施の形態について図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[第1の実施の形態]
図1は、第1の実施の形態に係る操作検出装置を利用する通信環境を例示する図である。
[First embodiment]
FIG. 1 is a diagram illustrating a communication environment using the operation detection device according to the first embodiment.
操作検出装置1は、機器2(例えば、PC(パーソナルコンピュータ))が通信を行うのに使用されるパケットを基に機器2に対してどのような操作が行われたかを検出する装置である。ここでいう操作とは、利用者による操作(いわゆる手動操作)のみならず、機器2にインストールされたアプリケーションによる操作(すなわち見かけ上では自動処理)、外部要因による操作(例えば、停電時などの電源断)なども含む。なお、検出対象の機器はPCに限らない。
The
機器2は、例えば、スイッチ3とゲートウェイ装置4を介して、インターネット5に接続される。操作検出装置1は、例えば、スイッチ3のミラーリングポートに接続される。スイッチ3には、例えば周辺機器6が接続される。
The
スイッチ3は、スイッチ3に流れるパケットをミラーリングし、ミラーリングポートから操作検出装置1に送信するようになっている。スイッチ3は、機器2から送信または機器2で受信されるパケット以外に、周辺機器6から送信または周辺機器6で受信されるパケットを操作検出装置1に送信する。
The
操作検出装置1の入力部11は、例えば、予めゲートウェイ装置4のルーティングテーブルやARPテーブルを参照し、機器2のIPアドレスおよびMACアドレスを取得しておき、これらに該当する送信元IPアドレスや送信元MACアドレスや宛先IPアドレスや宛先MACアドレスを含むパケットのみを受信するようになっている。
For example, the
図2は、操作検出装置1の概略構成を示すブロック図である。
FIG. 2 is a block diagram illustrating a schematic configuration of the
操作検出装置1は、パケットを受信する入力部11、操作を検出する前の期間においてパケットにおける特徴量からなる特徴ベクトルを生成し、予め定められたルールに適合する特徴ベクトルをクラスタリングし、各クラスタ内の特徴ベクトルの中心ベクトルを操作パターンとして生成する操作パターン抽出部12、操作を検出する期間において特徴ベクトルを生成し、中心ベクトルとの類似度を算出し、類似度に基づいて操作を検出する操作検出部13、検出された操作名を出力する出力部14、予めポート番号が記憶されるポート番号記憶部15、予めルールと操作名を含むレコードが記憶される操作名データベース16を備える。
The
図3は、ポート番号記憶部15の構成を示す図である。
FIG. 3 is a diagram showing the configuration of the port
ポート番号記憶部15は、例えば、Well-Knownポートと称される0番から1023番までのポート番号と当該ポート番号に対応するプロトコル名を記憶している。
The port
図4は、操作名データベース16の構成を示す図である。
FIG. 4 is a diagram showing the configuration of the
操作名データベース16には、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールとを含むレコードが記憶される。ルールは、例えば、式などで表現される。操作名に対しては、後に、操作パターン抽出部12が生成した中心ベクトルと閾値thが対応づけて記憶される。
The
図5は、操作を検出する前の準備期間における処理の流れを示すフローチャートである。図5の処理は、操作を検出する前に、つまり事前に行われるものである。 FIG. 5 is a flowchart showing the flow of processing in the preparation period before detecting an operation. The processing in FIG. 5 is performed before an operation is detected, that is, in advance.
S1:入力部11は、予め取得した機器2のIPアドレスおよびMACアドレスに該当する送信元IPアドレスや送信元MACアドレスや宛先IPアドレスや宛先MACアドレスを含むパケットのみを一定期間に渡って受信し、図示しない記憶領域へ受信時刻に対応づけて記憶させる。この期間は、機器2に一通りの操作が実行される期間であり、例えば、1ヶ月である。
S1: The
S2:次に、操作パターン抽出部12は、予め定められた単位時間ごとに、複数のプロトコルのそれぞれにつき、当該単位時間における当該プロトコルに該当するパケットのデータ量である特徴量を算出する。単位時間は、最も短い時間で行われる操作の時間とするのが好ましく、ここでは1秒とする。
S2: Next, the operation
図6は、図5におけるステップS2の詳細なフローチャートである。 FIG. 6 is a detailed flowchart of step S2 in FIG.
S21:操作パターン抽出部12は、1ヶ月間に受信された全パケットを、パケットの受信開始から1秒後までの単位時間に受信されたパケットからなるパケット群、その後の1秒間(単位時間)に受信されたパケットからなるパケット群、その後の1秒間(単位時間)に受信されたパケットからなるパケット群、…というように分類する。
S21: The operation
次に操作パターン抽出部12は、1つのパケット群内のパケットごとにS22〜S26を行う。また、操作パターン抽出部12は、他の各パケット群についても同じ処理を行う。
Next, the operation
S22:操作パターン抽出部12は、対象のパケットのヘッダを参照し、パケットのプロトコルがTCPまたはUDPであるか否かを判定する。
S22: The operation
S23:操作パターン抽出部12は、プロトコルがTCPまたはUDPであるなら(S22:YES)、パケットのヘッダから宛先ポート番号を取得し、同じポート番号がポート番号記憶部15に記憶されているか否かを判定する。
S23: If the protocol is TCP or UDP (S22: YES), the operation
S24:操作パターン抽出部12は、プロトコルがTCPでなくかつUDPでないなら(S22:NO)、または、ポート番号がポート番号記憶部15に記憶されていないなら(S23:NO)、パケットの最上位のプロトコル名を取得する。ポート番号がポート番号記憶部15に記憶されていない場合は(S23:NO)、TCPまたはUDPが取得される(S24)。
S24: If the protocol is not TCP and UDP (S22: NO), or if the port number is not stored in the port number storage unit 15 (S23: NO), the operation
S25:操作パターン抽出部12は、ポート番号がポート番号記憶部15に記憶されているなら(S23:YES)、ポート番号に対応するプロトコル名を取得する。ここでは、HTTPなどが取得される。
S25: If the port number is stored in the port number storage unit 15 (S23: YES), the operation
S26:操作パターン抽出部12は、プロトコル名を取得したなら(S24、S25)、該当のパケット群における当該プロトコル名の全パケットの合計データ量(予め0で初期化される)に対し、対象のパケットのデータ量を加算し、処理を終了する。
S26: When the operation
以下、合計のデータ量を特徴量という。 Hereinafter, the total data amount is referred to as a feature amount.
図5に戻り、説明を続ける。 Returning to FIG. 5, the description will be continued.
S3:操作パターン抽出部12は、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する。
S3: For a plurality of unit times, the operation
例えば、操作パターン抽出部12は、まず、1ヶ月の中の最初の時間W(時間窓という)に含まれる各単位時間に対応するパケット群について算出されたプロトコル名ごとの特徴量からなる特徴ベクトルを生成する。時間窓Wは、ここでは1分とする。
For example, the operation
ここでは、理解を容易にすべく、プロトコル名iの単位時間jでの特徴量をf(i,j)と表現し、プロトコル名の総数をmとする。 Here, in order to facilitate understanding, the feature quantity of the protocol name i in the unit time j is expressed as f (i, j), and the total number of protocol names is m.
操作パターン抽出部12は、具体的には、特徴ベクトル{f(1,1),f(1,2),…,f(1,60),f(2,1),f(2,2),…,f(m,1),f(m,2),…,f(m,60)}を生成する。つまり、操作パターン抽出部12は、連続する60の単位時間(1分)について算出された特徴量からなる特徴ベクトルを生成する。
Specifically, the operation
次に、操作パターン抽出部12は、1ヶ月の中の最初の時間Sを除く期間の最初の時間Wに含まれる各単位時間に対応するパケット群について算出されたプロトコル名ごとの特徴量からなる特徴ベクトルを生成する。時間窓Wは同じく1分とし、Sは30秒とする。
Next, the operation
操作パターン抽出部12は、具体的には、特徴ベクトル{f(1,31),f(1,32),…,f(1,90),f(2,31),f(2,32),…,f(m,31),f(m,32),…,f(m,90)}を生成する。
Specifically, the operation
つまり、操作パターン抽出部12は、時間窓Wを一定時間Sだけスライドさせ、同じように時間窓Wに該当する特徴量からなる特徴ベクトルを生成する。
In other words, the operation
操作パターン抽出部12は、以下、同様に時間窓WをSずつスライドさせ、その都度、特徴ベクトルを生成し、時間窓Wの一部が1ヶ月の終了時点を超えたなら、処理を終了させる。
Similarly, the operation
なお、時間窓Wとスライド量Sは、1分と30秒に限らない。 The time window W and the slide amount S are not limited to 1 minute and 30 seconds.
S4:次に、操作パターン抽出部12は、生成した複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数のクラスタを生成する。各特徴ベクトルは、いずれかのクラスタに含まれる。
S4: Next, the operation
ここでは、操作パターン抽出部12は、例えば、非階層型クラスタリング手法の1つであるk-means法を用いる。つまり、操作パターン抽出部12は、クラスタ数をまず2とし、クラスタの中心ベクトルとクラスタに含まれる特徴ベクトルの距離の総和である群内平方和を求める。次に、操作パターン抽出部12は、クラスタ数を1増加させて、群内平方和とその減少量を計算する。これをクラスタ数nまで行う。nは、例えば、機器2に対する操作数のx倍(xは、W/S)とする。次に、操作パターン抽出部12は、減少量が最も大きくなったときの増加後のクラスタ数と同じとなるように、クラスタを生成する。
Here, the operation
S5:次に、操作パターン抽出部12は、各クラスタにつき、当該クラスタ内の特徴ベクトルの中心ベクトルを生成し、操作名データベース16から、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける。つまり、操作パターン抽出部12は、各クラスタが何の操作を示すかを判定する。
S5: Next, the operation
S5では、操作パターン抽出部12は、全ての中心ベクトルにおいて、各単位時間につき、当該単位時間に対応する要素(特徴量)の上位3つを選択する。
In S5, the operation
S5では、次に、操作パターン抽出部12は、各プロトコル名につき、全ての中心ベクトルから当該プロトコル名に対応する要素(特徴量)を抽出し、抽出した特徴量の中央値を求める。
In S5, next, the operation
S5では、次に、操作パターン抽出部12は、上位3つとして選択された特徴量以外の特徴量について、対応する中央値の10倍以上ならば、その特徴量を選択する。
In S5, next, the operation
図7は、中心ベクトルと中央値を例示する図である。 FIG. 7 is a diagram illustrating the center vector and the median value.
ここでは、理解を容易にすべく、プロトコル名の総数mを12とし、1つの中心ベクトルに対応する単位時間の数を5とし、中心ベクトルをマトリクスの形式で示す。 Here, for easy understanding, the total number m of protocol names is 12, the number of unit times corresponding to one central vector is 5, and the central vector is shown in the form of a matrix.
図7(a)の中心ベクトルでは、点模様の背景で示すように、単位時間1、2では、上位3つに含まれるTCP、DNS、HTTPの特徴量が選択され、単位時間3では、上位3つに含まれるTCP、HTTPの特徴量が選択される。中央値の10倍以上の特徴量はない。
In the center vector of FIG. 7A, as shown in the background of the dot pattern, the feature quantities of TCP, DNS, and HTTP included in the top three are selected in the
図7(b)の中心ベクトルでは、点模様の背景で示すように、単位時間1では、上位3つに含まれるTCP、HTTP、IMAPの特徴量が選択される。また、斜め線模様の背景で示すように、中央値の10倍以上であるDNSの特徴量が選択される。
In the center vector of FIG. 7B, as shown by the background of the dot pattern, in the
S5では、操作パターン抽出部12は、操作名データベース16から、中心ベクトルの選択された特徴量のパターンに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける。
In S5, the operation
S5では、例えば、図7(a)のように、前半フレームではTCP、DNS、HTTPが選択され、後半フレームでTCP、HTTP、IMAPが選択されており、図4中のメール受信のルールに適合するため、図7(a)の中心ベクトルは、操作名「メール受信」に対応づけられる。 In S5, for example, as shown in FIG. 7A, TCP, DNS, and HTTP are selected in the first half frame, and TCP, HTTP, and IMAP are selected in the second half frame, and conform to the mail reception rules in FIG. Therefore, the center vector of FIG. 7A is associated with the operation name “mail reception”.
S6:次に、操作パターン抽出部12は、各クラスタにつき、当該クラスタ内の各特徴ベクトルと当該クラスタの中心ベクトルとの距離の平均値を算出し、例えば、その平均値の逆数を当該中心ベクトルとともに後述の操作検出で用いる閾値thとして、操作名データベース16において、当該中心ベクトルに対応づけて記憶させ、処理を終了する。
S6: Next, the operation
図8は、操作を検出する際の処理の流れを示すフローチャートである。 FIG. 8 is a flowchart showing the flow of processing when detecting an operation.
図8の処理は、図5の処理後、操作を検出する際に行われるものである。ここでは、図5の処理が終了していることとする。 The process of FIG. 8 is performed when an operation is detected after the process of FIG. Here, it is assumed that the process of FIG.
S31:入力部11は、機器2のIPアドレスおよびMACアドレスに該当する送信元IPアドレスや送信元MACアドレスや宛先IPアドレスや宛先MACアドレスを含むパケットのみを時間窓Wと同じ1分間に渡って受信する。
S31: The
S32:操作検出部13は、受信されたパケットを用い、単位時間ごとに、各プロトコルにつき、当該単位時間における当該プロトコルに該当するパケットのデータ量である特徴量を算出する。
S32: The
つまり、S32では、操作検出部13は、受信したパケットに対し、図6のステップS22〜S26の処理を行う。
That is, in S32, the
S33:次に、操作検出部13は、当該特徴量からなる特徴ベクトルを生成する。
S33: Next, the
つまり、S33では、操作検出部13は、図5のステップS3で特徴ベクトルを生成したように特徴ベクトルを生成する。
That is, in S33, the
S34:次に、操作検出部13は、操作名データベース16における各中心ベクトルにつき、当該特徴ベクトルと当該中心ベクトルの類似度を算出する。
S <b> 34: Next, the
S34では、操作検出部13は、例えば、式(1)により特徴ベクトルと中心ベクトルの距離dを算出し、例えば、距離dの逆数を計算し、これを類似度とする。つまり、距離が小さいほど類似度を高くする。
In S <b> 34, the
yiは、中心ベクトルのプロトコル名iに対応する特徴量、
mは、プロトコル名の総数である。
yi is a feature amount corresponding to the protocol name i of the center vector,
m is the total number of protocol names.
S35:次に、操作検出部13は、類似度の最大値に対応する中心ベクトルに対応づけて記憶した閾値thを操作名データベース16から読み出し、類似度の最大値が閾値以上か否かを判定する。
S35: Next, the
操作検出部13は、類似度の最大値が閾値未満なら(S35:NO)、処理を終える。
If the maximum value of the similarity is less than the threshold value (S35: NO), the
S36:操作検出部13は、類似度の最大値が閾値以上なら(S35:YES)、操作名データベース16から当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す。
S36: If the maximum value of the similarity is equal to or greater than the threshold (S35: YES), the
S37:次に、出力部14が、読み出された操作名を、例えば、図示しない表示装置などに表示し、処理を終える。
S37: Next, the
なお、第1の実施の形態では、ステップS6で、距離が小さいほど閾値を高くし、ステップS34で、距離が小さいほど類似度を高くし、ステップS35で、類似度の最大値が閾値以上か否かを判定し、類似度の最大値が閾値以上なら、ステップS36で、最大値に対応する操作名を読み出したが、ステップS6で、例えば距離を閾値とし、ステップS34で、距離を類似度とし、ステップS35で、類似度の最小値が閾値以下か否かを判定し、類似度の最小値が閾値以下なら、ステップS36で、最小値に対応する操作名を読み出してもよい。つまり、前者の処理は、実質的に後者の処理と同じである。 In the first embodiment, in step S6, the smaller the distance is, the higher the threshold is, and in step S34, the smaller the distance is, the higher the similarity is. In step S35, whether the maximum similarity is greater than or equal to the threshold. If the maximum value of the similarity is greater than or equal to the threshold value, the operation name corresponding to the maximum value is read in step S36. In step S6, for example, the distance is set as the threshold value, and in step S34, the distance is determined as the similarity level. In step S35, it is determined whether or not the minimum value of the similarity is equal to or less than the threshold value. If the minimum value of the similarity is equal to or less than the threshold value, the operation name corresponding to the minimum value may be read in step S36. That is, the former process is substantially the same as the latter process.
すなわち、いずれにしてもS36の処理は、類似度の最大値が予め定めた閾値以上なら、操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出すという処理である。 That is, in any case, the process of S36 is a process of reading the operation name associated with the center vector corresponding to the maximum value from the operation name database if the maximum value of the similarity is equal to or greater than a predetermined threshold value.
また、第1の実施の形態では、プロトコルごとに特徴量を算出したが、例えば、パケットの宛先ごとに特徴量を算出してもよい。 In the first embodiment, the feature amount is calculated for each protocol. For example, the feature amount may be calculated for each destination of the packet.
また、第1の実施の形態では、パケットのデータ量の積算値を特徴量としたが、例えば、パケットの総数を特徴量としてもよい。 In the first embodiment, the integrated value of the packet data amount is used as the feature amount. However, for example, the total number of packets may be used as the feature amount.
したがって、第1の実施の形態に係る操作検出装置1は、機器2が通信を行うのに使用されるパケットを基に機器2に対する操作を検出する操作検出装置であって、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールとを含むレコードが記憶される操作名データベース16と、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段(ステップS2)と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段(ステップS3)と、当該複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数のクラスタを生成するクラスタ生成手段(ステップS4)と、前記各クラスタにつき、当該クラスタ内の特徴ベクトルの中心ベクトルを生成し、操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける中心ベクトル生成手段(ステップS5)と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段(ステップS32)と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段(ステップS33)と、前記各中心ベクトルにつき、当該特徴ベクトルと当該中心ベクトルの類似度を算出する類似度算出手段(ステップS34)と、類似度の最大値が予め定めた閾値以上なら、操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段(ステップS36)とを備えるので、特徴ベクトル、中心ベクトルは、複数の特徴量の増減パターンを示すものとなり、よって、増減パターンにより、機器2に対する操作を検出することができる。
Therefore, the
[第2の実施の形態]
次に、本発明の第2の実施の形態について説明する。第2の実施の形態では、第1の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第1の実施の形態で使用した符号を使用して重複説明を略し、第1の実施の形態とは異なる事項を中心に説明を行う。
[Second Embodiment]
Next, a second embodiment of the present invention will be described. In the second embodiment, the same or similar apparatus and apparatus configuration as those in the first embodiment are used, and the same or similar elements are redundantly described by using the reference numerals used in the first embodiment. For brevity, the description will focus on matters different from the first embodiment.
第2の実施の形態では、第1の実施の形態に対し、ステップS4の処理が以下のように異なり、その他は、第1の実施の形態と同様である。 In the second embodiment, the processing in step S4 is different from that of the first embodiment as follows, and the others are the same as those in the first embodiment.
S4:操作パターン抽出部12は、ステップS3で生成された複数の特徴ベクトルのそれぞれにつき、操作名データベース16における当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなるクラスタを生成する。
S4: The operation
ここでは、特徴ベクトルに適合するルールの有無の判定は、パターンマッチングにより行う。 Here, the presence or absence of a rule that matches the feature vector is determined by pattern matching.
S4では、まず、操作パターン抽出部12は、各ルールにつき、当該ルールに対応する操作名の操作を示す特徴ベクトルを複数含むクラスタを生成し、その操作の際の通信で使用されるプロトコル名の組を当該クラスタに対応づける。
In S4, first, the operation
S4では、操作パターン抽出部12は、次に、全ての特徴ベクトルにおいて、各単位時間につき、当該単位時間に対応する要素(特徴量)の上位3つを選択する。
In S4, the operation
S4では、次に、操作パターン抽出部12は、各プロトコル名につき、全ての特徴ベクトルから当該プロトコル名に対応する要素(特徴量)を抽出し、抽出した特徴量の中央値を求める。
Next, in S4, the operation
S4では、次に、操作パターン抽出部12は、上位3つとして選択された特徴量以外の特徴量について、対応する中央値の10倍以上ならば、その特徴量を選択する。
In S4, next, the operation
S4では、次に、操作パターン抽出部12は、各特徴ベクトルにつき、上位3つまたは中央値の10倍以上として選択された特徴量に対応するプロトコル名の組と、クラスタに対応づけたプロトコル名の組のそれぞれを比較し、いずれかのクラスタに対応するプロトコル名の組に一致すれば(つまりルールと特徴ベクトルが適合すれば)、当該特徴ベクトルを当該クラスタに含ませる。いずれのクラスタに対応づけたプロトコル名の組とも一致しなければ、ルールで規定されない操作が行われた可能性があるので、例えば、その他の操作のクラスタに含ませる。
In S4, next, the operation
したがって、第2の実施の形態に係る操作検出装置1によれば、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールとを含むレコードが記憶される操作名データベース16と、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段(ステップS2)と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段(ステップS3)と、当該複数の特徴ベクトルのそれぞれにつき、操作名データベース16における当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなるクラスタを生成するクラスタ生成手段(第2の実施の形態のステップS4)と、前記各クラスタにつき、当該クラスタ内の特徴ベクトルの中心ベクトルを生成し、操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける中心ベクトル生成手段(ステップS5)と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段(ステップS32)と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段(ステップS33)と、前記各中心ベクトルにつき、当該特徴ベクトルと当該中心ベクトルの類似度を算出する類似度算出手段(ステップS34)と、類似度の最大値が予め定めた閾値以上なら、操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段(ステップS36)とを備えるので、特徴ベクトル、中心ベクトルは、複数の特徴量の増減パターンを示すものとなり、よって、増減パターンにより、機器2に対する操作を検出することができる。
Therefore, according to the
また、第2の実施の形態では、非階層型クラスタリング手法などにより行う第1の実施の形態の方法に比べ,ノイズデータの混入が少なく、また、ルールに適合しない特徴ベクトルをクラスタから除外できるので、その後に生成する中心ベクトルがより正確になる。その結果、より正確に操作を検出できる。 Also, in the second embodiment, noise data is less mixed and feature vectors that do not conform to the rules can be excluded from the cluster as compared to the method of the first embodiment performed by a non-hierarchical clustering method or the like. Then, the generated center vector becomes more accurate. As a result, the operation can be detected more accurately.
[第3の実施の形態]
次に、本発明の第3の実施の形態について説明する。第3の実施の形態では、第1または第2の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第1の実施の形態等で使用した符号を使用して重複説明を略し、第1の実施の形態等とは異なる事項を中心に説明を行う。
[Third embodiment]
Next, a third embodiment of the present invention will be described. In the third embodiment, the same or similar apparatus and apparatus configuration as those in the first or second embodiment are used, and the same or similar reference numerals used in the first embodiment or the like are used for the same or similar elements. Therefore, the description will be omitted, and the description will focus on matters different from the first embodiment.
第3の実施の形態では、第1の実施の形態等に対し、ステップS2、S32で求めた特徴量を標準化し、その他は、第1の実施の形態等と同様である。 In the third embodiment, the feature values obtained in steps S2 and S32 are standardized with respect to the first embodiment, and the others are the same as those in the first embodiment.
つまり、S2(第1の特徴量算出手段)では、操作パターン抽出部12は、例えば、1ヶ月分の特徴量を求めたなら、各プロトコル名につき、当該プロトコル名に対応する特徴量を選択し、その平均が0、分散が1となるように当該特徴量を変換する(標準化する)。
That is, in S2 (first feature value calculation means), for example, when the feature value for one month is obtained, the operation
また、S32(第2の特徴量算出手段)では、操作検出部13は、例えば、1分間分の特徴量を求めたなら、各プロトコル名につき、当該プロトコル名に対応する特徴量を選択し、その平均が0、分散が1となるように当該特徴量を変換する(標準化する)。
In S32 (second feature amount calculating means), for example, if the
第3の実施の形態によれば、特徴量を標準化するので、パケットの数が少ないプロトコルを使用する操作であっても検出することができる。 According to the third embodiment, since the feature amount is standardized, even an operation using a protocol with a small number of packets can be detected.
[第4の実施の形態]
次に、本発明の第4の実施の形態について説明する。第4の実施の形態では、第1または第2または第3の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第1の実施の形態等で使用した符号を使用して重複説明を略し、第1の実施の形態等とは異なる事項を中心に説明を行う。
[Fourth embodiment]
Next, a fourth embodiment of the present invention will be described. In the fourth embodiment, the same or similar apparatus and apparatus configuration are used in the first, second or third embodiment, and the same or similar elements are used in the first embodiment or the like. The description will be omitted, and the description will focus on matters that are different from the first embodiment.
第4の実施の形態では、第1の実施の形態等に対し、ステップS3、S33で求めた特徴ベクトルを正規化し、その他は、第1の実施の形態等と同様である。 In the fourth embodiment, the feature vectors obtained in steps S3 and S33 are normalized with respect to the first embodiment, and the others are the same as in the first embodiment.
つまり、S3(第1の特徴ベクトル生成手段)では、操作パターン抽出部12は、特徴ベクトルを求めたなら、各特徴ベクトルにつき、当該特徴ベクトルの大きさが1となるように、当該特徴ベクトルを変換する(正規化する)。
That is, in S3 (first feature vector generation means), when the operation
また、S33(第2の特徴ベクトル生成手段)では、操作検出部13は、特徴ベクトルを求めたなら、特徴ベクトルの大きさが1となるように、特徴ベクトルを変換する(正規化する)。
In S33 (second feature vector generating means), when the
第4の実施の形態によれば、特徴ベクトルを正規化するので、特徴ベクトルは、対応する操作が行われた際のパケットのデータ量の比率を示し、つまり、データ量の多い少ないは無関係となるので、パケットの数が少ないプロトコルを使用する操作であっても検出することができる。 According to the fourth embodiment, since the feature vector is normalized, the feature vector indicates the ratio of the data amount of the packet when the corresponding operation is performed, that is, whether the data amount is large or small is irrelevant. Therefore, even an operation using a protocol with a small number of packets can be detected.
[第5の実施の形態]
次に、本発明の第5の実施の形態について説明する。第5の実施の形態では、第1または第2または第3または第4の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第1の実施の形態等で使用した符号を使用して重複説明を略し、第1の実施の形態等とは異なる事項を中心に説明を行う。
[Fifth embodiment]
Next, a fifth embodiment of the present invention will be described. In the fifth embodiment, the same or similar apparatus and apparatus configuration are used in the first, second, third or fourth embodiment, and the same or similar elements are used in the first embodiment or the like. The overlapping description will be omitted by using the reference numerals used, and the description will be focused on matters different from the first embodiment.
第5の実施の形態では、第1の実施の形態等に対し、ステップS6における閾値の求め方と、S34以降の処理が異なり、その他は、第1の実施の形態等と同様である。 The fifth embodiment differs from the first embodiment in the method for obtaining the threshold value in step S6 and the processing from S34 onward, and is otherwise the same as the first embodiment.
S6で、操作パターン抽出部12は、各クラスタにつき、当該クラスタ内の各特徴ベクトルと当該クラスタの中心ベクトルとの類似度sim(コサイン類似度)を式(2)により求める。
In S6, the operation
yは、中心ベクトル、
x・yは、xとyの積、
|x|は、xの長さ、
|y|は、yの長さである。
y is the center vector,
x · y is the product of x and y,
| X | is the length of x,
| Y | is the length of y.
類似度simは、特徴ベクトルと中心ベクトルの間の角度が小さいほど小さくなる。 The similarity sim decreases as the angle between the feature vector and the center vector decreases.
S6では、操作パターン抽出部12は、次に、類似度simの平均を計算し、これを当該中心ベクトルに対応する閾値thとする。
In S6, the operation
S34では、操作検出部13は、操作名データベース16における各中心ベクトルにつき、当該特徴ベクトルと当該中心ベクトルの類似度を式(2)により算出する。
In S <b> 34, the
S35では、操作検出部13は、類似度の最小値に対応する中心ベクトルに対応づけて記憶した閾値thを操作名データベース16から読み出し、類似度の最小値が閾値以下か否かを判定する。
In S35, the
S36では、操作検出部13は、類似度の最小値が閾値以下なら(S35:YES)、操作名データベース16から当該最小値に対応する中心ベクトルに対応づけられた操作名を読み出す。
In S36, if the minimum value of the similarity is equal to or less than the threshold value (S35: YES), the
なお、ステップS6で、類似度simの平均値の逆数を閾値とし、つまり、特徴ベクトルと中心ベクトルの間の角度が小さいほど閾値を高くし、ステップS34で、類似度simの逆数を類似度とし、つまり、特徴ベクトルと中心ベクトルの間の角度が小さいほど類似度を高くし、ステップS35で、類似度の最大値が閾値以上か否かを判定し、類似度の最大値が閾値以上なら、ステップS37で、最大値に対応する操作名を読み出してもよい。つまり、第5の実施の形態の処理は、このような処理と実質的に同じである。 In step S6, the reciprocal of the average value of the similarity sim is set as a threshold, that is, the threshold is increased as the angle between the feature vector and the center vector is smaller. In step S34, the reciprocal of the similarity sim is set as the similarity. That is, the smaller the angle between the feature vector and the center vector is, the higher the similarity is. In step S35, it is determined whether or not the maximum value of the similarity is equal to or greater than a threshold value. In step S37, the operation name corresponding to the maximum value may be read. That is, the process of the fifth embodiment is substantially the same as such a process.
よって、第5の実施の形態では、特徴ベクトルと中心ベクトルの間の角度が小さいほど類似度を高くし、類似度の最大値が閾値以上なら、操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出していることになる。 Therefore, in the fifth embodiment, the smaller the angle between the feature vector and the center vector, the higher the similarity, and if the maximum value of the similarity is equal to or greater than a threshold, the center vector corresponding to the maximum value from the operation name database. The operation name associated with is read out.
ところで、第1〜第5の実施の形態では、操作が行われていないときにも発生するパケットデータの影響で、同一の操作であってもパケットパターンが異なってしまい、異なる操作であると判定されることや該当操作なしと判定されることがある。第6の実施の形態では、この課題を解決する。 By the way, in the first to fifth embodiments, it is determined that the operation is different because the packet pattern is different even in the same operation due to the influence of the packet data generated even when the operation is not performed. Or it may be determined that there is no corresponding operation. In the sixth embodiment, this problem is solved.
[第6の実施の形態]
次に、本発明の第6の実施の形態について説明する。第6の実施の形態では、第1または第2または第3または第4または第5の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第1の実施の形態等で使用した符号を使用して重複説明を略し、第1の実施の形態等とは異なる事項を中心に説明を行う。
[Sixth embodiment]
Next, a sixth embodiment of the present invention will be described. In the sixth embodiment, the same or similar apparatus and apparatus configuration as those in the first, second, third, fourth, or fifth embodiment are used, and the same or similar elements are used in the first embodiment. The duplicated explanation is omitted by using the reference numerals used in the form and the like, and the explanation is focused on matters different from the first embodiment and the like.
第6の実施の形態では、操作パターン抽出時に、特徴ベクトルを、操作が行われる可能性のない時間の特徴ベクトルと、操作が行われる可能性のある時間の特徴ベクトルに分離する。そして、操作が行われる可能性のない時間のパケットパターンをノイズパターンとして学習し、保存しておく。また、ノイズパターンに類似した特徴ベクトルについて、特徴ベクトルからノイズパターンのベクトルの差分を求めることで、特徴ベクトルからノイズを除去する。そして、操作検出時においても同様に、ノイズパターンに類似した特徴ベクトルについて、特徴ベクトルからノイズパターンのベクトルの差分を求め、ノイズを除去する。 In the sixth embodiment, at the time of operation pattern extraction, a feature vector is separated into a feature vector at a time when the operation is not likely to be performed and a feature vector at a time when the operation is likely to be performed. Then, a packet pattern at a time when there is no possibility of operation is learned as a noise pattern and stored. Further, with respect to a feature vector similar to a noise pattern, noise is removed from the feature vector by obtaining a difference of the noise pattern vector from the feature vector. Similarly, at the time of detecting an operation, for a feature vector similar to the noise pattern, a noise pattern vector difference is obtained from the feature vector, and the noise is removed.
図9は、操作検出装置1Aの概略構成を示すブロック図である。操作検出装置1Aは操作検出装置1に代わるものである。
FIG. 9 is a block diagram illustrating a schematic configuration of the operation detection device 1A. The
操作検出装置1Aは、機器2(例えば、PC(パーソナルコンピュータ))が通信を行うのに使用されるパケットを基に機器2に対してどのような操作が行われたかを検出する装置である。ここでいう操作とは、利用者による操作(いわゆる手動操作)のみならず、外部要因による操作(例えば、停電時などの電源断)なども含む。機器2にインストールされたアプリケーションによる操作(すなわち見かけ上では自動処理)は含まない。なお、検出対象の機器はPCに限らない。
The
操作検出装置1Aは、入力部11、操作パターン抽出部12、操作検出部13、出力部14、ポート番号記憶部15、操作名データベース16、ノイズデータベース17を備える。
The operation detection apparatus 1A includes an
図10は、ノイズデータベース17の構成を示す図である。
FIG. 10 is a diagram showing the configuration of the
ノイズデータベース17には,操作パターン抽出部12による後述の処理により得られた中心ベクトルと閾値thが対応づけて記憶される。
In the
図11は、第6の実施の形態において操作を検出する前の準備期間における処理の流れを示すフローチャートである。 FIG. 11 is a flowchart illustrating a process flow in a preparation period before an operation is detected in the sixth embodiment.
ステップS1〜S3については、図5の処理と同じなので説明を省略する。 Steps S1 to S3 are the same as the processing in FIG.
S4:操作パターン抽出部12は、S3で生成した特徴ベクトルを、機器のユーザが操作を行う可能性のある時間内の特徴ベクトルと、ユーザが操作を行う可能性のない時間内の特徴ベクトルに分割する。
S4: The operation
例えば、ユーザが操作を行う可能性のない時間は、ユーザが予め操作検出装置に与えておく。ユーザが操作を行う可能性のある時間は、例えば、ユーザが操作を行う可能性のない時間以外の時間とする。 For example, a time when there is no possibility that the user will perform an operation is given in advance to the operation detection device by the user. The time when the user is likely to perform the operation is, for example, a time other than the time when the user is not likely to perform the operation.
または、操作パターン抽出部12が、ユーザが操作を行う可能性のない時間を自動的に検出する。例えば、操作パターン抽出部12は、パケット流量が予め定めた閾値以下となる時間が一定期間続く場合、これをユーザが操作を行う可能性のない時間であると判定する。この場合、操作パターン抽出部12は、ユーザが操作を行う可能性のない時間以外を、ユーザが操作を行う可能性のある時間とする。
Alternatively, the operation
ここで、ユーザが操作を行う可能性のある時間内の特徴ベクトルを操作時間特徴ベクトル、ユーザが操作を行う可能性のない時間内の特徴ベクトルをノイズ時間特徴ベクトルと呼ぶ。 Here, a feature vector within a time that the user may perform an operation is referred to as an operation time feature vector, and a feature vector within the time that the user is not likely to perform an operation is referred to as a noise time feature vector.
なお、パケット流量以外の特徴量(プロトコル数など)を用いてもよい。ユーザが操作していない時に発生するパケットで使用されるプロトコル数は限られる(少ない)ことから, 単位時間内に含まれるプロトコル数が閾値以下か否かにより、ユーザが操作を行う可能性のない時間とそうでない時間を推定できると考えられる。 Note that feature quantities (such as the number of protocols) other than the packet flow rate may be used. Since the number of protocols used in packets generated when the user is not operating is limited (small), there is no possibility that the user will perform an operation depending on whether the number of protocols included in the unit time is less than or equal to the threshold value. It is thought that time can be estimated and time that is not.
S5:次に、操作パターン抽出部12は、複数のノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のクラスタ(以下、ノイズクラスタ)を生成する。各ノイズ時間特徴ベクトルは、いずれかのクラスタに含まれる。
S5: Next, the operation
ここでは、操作パターン抽出部12は、例えば、非階層型クラスタリング手法の1つであるk-means法を用いる。つまり、操作パターン抽出部12は、クラスタ数をまず2とし、クラスタの中心ベクトルとクラスタに含まれる特徴ベクトルの距離の総和である群内平方和を求める。次に、操作パターン抽出部12は、クラスタ数を1増加させて、群内平方和とその減少量を計算する。これをクラスタ数nまで行う。nは、例えば50とする。次に、操作パターン抽出部12は、減少量が最も大きくなったときの増加後のクラスタ数と同じとなるように、クラスタを生成する。
Here, the operation
S6:次に、操作パターン抽出部12は、各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、当該ノイズクラスタ内の各ノイズ時間特徴ベクトルと当該中心ベクトルとの距離の平均値を算出し、例えば、その平均値の逆数を当該中心ベクトルとともに後述の操作ベクトル生成および操作検出で用いる閾値th_nとして、ノイズデータベース17において、当該中心ベクトルに対応づけて記憶させる。
S6: Next, the operation
S7:次に、操作パターン抽出部12は、各操作時間特徴ベクトルにつき、操作時間特徴ベクトルとノイズデータベース17の各中心ベクトルとの類似度を算出する。
S7: Next, the operation
S7では、操作パターン抽出部12は、例えば、第1の実施の形態の式(1)により操作時間特徴ベクトルと中心ベクトルの距離dを算出し、例えば、距離dの逆数を計算し、これを類似度とする。つまり、距離が小さいほど類似度を高くする。
In S7, the operation
ただし、式(1)において、xiは、操作時間特徴ベクトルのプロトコル名iに対応する特徴量、yiは、中心ベクトルのプロトコル名iに対応する特徴量、mは、プロトコル名の総数とする。 In equation (1), xi is a feature amount corresponding to the protocol name i of the operation time feature vector, yi is a feature amount corresponding to the protocol name i of the center vector, and m is the total number of protocol names.
S8:次に、操作パターン抽出部12は、各操作時間特徴ベクトルにつき、類似度の最大値に対応する中心ベクトルに対応づけて記憶した閾値th_nをノイズデータベース17から読み出し、類似度の最大値が閾値以上か否かを判定する。
S8: Next, the operation
操作パターン抽出部12は、類似度の最大値が閾値未満なら(S8:NO)、該当の操作時間特徴ベクトルをS10の入力とする。
If the maximum value of the similarity is less than the threshold (S8: NO), the operation
S9:操作パターン抽出部12は、類似度の最大値が閾値以上なら(S8:YES)、該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とするベクトル(差分特徴ベクトルという)を生成する。
S9: If the maximum value of the similarity is greater than or equal to the threshold (S8: YES), the operation
S10:次に,操作パターン抽出部12は、類似度の最大値が閾値未満(S8:NO)の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数のクラスタ(操作クラスタという)を生成する。各特徴ベクトルは、いずれかの操作クラスタに含まれる。
S10: Next, the operation
ここでは,S5のクラスタリング処理と同一の処理を行う.
S11:次に、操作パターン抽出部12は、各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、操作名データベース16から、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける。つまり、操作パターン抽出部12は、各操作クラスタが何の操作を示すかを判定する。
Here, the same processing as the clustering processing of S5 is performed.
S11: Next, the operation
S11では、操作パターン抽出部12は、全ての中心ベクトルにおいて、各単位時間につき、当該単位時間に対応する要素(特徴量)の上位3つを選択する。
In S11, the operation
S11では、次に、操作パターン抽出部12は、各プロトコル名につき、全ての中心ベクトルから当該プロトコル名に対応する要素(特徴量)を抽出し、抽出した特徴量の中央値を求める。
Next, in S11, the operation
S11では、次に、操作パターン抽出部12は、上位3つとして選択された特徴量以外の特徴量について、対応する中央値の10倍以上ならば、その特徴量を選択する。
Next, in S11, the operation
図7を用いて説明したように、ここでは、理解を容易にすべく、プロトコル名の総数mを12とし、1つの中心ベクトルに対応する単位時間の数を5とし、中心ベクトルをマトリクスの形式で示す。 As described with reference to FIG. 7, here, in order to facilitate understanding, the total number m of protocol names is 12, the number of unit times corresponding to one central vector is 5, and the central vector is a matrix format. It shows with.
図7(a)の中心ベクトルでは、点模様の背景で示すように、単位時間1、2では、上位3つに含まれるTCP、DNS、HTTPの特徴量が選択され、単位時間3では、上位3つに含まれるTCP、HTTPの特徴量が選択される。中央値の10倍以上の特徴量はない。
In the center vector of FIG. 7A, as shown in the background of the dot pattern, the feature quantities of TCP, DNS, and HTTP included in the top three are selected in the
図7(b)の中心ベクトルでは、点模様の背景で示すように、単位時間1では、上位3つに含まれるTCP、HTTP、IMAPの特徴量が選択される。また、斜め線模様の背景で示すように、中央値の10倍以上であるDNSの特徴量が選択される。
In the center vector of FIG. 7B, as shown by the background of the dot pattern, in the
S11では、操作パターン抽出部12は、操作名データベース16から、中心ベクトルの選択された特徴量のパターンに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける。
In S11, the operation
S11では、例えば、図7(a)のように、前半フレームではTCP、DNS、HTTPが選択され、後半フレームでTCP、HTTP、IMAPが選択されており、図4中のメール受信のルールに適合するため、図7(a)の中心ベクトルは、操作名「メール受信」に対応づけられる。 In S11, for example, as shown in FIG. 7A, TCP, DNS, and HTTP are selected in the first half frame, and TCP, HTTP, and IMAP are selected in the second half frame, and conform to the mail reception rule in FIG. Therefore, the center vector of FIG. 7A is associated with the operation name “mail reception”.
S12:次に、操作パターン抽出部12は、各操作クラスタにつき、当該操作クラスタ内の各特徴ベクトルと当該操作クラスタの中心ベクトルとの距離の平均値を算出し、例えば、その平均値の逆数を当該中心ベクトルとともに後述の操作検出で用いる閾値thとして、操作名データベース16において、当該中心ベクトルに対応づけて記憶させ、処理を終了する。
S12: Next, the operation
図12は、第6の実施の形態において操作を検出する際の処理の流れを示すフローチャートである。 FIG. 12 is a flowchart showing the flow of processing when detecting an operation in the sixth embodiment.
ステップS31〜S33については、図8の処理と同じなので説明を省略する。 Steps S31 to S33 are the same as the processing in FIG.
S34:操作検出部13は、各特徴ベクトルにつき、当該特徴ベクトルとノイズデータベース17の各中心ベクトルとの類似度を算出する。
S <b> 34: For each feature vector, the
ここでは,S7と同一の類似度算出方法を用いる。 Here, the same similarity calculation method as in S7 is used.
S35:次に、操作検出部13は、各特徴ベクトルにつき、類似度の最大値に対応する中心ベクトルに対応づけてノイズデータベース17に記憶した閾値th_nをノイズデータベース17から読み出し、類似度の最大値が閾値以上か否かを判定する。
S35: Next, for each feature vector, the
操作検出部13は、類似度の最大値が閾値未満なら(S35:NO)、該当の特徴ベクトルをS37の入力とする。
If the maximum value of the similarity is less than the threshold value (S35: NO), the
S36:操作検出部13は、類似度の最大値が閾値以上なら(S35:YES)、該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とするベクトル(差分特徴ベクトル)を生成する。
S36: If the maximum value of the similarity is greater than or equal to the threshold (S35: YES), the
S37:次に、操作検出部13は、操作名データベース16における各中心ベクトルにつき、各差分特徴ベクトルとの類似度ならびにS34で算出した類似度の最大値が閾値未満(S35:NO)となった各特徴ベクトルとの類似度を算出する。
S37: Next, for each center vector in the
S37では、S7と同一の類似度算出方法を用いる.
S38:次に、操作検出部13は、類似度の最大値に対応する中心ベクトルに対応づけて記憶した閾値thを操作名データベース16から読み出し、類似度の最大値が閾値th以上か否かを判定する。
In S37, the same similarity calculation method as in S7 is used.
S38: Next, the
操作検出部13は、類似度の最大値が閾値未満なら(S38:NO)、処理を終える。
If the maximum value of the similarity is less than the threshold value (S38: NO), the
S39:操作検出部13は、類似度の最大値が閾値以上なら(S38:YES)、操作名データベース16から当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す。
S39: If the maximum value of the similarity is equal to or greater than the threshold (S38: YES), the
S40:次に、出力部14が、読み出された操作名を、例えば、図示しない表示装置などに表示し、処理を終える。
S40: Next, the
したがって、第6の実施の形態に係る操作検出装置1Aは、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置であって、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベース16と、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベース17と、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段(ステップS2)と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段(ステップS3)と、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段(ステップS4)と、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段(ステップS5)と、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段(ステップS6)と、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段(ステップS7)と、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段(ステップS8、S9)と、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数の操作クラスタを生成する操作クラスタ生成手段(ステップS10)と、前記各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、前記操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段(ステップS11)と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段(ステップS32)と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段(ステップS33)と、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段(ステップS34)と、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段(ステップS35、S36)と、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段(ステップS37)と、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段(ステップS39)とを備えるので、換言すれば、予め操作が行われていない時間のパケットパターンをノイズパターンとして学習し、操作パターン抽出対象の特徴ベクトルおよび操作検出対象の特徴ベクトルから類似したノイズパターンを除去することで、操作が行われていないときにも発生するパケットデータの影響をなくすことができ、問題を解決することができる。 Therefore, the operation detection device 1A according to the sixth embodiment is an operation detection device that detects an operation on the device based on a packet used for the device to perform communication. An operation name database 16 storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector, and a center generated based on a packet at a time when the user is not likely to perform the operation Corresponding to the predetermined information in the unit time for each of the predetermined information included in the header of the packet for each unit time in the noise database 17 in which the record including the vector is stored and the period before the operation is detected A first feature amount calculating means (step S2) for calculating a feature amount of a packet to be transmitted, and for a plurality of unit times, First feature vector generation means (step S3) for generating a feature vector composed of feature amounts calculated for a plurality of predetermined continuous unit times starting, and a user of the device operating the plurality of feature vectors A feature vector dividing means (step S4) for dividing an operation time feature vector that is a time feature vector that is likely to be performed into a noise time feature vector that is a time feature vector that is not likely to be operated by the user; Noise cluster generating means (step S5) for generating a plurality of noise clusters from a plurality of the noise time feature vectors based on the similarity between the noise time feature vectors, and for each noise cluster, the noise in the noise cluster Generates the center vector of the time feature vector and stores it in the noise database First center vector generation means (step S6) for generating, and, for each operation time feature vector, first similarity calculation means for calculating the similarity between the operation time feature vector and each center vector of the noise database ( Step S7) and generating a difference feature vector having a feature amount as a difference between a corresponding operation time feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value. 1 difference feature vector generation means (steps S8 and S9) and similarity between the feature vectors from the plurality of feature vectors including the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value Operation cluster generating means (step S10) for generating a plurality of operation clusters based on the Generating a center vector of feature vectors in the operation cluster, searching the operation name database for a record including a rule matching the center vector, and associating the center vector with an operation name in the record; For each of the predetermined information included in the header of the packet for each unit time in the period during which the center vector generating means (step S11) detects the operation, the feature amount of the packet corresponding to the predetermined information in the unit time Second feature quantity calculating means (step S32) for calculating, second feature vector generating means (step S33) for generating a feature vector composed of the feature quantity, and for each feature vector, the feature vector and the Second similarity calculation means for calculating similarity with each central vector of the noise database (step S34), and calculating a difference between the corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value, and calculating a difference feature vector having the difference as a feature amount. Second difference feature vector generation means (steps S35 and S36) to be generated, and for each center vector in the operation name database, the similarity between each difference feature vector and the similarity calculated by the second similarity calculation means Third similarity calculation means (step S37) for calculating the similarity with each corresponding feature vector when the maximum value of the degree is equal to or greater than a threshold; and if the maximum value of the similarity is equal to or greater than a predetermined threshold, In other words, operation name reading means (step S39) for reading the operation name associated with the center vector corresponding to the maximum value from the operation name database is provided. For example, the operation is performed by learning the packet pattern of the time when the operation is not performed in advance as a noise pattern and removing a similar noise pattern from the feature vector of the operation pattern extraction target and the feature vector of the operation detection target. It is possible to eliminate the influence of packet data generated even when there is not, and to solve the problem.
(変形例)
なお、第6の実施の形態のS10において、類似度の最大値が閾値未満(S8:NO)となった操作時間特徴ベクトルおよび差分特徴ベクトル(特徴ベクトルと総称する)のそれぞれにつき、操作名データベース16における当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成してもよい。
(Modification)
In S10 of the sixth embodiment, an operation name database is provided for each of the operation time feature vector and the difference feature vector (collectively referred to as feature vector) for which the maximum similarity is less than the threshold (S8: NO). It may be determined whether or not there is a rule that matches the feature vector in 16, and an operation cluster including feature vectors that match the rule may be generated for each rule that is determined to be matched.
特徴ベクトルに適合するルールの有無の判定は、第2の実施の形態と同様に、パターンマッチングにより行うことができる。 The presence / absence of a rule that matches the feature vector can be determined by pattern matching, as in the second embodiment.
上記のようにS10でルールを用いた場合、S11では、各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、操作名データベース16から、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づければよい。
When the rule is used in S10 as described above, in S11, for each operation cluster, a center vector of the operation cluster is generated, and a record including a rule corresponding to the operation cluster is searched from the
したがって、第6の実施の形態の変形例に係る操作検出装置1Aは、機器が通信を行うのに使用されるパケットを基に当該機器に対する操作を検出する操作検出装置であって、複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベース16と、ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベース17と、操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段(ステップS2)と、複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段(ステップS3)と、当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段(ステップS4)と、複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段(ステップS5)と、前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段(ステップS6)と、前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段(ステップS7)と、当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段(ステップS8、S9)と、当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルのそれぞれにつき、前記操作名データベースにおける当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成する操作クラスタ生成手段(ステップS10)と、当該各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、前記操作名データベースから、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段(ステップS11)と、操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段(ステップS32)と、当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段(ステップS33)と、当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段(ステップS34)と、当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段(ステップS35、S36)と、前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段(ステップS37)と、当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段(ステップS39)とを備えるので、換言すれば、予め操作が行われていない時間のパケットパターンをノイズパターンとして学習し、操作パターン抽出対象の特徴ベクトルおよび操作検出対象の特徴ベクトルから類似したノイズパターンを除去することで、操作が行われていないときにも発生するパケットデータの影響をなくすことができ、問題を解決することができる。
Therefore, the operation detection device 1A according to the modification of the sixth embodiment is an operation detection device that detects an operation on the device based on a packet used for communication by the device, and includes a plurality of types of operation detection devices. Generated based on the
なお、各実施の形態に係る操作検出装置としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。 The computer program for causing the computer to function as the operation detection device according to each embodiment can be recorded on a computer-readable recording medium such as a semiconductor memory, a magnetic disk, an optical disk, a magneto-optical disk, or a magnetic tape. It can be widely distributed by being transmitted via a communication network such as the Internet.
1、1A 操作検出装置
11 入力部
12 操作パターン抽出部
13 操作検出部
14 出力部
15 ポート番号記憶部
16 操作名データベース
17 ノイズデータベース
DESCRIPTION OF
Claims (6)
複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、
ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースと、
操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段と、
複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段と、
当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段と、
複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段と、
前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段と、
前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段と、
当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数の操作クラスタを生成する操作クラスタ生成手段と、
前記各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、前記操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段と、
操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段と、
当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段と、
当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段と、
前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段と
を備えることを特徴とする操作検出装置。 An operation detection device that detects an operation on the device based on a packet used for communication by the device,
For a plurality of types of operations, an operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector;
A noise database in which a record including a center vector generated based on a packet at a time when the user is not likely to perform an operation is stored;
A first feature amount for calculating a feature amount of a packet corresponding to the predetermined information in the unit time for each of predetermined information included in the header of the packet for each unit time in a period before detecting the operation. A calculation means;
First feature vector generation means for generating a feature vector composed of feature amounts calculated for a plurality of predetermined unit times starting from the unit time for a plurality of unit times;
The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by the user of the device and a noise time feature vector that is a time feature vector that is not likely to be operated by the user. Feature vector dividing means for dividing
Noise cluster generating means for generating a plurality of noise clusters based on the similarity between the noise time feature vectors from the plurality of noise time feature vectors;
For each noise cluster, first center vector generation means for generating a center vector of a noise time feature vector in the noise cluster and storing the center vector in the noise database;
First similarity calculation means for calculating a similarity between the operation time feature vector and each central vector of the noise database for each operation time feature vector;
A first difference feature vector that generates a difference feature vector having a difference between a corresponding operation time feature vector and a center vector corresponding to the maximum value when the maximum value of the similarity is equal to or greater than a predetermined threshold. Generating means;
An operation cluster generating means for generating a plurality of operation clusters from a plurality of feature vectors including the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold; ,
For each operation cluster, generate a center vector of the feature vector in the operation cluster, search the operation name database for a record including a rule that matches the center vector, and use the center vector as the operation name in the record Second center vector generating means for associating with
Second feature amount calculation means for calculating, for each unit time, the feature amount of the packet corresponding to the predetermined information in the unit time for each unit time in the period for detecting the operation When,
Second feature vector generation means for generating a feature vector comprising the feature amount;
For each feature vector, second similarity calculation means for calculating the similarity between the feature vector and each central vector of the noise database;
Calculating a difference between a corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value, and generating a difference feature vector having the difference as a feature amount Differential feature vector generation means of
For each center vector in the operation name database, the similarity with each difference feature vector and the similarity with the corresponding feature vector when the maximum value of the similarity calculated by the second similarity calculation means is greater than or equal to a threshold value Third similarity calculation means for calculating the degree;
If the maximum value of the similarity is equal to or greater than a predetermined threshold value, an operation name reading unit is provided that reads an operation name associated with a center vector corresponding to the maximum value from the operation name database. apparatus.
複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、
ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースと、
操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第1の特徴量算出手段と、
複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成する第1の特徴ベクトル生成手段と、
当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割する特徴ベクトル分割手段と、
複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成するノイズクラスタ生成手段と、
前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させる第1の中心ベクトル生成手段と、
前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第1の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成する第1の差分特徴ベクトル生成手段と、
当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルのそれぞれにつき、前記操作名データベースにおける当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成する操作クラスタ生成手段と、
当該各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、前記操作名データベースから、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づける第2の中心ベクトル生成手段と、
操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出する第2の特徴量算出手段と、
当該特徴量からなる特徴ベクトルを生成する第2の特徴ベクトル生成手段と、
当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出する第2の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成する第2の差分特徴ベクトル生成手段と、
前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出する第3の類似度算出手段と、
当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す操作名読出手段と
を備えることを特徴とする操作検出装置。 An operation detection device that detects an operation on the device based on a packet used for communication by the device,
For a plurality of types of operations, an operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector;
A noise database in which a record including a center vector generated based on a packet at a time when the user is not likely to perform an operation is stored;
A first feature amount for calculating a feature amount of a packet corresponding to the predetermined information in the unit time for each of predetermined information included in the header of the packet for each unit time in a period before detecting the operation. A calculation means;
First feature vector generation means for generating a feature vector composed of feature amounts calculated for a plurality of predetermined unit times starting from the unit time for a plurality of unit times;
The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by the user of the device and a noise time feature vector that is a time feature vector that is not likely to be operated by the user. Feature vector dividing means for dividing
Noise cluster generating means for generating a plurality of noise clusters based on the similarity between the noise time feature vectors from the plurality of noise time feature vectors;
For each noise cluster, first center vector generation means for generating a center vector of a noise time feature vector in the noise cluster and storing the center vector in the noise database;
First similarity calculation means for calculating a similarity between the operation time feature vector and each central vector of the noise database for each operation time feature vector;
A first difference feature vector that generates a difference feature vector having a difference between a corresponding operation time feature vector and a center vector corresponding to the maximum value when the maximum value of the similarity is equal to or greater than a predetermined threshold. Generating means;
For each of a plurality of feature vectors composed of the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value, it is determined whether or not there is a rule that matches the feature vector in the operation name database. Then, for each rule determined, an operation cluster generation means for generating an operation cluster composed of feature vectors that match the rule,
For each operation cluster, a center vector of the operation cluster is generated, a record including a rule corresponding to the operation cluster is searched from the operation name database, and the center vector is associated with the operation name in the record. Two center vector generating means;
Second feature amount calculation means for calculating, for each unit time, the feature amount of the packet corresponding to the predetermined information in the unit time for each unit time in the period for detecting the operation When,
Second feature vector generation means for generating a feature vector comprising the feature amount;
For each feature vector, second similarity calculation means for calculating the similarity between the feature vector and each central vector of the noise database;
Calculating a difference between a corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value, and generating a difference feature vector having the difference as a feature amount Differential feature vector generation means of
For each center vector in the operation name database, the similarity with each difference feature vector and the similarity with the corresponding feature vector when the maximum value of the similarity calculated by the second similarity calculation means is greater than or equal to a threshold value Third similarity calculation means for calculating the degree;
If the maximum value of the similarity is equal to or greater than a predetermined threshold value, an operation name reading unit is provided that reads an operation name associated with a center vector corresponding to the maximum value from the operation name database. apparatus.
前記パケットの特徴量と予め定めた閾値を用いて、前記第1の特徴ベクトル生成手段で生成された複数の特徴ベクトルを操作時間特徴ベクトルとノイズ時間特徴ベクトルとに分割する
ことを特徴とする請求項1または2記載の操作検出装置。 The feature vector dividing means includes:
The plurality of feature vectors generated by the first feature vector generation unit are divided into an operation time feature vector and a noise time feature vector using the feature amount of the packet and a predetermined threshold value. Item 3. The operation detection device according to Item 1 or 2.
前記操作検出装置は、
複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、
ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースとを備え、
前記動作方法は、
前記操作検出装置の第1の特徴量算出手段が、
操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、
前記操作検出装置の第1の特徴ベクトル生成手段が、
複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成し、
前記操作検出装置の特徴ベクトル分割手段が、
当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割し、
前記操作検出装置のノイズクラスタ生成手段が、
複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成し、
前記操作検出装置の第1の中心ベクトル生成手段が、
前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させ、
前記操作検出装置の第1の類似度算出手段が、
前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、
前記操作検出装置の第1の差分特徴ベクトル生成手段が、
当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成し、
前記操作検出装置の操作クラスタ生成手段が、
当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルから当該特徴ベクトル間の類似性に基づいて複数の操作クラスタを生成し、
前記操作検出装置の第2の中心ベクトル生成手段が、
前記各操作クラスタにつき、当該操作クラスタ内の特徴ベクトルの中心ベクトルを生成し、前記操作名データベースから、当該中心ベクトルに適合するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づけ、
前記操作検出装置の第2の特徴量算出手段が、
操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、
前記操作検出装置の第2の特徴ベクトル生成手段が、
当該特徴量からなる特徴ベクトルを生成し、
前記操作検出装置の第2の類似度算出手段が、
当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、
前記操作検出装置の第2の差分特徴ベクトル生成手段が、
当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成し、
前記操作検出装置の第3の類似度算出手段が、
前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出し、
前記操作検出装置の操作名読出手段が、
当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す
ことを特徴とする操作検出装置の動作方法。 An operation method of an operation detection device that detects an operation on the device based on a packet used for communication by the device,
The operation detection device includes:
For a plurality of types of operations, an operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector;
A noise database in which a record including a center vector generated based on a packet of a time at which the user cannot perform an operation is stored;
The operation method is as follows:
A first feature amount calculating means of the operation detecting device;
For each period of time before detecting the operation, for each of the predetermined information included in the header of the packet, calculate the feature amount of the packet corresponding to the predetermined information in the unit time,
A first feature vector generating means of the operation detecting device;
For a plurality of unit times, generate a feature vector composed of feature amounts calculated for a plurality of predetermined continuous unit times starting from the unit time,
The feature vector dividing means of the operation detecting device comprises:
The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by the user of the device and a noise time feature vector that is a time feature vector that is not likely to be operated by the user. Divided into
The noise cluster generating means of the operation detecting device is
Generating a plurality of noise clusters based on the similarity between the noise time feature vectors from the plurality of noise time feature vectors;
A first center vector generating means of the operation detecting device;
For each noise cluster, generate a center vector of the noise time feature vector in the noise cluster, and store it in the noise database;
A first similarity calculating unit of the operation detecting device;
For each operation time feature vector, calculate the similarity between the operation time feature vector and each central vector of the noise database,
A first difference feature vector generating means of the operation detecting device;
A difference feature vector having a feature amount as a difference between a corresponding operation time feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value;
The operation cluster generation means of the operation detection device comprises:
A plurality of operation clusters are generated based on the similarity between the feature vectors from the plurality of feature vectors including the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value,
A second center vector generating means of the operation detecting device;
For each operation cluster, generate a center vector of the feature vector in the operation cluster, search the operation name database for a record including a rule that matches the center vector, and use the center vector as the operation name in the record To
A second feature amount calculating means of the operation detecting device;
In the period for detecting the operation, for each unit time, for each of the predetermined information included in the header of the packet, the feature amount of the packet corresponding to the predetermined information in the unit time is calculated,
A second feature vector generating means of the operation detecting device;
Generate a feature vector consisting of the feature quantity,
A second similarity calculating means of the operation detecting device;
For each feature vector, calculate the similarity between the feature vector and each central vector of the noise database,
A second difference feature vector generating means of the operation detecting device;
Calculating a difference between the corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value, and generating a difference feature vector having the difference as a feature amount;
A third similarity calculating means of the operation detecting device;
For each center vector in the operation name database, the similarity with each difference feature vector and the similarity with the corresponding feature vector when the maximum value of the similarity calculated by the second similarity calculation means is greater than or equal to a threshold value Calculate the degree,
The operation name reading means of the operation detecting device is
If the maximum value of the similarity is greater than or equal to a predetermined threshold value, the operation name associated with the center vector corresponding to the maximum value is read from the operation name database.
前記操作検出装置は、
複数種類の操作につき、当該操作の操作名と当該操作の際に適用されるルールおよび中心ベクトルを含むレコードが記憶される操作名データベースと、
ユーザが操作を行う可能性のない時間のパケットに基づいて生成された中心ベクトルを含むレコードが記憶されるノイズデータベースとを備え、
前記動作方法は、
前記操作検出装置の第1の特徴量算出手段が、
操作を検出する前の期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、
前記操作検出装置の第1の特徴ベクトル生成手段が、
複数の単位時間につき、当該単位時間から始まる予め定められた複数の連続する単位時間について算出された特徴量からなる特徴ベクトルを生成し、
前記操作検出装置の特徴ベクトル分割手段が、
当該複数の特徴ベクトルを、前記機器のユーザが操作を行う可能性のある時間の特徴ベクトルである操作時間特徴ベクトルと前記ユーザが操作を行う可能性のない時間の特徴ベクトルであるノイズ時間特徴ベクトルとに分割し、
前記操作検出装置のノイズクラスタ生成手段が、
複数の前記ノイズ時間特徴ベクトルから当該ノイズ時間特徴ベクトル間の類似性に基づいて複数のノイズクラスタを生成し、
前記操作検出装置の第1の中心ベクトル生成手段が、
前記各ノイズクラスタにつき、当該ノイズクラスタ内のノイズ時間特徴ベクトルの中心ベクトルを生成し、前記ノイズデータベースに記憶させ、
前記操作検出装置の第1の類似度算出手段が、
前記各操作時間特徴ベクトルにつき、当該操作時間特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、
前記操作検出装置の第1の差分特徴ベクトル生成手段が、
当該類似度の最大値が予め定めた閾値以上の場合の該当の操作時間特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を特徴量とする差分特徴ベクトルを生成し、
前記操作検出装置の操作クラスタ生成手段が、
当該最大値が当該閾値未満の場合の該当の操作時間特徴ベクトルおよび前記差分特徴ベクトルからなる複数の特徴ベクトルのそれぞれにつき、前記操作名データベースにおける当該特徴ベクトルに適合するルールの有無を判定し、適合すると判定された各ルールにつき、当該ルールに適合する特徴ベクトルからなる操作クラスタを生成し、
前記操作検出装置の第2の中心ベクトル生成手段が、
当該各操作クラスタにつき、当該操作クラスタの中心ベクトルを生成し、前記操作名データベースから、当該操作クラスタに対応するルールを含むレコードを検索し、当該中心ベクトルを当該レコード内の操作名に対応づけ、
前記操作検出装置の第2の特徴量算出手段が、
操作を検出する期間において、単位時間ごとに、パケットのヘッダに含まれる所定の情報のそれぞれにつき、当該単位時間における当該所定の情報に該当するパケットの特徴量を算出し、
前記操作検出装置の第2の特徴ベクトル生成手段が、
当該特徴量からなる特徴ベクトルを生成し、
前記操作検出装置の第2の類似度算出手段が、
当該各特徴ベクトルにつき、当該特徴ベクトルと前記ノイズデータベースの各中心ベクトルとの類似度を算出し、
前記操作検出装置の第2の差分特徴ベクトル生成手段が、
当該類似度の最大値が予め定めた閾値以上の場合の該当の特徴ベクトルと当該最大値に対応する中心ベクトルとの差分を計算し、当該差分を特徴量とする差分特徴ベクトルを生成し、
前記操作検出装置の第3の類似度算出手段が、
前記操作名データベースにおける各中心ベクトルにつき、当該各差分特徴ベクトルとの類似度ならびに前記第2の類似度算出手段で算出した類似度の最大値が閾値以上の場合の該当の各特徴ベクトルとの類似度を算出し、
前記操作検出装置の操作名読出手段が、
当該類似度の最大値が予め定めた閾値以上なら、前記操作名データベースから当該最大値に対応する中心ベクトルに対応づけられた操作名を読み出す
ことを特徴とする操作検出装置の動作方法。 An operation method of an operation detection device that detects an operation on the device based on a packet used for communication by the device,
The operation detection device includes:
For a plurality of types of operations, an operation name database storing a record including an operation name of the operation, a rule applied at the time of the operation, and a center vector;
A noise database in which a record including a center vector generated based on a packet of a time at which the user cannot perform an operation is stored;
The operation method is as follows:
A first feature amount calculating means of the operation detecting device;
For each period of time before detecting the operation, for each of the predetermined information included in the header of the packet, calculate the feature amount of the packet corresponding to the predetermined information in the unit time,
A first feature vector generating means of the operation detecting device;
For a plurality of unit times, generate a feature vector composed of feature amounts calculated for a plurality of predetermined continuous unit times starting from the unit time,
The feature vector dividing means of the operation detecting device comprises:
The plurality of feature vectors are an operation time feature vector that is a time feature vector that is likely to be operated by the user of the device and a noise time feature vector that is a time feature vector that is not likely to be operated by the user. Divided into
The noise cluster generating means of the operation detecting device is
Generating a plurality of noise clusters based on the similarity between the noise time feature vectors from the plurality of noise time feature vectors;
A first center vector generating means of the operation detecting device;
For each noise cluster, generate a center vector of the noise time feature vector in the noise cluster, and store it in the noise database;
A first similarity calculating unit of the operation detecting device;
For each operation time feature vector, calculate the similarity between the operation time feature vector and each central vector of the noise database,
A first difference feature vector generating means of the operation detecting device;
A difference feature vector having a feature amount as a difference between a corresponding operation time feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value;
The operation cluster generation means of the operation detection device comprises:
For each of a plurality of feature vectors composed of the corresponding operation time feature vector and the difference feature vector when the maximum value is less than the threshold value, it is determined whether or not there is a rule that matches the feature vector in the operation name database. Then, for each rule determined, an operation cluster composed of feature vectors matching the rule is generated,
A second center vector generating means of the operation detecting device;
For each operation cluster, generate a center vector of the operation cluster, search the operation name database for a record including a rule corresponding to the operation cluster, associate the center vector with the operation name in the record,
A second feature amount calculating means of the operation detecting device;
In the period for detecting the operation, for each unit time, for each of the predetermined information included in the header of the packet, the feature amount of the packet corresponding to the predetermined information in the unit time is calculated,
A second feature vector generating means of the operation detecting device;
Generate a feature vector consisting of the feature quantity,
A second similarity calculating means of the operation detecting device;
For each feature vector, calculate the similarity between the feature vector and each central vector of the noise database,
A second difference feature vector generating means of the operation detecting device;
Calculating a difference between the corresponding feature vector when the maximum value of the similarity is equal to or greater than a predetermined threshold and a center vector corresponding to the maximum value, and generating a difference feature vector having the difference as a feature amount;
A third similarity calculating means of the operation detecting device;
For each center vector in the operation name database, the similarity with each difference feature vector and the similarity with the corresponding feature vector when the maximum value of the similarity calculated by the second similarity calculation means is greater than or equal to a threshold value Calculate the degree,
The operation name reading means of the operation detecting device is
If the maximum value of the similarity is greater than or equal to a predetermined threshold value, the operation name associated with the center vector corresponding to the maximum value is read from the operation name database.
A computer program for causing a computer to function as the operation detection device according to claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014179976A JP6174537B2 (en) | 2014-09-04 | 2014-09-04 | Operation detection device, operation method of operation detection device, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014179976A JP6174537B2 (en) | 2014-09-04 | 2014-09-04 | Operation detection device, operation method of operation detection device, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016054435A true JP2016054435A (en) | 2016-04-14 |
JP6174537B2 JP6174537B2 (en) | 2017-08-02 |
Family
ID=55744385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014179976A Active JP6174537B2 (en) | 2014-09-04 | 2014-09-04 | Operation detection device, operation method of operation detection device, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6174537B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022168279A1 (en) * | 2021-02-05 | 2022-08-11 | 日本電信電話株式会社 | Number-of-clusters setting device, number-of-clusters setting method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7970934B1 (en) * | 2006-07-31 | 2011-06-28 | Google Inc. | Detecting events of interest |
JP2012034262A (en) * | 2010-08-02 | 2012-02-16 | Nippon Telegr & Teleph Corp <Ntt> | Flow classification method, system, and program |
JP2013187629A (en) * | 2012-03-06 | 2013-09-19 | Ntt Comware Corp | Device and method for application type classification, and program therefor |
EP2908485A1 (en) * | 2014-02-18 | 2015-08-19 | Alcatel Lucent | Network device and method for packet flow classification |
-
2014
- 2014-09-04 JP JP2014179976A patent/JP6174537B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7970934B1 (en) * | 2006-07-31 | 2011-06-28 | Google Inc. | Detecting events of interest |
JP2012034262A (en) * | 2010-08-02 | 2012-02-16 | Nippon Telegr & Teleph Corp <Ntt> | Flow classification method, system, and program |
JP2013187629A (en) * | 2012-03-06 | 2013-09-19 | Ntt Comware Corp | Device and method for application type classification, and program therefor |
EP2908485A1 (en) * | 2014-02-18 | 2015-08-19 | Alcatel Lucent | Network device and method for packet flow classification |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022168279A1 (en) * | 2021-02-05 | 2022-08-11 | 日本電信電話株式会社 | Number-of-clusters setting device, number-of-clusters setting method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP6174537B2 (en) | 2017-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110115015B (en) | System and method for detecting unknown IoT devices by monitoring their behavior | |
CN109936512B (en) | Flow analysis method, public service flow attribution method and corresponding computer system | |
JP6306739B2 (en) | Malignant communication pattern extraction apparatus, malignant communication pattern extraction method, and malignant communication pattern extraction program | |
WO2018160136A1 (en) | Method and apparatus for determining an identity of an unknown internet-of-things (iot) device in a communication network | |
EP2678815B1 (en) | Method and device for privacy preserving exchange of information | |
JP6751168B2 (en) | Abnormal factor estimation device, abnormal factor estimation method and program | |
US9813324B2 (en) | Dynamic control of endpoint profiling | |
JP2011015253A (en) | Communication traffic classification method and apparatus, and program | |
CN104915354A (en) | Multimedia file pushing method and device | |
JP2012186667A (en) | Network fault detection apparatus, network fault detection method of network fault detection apparatus, and network fault detection program | |
US20140089496A1 (en) | Apparatus and method for monitoring web application telecommunication data by user | |
JP6174537B2 (en) | Operation detection device, operation method of operation detection device, and computer program | |
CN103701836B (en) | Information processing method, terminal device and server | |
JP6046653B2 (en) | Operation detection device and computer program | |
JP5863581B2 (en) | Determination rule generation device, router, program and method for generating determination rule for terminal information estimation | |
CN110784330B (en) | Method and device for generating application recognition model | |
JP5872396B2 (en) | Terminal information estimation apparatus, DNS server, program and method using stability of query generation cycle | |
WO2023010823A1 (en) | Network fault root cause determining method and apparatus, device, and storage medium | |
JP6157189B2 (en) | Identification device, identification method, and identification program | |
JP5551741B2 (en) | Device identification apparatus, device identification system, device identification method, and program | |
JP2021093689A (en) | Information processing system and information processing method | |
JP2020136723A (en) | Communication quality deterioration location estimation device, system, method, and program | |
CN117579397B (en) | Internet of things privacy leakage detection method and device based on small sample ensemble learning | |
JP5659174B2 (en) | Network status assignment device, communication data feature learning system, service type determination system, network status assignment method, and program | |
JP2011164942A (en) | Device, method, and program for evaluating web site |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160913 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170619 |
|
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: 20170704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170706 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6174537 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |