WO2015186662A1 - Log analysis device, attack detection device, attack detection method and program - Google Patents
Log analysis device, attack detection device, attack detection method and program Download PDFInfo
- Publication number
- WO2015186662A1 WO2015186662A1 PCT/JP2015/065772 JP2015065772W WO2015186662A1 WO 2015186662 A1 WO2015186662 A1 WO 2015186662A1 JP 2015065772 W JP2015065772 W JP 2015065772W WO 2015186662 A1 WO2015186662 A1 WO 2015186662A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- class
- profile
- parameter
- character string
- attack
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
攻撃を検知する方式として、WAF(Web Application Firewall)でアクセス内容を分析する方式と、Webサーバやアプリケーションサーバに残るログを分析する方式が一般的である。攻撃検知方法には、シグネチャ型とアノマリ型の2種類の検知方法が知られている。
図17は従来の攻撃検知方法を説明するための図である。図17(a)はシグネチャ型の攻撃検知方法を示す図であり、図17(b)はアノマリ型の攻撃検知方法を示す図である。
シグネチャ型は、図17(a)に示すように、攻撃コードから攻撃を判定できる部分を抽出し、パターンに一致したリクエストを攻撃として検知するものである。WebAP(Web Application)に存在する脆弱性が増加したため、1つ1つの脆弱性について対策を行うシグネチャ型検知で攻撃を防ぐことが困難になった。そのため、WebAPに対して通常リクエストからプロファイルを作成し、異常を検知するアノマリ検知に対する研究が行われてきた。
アノマリ型は、図17(b)に示すように、正常なリクエストからプロファイルを作成し、プロファイルとの類似度を計算し、異なるリクエストを異常として検知するものである(非特許文献1および2参照)。以下では、プロファイルを作成する処理を学習処理と称し、プロファイルを用いて、分析対象のリクエストが攻撃か否かを判定する処理を検知処理と称する。 Systems using the Web are used in various places in society including EC (Electronic Commerce). However, since such a system is a base used by general users, Web servers are always exposed to the risk of attacks. Various methods for detecting an access for attacking a Web server have been studied.
As a method of detecting an attack, a method of analyzing access contents by WAF (Web Application Firewall) and a method of analyzing a log remaining in a Web server or application server are generally used. There are two known attack detection methods, signature type and anomaly type detection methods.
FIG. 17 is a diagram for explaining a conventional attack detection method. FIG. 17A is a diagram showing a signature type attack detection method, and FIG. 17B is a diagram showing an anomaly type attack detection method.
As shown in FIG. 17A, the signature type extracts a portion that can determine an attack from an attack code, and detects a request that matches the pattern as an attack. Since vulnerabilities that exist in WebAP (Web Application) have increased, it has become difficult to prevent attacks by signature-type detection that takes countermeasures for each vulnerability. For this reason, research has been conducted on anomaly detection in which a profile is created from a normal request for WebAP and an abnormality is detected.
As shown in FIG. 17B, the anomaly type creates a profile from a normal request, calculates the similarity to the profile, and detects different requests as abnormal (see Non-Patent
ここでは、検知結果に影響が大きいと考えられる、文字列の構造と文字列のクラスの特徴量についてのみ考える。図18はプロファイルの特徴量を説明するための図である。
文字列の構造を特徴量とする場合を従来技術1とし、文字列のクラスを特徴量とする場合を従来技術2として、これらの技術を簡単に説明する。 In the methods disclosed in
Here, only the character string structure and the character string class feature amount, which are considered to have a large influence on the detection result, are considered. FIG. 18 is a diagram for explaining profile feature amounts.
These techniques will be briefly described as the
学習処理の手順は、次の通りである。
(手順1)出現する文字を状態とし、全パラメタ値を列挙した状態遷移モデルを作成する。
(手順2)初期状態(s)から同じ状態を結合し、結合できなくなるまで繰り返し、出来上がった状態遷移モデルをプロファイルとする(状態遷移モデルの作り方は非特許文献3参照)。
なお、モデルを作るときは状態遷移の確率を考慮に入れなければいけないが、従来技術1では検知時に確率を考慮しないため遷移確率を考慮しないモデルを作成することと同等と考える。
検知処理では、文字列がプロファイル(状態遷移モデル)から出力不可能であれば異常と判定する。 First, a profile creation method using the character string structure as a feature amount according to the
The procedure of the learning process is as follows.
(Procedure 1) Create a state transition model in which all the parameter values are listed with the appearing characters as states.
(Procedure 2) The same state is combined from the initial state (s) and repeated until it cannot be combined, and the completed state transition model is used as a profile (see Non-Patent Document 3 for how to create a state transition model).
It should be noted that the state transition probability must be taken into consideration when creating the model. However, since the
In the detection process, if the character string cannot be output from the profile (state transition model), it is determined as abnormal.
学習処理の手順は、次の通りである。
(手順1)文字列クラスをあらかじめ定義する(定義方法の一例は非特許文献4を参照)。
(手順2)パラメタ値全体に対してそのクラスに当てはまるかを判定し、当てはまるクラスをそのパラメタに対するプロファイルとしてそのクラス名を保持する。
検知処理では、パラメタ値全体をクラスに変換し、それがプロファイルのクラスと一致しない場合は異常と判定する。 Next, a profile creation method using the character string type as a feature amount according to the related art 2 will be described. FIG. 20 is a diagram for explaining the abnormality determination method of the prior art 2.
The procedure of the learning process is as follows.
(Procedure 1) A character string class is defined in advance (see Non-Patent Document 4 for an example of a definition method).
(Procedure 2) It is determined whether the class applies to the entire parameter value, and the class name is held as a profile for the parameter.
In the detection process, the entire parameter value is converted to a class, and if it does not match the profile class, it is determined as abnormal.
従来技術1では、図21の「課題1」に示すように、学習データに現われる各文字を状態として状態遷移モデルを作成するため学習データにないデータ(学習データが少ない場合)では誤検知が多く発生するという問題がある。
従来技術2では、図21の「課題2」に示すように、1つのパラメタに対して1つの文字列クラスしか作成しないため、複雑な構造を持つパラメタ(例えば、予め定義されている文字列クラスが複数個連接、複合したもの)の場合はプロファイルが作成されないという問題がある。
また、従来技術2では、図21の「課題3」に示すように、人間が見れば類似していると分かるが、厳密には異なる形式を持っており、用意された文字列クラスの正規表現にマッチしない場合、プロファイルが作成されないという問題がある。 With reference to FIG. 21, the problem of the prior art will be described.
In
In prior art 2, as shown in “Problem 2” in FIG. 21, only one character string class is created for one parameter, so a parameter having a complicated structure (for example, a predefined character string class) In the case of multiple connected and combined), there is a problem that a profile is not created.
Also, in the prior art 2, as shown in “Problem 3” in FIG. 21, it can be seen that they are similar when viewed by humans, but strictly, it has a different format, and the regular expression of the prepared character string class If it does not match, there is a problem that the profile is not created.
分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルを保存するための記憶部と、
前記アクセスログのリクエストから各パラメタを抽出するパラメタ抽出部と、
前記パラメタ抽出部によって抽出された各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換するクラス変換部と、
学習データとして正常なデータの前記アクセスログについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列の集合のうち、出現頻度が所定値以上のクラス列を前記プロファイルとして前記記憶部に保存するプロファイル保存部と、
前記分析対象データの前記アクセスログについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列と前記プロファイルとの類似度を計算し、該類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する異常検知部と、
を有する。 The log analysis device of the present invention for achieving the above object is a log analysis device for collecting and analyzing access logs from an information processing device connected to a network,
A storage unit for storing a profile serving as a reference for determining whether the analysis target data indicates an attack on the information processing apparatus;
A parameter extractor for extracting each parameter from the access log request;
For each parameter extracted by the parameter extraction unit, the parameter value is compared with a predefined character string class for each part from the first character, and the part is added to the character string class that has the longest match with the character string class. A class conversion unit that replaces and converts the replaced character string class into a class string arranged in order;
Of the set of class sequences obtained by the parameter extraction unit and the class conversion unit for the access log of normal data as learning data, a class sequence having an appearance frequency equal to or higher than a predetermined value is stored in the storage unit as the profile. A profile storage unit to
The similarity between the class string obtained by the parameter extraction unit and the class conversion unit for the access log of the analysis target data and the profile is calculated, and an attack on the information processing apparatus occurs according to the similarity An anomaly detector that determines whether or not
Have
前記情報処理装置へのアクセスリクエストが該情報処理装置を攻撃するものであるか否かを判定するための基準となるプロファイルを保存するための記憶部と、
前記アクセスリクエストから各パラメタを抽出するパラメタ抽出部と、
前記パラメタ抽出部によって抽出された各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換するクラス変換部と、
学習データとして正常なデータの前記アクセスリクエストについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列の集合のうち、出現頻度が所定値以上のクラス列を前記プロファイルとして前記記憶部に保存するプロファイル保存部と、
分析対象の前記アクセスリクエストについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列と前記プロファイルとの類似度を計算し、該類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する異常検知部と、
を有する。 The attack detection device of the present invention is an attack detection device that detects an attack on an information processing device connected to a network,
A storage unit for storing a profile serving as a reference for determining whether an access request to the information processing apparatus attacks the information processing apparatus;
A parameter extractor for extracting each parameter from the access request;
For each parameter extracted by the parameter extraction unit, the parameter value is compared with a predefined character string class for each part from the first character, and the part is added to the character string class that has the longest match with the character string class. A class conversion unit that replaces and converts the replaced character string class into a class string arranged in order;
Of the set of class sequences obtained by the parameter extraction unit and the class conversion unit for the access request of normal data as learning data, a class sequence having an appearance frequency equal to or higher than a predetermined value is stored in the storage unit as the profile. A profile storage unit to
Calculate the similarity between the class string obtained by the parameter extraction unit and the class conversion unit for the access request to be analyzed and the profile, and whether an attack has occurred on the information processing apparatus according to the similarity An abnormality detection unit for determining whether or not,
Have
学習データとして正常なデータの前記情報処理装置へのアクセスリクエストから各パラメタを抽出し、各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換し、該クラス列の集合のうち、出現頻度が所定値以上のクラス列を、分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルとして記憶部に保存し、
前記分析対象データの前記アクセスリクエストからパラメタを抽出し、
抽出したパラメタの値を前記文字列クラスに基づいて前記クラス列に変換し、
前記クラス列と前記プロファイルとの類似度を計算し、
前記類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定するものである。 The attack detection method of the present invention is an attack detection method by an attack detection device that detects an attack on an information processing device connected to a network,
Each parameter is extracted from the access request to the information processing apparatus for normal data as learning data, and for each parameter, the parameter value is compared with a character string class defined in advance for each part from the first character. Is replaced with a character string class that has the longest match, and converted into a class string in which the replaced character string classes are arranged in order. The analysis target data is stored in the storage unit as a reference profile for determining whether or not the analysis target data indicates an attack on the information processing apparatus,
Extract parameters from the access request for the data to be analyzed,
The extracted parameter value is converted to the class string based on the string class,
Calculating the similarity between the class column and the profile;
It is determined whether an attack on the information processing apparatus has occurred according to the similarity.
学習データとして正常なデータの前記情報処理装置へのアクセスリクエストから各パラメタを抽出し、各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換し、該クラス列の集合のうち、出現頻度が所定値以上のクラス列を、分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルとして記憶部に保存する手順と、
前記分析対象データの前記アクセスリクエストからパラメタを抽出する手順と、
抽出したパラメタの値を前記文字列クラスに基づいて前記クラス列に変換する手順と、
前記クラス列と前記プロファイルとの類似度を計算する手順と、
前記類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する手順を実行させるものである。 Furthermore, the program of the present invention is a computer that detects an attack on an information processing apparatus connected to a network.
Each parameter is extracted from the access request to the information processing apparatus for normal data as learning data, and for each parameter, the parameter value is compared with a character string class defined in advance for each part from the first character. Is replaced with a character string class that has the longest match, and converted into a class string in which the replaced character string classes are arranged in order. , A procedure for storing in the storage unit as a profile serving as a reference for determining whether the analysis target data indicates an attack on the information processing apparatus;
A procedure for extracting parameters from the access request of the analysis target data;
A procedure for converting the value of the extracted parameter into the class string based on the string class;
Calculating the similarity between the class sequence and the profile;
A procedure for determining whether or not an attack on the information processing apparatus has occurred according to the similarity is executed.
本実施形態のWAFを含む通信システムの構成を説明する。
図1は本実施形態のWAFを含む通信システムの一構成例を示すブロック図である。
図1に示すように、通信システムは、ネットワーク80を介してクライアント70にサービスを提供する情報処理装置の一種であるWebサーバ60と、Webサーバ60に対する攻撃を検知するWAF10とを有する。WAF10は、ネットワーク80とWebサーバ60との間に設けられる。クライアント70はネットワーク80およびWAF10を介してWebサーバ60と接続される。
図2は本実施形態のWAFの一構成例を示すブロック図である。
図2に示すように、WAF10は、入力部11と、記憶部12と、制御部13と、検知結果出力部14とを有する。入力部11は、学習データ入力部21および分析対象データ入力部22を有する。
学習データ入力部21には、学習データとして、Webサーバ60への正常なデータがネットワーク80から入力される。分析対象データ入力部22には、Webサーバ60を攻撃するものであるか否かの判定対象となるデータである分析対象データがネットワーク80から入力される。 (First embodiment)
A configuration of a communication system including the WAF according to the present embodiment will be described.
FIG. 1 is a block diagram showing a configuration example of a communication system including a WAF according to the present embodiment.
As illustrated in FIG. 1, the communication system includes a
FIG. 2 is a block diagram illustrating a configuration example of the WAF according to the present embodiment.
As shown in FIG. 2, the
Normal data to the
制御部13は、プロファイル化部40と、分析対象データ処理部50とを有する。プロファイル化部40は、パラメタ抽出部31と、文字列クラス変換部32と、プロファイル保存部43とを有する。分析対象データ処理部50は、パラメタ抽出部31と、文字列クラス変換部32と、異常検知部53とを有する。パラメタ抽出部31と文字列クラス変換部32はプロファイル化部40と分析対象データ処理部50の処理に携わる。
制御部13は、プログラムを記憶するメモリ(不図示)と、プログラムにしたがって処理を実行するCPU(Central Processing Unit)(不図示)とを有する。CPUがプログラムにしたがって処理を実行することで、パラメタ抽出部31、文字列クラス変換部32、プロファイル保存部43、および異常検知部53がWAF10に構成される。また、メモリ(不図示)には、アクセスリクエストから抽出されるパラメタの値について、文字列をどのようにクラス分けするかを定めた文字列クラスの情報が格納されている。文字列クラスの詳細は後で説明する。 The
The
The
文字列クラス変換部32は、学習データに関して、パラメタ抽出部31から受け取るパラメタの値を文字列クラスに基づいてクラス列に変換してプロファイル保存部43に出力する。また、文字列クラス変換部32は、分析対象データに関して、パラメタ抽出部31から受け取るパラメタの値を文字列クラスに基づいてクラス列に変換して異常検知部53に出力する。
プロファイル保存部43は、学習データに関して、文字列クラス変換部32による変換後のクラス列の集合を受け取ると、各パラメタのクラス列の集合から最も頻出するクラス列を選択し、選択したクラス列をパラメタのプロファイルとして記憶部12に保存する。
異常検知部53は、分析対象データに関して、文字列クラス変換部32による変換後のクラス列を受け取ると、そのパラメタのプロファイルとの類似度を計算し、算出した類似度を予め決められた閾値と比較することで、アクセスが異常か否かを検知する。異常検知部53は、その検知結果を検知結果出力部14に通知する。具体的には、異常検知部53は、算出した類似度が閾値より大きい場合、正常と判定し、類似度が閾値より小さい場合、異常と判定する。つまり、Webサーバ60に対して、または、Webサーバ60のWebAPに対して、攻撃が発生したと判定する。
検知結果出力部14は、異常検知部53から受け取る検知結果を出力する。 The
The character string
When the
When the
The detection
図3は本実施形態のWAFによる攻撃検知方法の処理の流れを示す図である。
本実施形態では、「プロファイルの作成に使用する特徴量」、「学習時におけるプロファイルの作成方法および作成されるプロファイル(の構造、データ)」および「検知時におけるプロファイルと分析対象との比較、照合の方法」に特徴がある。
本実施形態の攻撃検知方法は、学習処理と検知処理の2フェーズに分かれる。
学習処理では、学習データ入力部21がネットワーク80からアクセスリクエスト(学習データ)を取得する。プロファイル化部40は、取得したアクセスリクエストから各パラメタを抽出し(パラメタ抽出部31)、パラメタの値をクラス列に変換する(文字列クラス変換部32)。次に、各パラメタのクラス列の集合から最も頻出するクラス列を選択し、パラメタのプロファイルとする(プロファイル保存部43)。
検知処理では、分析対象データ入力部22がネットワーク80からアクセスリクエスト(分析対象データ)を取得する。分析対象データ処理部50は、取得した分析対象データのアクセスリクエストからパラメタを学習処理と同様に抽出してクラス列に変換し(パラメタ抽出部31、文字列クラス変換部32)、そのパラメタのクラス列とプロファイルのクラス列との類似度を計算し、閾値によって異常を検知する(異常検知部53)。その後、検知結果出力部14は、異常検知部53の検知結果を出力する。
なお、リクエストのパラメタを抽出する元データとしては、アクセスリクエストからではなく、パケットキャプチャなどを用いてもよい。 Next, the operation of the WAF of this embodiment will be described.
FIG. 3 is a diagram showing the flow of processing of the attack detection method by WAF of this embodiment.
In the present embodiment, “features used for profile creation”, “profile creation method and profile to be created (structure and data) at learning” and “comparison and collation between profile and analysis target at detection” Is characteristic.
The attack detection method of the present embodiment is divided into two phases of learning processing and detection processing.
In the learning process, the learning
In the detection process, the analysis target
Note that as the original data for extracting the request parameters, packet capture or the like may be used instead of the access request.
図4は本実施形態におけるプロファイル化部による学習処理の手順を示すフローチャートである。
プロファイル化部40は、学習対象のパラメタp毎に次のような処理を実施し、当該パラメタpのプロファイルLを作成する。
当該パラメタに関する全ての学習データ(パラメタ値:d1~dn)が入力されると(ステップ101)、プロファイル化部40は未処理の学習データ(dx)を取り出す(ステップ102)。そして、プロファイル化部40は当該学習データdxを予め定めた文字列クラスの定義に基づき、クラス列cxに変換し、記録する(ステップ103)。
プロファイル化部40は、未処理の学習データがあるか否かを判定し(ステップ104)、未処理の学習データがある場合には、ステップ102に戻り、未処理の学習データがない場合には、ステップ105に進む。ステップ105において、プロファイル化部40は記録した全てのクラス列のうち、出現回数が最大となるクラス列のみを選択する(ステップ105)。その後、プロファイル化部40はパラメタpのプロファイルとしてLを記憶部12に記録する(ステップ106)。 Next, the procedure of the learning process by the
FIG. 4 is a flowchart showing the procedure of the learning process by the profiling unit in this embodiment.
The
When all learning data relating to the parameter (parameter values: d1 to dn) is input (step 101), the
The
図5の上段は、同種のパラメタ値を示す、複数種の文字列を1つのクラスに分類した文字列クラスの定義の一例を示す。文字列クラスには、例えば、「numeric」や「space」などのクラスがある。
図5の中段は、パラメタ値の先頭文字から最後の文字にかけて部分毎に文字列クラスと比較し、文字列クラスとの一致が最長になる文字列クラスにその部分を置換し、文字列クラスが順に配置されたクラス列に変換される様子を示している。図5の下段は、上記のようにして、パラメタ毎にクラス列を求め、クラス列の集合について、クラス列毎の出現頻度を算出し、出現頻度が最大となるクラス列をプロファイルとして保存する様子を示している。 In the flowchart shown in FIG. 4, the processing of
The upper part of FIG. 5 shows an example of the definition of a character string class in which a plurality of types of character strings indicating the same type of parameter values are classified into one class. Examples of the character string class include classes such as “numeric” and “space”.
The middle part of FIG. 5 compares each part of the parameter value from the first character to the last character with the character string class, replaces that part with the character string class that has the longest match with the character string class, It shows a state of being converted into a class sequence arranged in order. The lower part of FIG. 5 obtains the class string for each parameter as described above, calculates the appearance frequency for each class string for the set of class strings, and saves the class string having the maximum appearance frequency as a profile. Is shown.
ステップ103において、プロファイル化部40は、パラメタ値をクラス列に変換する際、予め用意した文字列クラスの正規表現に対して、パラメタ値のマッチした部分文字列とクラスが最長一致した部分を1つのクラスと判定し、左から順にすべての文字列をクラスへ変換する。これにより、従来の定義で1つの文字列クラスに定義されたものが複数個連接されたもの、複合されたものなどの、複雑な構造を持つパラメタも、いずれかのクラスに分類可能となる。
ステップ105において、プロファイル化部40は、クラス列を選出する際、出現頻度が最大となるクラス列を選択し、それをプロファイルとして保存する。
なお、具体的には、ステップ103の処理は文字列クラス変換部32で実行され、ステップ105の処理はプロファイル保存部43で実行される。また、文字列クラスの定義の情報は、記憶部12に格納されていてもよい。 The above operation will be described with reference to FIG.
In
In
Specifically, the process of
図6は本実施形態において、プロファイルとの類似度の計算方法を説明するための図である。分析対象データ処理部50の異常検知部53は次の手順で検知判定を行う。ここでは、分析対象データにテストデータを用いている。
(手順1)学習処理と同様に、パラメタ値をクラス列に変換する。
(手順2)プロファイルとのクラス列類似度を求める。類似度算出方法としては、例えば、図6に示すLCS(最長共通部分列)を用いることができる。
(手順3)類似度Sが閾値Stより小さい場合、異常と判定、そうでなければ正常と判定する。 Next, the detection process in the analysis target
FIG. 6 is a diagram for explaining a method of calculating a similarity to a profile in the present embodiment. The
(Procedure 1) Similar to the learning process, the parameter value is converted into a class string.
(Procedure 2) The class sequence similarity with the profile is obtained. As a similarity calculation method, for example, LCS (longest common subsequence) shown in FIG. 6 can be used.
(Procedure 3) If the similarity S is smaller than the threshold value St, it is determined as abnormal, otherwise it is determined as normal.
学習処理では、プロファイル化部40が、出現頻度が最大となるクラス列を1個選出する。検知処理では、分析対象データ処理部50は、クラス列変換を行った後、類似度計算を行い、その結果により、正常か、異常かを判定する。 Examples of the present embodiment will be described. FIG. 7 is a diagram showing an example of this embodiment. In this embodiment, the case of the file parameter will be described. Test data is used as analysis target data.
In the learning process, the
第1の実施形態では、クラス列の選出において出現頻度が最大となるクラス列を1つだけ選択し、そのクラス列をプロファイルとしたが、本実施形態では、クラス列の選択方法の別の案として、次の変形例1~3のいずれかを適用するものである。
(変形例1)出現頻度が大きい順にu個のクラス列を選出する。
(変形例2)出現頻度がv%以上となるクラス列を選出する。
(変形例3)出現頻度fxを大きい順にソート(f'1, f'2, f'3 …)し、出現頻度の和(寄与率)が初めてFtを超える(f'1 + f'2 + … + f'u > Ft)u個のクラス列(c'1, c'2, … c'u)を選出する。
図8は本実施形態における変形例3を説明するための図である。
プロファイル保存部43は、出現頻度を示すグラフから出現頻度をソートし、図8に示す式を満たすようなu個のクラス列を抽出する。 (Second Embodiment)
In the first embodiment, only one class column having the highest appearance frequency is selected in selecting a class column, and the class column is used as a profile. However, in this embodiment, another method for selecting a class column is proposed. As described above, any one of the following
(Modification 1) u class strings are selected in descending order of appearance frequency.
(Modification 2) Select a class string whose appearance frequency is v% or more.
(Modification 3) The appearance frequencies fx are sorted in descending order (f′1, f′2, f′3...), And the sum of the appearance frequencies (contribution rate) exceeds Ft for the first time (f′1 + f′2 + ... + f'u> Ft) Select u class strings (c'1, c'2, ... c'u).
FIG. 8 is a diagram for explaining a third modification of the present embodiment.
The
図9は本実施形態におけるプロファイル化部による学習処理の手順を示すフローチャートである。
本実施形態では、図4に示したフローチャートにおいて、ステップ105の処理の代わりに、図9に示すステップ105-abcの処理が実行される。本実施形態では、ステップ105-abcの処理について説明し、他のステップの処理の説明を省略する。
ステップ105-abcにおいて、プロファイル化部40は、記録した全てのクラス列のうち、変形例1~3の方法のうち、いずれかの方法によって複数のクラス列を選択する。 A learning process by the profiling unit in the present embodiment will be described.
FIG. 9 is a flowchart showing the procedure of the learning process by the profiling unit in this embodiment.
In the present embodiment, the process of step 105-abc shown in FIG. 9 is executed instead of the process of
In step 105-abc, the
変形例1~3においてu個のクラス列を選出した場合、検知においての類似度はプロファイルのクラス列とu個のクラス列それぞれとの類似度(s1, s2, … , su)から最大となる類似度Smax = max(s1, s2, … su)をプロファイルとの類似度とする。
この例の場合テストデータとプロファイルの類似度Sは0.8となる。 The similarity calculation at the time of detection in this embodiment will be described. FIG. 10 is a diagram for explaining a method of calculating a similarity with a profile in the present embodiment.
When u class strings are selected in
In this example, the similarity S between the test data and the profile is 0.8.
学習処理では、プロファイル化部40が、変形例1~3のうち、いずれかの案を用いて、クラス列を複数個選出する。検知処理では、分析対象データ処理部50は、クラス列変換を行った後、類似度計算を行い、その結果により、正常か、異常かを判定する。 Examples of the present embodiment will be described. FIG. 11 is a diagram showing an example of this embodiment. In this embodiment, the case of the file parameter will be described.
In the learning process, the
第1の実施形態では単独のクラス列をプロファイルとし、第2の実施形態では複数のクラス列をプロファイルとするものであったが、本実施形態は、プロファイルに、複数のクラス列(以下では、「クラス列集合」と称する)を用いるか、クラスの順序を考慮しないクラス集合を用いるかを選択するものである。
なお、本実施形態に第2の実施形態で選出される複数のクラス列を適用してもよく、また、本実施形態では、第2の実施形態で説明した変形例1~3のいずれかを適用することが可能である。
ここで、従来技術1の別の課題を説明する。従来技術1では、学習データに実際に現われた1文字ずつの状態遷移モデルを作成するため文字列の自由度が高いパラメタでは誤検知が多く発生するという問題がある。この問題を「課題4」とする。課題4の一例を図22に示す。 (Third embodiment)
In the first embodiment, a single class column is used as a profile, and in the second embodiment, a plurality of class columns is used as a profile. Or a class set that does not consider the order of classes is selected.
Note that a plurality of class strings selected in the second embodiment may be applied to this embodiment, and in this embodiment, any one of
Here, another problem of the
図12は本実施形態のプロファイル作成方法を説明するための図であり、圧縮率Rを利用したプロファイルの作成方法を示す。
本実施形態では、図2に示したプロファイル保存部43は、図12に示すように、クラス列集合の圧縮率(R)が閾値Rtより小さいかを求め、圧縮率が閾値よりも小さい場合はクラス列の集合をプロファイルとする。
一方、圧縮率が閾値よりも大きい場合、プロファイル保存部43は、クラス集合をプロファイルとする。クラス集合とは、出現するユニークなクラスの集まりのことであり、クラスの出現順序は保持されない。つまり、クラス集合では、クラス列の集合に含まれる文字列クラス(alpha、numericなど)が重ならず、また、出現する順序も決められていない。
本実施形態では、クラス列の集合は文字列クラスの順序を考慮するが、クラス集合では文字列クラスの順序を考慮しない。 The profile creation method of this embodiment will be described.
FIG. 12 is a diagram for explaining the profile creation method of the present embodiment, and shows a profile creation method using the compression ratio R.
In the present embodiment, as shown in FIG. 12, the
On the other hand, when the compression rate is greater than the threshold, the
In this embodiment, the set of class strings considers the order of character string classes, but the class set does not consider the order of character string classes.
本実施形態では、クラス列集合を利用してプロファイルを作成した場合と、クラス集合を利用してプロファイルを作成した場合とで、検知における類似度計算方法を変更する必要がある。
図13(a)はプロファイルがクラス列集合型の場合の類似度計算方法を示し、図13(b)はプロファイルがクラス集合型の場合の類似度計算方法を示す。
(1)プロファイルがクラス列集合型の場合、検知においての類似度はプロファイルのクラス列とu個のクラス列それぞれとの類似度(s1, s2, … , su)から最大となる類似度Smax = max(s1, s2, … su)をプロファイルとの類似度とする(変形例1~3の類似度計算方法と同じ)。
(2)プロファイルがクラス集合型の場合、クラス集合がプロファイルのクラス集合に含まれる場合、類似度Sを1.0とする、一致しない場合は0.0とする。 The similarity calculation at the time of detection in this embodiment will be described. FIG. 13 is a diagram for explaining similarity calculation in the present embodiment.
In the present embodiment, it is necessary to change the similarity calculation method in detection between when a profile is created using a class sequence set and when a profile is created using a class set.
FIG. 13A shows a similarity calculation method when the profile is a class column set type, and FIG. 13B shows a similarity calculation method when the profile is a class set type.
(1) When the profile is a class sequence set type, the similarity in detection is the maximum similarity Smax = the similarity (s1, s2,..., Su) between the profile class sequence and each of the u class sequences. Let max (s1, s2,... su) be the similarity to the profile (the same as the similarity calculation method of the first to third modifications).
(2) When the profile is a class set type, the similarity S is set to 1.0 when the class set is included in the class set of the profile, and 0.0 when not matching.
図14は本実施形態におけるプロファイル化部による学習処理の手順を示すフローチャートである。
本実施形態では、図9に示したフローチャートにおいて、ステップ105-abcを変形例2に対応したステップ105-bとし、ステップ105-bとステップ106の処理の間に、図14に示すように、ステップ111~113が追加される。本実施形態では、ステップ105-b、およびステップ111~113の処理について説明し、他のステップの処理の説明を省略する。
ステップ105-bにおいて、プロファイル化部40は、記録した全てのクラス列(c1~cn)より、圧縮率Rを算出する。ステップ111において、プロファイル化部40は、圧縮率Rは予め定められた圧縮率閾値Rtより小さいか否かを判定する。
ステップ111の判定でR<Rtの場合、プロファイル化部40は、記録した全てのクラス列のうち、ユニークなもの(クラス列集合)をプロファイルLとする(ステップ112)。一方、ステップ111の判定でR>Rtの場合、プロファイル化部40は、記録したクラス列に表れる全てのクラスのユニークな集合(クラス集合)をプロファイルLとする(ステップ113)。 A learning process by the profiling unit in the present embodiment will be described. Here, the case of Modification 2 in the second embodiment will be described.
FIG. 14 is a flowchart showing the procedure of the learning process by the profiling unit in this embodiment.
In this embodiment, in the flowchart shown in FIG. 9, step 105-abc is set as step 105-b corresponding to the modified example 2, and between the processing of step 105-b and step 106, as shown in FIG.
In step 105-b, the
If R <Rt in the determination in
学習処理では、プロファイル化部40が、変形例1~3の手法のいずれかにより、クラス列を複数個選出する。その後、圧縮率R<Rtのためクラス列集合を保存する。検知処理では、分析対象データ処理部50は、クラス列変換を行った後、プロファイルはクラス列のためクラス列で類似度計算を行い、その結果により、正常か、異常かを判定する。 Examples of the present embodiment will be described. FIG. 15 is a diagram showing an example of the present embodiment. In this embodiment, the case of the file parameter will be described.
In the learning process, the
図21を参照して説明した課題1に対して、本発明では、文字列をクラスへと抽象化して扱うことで添字の異なりなどを考慮した異常判定を行えるため、誤検知を減少させられる。また、検知時にクラス列のLCS類似度を利用することで学習時のデータに添字を付加したようなデータが現れても高い類似度を示すことから誤検知を減少させられる。
図21を参照して説明した課題2に対して、本発明では、文字列クラス変換部でパラメタを文字列クラスが複数個連接、複合したものと考えてクラス列を作成しているため、そのパラメタに適合したプロファイルが作成できる。
図21を参照して説明した課題3に対して、本発明では、文字列クラスにはurl、ipなどの複雑な文字列クラスを定義する以外に単純文字列クラスnumeric, alphaなどを定義することで、文字列"2014.1.1"をdate型と判定できなくてもクラス列(numeric, symbol, numeric, symbol, numeric)をプロファイルとして作成できる。
図22を参照して説明した課題4に対して、第3の実施形態で説明した発明では、クラス集合という概念を導入することで自由度の高いパラメタについてはクラスの順序ではなく制約を下げたクラスが出現するかどうかの条件で異常かどうか判定するため誤検知を減少させることができる。 The operation of the attack detection apparatus of the present invention will be described in comparison with the
In contrast to the
In contrast to the problem 2 described with reference to FIG. 21, in the present invention, the character string class conversion unit considers that a plurality of character string classes are connected and combined, and creates a class string. A profile that matches the parameters can be created.
For the problem 3 described with reference to FIG. 21, in the present invention, a simple character string class such as numeric, alpha is defined in addition to defining a complicated character string class such as url or ip in the character string class. Even if the character string "2014.1.1" cannot be determined as the date type, the class column (numeric, symbol, numeric, symbol, numeric) can be created as a profile.
In contrast to the problem 4 described with reference to FIG. 22, in the invention described in the third embodiment, the concept of a class set is introduced to lower the restriction on the parameter having a high degree of freedom rather than the class order. It is possible to reduce false detection because it is determined whether or not the class is abnormal based on whether or not the class appears.
ログ分析システムは、Webサーバ60と、ログサーバ90と、ログ分析サーバ15とを有する。ログサーバ90はWebサーバ60と接続されている。ログサーバ90は、定期的にWebサーバ60からアクセスログの情報を取得して自装置の記憶部に保存する。
ログ分析サーバ15はログサーバ90と接続されている。ログ分析サーバ15が、上述の実施形態で説明したWAF10の機能を備え、アクセスログからアクセスリクエストを読み出して分析することで、Webサーバ60への攻撃を検知する。 The WAF described in the above embodiment may be applied to a log analysis system that includes a log analysis server. FIG. 16 is a block diagram showing a configuration example of a log analysis system including the attack detection apparatus of the present invention as a log analysis server.
The log analysis system includes a
The
15 ログ分析サーバ
13 制御部
12 記憶部
31 パラメタ抽出部
32 文字列クラス変換部
40 プロファイル化部
43 プロファイル保存部
50 分析対象データ処理部
53 異常検知部
60 Webサーバ 10 WAF
DESCRIPTION OF
Claims (8)
- ネットワークに接続される情報処理装置からアクセスログを収集して分析するログ分析装置であって、
分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルを保存するための記憶部と、
前記アクセスログのリクエストから各パラメタを抽出するパラメタ抽出部と、
前記パラメタ抽出部によって抽出された各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換するクラス変換部と、
学習データとして正常なデータの前記アクセスログについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列の集合のうち、出現頻度が所定値以上のクラス列を前記プロファイルとして前記記憶部に保存するプロファイル保存部と、
前記分析対象データの前記アクセスログについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列と前記プロファイルとの類似度を計算し、該類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する異常検知部と、
を有するログ分析装置。 A log analysis device that collects and analyzes access logs from information processing devices connected to a network,
A storage unit for storing a profile serving as a reference for determining whether the analysis target data indicates an attack on the information processing apparatus;
A parameter extractor for extracting each parameter from the access log request;
For each parameter extracted by the parameter extraction unit, the parameter value is compared with a predefined character string class for each part from the first character, and the part is added to the character string class that has the longest match with the character string class. A class conversion unit that replaces and converts the replaced character string class into a class string arranged in order;
Of the set of class sequences obtained by the parameter extraction unit and the class conversion unit for the access log of normal data as learning data, a class sequence having an appearance frequency equal to or higher than a predetermined value is stored in the storage unit as the profile. A profile storage unit to
The similarity between the class string obtained by the parameter extraction unit and the class conversion unit for the access log of the analysis target data and the profile is calculated, and an attack on the information processing apparatus occurs according to the similarity An anomaly detector that determines whether or not
A log analysis device. - ネットワークに接続される情報処理装置に対する攻撃を検知する攻撃検知装置であって、
前記情報処理装置へのアクセスリクエストが該情報処理装置を攻撃するものであるか否かを判定するための基準となるプロファイルを保存するための記憶部と、
前記アクセスリクエストから各パラメタを抽出するパラメタ抽出部と、
前記パラメタ抽出部によって抽出された各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換するクラス変換部と、
学習データとして正常なデータの前記アクセスリクエストについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列の集合のうち、出現頻度が所定値以上のクラス列を前記プロファイルとして前記記憶部に保存するプロファイル保存部と、
分析対象の前記アクセスリクエストについて前記パラメタ抽出部および前記クラス変換部によって求められた前記クラス列と前記プロファイルとの類似度を計算し、該類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する異常検知部と、
を有する攻撃検知装置。 An attack detection device that detects an attack on an information processing device connected to a network,
A storage unit for storing a profile serving as a reference for determining whether an access request to the information processing apparatus attacks the information processing apparatus;
A parameter extractor for extracting each parameter from the access request;
For each parameter extracted by the parameter extraction unit, the parameter value is compared with a predefined character string class for each part from the first character, and the part is added to the character string class that has the longest match with the character string class. A class conversion unit that replaces and converts the replaced character string class into a class string arranged in order;
Of the set of class sequences obtained by the parameter extraction unit and the class conversion unit for the access request of normal data as learning data, a class sequence having an appearance frequency equal to or higher than a predetermined value is stored in the storage unit as the profile. A profile storage unit to
Calculate the similarity between the class string obtained by the parameter extraction unit and the class conversion unit for the access request to be analyzed and the profile, and whether an attack has occurred on the information processing apparatus according to the similarity An abnormality detection unit for determining whether or not,
An attack detection device. - 請求項2に記載の攻撃検知装置において、
前記プロファイル保存部は、
前記クラス列の集合のうち、前記出現頻度が最大となる1つのクラス列を前記プロファイルとして前記記憶部に保存する、攻撃検知装置。 The attack detection device according to claim 2,
The profile storage unit
An attack detection apparatus that saves, in the storage unit, one class sequence having the maximum appearance frequency among the set of class sequences as the profile. - 請求項2に記載の攻撃検知装置において、
前記プロファイル保存部は、
前記クラス列の集合のうち、前記出現頻度が所定値以上となる複数のクラス列を前記プロファイルとして前記記憶部に保存する、攻撃検知装置。 The attack detection device according to claim 2,
The profile storage unit
The attack detection apparatus which preserve | saves the some class sequence from which the said appearance frequency becomes more than predetermined value among the set of the said class sequence as said profile in the said memory | storage part. - 請求項2に記載の攻撃検知装置において、
前記プロファイル保存部は、
前記クラス列の集合が所定の条件を満たす場合、該クラス列の集合に含まれる全ての前記文字列クラスのユニークな集合を前記プロファイルとして前記記憶部に保存し、
前記異常検知部は、
前記クラス列の集合が所定の条件を満たす場合、前記類似度による判定の際、分析対象データのクラス列の前記文字列クラスのユニークな集合が前記プロファイルに全て含まれているか否かで攻撃が発生したか否かを判定し、
前記クラス列の集合が所定の条件を満たさない場合、前記分析対象データの前記クラス列と前記プロファイルとの前記類似度を計算する、攻撃検知装置。 The attack detection device according to claim 2,
The profile storage unit
When the set of class strings satisfies a predetermined condition, a unique set of all the character string classes included in the set of class strings is stored in the storage unit as the profile,
The abnormality detection unit
When the set of class columns satisfies a predetermined condition, an attack is performed depending on whether or not the profile includes all unique sets of the character string classes in the class column of the analysis target data when the determination is based on the similarity. Determine whether it occurred,
The attack detection device that calculates the similarity between the class column of the analysis target data and the profile when the set of class columns does not satisfy a predetermined condition. - 請求項4に記載の攻撃検知装置において、
前記プロファイル保存部は、
前記複数のクラス列が所定の条件を満たす場合、該複数のクラス列に含まれる全ての前記文字列クラスのユニークな集合を前記プロファイルとして前記記憶部に保存し、
前記異常検知部は、
前記複数のクラス列の集合が所定の条件を満たす場合、前記類似度による判定の際、分析対象データのクラス列の前記文字列クラスのユニークな集合が前記プロファイルに全て含まれているか否かで攻撃が発生したか否かを判定し、
前記複数のクラス列の集合が所定の条件を満たさない場合、前記分析対象データのクラス列と前記プロファイルに含まれる前記複数のクラス列のそれぞれとの前記類似度のうち、最大値の類似度を用いて判定する、攻撃検知装置。 The attack detection device according to claim 4,
The profile storage unit
When the plurality of class strings satisfy a predetermined condition, a unique set of all the character string classes included in the plurality of class strings is stored in the storage unit as the profile,
The abnormality detection unit
When the set of the plurality of class columns satisfies a predetermined condition, whether or not the profile includes all the unique sets of the character string classes in the class column of the analysis target data when the determination based on the similarity is performed Determine if an attack has occurred,
When the set of the plurality of class columns does not satisfy a predetermined condition, the maximum similarity among the similarities between the class column of the analysis target data and each of the plurality of class columns included in the profile is determined. An attack detection device that uses and determines. - ネットワークに接続される情報処理装置に対する攻撃を検知する攻撃検知装置による攻撃検知方法であって、
学習データとして正常なデータの前記情報処理装置へのアクセスリクエストから各パラメタを抽出し、各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換し、該クラス列の集合のうち、出現頻度が所定値以上のクラス列を、分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルとして記憶部に保存し、
前記分析対象データの前記アクセスリクエストからパラメタを抽出し、
抽出したパラメタの値を前記文字列クラスに基づいて前記クラス列に変換し、
前記クラス列と前記プロファイルとの類似度を計算し、
前記類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する、攻撃検知方法。 An attack detection method by an attack detection device for detecting an attack on an information processing device connected to a network,
Each parameter is extracted from the access request to the information processing apparatus for normal data as learning data, and for each parameter, the parameter value is compared with a character string class defined in advance for each part from the first character. Is replaced with a character string class that has the longest match, and converted into a class string in which the replaced character string classes are arranged in order. The analysis target data is stored in the storage unit as a reference profile for determining whether or not the analysis target data indicates an attack on the information processing apparatus,
Extract parameters from the access request for the data to be analyzed,
The extracted parameter value is converted to the class string based on the string class,
Calculating the similarity between the class column and the profile;
An attack detection method for determining whether or not an attack to the information processing apparatus has occurred according to the similarity. - ネットワークに接続される情報処理装置に対する攻撃を検知するコンピュータに、
学習データとして正常なデータの前記情報処理装置へのアクセスリクエストから各パラメタを抽出し、各パラメタについて、パラメタ値を先頭文字から部分毎に予め定義された文字列クラスと比較し、該文字列クラスとの一致が最長になる文字列クラスに該部分を置換し、置換した文字列クラスを順に並べたクラス列に変換し、該クラス列の集合のうち、出現頻度が所定値以上のクラス列を、分析対象データが前記情報処理装置に対する攻撃を示すものであるか否かを判定するための基準となるプロファイルとして記憶部に保存する手順と、
前記分析対象データの前記アクセスリクエストからパラメタを抽出する手順と、
抽出したパラメタの値を前記文字列クラスに基づいて前記クラス列に変換する手順と、
前記クラス列と前記プロファイルとの類似度を計算する手順と、
前記類似度にしたがって前記情報処理装置への攻撃が発生したか否かを判定する手順とを実行させるためのプログラム。 A computer that detects attacks on information processing devices connected to the network.
Each parameter is extracted from the access request to the information processing apparatus for normal data as learning data, and for each parameter, the parameter value is compared with a character string class defined in advance for each part from the first character. Is replaced with a character string class that has the longest match, and converted into a class string in which the replaced character string classes are arranged in order. , A procedure for storing in the storage unit as a profile serving as a reference for determining whether the analysis target data indicates an attack on the information processing apparatus;
A procedure for extracting parameters from the access request of the analysis target data;
A procedure for converting the value of the extracted parameter into the class string based on the string class;
Calculating the similarity between the class sequence and the profile;
A program for executing a procedure for determining whether or not an attack to the information processing apparatus has occurred according to the similarity.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016525161A JP6106340B2 (en) | 2014-06-06 | 2015-06-01 | Log analysis device, attack detection device, attack detection method and program |
EP15803764.8A EP3136249B1 (en) | 2014-06-06 | 2015-06-01 | Log analysis device, attack detection device, attack detection method and program |
CN201580029516.1A CN106415507B (en) | 2014-06-06 | 2015-06-01 | Log analysis device, attack detecting device, attack detection method and program |
US15/315,756 US10243982B2 (en) | 2014-06-06 | 2015-06-01 | Log analyzing device, attack detecting device, attack detection method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014117756 | 2014-06-06 | ||
JP2014-117756 | 2014-06-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015186662A1 true WO2015186662A1 (en) | 2015-12-10 |
Family
ID=54766733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/065772 WO2015186662A1 (en) | 2014-06-06 | 2015-06-01 | Log analysis device, attack detection device, attack detection method and program |
Country Status (5)
Country | Link |
---|---|
US (1) | US10243982B2 (en) |
EP (1) | EP3136249B1 (en) |
JP (1) | JP6106340B2 (en) |
CN (1) | CN106415507B (en) |
WO (1) | WO2015186662A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108322428A (en) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | A kind of abnormal access detection method and equipment |
WO2018159380A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Learning device, relearning necessity determination method, and relearning necessity determination program |
WO2018159337A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Profile generation device, attack detection apparatus, profile generation method, and profile generation program |
WO2018159362A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Log analysis apparatus, log analysis method, and log analysis program |
WO2019225251A1 (en) * | 2018-05-21 | 2019-11-28 | 日本電信電話株式会社 | Learning method, learning device and learning program |
WO2019225228A1 (en) * | 2018-05-21 | 2019-11-28 | 日本電信電話株式会社 | Learning method, learning device, and learning program |
WO2019235074A1 (en) * | 2018-06-04 | 2019-12-12 | 日本電信電話株式会社 | Generation method, generation device, and generation program |
WO2022107296A1 (en) * | 2020-11-19 | 2022-05-27 | 日本電信電話株式会社 | Estimation device, estimation method, and estimation program |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017045347A (en) * | 2015-08-28 | 2017-03-02 | 日本電気株式会社 | Information management device, communication management system, information communication device, information management method, and information management program |
US11153331B2 (en) * | 2017-04-24 | 2021-10-19 | HeFei HoloNet Security Technology Co.. Ltd. | Detection of an ongoing data breach based on relationships among multiple network elements |
CN107204991A (en) * | 2017-07-06 | 2017-09-26 | 深信服科技股份有限公司 | A kind of server exception detection method and system |
US11216554B2 (en) * | 2017-07-12 | 2022-01-04 | Nippon Telegraph And Telephone Corporation | Determining apparatus, determining method, and determining program |
CN107483425B (en) * | 2017-08-08 | 2020-12-18 | 北京盛华安信息技术有限公司 | Composite attack detection method based on attack chain |
CN107644166A (en) * | 2017-09-22 | 2018-01-30 | 成都知道创宇信息技术有限公司 | It is a kind of based on the WEB application safety protecting method learnt automatically |
CN107707545B (en) * | 2017-09-29 | 2021-06-04 | 深信服科技股份有限公司 | Abnormal webpage access fragment detection method, device, equipment and storage medium |
CN111133396B (en) * | 2017-10-16 | 2023-03-24 | 富士通株式会社 | Production facility monitoring device, production facility monitoring method, and recording medium |
US20210034740A1 (en) * | 2018-03-19 | 2021-02-04 | Nec Corporation | Threat analysis system, threat analysis method, and threat analysis program |
WO2019225216A1 (en) * | 2018-05-21 | 2019-11-28 | 日本電信電話株式会社 | Determination method, determination device and determination program |
CN108683670B (en) * | 2018-05-21 | 2021-08-03 | 中国科学院计算机网络信息中心 | Malicious traffic identification method and system based on website application system access |
KR102344293B1 (en) * | 2018-10-30 | 2021-12-27 | 삼성에스디에스 주식회사 | Apparatus and method for preprocessing security log |
EP3886374A4 (en) * | 2018-11-21 | 2021-12-29 | Panasonic Intellectual Property Corporation of America | Abnormality detection method and abnormality detection device |
CN109657475A (en) * | 2018-12-14 | 2019-04-19 | 平安城市建设科技(深圳)有限公司 | Code vulnerabilities check method, apparatus, equipment and storage medium |
RU2724710C1 (en) * | 2018-12-28 | 2020-06-25 | Акционерное общество "Лаборатория Касперского" | System and method of classifying objects of computer system |
JP7186637B2 (en) * | 2019-02-21 | 2022-12-09 | 三菱電機株式会社 | Detection rule group adjustment device and detection rule group adjustment program |
US11716338B2 (en) * | 2019-11-26 | 2023-08-01 | Tweenznet Ltd. | System and method for determining a file-access pattern and detecting ransomware attacks in at least one computer network |
CN111988304B (en) * | 2019-12-18 | 2022-06-21 | 北京极光智讯信息科技有限公司 | Distributed data node abnormal behavior detection method and device based on Internet of things |
US20230025208A1 (en) * | 2019-12-24 | 2023-01-26 | Nec Corporation | Information processing apparatus, threat information evaluation system, informationprocessing method, and non-transitory computer readable medium |
CN110798488B (en) * | 2020-01-03 | 2020-04-14 | 北京东方通科技股份有限公司 | Web application attack detection method |
CN112003824B (en) * | 2020-07-20 | 2023-04-18 | 中国银联股份有限公司 | Attack detection method and device and computer readable storage medium |
CN114039796B (en) * | 2021-11-26 | 2023-08-22 | 安天科技集团股份有限公司 | Network attack determination method and device, computer equipment and storage medium |
CN114785621B (en) * | 2022-06-17 | 2022-11-01 | 上海斗象信息科技有限公司 | Vulnerability detection method and device, electronic equipment and computer readable storage medium |
CN117389980B (en) * | 2023-12-08 | 2024-02-09 | 成都康特电子科技股份有限公司 | Log file analysis method and device, computer equipment and readable storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011086192A (en) * | 2009-10-16 | 2011-04-28 | Nippon Telegr & Teleph Corp <Ntt> | Method, device, system, and program for transfer control |
JP2013236308A (en) * | 2012-05-10 | 2013-11-21 | Fujitsu Ltd | Mail check method, mail check device, and mail check program |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2881597A1 (en) | 2005-02-01 | 2006-08-04 | France Telecom | Intrusions detecting method for monitored information system, involves confronting value taken by parameter so as to consider value as valid or non valid, where parameter is associated to sub-assembly of criterions during learning phase |
US20070282982A1 (en) * | 2006-06-05 | 2007-12-06 | Rhonda Childress | Policy-Based Management in a Computer Environment |
CN100504903C (en) * | 2007-09-18 | 2009-06-24 | 北京大学 | Malevolence code automatic recognition method |
CN101350054B (en) * | 2007-10-15 | 2011-05-25 | 北京瑞星信息技术有限公司 | Method and apparatus for automatically protecting computer noxious program |
US9110882B2 (en) * | 2010-05-14 | 2015-08-18 | Amazon Technologies, Inc. | Extracting structured knowledge from unstructured text |
CN101950340B (en) * | 2010-09-17 | 2012-05-23 | 北京航空航天大学 | Computer network defensive strategy conversion-oriented semantic similarity detection system |
US9679491B2 (en) * | 2013-05-24 | 2017-06-13 | Qualcomm Incorporated | Signaling device for teaching learning devices |
-
2015
- 2015-06-01 US US15/315,756 patent/US10243982B2/en active Active
- 2015-06-01 JP JP2016525161A patent/JP6106340B2/en active Active
- 2015-06-01 WO PCT/JP2015/065772 patent/WO2015186662A1/en active Application Filing
- 2015-06-01 CN CN201580029516.1A patent/CN106415507B/en active Active
- 2015-06-01 EP EP15803764.8A patent/EP3136249B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011086192A (en) * | 2009-10-16 | 2011-04-28 | Nippon Telegr & Teleph Corp <Ntt> | Method, device, system, and program for transfer control |
JP2013236308A (en) * | 2012-05-10 | 2013-11-21 | Fujitsu Ltd | Mail check method, mail check device, and mail check program |
Non-Patent Citations (1)
Title |
---|
YANG ZHONG ET AL.: "An Anomaly Detection Method for Parameter Manipulation Attacks to Web Application", CSS2014 COMPUTER SECURITY SYMPOSIUM 2014 RONBUNSHU GODO KAISAI MALWARE TAISAKU KENKYU JINZAI IKUSEI WORKSHOP 2014 IPSJ SYMPOSIUM SERIES, vol. 2014, no. 2, 15 October 2014 (2014-10-15), pages 474 - 481, XP008185245 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108322428B (en) * | 2017-01-18 | 2021-11-05 | 阿里巴巴集团控股有限公司 | Abnormal access detection method and equipment |
CN108322428A (en) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | A kind of abnormal access detection method and equipment |
US11233809B2 (en) | 2017-03-03 | 2022-01-25 | Nippon Telegrape And Telephone Corporation | Learning device, relearning necessity determination method, and relearning necessity determination program |
WO2018159337A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Profile generation device, attack detection apparatus, profile generation method, and profile generation program |
JPWO2018159337A1 (en) * | 2017-03-03 | 2019-06-27 | 日本電信電話株式会社 | Profile generation device, attack detection device, profile generation method, and profile generation program |
JPWO2018159362A1 (en) * | 2017-03-03 | 2019-08-08 | 日本電信電話株式会社 | Log analysis apparatus, log analysis method, and log analysis program |
WO2018159362A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Log analysis apparatus, log analysis method, and log analysis program |
US11470097B2 (en) | 2017-03-03 | 2022-10-11 | Nippon Telegraph And Telephone Corporation | Profile generation device, attack detection device, profile generation method, and profile generation computer program |
WO2018159380A1 (en) * | 2017-03-03 | 2018-09-07 | 日本電信電話株式会社 | Learning device, relearning necessity determination method, and relearning necessity determination program |
WO2019225251A1 (en) * | 2018-05-21 | 2019-11-28 | 日本電信電話株式会社 | Learning method, learning device and learning program |
JPWO2019225251A1 (en) * | 2018-05-21 | 2020-12-10 | 日本電信電話株式会社 | Learning methods, learning devices and learning programs |
JPWO2019225228A1 (en) * | 2018-05-21 | 2020-12-10 | 日本電信電話株式会社 | Learning methods, learning devices and learning programs |
WO2019225228A1 (en) * | 2018-05-21 | 2019-11-28 | 日本電信電話株式会社 | Learning method, learning device, and learning program |
WO2019235074A1 (en) * | 2018-06-04 | 2019-12-12 | 日本電信電話株式会社 | Generation method, generation device, and generation program |
US11563717B2 (en) | 2018-06-04 | 2023-01-24 | Nippon Telegraph And Telephone Corporation | Generation method, generation device, and recording medium |
WO2022107296A1 (en) * | 2020-11-19 | 2022-05-27 | 日本電信電話株式会社 | Estimation device, estimation method, and estimation program |
Also Published As
Publication number | Publication date |
---|---|
EP3136249B1 (en) | 2018-12-19 |
CN106415507B (en) | 2019-05-21 |
EP3136249A4 (en) | 2018-01-03 |
EP3136249A1 (en) | 2017-03-01 |
US10243982B2 (en) | 2019-03-26 |
US20170126724A1 (en) | 2017-05-04 |
JPWO2015186662A1 (en) | 2017-04-20 |
CN106415507A (en) | 2017-02-15 |
JP6106340B2 (en) | 2017-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6106340B2 (en) | Log analysis device, attack detection device, attack detection method and program | |
US9781139B2 (en) | Identifying malware communications with DGA generated domains by discriminative learning | |
Jerlin et al. | A new malware detection system using machine learning techniques for API call sequences | |
US9032516B2 (en) | System and method for detecting malicious script | |
CN102047260B (en) | For the Intelligent hashes of centralized malware detection | |
Kim et al. | Improvement of malware detection and classification using API call sequence alignment and visualization | |
JP6697123B2 (en) | Profile generation device, attack detection device, profile generation method, and profile generation program | |
JP6503141B2 (en) | Access classification device, access classification method and access classification program | |
JP6473234B2 (en) | Analysis method, analysis device, and analysis program | |
US10462168B2 (en) | Access classifying device, access classifying method, and access classifying program | |
WO2018066221A1 (en) | Classification device, classification method, and classification program | |
JP2016091549A (en) | Systems, devices, and methods for separating malware and background events | |
JP6691240B2 (en) | Judgment device, judgment method, and judgment program | |
Vadrevu et al. | Maxs: Scaling malware execution with sequential multi-hypothesis testing | |
EP2977928B1 (en) | Malicious code detection | |
Khan et al. | A dynamic method of detecting malicious scripts using classifiers | |
KR20220157565A (en) | Apparatus and method for detecting web scanning attack | |
WO2019225251A1 (en) | Learning method, learning device and learning program | |
Shi et al. | A new multitasking malware classification model based on feature fusion | |
KR101619059B1 (en) | Apparatus, system and method for generation and distribution lightweight signature | |
US20230022709A1 (en) | Information security incident diagnosis system for assisting in intrusion detection and related computer program | |
Vyawhare et al. | Machine Learning System for Malicious Website Detection using Concept Drift Detection | |
Cassagne et al. | Following the Obfuscation Trail: Identifying and Exploiting Obfuscation Signatures in Malicious Code | |
WO2020240718A1 (en) | Extraction device, extraction method, and extraction program | |
Zhao et al. | Evaluating randomness in cyber attack textual artifacts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15803764 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2016525161 Country of ref document: JP Kind code of ref document: A |
|
REEP | Request for entry into the european phase |
Ref document number: 2015803764 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2015803764 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15315756 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |