KR100738550B1 - Network intrusion detection system using genetic algorithm and method thereof - Google Patents

Network intrusion detection system using genetic algorithm and method thereof Download PDF

Info

Publication number
KR100738550B1
KR100738550B1 KR1020060004571A KR20060004571A KR100738550B1 KR 100738550 B1 KR100738550 B1 KR 100738550B1 KR 1020060004571 A KR1020060004571 A KR 1020060004571A KR 20060004571 A KR20060004571 A KR 20060004571A KR 100738550 B1 KR100738550 B1 KR 100738550B1
Authority
KR
South Korea
Prior art keywords
packet
field
network
value
intrusion
Prior art date
Application number
KR1020060004571A
Other languages
Korean (ko)
Inventor
손태식
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020060004571A priority Critical patent/KR100738550B1/en
Application granted granted Critical
Publication of KR100738550B1 publication Critical patent/KR100738550B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A network intrusion detecting system using a genetic algorithm and its method are provided to extract packet information to which greater importance is given among information of TCP/IP packets, and improve a detection speed and a detection rate by checking a received packet by using only important packet information. A packet feature selecting module(11) selects at least one reference field for determining whether a network has been invaded or not by applying a genetic algorithm using an evaluation function to which importance of each packet field is reflected. A packet gathering module(12) gathers packets existing in a network. A packet pre-processing module(13) extracts information of a reference field selected by the packet feature selecting module(11) among the gathered packets. An intrusion detection engine module(14) determines whether the network has been invaded or not by using information of the extracted reference field.

Description

유전자 알고리즘을 응용한 네트워크 침입 감지 시스템 및 그 방법{Network Intrusion Detection System using Genetic Algorithm and Method Thereof}Network Intrusion Detection System using Genetic Algorithm and Method Thereof}

도 1은 네트워크 패킷 특징 선택을 위한 유전자 알고리즘에 따른 진화 과정을 나타낸 블록도.1 is a block diagram showing an evolution process according to a genetic algorithm for network packet feature selection.

도 2는 본 발명의 일 실시예에 따른 네트워크 침입 감지 시스템의 구조를 나타낸 블록도.Figure 2 is a block diagram showing the structure of a network intrusion detection system according to an embodiment of the present invention.

도 3은 본 발명의 다른 실시예에 따른 네트워크 침입 감지 방법을 나타낸 순서도.3 is a flowchart illustrating a network intrusion detection method according to another embodiment of the present invention.

도 4는 본 발명의 또 다른 실시예에 따른 패킷 특징 선택 방법을 나타낸 순서도.4 is a flowchart illustrating a packet feature selection method according to another embodiment of the present invention.

도 5는 본 발명의 또 다른 실시예에 따른 네트워크 침입 감지 방법을 나타낸 순서도.5 is a flowchart illustrating a network intrusion detection method according to another embodiment of the present invention.

<도면의 주요 부분에 대한 부호 설명><Description of the symbols for the main parts of the drawings>

10 : 네트워크 침입 감지 시스템 11 : 패킷 특징 선택 모듈10: network intrusion detection system 11: packet feature selection module

12 : 패킷 수집 모듈 13 : 패킷 전처리 모듈12: packet collection module 13: packet preprocessing module

14 : 침입 감지 엔진 모듈 20 : 디스플레이 장치14: intrusion detection engine module 20: display device

본 발명은 유전자 알고리즘을 응용한 네트워크 침입 감지 시스템 및 그 방법에 관한 것이다.The present invention relates to a network intrusion detection system and method using the genetic algorithm.

본 발명은 패턴 인식 분야에 있어 다양한 입력 값이 주어질 때, 주어진 입력 값들 중 문제 해결에 보다 적합한 특성을 가지는 입력 값을 선택하는 특징 선택 기법(Feature Selection) 기법에 관련되어 있다. 이러한 특징 선택 기법은 네트워크 침입 탐지 분야에 있어서 침입 판단에 필요한 패킷 정보를 추출하는 분야에 응용될 수 있다. 특히, 본 발명은 유전자 알고리즘(Genetic Algorithm)을 특징 선택 기법에 적용하는 방법과 관련된다.In the field of pattern recognition, the present invention relates to a feature selection technique for selecting an input value having a characteristic that is more suitable for solving a problem among given input values. This feature selection technique can be applied to the field of extracting packet information necessary for intrusion determination in the field of network intrusion detection. In particular, the present invention relates to a method of applying a genetic algorithm to a feature selection technique.

유전자 알고리즘은 미시간 대학의 홀랜드(John Holland)에 의하여 대두되었으며, 적자 생존과 유전의 생물학적 특성을 바탕으로 하는 최적화 솔루션 탐색 알고리즘으로 알려져 있다. The genetic algorithm was introduced by John Holland of the University of Michigan and is known as an optimization solution search algorithm based on survival of the fittest and the biological characteristics of heredity.

유전자 알고리즘은 그림 1과 같은 진화 과정을 반복하며, 주어진 환경에 잘 적응하는 유전자만을 선택(Selection)하고, 교배(Crossover)하며, 때때로 돌연변이(Mutation)하여, 다음 세대에 우수한 유전 형질을 재생산(Reproduction)한다. 따라 서 진화가 거듭될수록 주어진 환경에 더 적합한 유전자들만이 남게 된다는 이론을 바탕으로 하고 있다.Genetic algorithms repeat the evolutionary process shown in Figure 1, select, crossover, and sometimes mutate only those genes that adapt well to a given environment, reproducing superior genetic traits for the next generation. )do. Thus, it is based on the theory that as evolution evolves, only those genes that are more suitable for a given environment will remain.

일반적인 유전자 알고리즘을 통한 특징 추출의 종래 기술로는 필기체 숫자를 인식하기 위하여 숫자 인식에 사용될 수 있는 잠재적 필기 특성을 유전자 알고리즘 방식에 적용하여 최적의 필기체 인식 특성을 추출한 예가 있다. 유전자 알고리즘을 사용하여 회사 재무 구조에 연관이 있는 최적의 경영 지표들을 찾아내는 실험이 시도된 예가 있다. A conventional technique of feature extraction through a general genetic algorithm is an example of extracting an optimal handwriting recognition characteristic by applying a potential handwriting characteristic that can be used for number recognition to a genetic algorithm method in order to recognize a handwritten number. An example of an attempt was made to use genetic algorithms to find the best management indicators related to a company's financial structure.

네트워크 침입 탐지분야에서 적용되었던 특징 선택 방법으로는 Snort 방법이 존재한다. Snort 시스템은 대표적인 공개용 침입 탐지 시스템으로, 필드 선택을 위한 별도의 전처리 과정을 거치지 않는다. 다만 공격 특성에 따라 특정 헤더 필드를 이용한 패킷 재조립이나 페이로드(Payload) 일부분을 비교하는 기법을 사용한다. 또한, 침입 탐지 특성에 최적화되어 반영되어 있는 필드들을 찾아내기 위하여 랭킹 기반 방식을 사용하기도 한다. 이 랭킹 기반 방식은 모든 특성 필드들에 대하여 1 대 다(1 to n)의 경쟁 결과를 도출하여 상위에 랭크된 필드들을 주요 특성 반영 필드로서 선택한다.The Snort method is a feature selection method that has been applied in the network intrusion detection field. Snort system is a representative public intrusion detection system and does not go through a separate preprocessing process for field selection. However, the packet reassembly using a specific header field or a part of payload is compared according to the attack characteristics. In addition, a ranking based method is used to find fields that are optimized and reflected in intrusion detection characteristics. This ranking-based scheme derives 1 to n competition results for all feature fields and selects the top ranked fields as the primary feature reflecting field.

이러한 종래의 패킷 특징 선택 방법에는 다음과 같은 문제점이 존재한다. 첫째, 기존의 네트워크 침입 탐지 시스템에서는 침입 판단의 근거를 위한 정보 수집에 사용되는 네트워크 필드들의 각각의 의미에 중요성을 부여하지 않았다. 즉, 네트워크 침입 판정을 위한 기준이 되는 필드들을 선택하는 경우 필드 간 중요도에 따른 가중치를 부여하지 않은 것이다. 둘째, 학습 알고리즘에 기반한 네트워크 침 입 탐지 방법을 이용하는 경우, 선택된 필드들에 대하여 명확한 추출 근거를 찾기 어렵다. 마지막으로, 패킷 내부의 정보를 추출할 때 추출된 정보 자체가 탐지를 시도한 실험 방법에 의존적이기 때문에 범용으로 적용되기 어렵다.The conventional packet feature selection method has the following problems. First, the existing network intrusion detection system does not attach importance to each meaning of network fields used for collecting information for the basis of intrusion judgment. That is, when selecting the fields that are criteria for determining network intrusion, weights are not given according to the importance between the fields. Second, when using the network intrusion detection method based on the learning algorithm, it is difficult to find a clear extraction basis for the selected fields. Finally, when extracting the information inside the packet, it is difficult to apply universally because the extracted information itself depends on the experimental method that attempted detection.

따라서, 본 발명은 상기한 종래 기술에 따른 문제점을 해결하기 위한 것으로, 최적의 패킷 정보를 추출하기 위하여 필드 별로 중요도를 부여하고, 상기 중요도를 고려한 평가 함수를 이용하여 패킷의 특징을 선택하는 유전자 알고리즘을 응용한 네트워크 침입 감지 시스템 및 그 방법의 제공을 목적으로 한다.Accordingly, the present invention is to solve the problems according to the prior art, a genetic algorithm for assigning importance to each field in order to extract the optimal packet information, and selecting the characteristics of the packet using the evaluation function considering the importance It is an object of the present invention to provide a network intrusion detection system and method thereof.

본 발명의 일 측면에 따른 네트워크 침입 감지 방법은 적어도 하나의 샘플 패킷을 생성하는 단계, 상기 샘플 패킷의 필드 값을 상기 평가 함수의 변수에 대입하여 침입 적합도 값을 산출하는 단계, 상기 침입 적합도 값이 소정의 기준 값 이상인 경우 상기 샘플 패킷이 잔존하는 단계, 및 네트워크로부터 수집한 패킷과 상기 잔존한 샘플 패킷의 유사도를 측정하여 네트워크 침입 여부를 판단하는 단계를 포함한다.The network intrusion detection method according to an aspect of the present invention comprises the steps of: generating at least one sample packet, calculating an intrusion suitability value by substituting a field value of the sample packet into a variable of the evaluation function, wherein the intrusion suitability value is When the sample packet is greater than a predetermined reference value, and the step of remaining the sample packet, and determining the network intrusion by measuring the similarity between the packet collected from the network and the remaining sample packet.

이 경우 상기 샘플 패킷의 필드 별 중요도를 반영하는 평가 함수는, 패킷의 필드가 비정상 행위 공격에 사용되는 이상 스코어(Anomaly Score)와 필드 특성 정보인 통신 스코어(Communication Score)를 반영하는 것을 특징으로 한다. In this case, the evaluation function reflecting the importance of each field of the sample packet is characterized in that the field of the packet reflects an anomaly score used for an abnormal behavior attack and a communication score which is field characteristic information. .

또한, 상기 샘플 패킷의 침입 적합도 값은 상기 샘플 패킷 필드 정보를

Figure 112006003084511-pat00001
에 대입하여 침입 적합도 값을 계산된다. 여기서
Figure 112006003084511-pat00002
는 패킷의
Figure 112006003084511-pat00003
번째 필드가 비정상적인 공격에 사용된 횟수,
Figure 112006003084511-pat00004
는 샘플 패킷의
Figure 112006003084511-pat00005
번째 필드의 값,
Figure 112006003084511-pat00006
,
Figure 112006003084511-pat00007
,
Figure 112006003084511-pat00008
는 각각 정적(Static), 종속(Dependent), 동적(Dynamic) 속성을 가지는 필드의 개수,
Figure 112006003084511-pat00009
,
Figure 112006003084511-pat00010
,
Figure 112006003084511-pat00011
는 각각 정적, 종속, 동적 속성을 가지는 필드의 반영 계수,
Figure 112006003084511-pat00012
는 소정의 바이어스 값이다. 또한, 상기
Figure 112006003084511-pat00013
,
Figure 112006003084511-pat00014
,
Figure 112006003084511-pat00015
는 1:2:3의 비율을 갖게 된다.Also, the intrusion suitability value of the sample packet may be equal to the sample packet field information.
Figure 112006003084511-pat00001
Intrusion fit values are calculated by substituting for. here
Figure 112006003084511-pat00002
Of the packet
Figure 112006003084511-pat00003
The number of times the first field was used in an unusual attack,
Figure 112006003084511-pat00004
Of the sample packet
Figure 112006003084511-pat00005
The value of the first field,
Figure 112006003084511-pat00006
,
Figure 112006003084511-pat00007
,
Figure 112006003084511-pat00008
Is the number of fields each having static, dependent, and dynamic properties,
Figure 112006003084511-pat00009
,
Figure 112006003084511-pat00010
,
Figure 112006003084511-pat00011
Is a reflection coefficient of a field with static, dependent, and dynamic properties,
Figure 112006003084511-pat00012
Is a predetermined bias value. Also, the
Figure 112006003084511-pat00013
,
Figure 112006003084511-pat00014
,
Figure 112006003084511-pat00015
Has a ratio of 1: 2: 3.

본 발명의 다른 측면에 따른 네트워크 침입 감지 방법은 패킷의 필드 별 중요도를 반영한 평가 함수를 이용한 유전자 알고리즘을 이용하여 네트워크 침입 여부를 판단하기 위한 적어도 하나의 필드를 선택하는 단계와 네트워크로부터 수집한 패킷 중 상기 선택된 필드의 정보를 추출하여 네트워크 침입 여부를 판단하는 단계를 포함한다. The network intrusion detection method according to another aspect of the present invention comprises the steps of selecting at least one field for determining whether the network intrusion by using a genetic algorithm using an evaluation function reflecting the importance of each field of the packet and among the packets collected from the network And extracting information of the selected field to determine whether a network is invaded.

상기 유전자 알고리즘을 이용하여 네트워크 침입 여부를 판단하기 위한 필드를 선택하는 단계는, 적어도 하나의 샘플 패킷을 생성하는 단계, 상기 샘플 패킷 필드 값을 상기 평가 함수의 변수에 대입하여 침입 적합도 값을 계산하는 단계, 상기 침입 적합도 값이 소정의 기준 값 이상인 샘플 패킷만 잔존하는 단계, 및 상기 잔존한 샘플 패킷의 필드를 이용하여 네트워크 침입 여부를 판단하기 위한 필드를 선택하는 단계로 구성된다.Selecting a field for determining network intrusion using the genetic algorithm may include generating at least one sample packet and calculating the intrusion suitability value by substituting the sample packet field value into a variable of the evaluation function. And remaining only the sample packets having the intrusion suitability value equal to or greater than a predetermined reference value, and selecting a field for determining network intrusion using the remaining sample packet fields.

본 발명의 또 다른 측면에 따른 네트워크 침입 감지 시스템은 패킷의 필드 별 중요도를 반영한 평가 함수를 이용한 유전자 알고리즘을 이용하여 네트워크 침입 여부를 판단하기 위한 적어도 하나의 필드를 선택하는 패킷 특징 선택 모듈, 네트워크 상에 존재하는 패킷을 수집하는 패킷 수집 모듈, 상기 수집된 패킷 중 상기 패킷 특징 선택 모듈에 의하여 선택된 필드 정보를 추출하는 패킷 전처리 모듈, 및 상기 추출된 필드 정보를 이용하여 네트워크 침입 여부를 판단하는 침입 감지 엔진 모듈을 포함한다.Network intrusion detection system according to another aspect of the present invention is a packet feature selection module for selecting at least one field for determining whether the network intrusion using a genetic algorithm using an evaluation function reflecting the importance of each field of the packet, on the network A packet collection module for collecting packets present in the packet, a packet preprocessing module for extracting field information selected by the packet feature selection module among the collected packets, and an intrusion detection for determining network intrusion using the extracted field information It includes an engine module.

이 경우 상기 패킷 특징 선택 모듈은, 적어도 하나의 샘플 패킷을 생성하는 샘플 패킷 생성부, 상기 생성된 샘플 패킷 필드의 비트 값을 상기 평가 함수의 변수에 할당하여 침입 적합도 값을 계산하는 평가 함수 연산부, 상기 계산된 침입 적합도 값이 소정의 기준 값 이상인 샘플 패킷을 선택하는 샘플 패킷 선택부, 및 상기 선택된 샘플 패킷 필드를 이용하여 네트워크 침입 여부를 판단하기 위한 필드를 선택하는 특징 필드 선택부를 포함할 수 있다.In this case, the packet feature selection module may include a sample packet generator for generating at least one sample packet, an evaluation function calculator for assigning a bit value of the generated sample packet field to a variable of the evaluation function and calculating an intrusion suitability value; And a sample packet selection unit for selecting a sample packet having the calculated intrusion suitability value equal to or greater than a predetermined reference value, and a feature field selection unit for selecting a field for determining network intrusion using the selected sample packet field. .

이하, 본 발명에 따른 유전자 알고리즘을 응용한 네트워크 침입 감지 시스템 및 그 방법에 대하여 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, a network intrusion detection system using the genetic algorithm according to the present invention and a method thereof will be described in detail with reference to the accompanying drawings.

도 1은 네트워크 패킷 특징 선택을 위한 유전자 알고리즘에 따른 진화 과정을 나타낸 블록도이다.1 is a block diagram illustrating an evolution process according to a genetic algorithm for network packet feature selection.

도 1에서 적어도 하나의 패킷과 상기 패킷을 유전자 알고리즘에 적용할 패킷 특징 선택 제어 장치를 살펴볼 수 있다.In FIG. 1, a packet feature selection control apparatus for applying at least one packet and the packet to a genetic algorithm may be described.

이 경우 패킷의 집합은 하나의 유전자 풀로 표현될 수 있다. 도 1에서는 유전자 풀에 총 4개의 패킷이 존재한다. 제1 패킷 내지 제4 패킷은 각각 01000, 10110, 11010, 01011의 값을 가지고 있는 것을 살펴볼 수 있다. 이 경우 패킷이 가지고 있는 값들은 유전 인자와 비유될 수 있다. In this case, a set of packets may be represented by one gene pool. In FIG. 1, there are four packets in the gene pool. It can be seen that the first to fourth packets have values of 01000, 10110, 11010, and 01011, respectively. In this case, the values of the packet can be compared to the genetic factor.

패킷 특징 선택 제어 장치는 일종의 평가 함수를 이용하여 유전자 풀의 패킷을 각각 평가하게 된다. 각 패킷은 상기 패킷의 필드 값을 이용하여 평가 함수를 계산하게 된다. 상기 계산 결과 나온 값이 네트워크 관리자가 기 설정한 바이어스 값보다 큰 경우, 그 패킷은 선택된다. 반대로 상기 계산 결과 값이 바이어스 값보다 작은 경우, 그 패킷은 도태되는 것이다. 이러한 학습을 반복하여 남게 되는 패킷을 검사하게 되면, 네트워크 관리자가 원하는 특성과 밀접한 관련이 있는 패킷의 필드를 알 수 있는 것이다.The packet feature selection control device evaluates each packet of the gene pool using a kind of evaluation function. Each packet calculates an evaluation function using the field values of the packet. If the value resulting from the calculation is larger than the bias value preset by the network administrator, the packet is selected. On the contrary, if the calculated value is smaller than the bias value, the packet is culled. By repeating these lessons, the remaining packets can be examined to identify the fields of packets that are closely related to the characteristics desired by the network administrator.

물론, 이러한 선택(Selection) 방법뿐만 아니라 선택된 패킷의 정보 중 일부를 치환하는 교배 방법과 선택된 패킷의 정보 중 일부가 변경되는 돌연(Mutation) 변이 방법도 적용될 수 있다.Of course, not only this selection method but also a hybrid method for substituting some of the information of the selected packet and a mutation mutation method in which some of the information of the selected packet is changed may be applied.

앞에서 설명한 바와 같이 먼저 유전자 알고리즘에 TCP/IP 패킷 정보를 적용하기 위한 첫 과정으로 TCP/IP 패킷의 헤더 필드 각각을 이진 유전자 스트링(Binary Gene String)으로 간주한다. 즉, TCP/IP 헤더의 정보들을 1 또는 0의 형태로써 변환하고, 이렇게 변형된 이진 값들은 유전자 개체의 한 형질을 의미한다. 여 기서 1의 값을 가지는 경우는 특정 형질을 가지고 있음을 의미하며, 0의 값을 가지는 경우 상기 특정 형질을 가지고 있지 않음을 의미한다.As described above, the first step in applying TCP / IP packet information to the genetic algorithm is to consider each of the header fields of the TCP / IP packet as a binary gene string. That is, the information in the TCP / IP header is converted into a form of 1 or 0, and the modified binary values refer to a trait of the genetic individual. In this case, a value of 1 means that a specific trait is present, and a value of 0 means that the specific trait is not present.

본 발명에서는 TCP 헤더 11필드, IP 헤더 13필드를 고려하기 위하여, 하나의 유전자 개체는 총 24비트의 이진 스트링으로 구성된다. 물론, 본 발명에서는 TCP/IP 패킷의 특징을 선택하기 위하여 24비트의 유전자 개체를 가정하였으나, RTP 헤더, UDP 헤더 등 헤더의 종류에 따라 다른 비트 수의 이진 스트링을 생각할 수 있다.In the present invention, in order to consider the TCP header 11 fields and the IP header 13 fields, one gene entity is composed of a binary string of 24 bits in total. Of course, in the present invention, a 24-bit gene entity is assumed to select a feature of the TCP / IP packet, but a binary string having a different number of bits may be considered depending on the type of the header such as the RTP header and the UDP header.

각 개체들은 최초 유전자 알고리즘 시작 과정에서 랜덤한 값으로 초기화 되며, 네트워크 관리자가 적절한 전체 개체의 수를 결정하여야 한다. 본 발명에서 전체 개체수는 100개를 가정하기로 한다. 이 경우 개체의 수가 너무 적으면 유전적 진화 과정이 얼마되지 않아 모든 개체들은 동일한 유전 형질을 가지는 방향으로 수렴할 수 있으며, 너무 큰 경우 유전자 스트링 연산에 너무 많은 시간이 소모되어 전체 유전 과정의 효율이 나쁘게 된다. Each entity is initialized to a random value at the beginning of the initial genetic algorithm, and the network administrator must determine the appropriate total number of individuals. In the present invention, the total population is assumed to be 100. In this case, if the number of individuals is too small, the genetic evolutionary process may not take place so that all individuals can converge in the direction of having the same genetic trait. If too large, the gene string calculation takes too much time and the efficiency of the whole genetic process is reduced. Becomes bad.

도 2는 본 발명의 일 실시예에 따른 네트워크 침입 감지 시스템의 구조를 나타낸 블록도이다.2 is a block diagram showing the structure of a network intrusion detection system according to an embodiment of the present invention.

도 2에 도시된 바와 같이 네트워크 침입 감지 시스템(10)은 패킷 수집 모듈(12), 패킷 전처리 모듈(13), 패킷 특징 선택 모듈(11), 침입 감지 엔진 모듈(14) 등으로 구성될 수 있다.As shown in FIG. 2, the network intrusion detection system 10 may include a packet collection module 12, a packet preprocessing module 13, a packet feature selection module 11, an intrusion detection engine module 14, and the like. .

패킷 수집 모듈(Packet Gathering Module)(12)은 네트워크 상에 돌아다니는 패킷 중 소정의 조건을 만족하는 패킷을 수집하는 장치이다. 상기 소정의 조건으로 특정 IP 주소로 송수신되는 경우, 특정 IP 클래스로 전송되는 경우, 특정 포트로 전송되는 경우 등을 생각할 수 있다.The packet gathering module 12 is a device that collects a packet that satisfies a predetermined condition among packets traveling on a network. In case of transmitting / receiving to a specific IP address under the predetermined condition, transmitting to a specific IP class, transmitting to a specific port, and the like.

패킷 특징 선택 모듈(Packet Feature Selecting Module)(11)은 유전자 알고리즘과 그에 따른 평가함수를 적용하여 침입 과정과 관련이 깊은 필드 정보만을 추출하고, 이를 패킷 전처리 모듈(13)로 알려주는 구성 요소이다. 상기 패킷 특징 선택 모듈(11)은 본 발명의 핵심적 기술 사상을 구현하는 구성 요소이다. The packet feature selecting module 11 is a component that applies a genetic algorithm and its evaluation function to extract only field information related to the intrusion process and informs the packet preprocessing module 13 of the field information. The packet feature selection module 11 is a component that implements the core technical idea of the present invention.

이러한 패킷 특징 선택 모듈(11)은 샘플 패킷 생성부(15), 평가 함수 연산부(16), 샘플 패킷 선택부(17), 특징 필드 선택부(18) 등으로 구성될 수 있다.The packet feature selection module 11 may include a sample packet generator 15, an evaluation function calculator 16, a sample packet selector 17, a feature field selector 18, and the like.

샘플 패킷 생성부(15)는 유전자 알고리즘을 적용하기 위한 적어도 하나의 샘플 패킷을 생성하는 구성 요소이다. 평가 함수 연산부(16)는 생성된 샘플 패킷 필드의 비트 값을 상기 평가 함수의 변수에 할당하여 침입 적합도 값을 계산하게 된다. 평가 함수 연산부(16)가 계산하는 평가 함수에 대하여는 나중에 자세히 살펴보기로 한다.The sample packet generator 15 is a component that generates at least one sample packet for applying a genetic algorithm. The evaluation function calculator 16 calculates the intrusion suitability value by assigning the bit value of the generated sample packet field to the variable of the evaluation function. The evaluation function calculated by the evaluation function calculation unit 16 will be described later in detail.

이와 같이 계산된 침입 적합도 값이 소정의 기준 값 이상인 샘플 패킷을 선택하는 과정은 샘플 패킷 선택부(17)가 담당한다. 그 후 특징 필드 선택부(17)는 선택된 샘플 패킷 필드 중 1의 값을 가지는 필드를 상기 패킷 전처리 모듈(13)로 넘겨준다. 이는 위에서 설명하였듯이 1의 값을 가지는 경우는 특정 형질을 가지고 있음을 의미하며, 0의 값을 가지는 경우 상기 특정 형질을 가지고 있지 않음을 의미하기 때문이다.The sample packet selection unit 17 is responsible for selecting a sample packet having the intrusion suitability value calculated as described above or greater than a predetermined reference value. The feature field selector 17 then passes the field having a value of 1 of the selected sample packet field to the packet preprocessing module 13. This is because, as described above, a value of 1 means that a particular trait is present, and a value of 0 means that a particular trait is not present.

패킷 전처리 모듈(Packet Pre-processing Module)(13)은 수집된 패킷을 분석하기 전 필요한 필드만을 추출, 치환, 변경 등의 작업을 하는 구성 요소이다. 이 경우 패킷 특징 선택 모듈(11)의 특징 필드 선택부(18)로부터 침입 과정 관련 패킷 필드 정보를 전달받고, 패킷 수집 모듈(12)이 수신한 패킷 중 상기 필드에 해당하는 정보만을 추출할 수 있다. 이와 같이 추출된 정보들은 침입 감지 엔진 모듈(Intrusion Detection Engine Module)(14)로 전달된다.The packet pre-processing module 13 is a component that extracts, replaces, and changes only necessary fields before analyzing the collected packets. In this case, the packet field information related to the intrusion process may be received from the feature field selector 18 of the packet feature selection module 11, and only the information corresponding to the field may be extracted from the packets received by the packet collection module 12. . The extracted information is transferred to an intrusion detection engine module 14.

침입 감지 엔진 모듈(14)은 패킷 전처리 모듈(13)로부터 전달된 필드 정보들과 기 저장해둔 침입 패턴을 비교하여 네트워크로부터 수집된 패킷이 네트워크 침입을 위한 패킷인지 판단한다.The intrusion detection engine module 14 compares the field information transmitted from the packet preprocessing module 13 with previously stored intrusion patterns to determine whether a packet collected from the network is a packet for network intrusion.

이하, 패킷 특징 선택 모듈(11)이 평가 함수를 이용하여 중요한 필드 정보만을 추출하는 방법에 대하여 자세히 살펴보기로 한다.Hereinafter, a method of extracting only important field information by the packet feature selection module 11 using an evaluation function will be described in detail.

먼저 각 유전자 개체들의 적합성을 평가하는 평가 함수(Evaluation Function)에 대하여 설명하기로 한다. 평가 함수

Figure 112006003084511-pat00016
는 목적 함수
Figure 112006003084511-pat00017
와 이 목적 함수를 실제 유전자 프로세스에 적합한 것으로 변환하여 주는 보정 함수
Figure 112006003084511-pat00018
를 포함하여 다음 수식에 의하여 표현될 수 있다.First, an evaluation function for evaluating the suitability of each genetic individual will be described. Evaluation function
Figure 112006003084511-pat00016
Is the objective function
Figure 112006003084511-pat00017
And a correction function that converts this objective function to one suitable for the actual genetic process
Figure 112006003084511-pat00018
It can be represented by the following formula including.

Figure 112006003084511-pat00019
……… (1)
Figure 112006003084511-pat00019
… … … (One)

패킷 특징 선택 모듈은 목적 함수

Figure 112006003084511-pat00020
의 값을 보정 함수
Figure 112006003084511-pat00021
에 적용함으로써 유도된 최종 평가 함수 F(x)에 의하여 패킷의 상대적 적합도 값을 체크할 수 있다. 본 발명에서는 보다 중요한 필드를 선택하기 위하여 상기 목적 함수
Figure 112006003084511-pat00022
에 TCP/IP 필드 특성을 반영한다.Packet feature selection module objective function
Figure 112006003084511-pat00020
Correction function
Figure 112006003084511-pat00021
The relative evaluation value of the packet can be checked by the final evaluation function F (x) derived by applying to. In the present invention, the objective function is used to select more important fields.
Figure 112006003084511-pat00022
Reflect TCP / IP field characteristics.

표 1은 TCP/IP 패킷의 필드들이 기존의 비정상적인 공격에 얼마나 많이 사용되었는지를 의미하는 이상 스코어(Anomaly Score)와 정상적인 통신 과정에서의 사용되는 각 필드의 특성을 반영하는 통신 스코어(Communication Score)로 구성된다. Table 1 shows the Anomaly Score, which indicates how many fields of a TCP / IP packet were used for an existing abnormal attack, and the Communication Score, which reflects the characteristics of each field used during normal communication. It is composed.

Index Index NumberNumber Name of CoefficientsName of Coefficients Anomaly ScoreAnomaly Score Communication Communication ScoreScore 0101 a01 (Version)a01 (Version) 00 SS 0202 a02 (Header Length)a02 (Header Length) 00 DeDe 0303 a03 (Type of Service)a03 (Type of Service) 00 SS 0404 a04 (Total Length)a04 (Total Length) 00 DeDe 0505 a05 (Identification)a05 (Identification) 22 DyDy 0606 a06 (Flags)a06 (Flags) 55 DyDy 0707 a07 (Fragment Offset)a07 (Fragment Offset) 55 DyDy 0808 a08 (Time to Live)a08 (Time to Live) 1One DyDy 0909 a09 (Protocol)a09 (Protocol) 1One SS 1010 a10 (Header Checksum)a10 (Header Checksum) 00 DeDe 1111 a11 (Source Address)a11 (Source Address) 22 SS 1212 a12 (Destination Address)a12 (Destination Address) 1One SS 1313 a13 (Options)a13 (Options) 1One SS 1414 a14 (Source Port)a14 (Source Port) 1One SS 1515 a15 (Destination Port)a15 (Destination Port) 1One SS 1616 a16 (Sequence Number)a16 (Sequence Number) 22 DyDy 1717 a17 (Acknowledge Number)a17 (Acknowledge Number) 22 DyDy 1818 a18 (Offset)a18 (Offset) 1One DyDy 1919 a19 (Reserved)a19 (Reserved) 1One SS 2020 a20 (Flags)a20 (Flags) 22 DyDy 2121 a21 (Window)a21 (Window) 00 SS 2222 a22 (Checksum)a22 (Checksum) 00 DeDe 2323 a23 (Urgent Pointer)a23 (Urgent Pointer) 1One SS 2424 a24 (Options)a24 (Options) 1One SS

이상 스코어의 경우에는 패킷 필드 별로 비정상적인 공격에 사용된 횟수를 체크하여 그에 비례하여 중요도를 측정한다. 이와 같이 측정된 중요도는 물론 평가 함수에 반영되는 것이다.In the case of an abnormal score, the number of times used for an abnormal attack is checked for each packet field, and the importance is measured in proportion thereto. The importance measured in this way is of course reflected in the evaluation function.

마찬가지로 통신 스코어의 경우에는 일반적으로 패킷 송수신 과정에 사용되는 필드들의 특성을 정적(Static), 동적(Dynamic), 종속(Dependent)의 세 가지 범주로 구분하여, 각 중요성을 유전자 알고리즘 평가 함수에 반영하게 된다.Similarly, in the case of communication scores, the characteristics of fields generally used in packet transmission and reception are divided into three categories, static, dynamic, and dependent, so that each importance is reflected in the genetic algorithm evaluation function. do.

이상 스코어 또는 통신 스코어를 유전자 알고리즘 평가 함수에 반영하기 위하여, 각 스코어들을 평가 함수를 계산하기 위한 다항식의 계수로 이용하게 된다. 평가 함수는 이상 스코어를 반영하기 위한 이상 스코어 함수와 통신 스코어를 반영하기 위한 통신 스코어 함수로 구분될 수 있다. 상기 두 개의 함수들은 각각 다항식으로 표현되고, 상기 다항식의 계산 결과가 유전자 개체의 적합도를 판단하는 척도로 사용하는 것이다. 상기 계산 결과는 다항식 계수에 의하여 차이가 나게 되므로, 이상 스코어와 통신 스코어를 평가 함수에 반영하게 되는 것이다. In order to reflect the abnormal score or the communication score in the genetic algorithm evaluation function, each score is used as a coefficient of the polynomial for calculating the evaluation function. The evaluation function may be classified into an abnormal score function for reflecting an abnormal score and a communication score function for reflecting a communication score. The two functions are each expressed as a polynomial, and the result of calculating the polynomial is used as a measure for determining the fitness of the genetic individual. Since the calculation result is different by the polynomial coefficient, the abnormal score and the communication score are reflected in the evaluation function.

목적 함수

Figure 112006003084511-pat00023
는 이상 스코어 함수인
Figure 112006003084511-pat00024
와 통신 스코어 함수인
Figure 112006003084511-pat00025
를 이용하여 다음 수식과 같이 표현될 수 있다.Objective function
Figure 112006003084511-pat00023
Is an ideal score function
Figure 112006003084511-pat00024
Communication score function
Figure 112006003084511-pat00025
It can be expressed as the following equation using.

Figure 112006003084511-pat00026
…… (2)
Figure 112006003084511-pat00026
… … (2)

Figure 112006003084511-pat00027
는 모든 개체의 집합, 그리고
Figure 112006003084511-pat00028
는 모든 개체 집합의 개수이다. 여기서
Figure 112006003084511-pat00029
는 하나의 개체를 의미하며 본 발명에서 한 개체는 24개의 속성을 가진다.
Figure 112006003084511-pat00027
Is a set of all objects, and
Figure 112006003084511-pat00028
Is the number of all object sets. here
Figure 112006003084511-pat00029
Means one entity and in the present invention one entity has 24 properties.

여기서, 수식 (2)의 평가 함수에 따른 개체 선택은 때때로 너무 많은 개체들이 선택될 수 있다. 그러므로 유전자 알고리즘의 개체 선택을 위한 목적 함수에서 개체 선택 개수를 조절할 수 있는 바이어스 변수

Figure 112006003084511-pat00030
를 추가하여 다음과 같이 새로운 목적 함수
Figure 112006003084511-pat00031
를 고려하기로 한다.Here, the object selection according to the evaluation function of Equation (2) can sometimes select too many objects. Therefore, the bias variable that can control the number of object selection in the objective function for object selection of genetic algorithm
Figure 112006003084511-pat00030
Add a new objective function as follows:
Figure 112006003084511-pat00031
Let's consider.

Figure 112006003084511-pat00032
…… (3)
Figure 112006003084511-pat00032
… … (3)

여기서 바이어스 변수

Figure 112006003084511-pat00033
는 새로운 목적 함수
Figure 112006003084511-pat00034
의 바이어스 값이며, 이 때
Figure 112006003084511-pat00035
값은
Figure 112006003084511-pat00036
의 범주를 가짐으로써 새로운 목적 함수
Figure 112006003084511-pat00037
는 기존의 바이어스를 가지지 않는 목적 함수
Figure 112006003084511-pat00038
의 최대값보다 작은 값을 가지게 된다. 결론적으로, 바이어스 값
Figure 112006003084511-pat00039
를 이용하여 너무 많은 개체가 선택되는 것을 방지할 수 있는 것이다.Where the bias variable
Figure 112006003084511-pat00033
Is the new objective function
Figure 112006003084511-pat00034
Is the bias value of
Figure 112006003084511-pat00035
The value is
Figure 112006003084511-pat00036
New objective function by having
Figure 112006003084511-pat00037
Is an objective function with no existing bias
Figure 112006003084511-pat00038
It will have a value smaller than the maximum value of. In conclusion, the bias value
Figure 112006003084511-pat00039
You can use to prevent too many objects from being selected.

다음으로는 수식 (3)에서 유도된 목적 함수

Figure 112006003084511-pat00040
의 두 평가 함수
Figure 112006003084511-pat00041
Figure 112006003084511-pat00042
에 대하여 설명하기로 한다.Next, the objective function derived from equation (3)
Figure 112006003084511-pat00040
Two evaluation functions
Figure 112006003084511-pat00041
Wow
Figure 112006003084511-pat00042
This will be described.

먼저,

Figure 112006003084511-pat00043
의 경우 표 1의 이상 스코어 값을 계수로 가지는 다항식
Figure 112006003084511-pat00044
를 생각할 수 있다.first,
Figure 112006003084511-pat00043
For polynomials, the coefficients for the outliers in Table 1 are coefficients.
Figure 112006003084511-pat00044
You can think of

Figure 112006003084511-pat00045
…… (4)
Figure 112006003084511-pat00045
… … (4)

여기서 i값은 1부터 24까지의 값을 가질 수 있으며, A={ai,…,a2,a1}의 다항식 함수의 계수 집합을 의미한다. 이 집합의 원소인 각 계수들은 표 1의 이상 스코어 값을 나타낸다. 즉,

Figure 112006003084511-pat00046
의 값은 0이고,
Figure 112006003084511-pat00047
의 값은 12,
Figure 112006003084511-pat00048
의 값은 1이 된다.Where i may have a value from 1 to 24, where A = {a i ,... , a 2 , a 1 } means a set of coefficients of the polynomial function. Each coefficient, which is an element of this set, represents an ideal score value in Table 1. In other words,
Figure 112006003084511-pat00046
Has a value of 0,
Figure 112006003084511-pat00047
The value of is 12,
Figure 112006003084511-pat00048
The value of 1 is 1.

목적 함수 (4)를 이용하는 경우 너무 높은 평가 값이 생성되는 오버 피팅(Over Fitting)현상이 발생하게 되는데, 수식 (3)과 같이 바이어스 값을 이용하여 이를 너무 많은 개체가 선택되어 진화 과정이 적절하게 수행되지 않는 오버 피팅 현상을 방지할 수 있게 된다.When using the objective function (4), an over fitting phenomenon occurs, where too high an evaluation value is generated.Too many objects are selected using a bias value as shown in Equation (3), and the evolution process is appropriately performed. It is possible to prevent the overfit phenomenon that is not performed.

수식 (4)의 이상 스코어 함수의 오버 피팅 현상을 방지하기 위하여 바이어스

Figure 112006003084511-pat00049
를 고려한 새로운 이상 스코어 함수를 유도한다. 이 때 바이어스
Figure 112006003084511-pat00050
는 수식 (4)에서의 다항식
Figure 112006003084511-pat00051
에만 적용되는 변수이다. 역시 이 바이어스의 최대값은 수식 (4)의 이상 스코어 함수인
Figure 112006003084511-pat00052
의 최대값을 넘지 못한다.Bias in order to prevent overfitting of the abnormal score function of equation (4)
Figure 112006003084511-pat00049
A new ideal score function is considered. When the bias
Figure 112006003084511-pat00050
Is the polynomial in equation (4)
Figure 112006003084511-pat00051
Variables that apply only to Again, the maximum value of this bias is the ideal score function of equation (4)
Figure 112006003084511-pat00052
Do not exceed the maximum of.

Figure 112006003084511-pat00053
…… (5)
Figure 112006003084511-pat00053
… … (5)

Figure 112006003084511-pat00054
…… (6)
Figure 112006003084511-pat00054
… … (6)

마찬가지로, 통신 스코어 함수인

Figure 112006003084511-pat00055
에 대하여도 수식 (6)의 함수와 유사한 함수를 고려할 수 있다. 먼저 표 1의 통신 스코어를 이용하여 수식 (7) 과 같은 다항식을 유도할 수 있다.Similarly, the communication score function
Figure 112006003084511-pat00055
Similar functions can be considered with respect to Equation (6). First, a polynomial such as Equation (7) can be derived using the communication scores in Table 1.

Figure 112006003084511-pat00056
…(7)
Figure 112006003084511-pat00056
… (7)

수식 (7)의 유도 과정에 있어서 기본적인 과정은 앞에서 설명한 이상 스코어 함수를 유도하는 과정과 동일하다. 다만 수식 (7)은 수식 (6)과 달리 일반적인 통신 과정의 특성을 반영하기 때문에 다항식 각각의 계수가 상이한 특성을 가지는 것이 아니라 다음과 같이 세 가지 특성을 바탕으로 그룹화될 수 있다.In the derivation process of Equation (7), the basic process is the same as the process of deriving the abnormal score function described above. However, unlike Equation (6), Equation (7) reflects the characteristics of a general communication process, and thus, each coefficient of the polynomial may be grouped based on three characteristics as follows.

즉, 여기서

Figure 112006003084511-pat00057
는 통신 스코어들의 집합이고, 계수
Figure 112006003084511-pat00058
,
Figure 112006003084511-pat00059
,
Figure 112006003084511-pat00060
는 각각 표 1에서 정적 특성(Static(S)), 종속 특성(Dependent(De)), 동적 특성(Dynamic(Dy))인 경우 적용되는 계수에 해당한다. 이 때 수식 (6)과 마찬가지로 통신 스코어 함수
Figure 112006003084511-pat00061
의 오버 피팅을 막기 위하여 바이어스 변수
Figure 112006003084511-pat00062
을 적용하여 다음과 같은 수식을 유도할 수 있다.That is, here
Figure 112006003084511-pat00057
Is a set of communication scores, and
Figure 112006003084511-pat00058
,
Figure 112006003084511-pat00059
,
Figure 112006003084511-pat00060
In Table 1, respectively, the coefficients applied to the static characteristics (Static (S)), dependent characteristics (Dependent (De)), and dynamic characteristics (Dynamic (Dy)) correspond. At this time, as in Equation (6), communication score function
Figure 112006003084511-pat00061
Bias variable to prevent overfitting
Figure 112006003084511-pat00062
You can derive the following equation by applying.

Figure 112006003084511-pat00063
…… (8)
Figure 112006003084511-pat00063
… … (8)

Figure 112006003084511-pat00064
…… (9)
Figure 112006003084511-pat00064
… … (9)

여기서

Figure 112006003084511-pat00065
,
Figure 112006003084511-pat00066
,
Figure 112006003084511-pat00067
는 각각 대표 계수
Figure 112006003084511-pat00068
,
Figure 112006003084511-pat00069
,
Figure 112006003084511-pat00070
를 가지는 개체 인자들의 집합이다. 또한 각 계수는 각 정상적인 통신 과정에 있어서 사용되는 필드의 중요도를 평가하는 변수로서 본 발명에서는 표 2와 같은 범주 안의 값을 취한다. 이 때
Figure 112006003084511-pat00071
는 통신 스코어 집단 계수들의 변수 값 범주에서의 초기값을 의미하며, 실험적인 결과에 의하여 각 그룹은 1:2:3의 비율로 가중치를 부여하였다.here
Figure 112006003084511-pat00065
,
Figure 112006003084511-pat00066
,
Figure 112006003084511-pat00067
Are representative coefficients respectively
Figure 112006003084511-pat00068
,
Figure 112006003084511-pat00069
,
Figure 112006003084511-pat00070
Is a set of object arguments. In addition, each coefficient is a variable for evaluating the importance of the field used in each normal communication process, and the present invention takes values within the categories shown in Table 2 below. At this time
Figure 112006003084511-pat00071
Denotes an initial value in a variable value category of communication score group coefficients, and according to experimental results, each group is weighted at a ratio of 1: 2: 3.

필드 특성Field properties 범 주category Static(

Figure 112006003084511-pat00072
)Static (
Figure 112006003084511-pat00072
) 0 < α ≤
Figure 112006003084511-pat00073
0 <α ≤
Figure 112006003084511-pat00073
Dependent(
Figure 112006003084511-pat00074
)
Dependent (
Figure 112006003084511-pat00074
)
Figure 112006003084511-pat00075
< β ≤ 2*
Figure 112006003084511-pat00076
Figure 112006003084511-pat00075
<β ≤ 2 *
Figure 112006003084511-pat00076
Dynamic(
Figure 112006003084511-pat00077
)
Dynamic (
Figure 112006003084511-pat00077
)
2*
Figure 112006003084511-pat00078
< γ ≤ 3*
Figure 112006003084511-pat00079
2*
Figure 112006003084511-pat00078
<γ ≤ 3 *
Figure 112006003084511-pat00079

마지막으로 수식 (6)과 (9)를 사용하여 최종 평가 함수

Figure 112006003084511-pat00080
를 유도할 수 있다.Finally, the final evaluation function using formulas (6) and (9)
Figure 112006003084511-pat00080
Can be derived.

Figure 112006003084511-pat00081
Figure 112006003084511-pat00081

수식 (10)의 최종 평가 함수는 유전자 알고리즘의 최적해를 찾는 과정에서 각 세대마다 적절한 개체를 선택하는데 사용된다. 또한, 이와 같은 평가함수를 이용하여 선택된 개체들은 전달(Reproduction), 교배(Crossover), 변이(Mutation)와 같은 진화 과정을 수행하게 된다.The final evaluation function of equation (10) is used to select the appropriate individual for each generation in the process of finding the optimal solution of the genetic algorithm. In addition, using these evaluation functions, selected entities perform evolutionary processes such as reproduction, crossover, and mutation.

패킷 특징 선택 모듈은 위에서 설명한 유전자 알고리즘 평가 함수를 반복하여 패킷 중 가장 중요한 필드를 선별하게 된다. 예를 들어, 패킷 특징 선택 모듈은 임의의 유전자 개체(패킷) 100개를 만들어 놓고, 평가 함수를 계산하여 가장 적절한 개체를 선택하게 된다. 즉, 최후의 개체는 관리자가 원하는 필드들을 포함하고 있게 되며, 패킷 특징 선택 모듈은 상기 필드가 어떤 필드에 해당하는지 패킷 전처리 모듈로 전달하는 것이다.The packet feature selection module repeats the genetic algorithm evaluation function described above to select the most important fields of the packet. For example, the packet feature selection module creates 100 random gene instances (packets) and calculates an evaluation function to select the most appropriate entity. That is, the last entity includes fields desired by the administrator, and the packet feature selection module conveys to the packet preprocessing module which fields correspond to the fields.

도 3은 본 발명의 다른 실시예에 따른 네트워크 침입 감지 방법을 나타낸 순서도이다.3 is a flowchart illustrating a network intrusion detection method according to another embodiment of the present invention.

먼저, 네트워크 침입 감지 시스템은 침입 탐지 판단 시 고려하고자 하는 필드를 선택한다(S301). 이와 같은 필드 선택 과정은 패킷의 헤더 영역에 존재하는 필드 별로 중요성을 고려하여 선택하는 것을 특징으로 한다.First, the network intrusion detection system selects a field to be considered when determining intrusion detection (S301). This field selection process is characterized in that the selection in consideration of the importance for each field present in the header area of the packet.

네트워크 침입 감지 시스템은 네트워크에 존재하는 패킷을 수집하게 된다(S302). 또한, 네트워크 침입 감지 시스템은 수집된 패킷 중 S301 과정에서 선택된 필드만을 추출하며(S303), 상기 추출된 필드를 이용하여 네트워크에 비정상적인 침입이 존재하는지 체크하게 된다(S304). The network intrusion detection system collects packets existing in the network (S302). In addition, the network intrusion detection system extracts only the field selected in step S301 of the collected packets (S303), and checks whether an abnormal intrusion exists in the network using the extracted fields (S304).

도 4는 본 발명의 또 다른 실시예에 따른 패킷 특징 선택 방법을 나타낸 순서도이다.4 is a flowchart illustrating a packet feature selection method according to another embodiment of the present invention.

이 때 도 4에 따른 과정은 도 3의 S301 과정에 포함되는 과정들에 해당한다.At this time, the process according to FIG. 4 corresponds to processes included in process S301 of FIG. 3.

먼저, 네트워크 관리자는 수집하여 체크하고자 하는 패킷의 구조를 체크한다(S401). 예를 들어, TCP/IP 패킷 중 평가 함수에 반영하고자 하는 필드(표 1에서는 24개의 필드)를 네트워크 관리자가 체크하는 것이다.First, the network manager checks the structure of packets to be collected and checked (S401). For example, the network manager checks the fields (24 fields in Table 1) to be reflected in the evaluation function in the TCP / IP packet.

네트워크 관리자는 상기 필드 별로 악성 패킷과의 상관 관계를 고려하여 평가 함수를 결정하여 네트워크 관리 시스템에 입력한다(S402). 본 발명에서는 필드가 비정상 행위 공격에 사용된 이상 스코어(Anomaly Score)와 통신 과정에서의 필드 특성 정보인 통신 스코어(Communication Score)를 고려하였다. 여기서 통신 스코어는 필드의 타입을 의미하며, 각 필드는 정적 특성, 동적 특성, 종속 특성 중 한 가지 특성을 가진다.The network manager determines an evaluation function by considering correlation with malicious packets for each field and inputs the evaluation function to the network management system (S402). In the present invention, the field is considered an anomaly score used for an abnormal behavior attack and a communication score which is field characteristic information in a communication process. Here, the communication score means the type of field, and each field has one of static, dynamic, and dependent characteristics.

네트워크 보안 시스템은 무작위로 소정의 개수의 유전자 개체, 즉 패킷을 생성한다(S403). 무작위로 산출한 패킷의 필드 정보를 S402 과정에서 결정한 평가 함수에 대입하여 침입 적합도 값을 산출한다(S404). 산출한 침입 적합도 값이 소정의 기준 값 이상인지 체크한다(S405). 이러한 과정을 통하여 침입 적합도가 기준 값 이상인 경우 상기 패킷은 살아남고(S406), 침입 적합도가 기준 값 미만인 패킷은 버려진다(S407). S403 과정에서 생성한 패킷 모두에 대하여 S404 ~ S406의 평가 함수 계산을 반복하게 된다. The network security system randomly generates a predetermined number of gene entities, that is, packets (S403). The intrusion suitability value is calculated by substituting the field information of the randomly calculated packet into the evaluation function determined in step S402 (S404). It is checked whether the calculated intrusion suitability value is equal to or greater than a predetermined reference value (S405). If the intrusion suitability is more than the reference value through this process, the packet survives (S406), and the packet whose intrusion suitability is less than the reference value is discarded (S407). The evaluation function of S404 to S406 is repeated for all packets generated in step S403.

네트워크 침입 감지 시스템은 모든 패킷에 대하여 평가 함수 계산이 이루어졌는지 판단한다(S408). 만일 모든 패킷에 대하여 침입 적합도 계산이 이루어진 경우 생존한 패킷이 한 개인지 판단한다(S409). 만일 생존한 패킷이 한 개가 아닌 경우 평가 함수의 바이어스 값을 조정하여 생존한 패킷에 대하여 다시 침입 적합도 계산 과정(S404~S406)을 실시한다(S410). 이와 같은 방법을 통하여 네트워크 침입 감지 시스템은 생존한 최후 패킷의 필드 정보를 추출하여 S303 과정에 이용할 수 있다(S411). 최후 생존한 패킷 중 임의의 필드가 1인 경우, 상기 필드는 네트워크 침입과 관련이 깊은 필드로 생각할 수 있다. 이와 같이 네트워크 침입 감지 시스템은 최후 생존한 패킷의 필드 중 1의 값을 가지는 필드를 선택한다.The network intrusion detection system determines whether evaluation function calculation has been performed for all packets (S408). If the intrusion suitability calculation is made for all packets, it is determined whether there is one surviving packet (S409). If the number of surviving packets is not one, the intrusion suitability calculation process (S404 to S406) is performed again on the surviving packets by adjusting the bias value of the evaluation function (S410). Through such a method, the network intrusion detection system may extract field information of the last packet that survived and use it in the step S303 (S411). If any field in the last surviving packet is 1, the field may be considered to be deeply related to network intrusion. In this way, the network intrusion detection system selects a field having a value of 1 among the fields of the last surviving packet.

도 5는 본 발명의 또 다른 실시예에 따른 네트워크 침입 감지 방법을 나타낸 순서도이다.5 is a flowchart illustrating a network intrusion detection method according to another embodiment of the present invention.

도 5의 네트워크 침입 감지 방법은 도 4의 S409 과정에 의하여 최후로 생존한 패킷과 네트워크 상에 존재하는 패킷 간 유사도를 판단하여 네트워크 침입 존재 여부를 체크하는 방법이다.The network intrusion detection method of FIG. 5 is a method for checking the existence of a network invasion by determining the similarity between the last surviving packet and the packet present on the network by the process S409 of FIG. 4.

먼저 도 4의 방법에 따라 네트워크 침입 감지 시스템은 최후에 생존한 패킷을 기준 패킷으로 저장하게 된다(S501). 상기 샘플 패킷 저장을 위하여 네트워크 침입 감지 시스템은 메모리부를 추가적으로 구비할 수 있다.First, the network intrusion detection system stores the last surviving packet as a reference packet according to the method of FIG. 4 (S501). The network intrusion detection system may further include a memory unit for storing the sample packet.

이제 네트워크 침입 감지 시스템은 네트워크에 침입이 존재하는지 체크하기 위하여 네트워크에 존재하는 패킷을 수집한다(S502). 또한, 상기 수집된 패킷을 상기 데이터베이스에 저장된 기준 패킷과 비교하기 위하여, 전처리 작업을 수행한다(S503). 이러한 전처리 작업은 위에서 설명한 바와 같이 추출, 변경, 치환 등의 과정을 의미한다. The network intrusion detection system now collects packets existing in the network to check whether there is an intrusion in the network (S502). In addition, in order to compare the collected packet with the reference packet stored in the database, a preprocessing operation is performed (S503). This pretreatment operation means a process of extraction, modification and substitution as described above.

이제 네트워크 침입 감지 시스템은 전처리 작업이 수행된 패킷과 기준 패킷을 비교하여 패킷 유사도를 계산한다(S504). 만일 유사도가 소정의 값 이상인 경우, 상기 수집된 패킷은 네트워크 침입을 위한 패킷이므로 네트워크 관리자에게 보고하고 로그 파일을 작성한다(S505). 패킷 유사도가 소정의 값 미만인 경우, 네트워크 침입 감지 시스템은 별도의 보고를 하지 않고 로그 파일을 작성한다(S506). Now, the network intrusion detection system calculates a packet similarity by comparing the packet on which the preprocessing operation is performed with the reference packet (S504). If the similarity is greater than or equal to a predetermined value, the collected packet is a packet for network intrusion and thus is reported to the network administrator and a log file is created (S505). If the packet similarity is less than a predetermined value, the network intrusion detection system creates a log file without separately reporting (S506).

이상에서 본 발명의 바람직한 실시예에 대하여 설명하였다. 본 발명은 상술한 실시예에 한정하지 아니하며, 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능할 것이다. The preferred embodiment of the present invention has been described above. The present invention is not limited to the above-described embodiment, and various modifications can be made by anyone having ordinary skill in the art to which the present invention pertains.

상기한 바와 같이 본 발명에 따른 유전자 알고리즘을 응용한 네트워크 보안 시스템 및 그 방법에 따르면, 유전자 알고리즘 기반의 특징 선택 방법을 이용하여 TCP/IP 패킷들 내부의 정보 중 보다 큰 의미가 부여된 패킷 정보를 추출할 수 있으며, 중요한 패킷 정보만을 이용하여 수신되는 패킷을 체크함으로써 탐지 속도의 향상 및 탐지율 향상에 기여할 수 있다.As described above, according to the network security system and the method applying the genetic algorithm according to the present invention, by using the genetic algorithm-based feature selection method, the packet information having a greater meaning among the information inside the TCP / IP packets It can be extracted, and by checking the received packet using only important packet information, it can contribute to the improvement of detection speed and detection rate.

Claims (11)

네트워크 침입 감지 방법에 있어서,In the network intrusion detection method, 적어도 하나의 샘플 패킷을 생성하는 단계;Generating at least one sample packet; 상기 샘플 패킷의 필드 값을 패킷의 필드 별 중요도를 반영한 평가 함수의 변수 값으로 대입하여 침입 적합도 값을 산출하는 단계;Calculating an intrusion suitability value by substituting the field value of the sample packet as a variable value of an evaluation function reflecting the importance of each field of the packet; 상기 침입 적합도 값이 소정의 기준 값 이상인 경우 상기 샘플 패킷이 잔존하는 단계; 및Remaining the sample packet when the intrusion suitability value is equal to or greater than a predetermined reference value; And 네트워크로부터 수집한 패킷과 상기 잔존한 샘플 패킷의 유사도를 측정하여 네트워크 침입 여부를 판단하는 단계를 포함하는 네트워크 침입 감지 방법.And determining whether the network has been invaded by measuring the similarity between the packets collected from the network and the remaining sample packets. 제1항에 있어서,The method of claim 1, 상기 샘플 패킷의 필드 별 중요도를 반영하는 평가 함수는,Evaluation function reflecting the importance of each field of the sample packet, 패킷의 필드가 비정상 행위 공격에 사용되는 이상 스코어(Anomaly Score)와 필드 특성 정보인 통신 스코어(Communication Score)를 반영하는 것을 특징으로 하는 네트워크 침입 감지 방법.The network intrusion detection method, characterized in that the field of the packet reflects an anomaly score (Communication Score) that is used for abnormal behavior attack (Anomaly Score) and field characteristic information. 제2항에 있어서,The method of claim 2, 상기 샘플 패킷의 침입 적합도 값은,The intrusion suitability value of the sample packet is 아래의 수학식에 따라 산출되는 네트워크 침입 감지 방법.Network intrusion detection method calculated according to the following equation.
Figure 112006003084511-pat00082
Figure 112006003084511-pat00082
여기서,
Figure 112006003084511-pat00083
Figure 112006003084511-pat00084
개의 패킷의 침입 적합도 값,
Figure 112006003084511-pat00085
는 패킷의
Figure 112006003084511-pat00086
번째 필드가 비정상적인 공격에 사용된 횟수,
Figure 112006003084511-pat00087
는 샘플 패킷의
Figure 112006003084511-pat00088
번째 필드의 값,
Figure 112006003084511-pat00089
,
Figure 112006003084511-pat00090
,
Figure 112006003084511-pat00091
는 각각 정적(Static), 종속(Dependent), 동적(Dynamic) 속성을 가지는 필드의 개수,
Figure 112006003084511-pat00092
,
Figure 112006003084511-pat00093
,
Figure 112006003084511-pat00094
는 각각 정적, 종속, 동적 속성을 가지는 필드의 반영 계수,
Figure 112006003084511-pat00095
는 소정의 바이어스 값이다.
here,
Figure 112006003084511-pat00083
Is
Figure 112006003084511-pat00084
Intrusion suitability values for packets
Figure 112006003084511-pat00085
Of the packet
Figure 112006003084511-pat00086
The number of times the first field was used in an unusual attack,
Figure 112006003084511-pat00087
Of the sample packet
Figure 112006003084511-pat00088
The value of the first field,
Figure 112006003084511-pat00089
,
Figure 112006003084511-pat00090
,
Figure 112006003084511-pat00091
Is the number of fields each having static, dependent, and dynamic properties,
Figure 112006003084511-pat00092
,
Figure 112006003084511-pat00093
,
Figure 112006003084511-pat00094
Is a reflection coefficient of a field with static, dependent, and dynamic properties,
Figure 112006003084511-pat00095
Is a predetermined bias value.
제3항에 있어서,The method of claim 3, 상기
Figure 112006003084511-pat00096
,
Figure 112006003084511-pat00097
,
Figure 112006003084511-pat00098
는 1:2:3의 비율을 갖는 것을 특징으로 하는 네트워크 침입 감지 방법.
remind
Figure 112006003084511-pat00096
,
Figure 112006003084511-pat00097
,
Figure 112006003084511-pat00098
Is 1: 2: 3 ratio of network intrusion detection method.
네트워크 침입 감지 방법에 있어서,In the network intrusion detection method, 패킷의 필드 별 중요도를 반영한 평가 함수를 이용하는 유전자 알고리즘을 적용하여, 네트워크 침입 여부 판단을 위한 적어도 하나의 기준 필드를 선택하는 단계; 와Selecting at least one reference field for determining network intrusion by applying a genetic algorithm using an evaluation function reflecting the importance of each field of the packet; Wow 네트워크로부터 수집한 패킷 중 상기 네트워크 침입 여부 판단을 위한 기준 필드의 정보를 추출하고, 상기 추출된 필드의 정보를 이용하여 네트워크 침입 여부를 판단하는 단계를 포함하는 네트워크 침입 감지 방법.Extracting information of a reference field for determining whether the network has been invaded from packets collected from a network, and determining whether the network has been invaded using the extracted field information. 제5항에 있어서,The method of claim 5, 상기 유전자 알고리즘을 적용하여 네트워크 침입 여부 판단을 위한 기준 필드를 선택하는 단계는,Selecting a reference field for determining whether the network invasion by applying the genetic algorithm, 적어도 하나의 샘플 패킷을 생성하는 단계;Generating at least one sample packet; 상기 샘플 패킷 필드 값을 상기 평가 함수의 변수에 대입하여 침입 적합도 값을 계산하는 단계;Calculating an intrusion suitability value by substituting the sample packet field value into a variable of the evaluation function; 상기 침입 적합도 값이 소정의 기준 값 이상인 샘플 패킷만 잔존하는 단계; 및Remaining only a sample packet whose intrusion suitability value is equal to or greater than a predetermined reference value; And 상기 잔존한 샘플 패킷의 필드를 이용하여 네트워크 침입 여부를 판단하기 위한 필드를 선택하는 단계를 포함하는 네트워크 침입 감지 방법.And selecting a field for determining network intrusion using the remaining field of a sample packet. 네트워크 침입 감지 시스템에 있어서,In the network intrusion detection system, 패킷의 필드 별 중요도를 반영한 평가 함수를 이용하는 유전자 알고리즘을 적용하여 네트워크 침입 여부 판단을 위한 적어도 하나의 기준 필드를 선택하는 패킷 특징 선택 모듈;A packet feature selection module for selecting at least one reference field for determining network intrusion by applying a genetic algorithm using an evaluation function reflecting the importance of each field of the packet; 네트워크 상에 존재하는 패킷을 수집하는 패킷 수집 모듈;A packet collecting module for collecting a packet present on a network; 상기 수집된 패킷 중 상기 패킷 특징 선택 모듈에 의하여 선택된 기준 필드의 정보를 추출하는 패킷 전처리 모듈; 및A packet preprocessing module for extracting information of a reference field selected by the packet feature selection module among the collected packets; And 상기 추출된 기준 필드의 정보를 이용하여 네트워크 침입 여부를 판단하는 침입 감지 엔진 모듈을 포함하는 네트워크 침입 감지 시스템.Network intrusion detection system including an intrusion detection engine module for determining whether the network intrusion using the extracted reference field information. 제7항에 있어서,The method of claim 7, wherein 상기 패킷 특징 선택 모듈은,The packet feature selection module, 적어도 하나의 샘플 패킷을 생성하는 샘플 패킷 생성부;A sample packet generation unit generating at least one sample packet; 상기 생성된 샘플 패킷 필드의 비트 값을 상기 평가 함수의 변수에 할당하여 침입 적합도 값을 계산하는 평가 함수 연산부;An evaluation function calculator for calculating an intrusion suitability value by assigning a bit value of the generated sample packet field to a variable of the evaluation function; 상기 계산된 침입 적합도 값이 소정의 기준 값 이상인 샘플 패킷을 선택하는 샘플 패킷 선택부; 및A sample packet selection unit for selecting a sample packet having the calculated intrusion suitability value equal to or greater than a predetermined reference value; And 상기 선택된 샘플 패킷 필드를 이용하여 네트워크 침입 여부를 판단하기 위한 기준 필드를 선택하는 특징 필드 선택부를 포함하는 네트워크 침입 감지 시스템.And a feature field selector configured to select a reference field for determining network intrusion using the selected sample packet field. 제8항에 있어서,The method of claim 8, 상기 평가 함수는,The evaluation function is 패킷의 필드가 비정상 행위 공격에 사용되는 이상 스코어(Anomaly Score)와 필드 특성 정보인 통신 스코어(Communication Score)를 반영하는 것을 특징으로 하는 네트워크 침입 감지 시스템.The network intrusion detection system, characterized in that the field of the packet reflects an anomaly score (Communication Score) that is used for abnormal behavior attack (Anomaly Score) and field characteristic information. 제9항에 있어서,The method of claim 9, 상기 샘플 패킷의 침입 적합도 값은,The intrusion suitability value of the sample packet is 아래의 수학식에 따라 산출되는 네트워크 침입 감지 시스템.Network intrusion detection system calculated according to the following equation.
Figure 112006003084511-pat00099
Figure 112006003084511-pat00099
여기서,
Figure 112006003084511-pat00100
Figure 112006003084511-pat00101
개의 패킷의 침입 적합도 값,
Figure 112006003084511-pat00102
는 패킷의
Figure 112006003084511-pat00103
번째 필드가 비정상적인 공격에 사용된 횟수,
Figure 112006003084511-pat00104
는 샘플 패킷의
Figure 112006003084511-pat00105
번째 필드의 값,
Figure 112006003084511-pat00106
,
Figure 112006003084511-pat00107
,
Figure 112006003084511-pat00108
는 각각 정적(Static), 종속(Dependent), 동적(Dynamic) 속성을 가지는 필드의 개수,
Figure 112006003084511-pat00109
,
Figure 112006003084511-pat00110
,
Figure 112006003084511-pat00111
는 각각 정적, 종속, 동적 속성을 가지는 필드의 반영 계수,
Figure 112006003084511-pat00112
는 소정의 바이어스 값이다.
here,
Figure 112006003084511-pat00100
Is
Figure 112006003084511-pat00101
Intrusion suitability values for packets
Figure 112006003084511-pat00102
Of the packet
Figure 112006003084511-pat00103
The number of times the first field was used in an unusual attack,
Figure 112006003084511-pat00104
Of the sample packet
Figure 112006003084511-pat00105
The value of the first field,
Figure 112006003084511-pat00106
,
Figure 112006003084511-pat00107
,
Figure 112006003084511-pat00108
Is the number of fields each having static, dependent, and dynamic properties,
Figure 112006003084511-pat00109
,
Figure 112006003084511-pat00110
,
Figure 112006003084511-pat00111
Is a reflection coefficient of a field with static, dependent, and dynamic properties,
Figure 112006003084511-pat00112
Is a predetermined bias value.
제10항에 있어서,The method of claim 10, 상기
Figure 112006003084511-pat00113
,
Figure 112006003084511-pat00114
,
Figure 112006003084511-pat00115
는 1:2:3의 비율을 갖는 것을 특징으로 하는 네트워크 침입 시스템.
remind
Figure 112006003084511-pat00113
,
Figure 112006003084511-pat00114
,
Figure 112006003084511-pat00115
Is a 1: 2: 3 ratio.
KR1020060004571A 2006-01-16 2006-01-16 Network intrusion detection system using genetic algorithm and method thereof KR100738550B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060004571A KR100738550B1 (en) 2006-01-16 2006-01-16 Network intrusion detection system using genetic algorithm and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060004571A KR100738550B1 (en) 2006-01-16 2006-01-16 Network intrusion detection system using genetic algorithm and method thereof

Publications (1)

Publication Number Publication Date
KR100738550B1 true KR100738550B1 (en) 2007-07-11

Family

ID=38504072

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060004571A KR100738550B1 (en) 2006-01-16 2006-01-16 Network intrusion detection system using genetic algorithm and method thereof

Country Status (1)

Country Link
KR (1) KR100738550B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105930723A (en) * 2016-04-20 2016-09-07 福州大学 Intrusion detection method based on feature selection
KR20220045137A (en) * 2019-09-04 2022-04-12 국방과학연구소 Apparatus and method for selecting statistical feature point

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020075319A (en) * 2002-07-19 2002-10-04 주식회사 싸이버텍홀딩스 Intelligent Security Engine and Intelligent and Integrated Security System Employing the Same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020075319A (en) * 2002-07-19 2002-10-04 주식회사 싸이버텍홀딩스 Intelligent Security Engine and Intelligent and Integrated Security System Employing the Same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105930723A (en) * 2016-04-20 2016-09-07 福州大学 Intrusion detection method based on feature selection
KR20220045137A (en) * 2019-09-04 2022-04-12 국방과학연구소 Apparatus and method for selecting statistical feature point
KR102546815B1 (en) * 2019-09-04 2023-06-23 국방과학연구소 Apparatus and method for selecting statistical feature point

Similar Documents

Publication Publication Date Title
Ourston et al. Applications of hidden markov models to detecting multi-stage network attacks
JP4677569B2 (en) Network abnormality detection method and network abnormality detection system
Husain et al. Development of an efficient network intrusion detection model using extreme gradient boosting (XGBoost) on the UNSW-NB15 dataset
US8352393B2 (en) Method and system for evaluating tests used in operating system fingerprinting
CN111835681B (en) Large-scale flow abnormal host detection method and device
CN115643035A (en) Network security situation assessment method based on multi-source log
CN111181923A (en) Flow detection method and device, electronic equipment and storage medium
CN111367908A (en) Incremental intrusion detection method and system based on security assessment mechanism
CN113962712A (en) Method for predicting fraud gangs and related equipment
CN113746804B (en) DNS hidden channel detection method, device, equipment and storage medium
CN110995713A (en) Botnet detection system and method based on convolutional neural network
CN112685272B (en) Interpretable user behavior abnormity detection method
KR100738550B1 (en) Network intrusion detection system using genetic algorithm and method thereof
CN108234435A (en) A kind of automatic testing method based on IP classification
Abouzakhar et al. Bayesian learning networks approach to cybercrime detection
KR20220151050A (en) Network intrusion detection system and network intrusion detection method
CN102111302B (en) Worm detection method
CN114880587B (en) Port scanning path recommending method of Internet of things equipment
RU2683631C1 (en) Computer attacks detection method
CN1612135A (en) Invasion detection (protection) product and firewall product protocol identifying technology
CN115085948B (en) Network security situation assessment method based on improved D-S evidence theory
Erokhin et al. The Dataset Features Selection for Detecting and Classifying Network Attacks
Abouzakhar et al. Evaluation of intelligent intrusion detection models
CN112367311A (en) DDoS attack detection method, device, equipment and storage medium
CN111767571A (en) Detection method for medical data leakage

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee