KR101079815B1 - Signature clustering method based grouping attack signature by the hashing - Google Patents

Signature clustering method based grouping attack signature by the hashing Download PDF

Info

Publication number
KR101079815B1
KR101079815B1 KR1020080131727A KR20080131727A KR101079815B1 KR 101079815 B1 KR101079815 B1 KR 101079815B1 KR 1020080131727 A KR1020080131727 A KR 1020080131727A KR 20080131727 A KR20080131727 A KR 20080131727A KR 101079815 B1 KR101079815 B1 KR 101079815B1
Authority
KR
South Korea
Prior art keywords
signature
candidate
similarity
hashing
pool
Prior art date
Application number
KR1020080131727A
Other languages
Korean (ko)
Other versions
KR20100073136A (en
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 KR1020080131727A priority Critical patent/KR101079815B1/en
Publication of KR20100073136A publication Critical patent/KR20100073136A/en
Application granted granted Critical
Publication of KR101079815B1 publication Critical patent/KR101079815B1/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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management

Abstract

본 발명은 해싱결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법에 관한 것으로, 데이터를 자동으로 분류하고 작업을 수행하므로, 해싱(Hashing) 및 컨텐츠관리 그리고 클러스터링을 통한 유사성 또는 포함성을 판단하여 시그니처를 생성하고, 생성된 시그니처를 통해 유입되는 패킷에 대한 분석을 수행하여, 작업 수행에 따른 소요시간이 크게 감소되고 하드웨어로의 구현이 용이하므로, 하드웨어를 이용한 빠른 패턴매칭이 가능하고, 실시간 처리가 가능한 효과가 있다. The present invention relates to a signature clustering method based on attack signature classification using a bit-vector of hashing results. Since the data is automatically classified and performed, similarity or inclusion through hashing, content management, and clustering By generating the signature and analyzing the incoming packet through the generated signature, the time required to perform the task is greatly reduced and it is easy to implement in hardware. Therefore, fast pattern matching is possible. Real time processing is possible.

해싱, Hashing, 비트벡터, Bit vector, 시그니처, Signature, 클러스터링, Clustering Hashing, Hashing, Bit vector, Signature, Signature, Signature, Clustering, Clustering

Description

해싱결과값의 비트-벡터를 이용한 공격 시그니처 분류에 기반한 시그니처 클러스터링 방법{Signature clustering method based grouping attack signature by the hashing }Signature clustering method based grouping attack signature by the hashing}

본 발명은 해싱 결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법에 관한 것으로, 특히 보안시스템이 주기적으로 시그니처를 생성하는 것에 대하여, 자동으로 분류하고 작업을 수행하도록 하여 네트워크 보안에 따른 시그니처를 자동으로 생성하는 해싱결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법에 관한 것이다. The present invention relates to a signature clustering method based on attack signature classification using a bit-vector of a hashing result. In particular, the security system periodically classifies and performs a task for generating a signature, and according to network security. The present invention relates to a signature clustering method based on attack signature classification using a bit-vector of a hashing result value that automatically generates a signature.

본 발명은 지식경제부 및 정보통신연구진흥원의 IT성장동력기술개발의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-042-03, 과제명: Network 위협의 Zero-Day Attack 대응을 위한 실시간 공격 Signature 생성 및 관리 기술개발].The present invention is derived from the research conducted as part of the IT growth engine technology development of the Ministry of Knowledge Economy and the Ministry of Information and Communication Research and Development. [Task management number: 2006-S-042-03, Task name: Countering Zero-Day Attack of Network Threats] Development of real-time attack signature generation and management technology for

서비스 보호를 위한 보안장치 및 기술은, 보호대상이 되는 서버에서 어플리케이션 특성을 추출하고 이를 서버에 접속하는 사용자에 적용하여 비정상 사용자를 탐지하는 기술로 특징 지을 수 있다. The security device and technology for service protection may be characterized as a technology for detecting an abnormal user by extracting application characteristics from a server to be protected and applying the same to a user accessing the server.

네트워크의 보안을 위해서는 우선 공격 패킷들의 특성을 파악하여 두는 작업이 필요하다. 이러한 공격 패킷의 특성을 시그니처(signature)로 등록해두고, 수신된 패킷에서 등록된 시그니처가 감지되면 그에 해당하는 보안정책을 적용하여 악성 사용자나 프로그램으로부터 대상 네트워크를 보호하게 된다. For the security of the network, it is necessary to first understand the characteristics of attack packets. The signature of the attack packet is registered as a signature, and when a signature registered in the received packet is detected, the corresponding security policy is applied to protect the target network from malicious users or programs.

종래의 자동 시그니처 생성기술은 시그니처의 클러스터링에 대하여 시그니처를 하이어락키컬 클러스터링(Hierarchical Clustering)하는 기법에 의해 적용되었다. 이 기법의 경우 생성하고자 하는 시그니처의 컨텐츠(contents)를 각각의 토큰(token)화 한 후, 각 토큰(token)간의 서브시퀀스(subsequence)와 콘젝션(conjunction)에 해당하는 각각의 규칙을 이용한다. The conventional automatic signature generation technique is applied by a technique of hierarchical clustering of signatures with respect to clustering of signatures. In this technique, after the contents of the signature to be generated are tokenized, each rule corresponding to the subsequence and the convention between each token is used.

종래의 침입패턴 생성시스템은 정상트래픽과 비정상트래픽의 데이터에 대한 k-means와 같은 디스턴스 클러스터링 기법을 적용하여, 아웃라이어에 대하여 시그니처로 적용하였다. The conventional intrusion pattern generation system applies distance clustering techniques such as k-means for data of normal traffic and abnormal traffic, and applies them to signatures for outliers.

소정수의 플로우가 있으면, 종래 폴리그래프(Polygraph)에서 이용한 기술은 상기 수의 클러스터(Cluster)를 구성하고, 각각의 클러스터(Cluster)는 하나의 플로우를 포함하도록 한다. 그러나, 이 기술은 오프라인(off-line)으로 운영되므로, 온라인(on-line)상의 새로운 시그니처를 실시간으로 처리하지는 못한다. If there is a certain number of flows, the technique used in the conventional Polygraph constitutes the above number of clusters, and each cluster includes one flow. However, because the technology is operated off-line, it cannot process new signatures on-line in real time.

이후에 하이어락키컬 클러스터링(Hierarchical Clustering) 방법을 이용하여 반복적으로 클러스트(Cluster)들을 병합(merge)한다. 이때 사용하는 클러스트링(clustering) 방법은 그레디 클러스터링(greedy Clustering) 방법이다. Thereafter, clusters are repeatedly merged using Hierarchical Clustering. The clustering method used at this time is a gradient clustering method.

기존 연구의 경우 여러 개의 규칙에 대하여 하나의 객체를 멀티패턴 매칭을 수행하기 위하여 다량의 메모리와 많은 수의 연산이 필요하였다. 또한, 현재의 객 체가 기존의 패턴의 서브셋인지 판단하는 알고리즘은 없었다. In the previous research, a large amount of memory and a large number of operations were required to perform a multi-pattern matching on an object with respect to several rules. In addition, there was no algorithm to determine if the current object is a subset of the existing pattern.

그에 따라 유사성 또는 포함성 판단을 통한 시그니처 자동 생성 및 관리가 가능하고 빠른 작업처리를 수행하는 시스템 개발이 필요하다. Accordingly, it is necessary to develop a system that can automatically generate and manage signatures through similarity or inclusion judgment and perform fast work processing.

이러한 시그니처를 생성하기 위해 의심트래픽으로 선정된 5-튜플에서 생성되는 반복되는 컨텐츠에 대한 다량의 시그니처 후보군을 관리하고 군집화하기 위해 해싱의 결과값을 갖는 비트-벡터값을 이용하여 대표시그니처 후보를 생성하고 이러한 결과에 의해 일정시간마다 유사도 기반 클러스터링을 on-line으로 실시간 처리하기 위한 기술이 요구되고 있다. A representative signature candidate is generated by using a bit-vector value having a result of hashing to manage and cluster a large number of signature candidate groups for repeated contents generated from 5-tuples selected as suspicious traffic to generate such a signature. As a result, a technique for real-time processing of similarity-based clustering on-line every time is required.

또한, 하나의 시그니처가 다른 시그니처에 포함되는지 사전확인을 통하여 다량의 트래픽이 유입되더라도, 데이터 관리에 도움을 준다. 또한, 시그니처로 생성하는 것에 그치지 않고, 시그니처의 컨텐츠를 포함하고 있는 트래픽 데이터를 캡춰할 수 있도록, 트래픽이 유입되는 시점에 5-tuple정보를 시그니처 정보와 동시에 전송할 수 있는 기술이 필요하다. In addition, even if a large amount of traffic flows through prior confirmation whether one signature is included in another signature, it helps in data management. In addition, a technology capable of transmitting 5-tuple information at the same time as the signature information at the time of the traffic flow is needed to capture the traffic data including the content of the signature.

본 발명의 목적은, 입력되는 데이터를 해싱하여 반복 생성되는 컨텐츠의 내용에 따라 관리하고, 소정시간 간격으로 클러스터링하여 유사성에 따라 군집화 하고 군집화된 시그니처 후보군에 대하여 시그니처를 생성하고, 생성된 시그니처를 이용하여 유입되는 패킷을 분석하는 해싱 결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법을 제공하는데 있다. An object of the present invention is to hash the input data, manage it according to the content of the content repeatedly generated, cluster at intervals of a predetermined time, generate a signature for the clustered signature candidate group according to similarity, and use the generated signature. The present invention provides a signature clustering method based on attack signature classification using a bit-vector of hashing result values for analyzing incoming packets.

상기한 과제를 해결하기 위한 본 발명에 따른 시그니처 클러스터링 방법은 보안시스템이, 유입되는 패킷으로부터 시그니처 후보로 유력한 유력메시지를 추출하는 단계; 상기 유력메시지가 첫번째 메시지인 경우, 상기 유력메시지를 오버랩핑 해싱하고, 그 해쉬값을 이용하여 비트벡터테이블을 갱신하여 상기 유력메시지를 등록하는 단계; 상기 유력메시지가 첫번째 메시지가 아닌 경우, 상기 유력메시지를 컨시큐티브 해싱(Consecutive hashing)하고, 그 해쉬값을 상기 비트벡터테이블로부터 검색하는 단계; 및 상기 검색결과, 상기 비트벡터테이블에 상기 해쉬값이 존재하는 않는 경우 상기 등록단계를 수행하고, 상기 해쉬값이 존재하는 경우, 처리결과를 출력하는 단계를 포함한다.
시그니처 컨텐츠가 유입된 생성시간을 기록하고, 생성시간을 기준으로 경과시간이 기 설정된 기준시간 이상인 경우, 보안시스템이, 유입된 데이터를 리셋하는 단계; 상기 경과시간이 기 설정된 클러스터링 시간보다 큰 경우, 발생빈도 및 유사도에 기반하여 상기 시그니처 컨텐츠에 대한 시그니처 후보를 생성하는 단계; 및 상기 시그니처 후보와 기 등록된 시그니처의 유사성 분석을 통해, 상기 시그니처 후보를 새로운 시그니처로써 시그니처 풀(SP)에 등록하는 단계를 포함한다.
The signature clustering method according to the present invention for solving the above problems comprises the steps of: extracting a strong message as a signature candidate from the incoming packet, the security system; If the message is a first message, overlapping and hashing the message, and updating the bit vector table using the hash value to register the message; If the force message is not the first message, consequently hashing the force message and retrieving the hash value from the bit vector table; And performing the registration step if the hash value does not exist in the search result, the bit vector table, and outputting a processing result if the hash value exists.
Recording a generation time in which the signature content flows, and resetting the inflowed data by the security system when the elapsed time is greater than or equal to a preset reference time based on the generation time; Generating a signature candidate for the signature content based on a frequency of occurrence and a similarity when the elapsed time is greater than a preset clustering time; And registering the signature candidate in the signature pool SP as a new signature through an analysis of the similarity between the signature candidate and a previously registered signature.

또한, 상기 데이터 리셋 시, 상기 경과시간이, 시그니처 풀 리셋시간, 시그니처 후보 노드 리셋시간 및 시그니처 노드 최대수 중 적어도 하나에 대한 기준시간보다 큰 경우, 상기 시그니처 풀 또는 상기 시그니처 후보 노드를 리셋하는 것을 특징으로 한다. In addition, when the data is reset, when the elapsed time is greater than a reference time for at least one of a signature pool reset time, a signature candidate node reset time, and a maximum number of signature nodes, resetting the signature pool or the signature candidate node is performed. It features.

삭제delete

또한, 상기 후보생성 시, 상기 시그니처 컨텐츠에서, 시그니처 그룹(SG)의 리스트에 대한 발생빈도수(Hit_count)가 빈도한계값(Hitcount_th)보다 큰 노드를 추출하여 별도의 리스트를 형성하고, 상기 리스트에 존재하는 노드의 수가 소정 수 이상인 경우, 상기 각 노드 상호 간의 유사성 테이블을 형성하며, 상기 유사성 테이블에서, 유사성 값이 유사성한계값(resemble_th)보다 큰 노드들에 대하여 하나의 링크드리스트 형태의 그룹을 형성하는 것을 특징으로 한다. 상기 그룹에 대하여, 하나의 그룹 내에 속한 노드에 대해 2개의 노드간에 동일 문자열을 추출하는 LCSeq(Longest Common Subsequence)를 수행하여, 공통적으로 발생하는 시퀀스를 기준으로 문자열 집합을 생성하여 한 그룹핑내에서 하나의 시그니처 후보를 생성한다. In addition, when generating the candidate, in the signature content, a node having a frequency count Hit_count for the list of the signature group SG is greater than a frequency limit Hitcount_th is formed to form a separate list, and exists in the list. When the number of nodes is greater than or equal to a predetermined number, a similarity table is formed between each node, and in the similarity table, one linked list type group is formed for nodes whose similarity value is greater than the similarity limit value (resemble_th). It is characterized by. For the group, LCSeq (Longest Common Subsequence) for extracting the same string between two nodes for a node belonging to one group is performed to generate a set of strings based on a commonly occurring sequence and to generate one in one grouping. Generates the signature candidate of.

상기 시그니처 후보를 시그니처 관리를 위한 시그니처 풀(SP)에 등록하기 위하여, 기존의 시그니처 풀(SP) 내의 시그니처와 유사성을 점검하고, 상기 시그니처 후보보다 유사도가 큰 유사성을 갖는 기존의 시그니처가 존재하는 경우, 기존의 시그니처와 현재의 시그니처의 LCSeq(Longest Common Subsequence)를 수행하여, 그 결과를 기존의 시그니처가 위치하는 시그니처 풀(SP)에 등록하고, 상기 유사도가 크지 않은 경우, 현재 그룹핑에 의해 생성된 시그니처를 시그니처 풀(SP)에 등록한다. In order to register the signature candidate in the signature pool SP for signature management, if there is a similarity with the signature in the existing signature pool SP, and if there is an existing signature having a similarity with a greater similarity than the signature candidate In this case, LCSeq (Longest Common Subsequence) of the existing signature and the current signature is performed, and the result is registered in the signature pool (SP) in which the existing signature is located, and if the similarity is not large, generated by the current grouping. The signature is registered in the signature pool SP.

상기 시그니처 풀(SP)이 비어 있지 않은 경우, 현재 유입되는 시그니처 컨텐츠에 대해 3-그램 컨시큐티브 해싱(Consecutive 3-gram hashing)을 수행하고, 그 해쉬값을 이용하여 시그니처와 패턴매칭을 수행하여 상기 시그니처 컨텐츠가 기존의 시그니처 풀(SP)에 존재하는지 여부를 확인하는 것을 특징으로 한다.When the signature pool SP is not empty, 3-gram congestive 3-gram hashing is performed on the current signature content, and signature and pattern matching are performed using the hash value. It is characterized by checking whether the signature content exists in the existing signature pool SP.

상기 시그니처 컨텐츠의 마지막까지 3-그램 컨시큐티브 해싱(Consecutive 3-gram hashing) 을 수행한 결과 전체결과테이블에 적어도 하나의 엔트리가 존재하는 경우, 존재하는 모든 엔트리와 현재 유입된 시그니처 후보 컨텐츠와 패턴매칭을 수행하는 것을 특징으로 한다.If there is at least one entry in the overall result table as a result of performing 3-gram congestive 3-gram hashing until the end of the signature content, all entries present and signature candidate contents and patterns currently introduced are present. It is characterized by performing a matching.

상기 패턴매칭 결과, 정확히 일치하는 경우 현재의 시그니처 컨텐츠에 대한 시그니처가 이미 생성되었다는 것을 나타내는 플래그(FLAG) 값을 설정하고, 5-튜플(tuple)을 포함한 시그니처를 생성하여, 시그니처를 이용하는 프로세스에 전송하는 것을 특징으로 한다.As a result of the pattern matching, a flag (FLAG) value indicating that a signature for the current signature content has already been generated, if it matches exactly, generates a signature including a 5-tuple, and transmits the signature to a process using the signature. Characterized in that.

본 발명에 따르면, 해싱 결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법은 복수의 규칙에 대하여 하나의 객체를 멀티패턴 매칭하는 경우, 규칙관리 시 오버랩핑 해싱(Overlapping Hashing)을 이용하고, 규칙과의 비교에는 컨시큐티브 해싱(Consecutive Hashing)을 적용하여, 복수의 규칙을 적용하는데 있어서, 객체에 대한 해쉬값에 대응하여 연산을 수행하여, 다량의 문서들로부터 특정 단어가 포함된 텍스트를 찾음으로써, 작업 수행에 따른 소요시간이 크게 감소되는 효과가 있다. 또한, 본 발명은 비트 운영을 통해 하드웨어로의 구현이 용이하므로, 하드웨어를 이용한 빠른 패턴매칭이 가능한 효과가 있다. According to the present invention, the signature clustering method based on the attack signature classification using the bit-vector of the hashing result value uses overlapping hashing when managing rules when multi-pattern matching of one object with respect to a plurality of rules is performed. In comparison with the rule, Consecutive Hashing is applied, and in applying a plurality of rules, the operation is performed corresponding to the hash value of the object so that a specific word is included from a large amount of documents. By finding the text, the time required to perform the task is greatly reduced. In addition, since the present invention can be easily implemented in hardware through bit operation, there is an effect capable of fast pattern matching using hardware.

또한 본 발명은 상기와 같이 시그니처 후보를 관리하고, 유사성에 대응하여 복수의 노드를 그룹핑하고, 그룹내에서의 시그니처를 생성하여, 데이터 삽입시 유사도를 기반으로 클러스터링이 가능하므로, 동질성을 갖는 데이터만으로 트리를 형성할 수 있고, 온라인상으로 운영되어 실시간 처리가 가능한 효과가 있다. In addition, the present invention manages the signature candidates as described above, groups a plurality of nodes in response to similarity, generates a signature within the group, and clusters based on the similarity when inserting data. Trees can be formed and operated online to effect real-time processing.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하면 다음과 같다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

도 1 은 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 유력 메시지의 구성 설명에 참조되는 도이다.1 is a view referred to for explaining the configuration of a strong message used in the signature clustering method according to an embodiment of the present invention.

본 발명의 보안시스템은 복수개의 시그니처 후보군에 대하여, 그 수에 대응하여 검색을 수행함으로써, 시그니처 후보가 속한 집합을 찾아낸다. 시그니처 비트-맵(bit-map)을 이용하여 패턴 등재시와 패턴 매칭시의 해싱 방법을 달리하여 보다 빠른 검색결과를 도출한다. The security system of the present invention searches for a plurality of signature candidate groups by searching corresponding to the number of signature candidate groups, thereby finding a set to which the signature candidates belong. The signature bit-map is used to derive faster search results by different hashing methods for pattern listing and pattern matching.

그에 따라, 시그니처 클러스터링 방법은 기존의 데이터베이스(DB)에 저장되어 있는 시그니처들에 대하여 포함성을 적용하여 대표 시그니처로서 재정의할 수 있다. 또한, 시그니처 수가 증가하면 할수록 보안시스템에서 패턴매칭을 이용하기 위해서 어프록시메이트 패턴 매칭(Approximate Pattern Matching)을 수행하고, 그 결과에 대하여 이그잭트 패턴매칭(Exact pattern Matching)을 적용한다. Accordingly, the signature clustering method may be redefined as a representative signature by applying inclusion to signatures stored in an existing database (DB). In addition, as the number of signatures increases, Approximate Pattern Matching is performed to use pattern matching in the security system, and Exact pattern matching is applied to the result.

상기와 같이 동작되는 본 발명의 보안시스템은 시그니처 클러스터링을 수행하는데 있어서, 도 1에 도시된 바와 같은 구조를 갖는 유력 메시지가 입력되면, 이를 해싱하고 클러스터링하여 시그니처를 생성한다. In the security system of the present invention operating as described above, when a powerful message having a structure as shown in FIG. 1 is input, the signature system is hashed and clustered to generate a signature.

보안시스템의 시그니처는 도 1와 같이 아스키 코드값이거나 문자열로 구성된다(10, 11내지 18). 보안시스템은 상기와 같은 데이터의 값을 모두 보관하기보다는 이러한 아스키 코드 또는 문자열(10, 11내지 18)을 대신할 수 있는 축약된 비트의 객체를 이용한다. The signature of the security system is an ASCII code value or a string as shown in FIG. 1 (10, 11-18). The security system uses shortened bits of objects that can replace these ASCII codes or strings (10, 11-18) rather than storing all the values of such data.

이때, 보안 시스템은 상기와 같은 방법을 통해, 자카드인덱스(Jaccard index, Jaccard similarity coefficient)와 같이 스트링의 문자열을 모두 가지고 있지 않고, 축약된 정보만을 이용하여 유사성과 포함성을 판단한다. In this case, the security system does not have all the strings of strings such as Jaccard index (Jaccard index, Jaccard similarity coefficient), and determines similarity and inclusion using only the abbreviated information.

보안 시스템은, 스트링을 포함하는 문서 A와 문서 B가 존재할 때, A와 B의 유사성은 0과 1 사이의 값을 갖게 된다. 그에 따른 유사성은 다음 수학식 1에 의해 산출된다. 즉, 문서 A와 문서 B의 합집합과 교집합의 비율에 대한 절대값으로써 유사성을 산출할 수 있다. The security system has a similarity between A and B when a document A and a document B containing a string exist, having a value between 0 and 1. The similarity is calculated by the following equation (1). That is, the similarity can be calculated as an absolute value for the ratio of the union and intersection of the documents A and B.

Figure 112008088108322-pat00001
Figure 112008088108322-pat00001

또한, 보안 시스템은 상기와 같이 산출되는 유사성에 기반하여, 문서 A와 문서 B의 논리적 거리(Distance)를 다음 수학식2를 이용하여 산출한다. In addition, based on the similarity calculated as described above, the security system calculates the logical distance between the document A and the document B using the following equation (2).

Figure 112008088108322-pat00002
Figure 112008088108322-pat00002

Figure 112008088108322-pat00003
Figure 112008088108322-pat00003

보안 시스템은 전술한 수식에 따라, 상기 수학식 3을 이용하여 문서 A가 문서 B에 포함될 확률을 연산한다. 이때, 보안시스템에서 문서 A와 B의 포함성은 0과 1 사이의 값을 갖는다.The security system calculates the probability that document A is included in document B using Equation 3 according to the above formula. In this case, the inclusion of documents A and B in the security system has a value between 0 and 1.

본 발명의 보안시스템은 상기와 같이 유사성과 포함성을 산출하기 위해, 각 문서를 문자, 워드, 줄 등의 단위의 토큰(Token)으로 분리하는 작업을 우선 수행한다. In order to calculate similarity and inclusion as described above, the security system of the present invention first performs a task of separating each document into tokens in units of characters, words, and lines.

보안시스템은 상기와 같이 문서를 토큰화 하기 위해 토크나이저(Tokenizer)를 구성하고, 입력되는 각 문서에 대하여, 일정한 패턴의 연속적인 토큰(Token)으로 인식한다. The security system constructs a tokenizer to tokenize a document as described above, and recognizes each input document as a continuous token of a predetermined pattern.

이때, 토큰(token)을 시그니처에 적용하기 위해서는 도1에서 각 행 별 내용(11 내지 18)을 각각 하나의 컨턴츠로 정의하고, 전체 시그니처인 멀티컨텐츠(10)를 문서로 맵핑하여 적용한다. In this case, in order to apply the token to the signature, the contents 11 to 18 of each row in FIG. 1 are defined as one content, and the multi-signature 10, which is the entire signature, is mapped and applied to the document.

그에 따라 보안시스템은 개별 컨텐츠(11~18)인 서브시퀀스(subsequence)를 그룹핑 하여 집합화하고, 집합을 멀티 컨텐츠로서 하나의 시그니처(10)를 구성한다. Accordingly, the security system groups and collects subsequences, which are individual contents 11 to 18, and configures the signature 10 as a multi-content set.

본 발명의 시스템은 네트워크의 트래픽에 대하여 의심트래픽의 컨텐츠로 분류된 데이터셋을 기초로 동작한다. 이렇게 입력되는 데이터셋에 대하여 3그램 해싱(3-gram Hashing)을 통하여 반복하여 생성되는 컨텐츠들을 그 컨텐츠 내용에 따라 관리하는 작업을 진행한다. The system of the present invention operates based on a dataset classified as the content of suspicious traffic for the traffic of the network. In this way, a process of repeatedly managing the generated data set through 3-gram hashing according to the contents of the contents is performed.

이러한 절차에 의해 일정시간마다 클러스터링을 진행하여, 계산되는 유사성에 의해 군집화되고, 군집화된 시그니처 후보군에 대하여 하나의 시그니처를 생성하는 기능을 포함한다. This procedure includes clustering every predetermined time, and clustering by similarity calculated, and generating one signature for the clustered signature candidate group.

이렇게 생성된 시그니처는 시그니처 풀(SP)에 등재되어, 이후부터 유입되는 모든 컨텐츠에 대하여 컨텐츠 매칭을 수행하여 해당하는 시그니처를 포함하는 5-튜플(tuple)정보를 추출하여, 현재 유입되는 패킷데이터에 대하여 상세한 분석을 할 수 있도록 도움을 줄 수 있다. The signature generated in this way is registered in the signature pool (SP), performs content matching on all incoming contents thereafter, extracts 5-tuple information including a corresponding signature, and extracts the current tuple information to the currently flowing packet data. It can help you do a detailed analysis.

본 발명은 이러한 시그니처를 생성하기 위해 의심트래픽으로 선정된 5-튜플에서 생성되는 반복되는 컨텐츠에 대한 다량의 시그니처 후보군을 관리하고 군집화하기 위해 해싱의 결과값을 갖는 비트-벡터값을 이용하여 대표시그니처 후보를 생성하고 이러한 결과에 의해 일정시간마다 유사도 기반 클러스터링을 온라인(on-line)으로 실시간 처리하도록 한다.The present invention utilizes a bit-vector value having a result of hashing to manage and cluster a large number of signature candidate groups for repeated content generated from 5-tuples selected as suspicious traffic to generate such a signature. Candidates are generated and these results allow for real-time processing of similarity-based clustering on-line at regular intervals.

또한, 본 발명에서는 하나의 시그니처가 다른 시그니처에 포함되는지 사전확인을 통하여 다량의 트래픽이 유입되더라도, 데이터 관리에 도움을 준다. 또한, 시그니처로 생성하는 것에 그치지 않고, 시그니처의 컨텐츠를 포함하고 있는 트래픽 데이터를 캡춰 할 수 있도록, 트래픽이 유입되는 시점에 5-튜플(tuple)정보를 시그니처 정보와 동시에 전송한다.In addition, in the present invention, even if a large amount of traffic flows through prior confirmation whether one signature is included in another signature, it helps in data management. In addition to generating signatures, 5-tuple information is simultaneously transmitted with signature information at the time when traffic flows so that traffic data including the contents of the signature can be captured.

도 2 는 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 해싱방법의 설명에 참조되는 도이다. 도 2의 (a)는 오버랩핑 해싱을 나타내는 도이고, 도 2의 (b)는 컨시큐티브 해싱을 나타낸 도이다.2 is a diagram referred to for describing a hashing method used in a signature clustering method according to an embodiment of the present invention. FIG. 2A is a diagram illustrating overlapping hashing, and FIG. 2B is a diagram illustrating concentric hashing.

보안시스템은 3-그램 해싱(3 gram-hashing)을 적용하기 위하여, 두가지의 해싱 방법을 사용한다. The security system uses two hashing methods to apply 3-gram hashing.

보안시스템은 규칙으로 사용될 패턴에 대한 해싱테이블을 형성하기 위하여 슬라이딩 윈도우(Sliding Window) 기법에 따라 1바이트씩 이동하는 오버랩핑 해싱(Overlapping 3-gram hashing)(51) 방식과, 규칙을 포함하는 비트-벡터 테이블(Bit vector table)의 내용과 현재의 컨텐츠를 하나씩 비교하기 위하여 사용하는 3-바이트 슬라이딩 컨시큐티브 해싱(Consecutive 3-gram Hashing)(52) 방식을 사용한다. The security system uses an overlapping 3-gram hashing 51 method that moves by 1 byte according to a sliding window technique to form a hashing table for a pattern to be used as a rule, and a bit including a rule. It uses a 3-byte sliding 3-gram hashing (52) scheme used to compare the contents of the bit table with the current contents one by one.

보안시스템은, 동일한 문자열에 대하여 오버랩핑 해싱(Overlapping 3-gram Hashing)(51)은 3-바이트 수퍼 알파벳(super-alphabet)에 대한 해쉬값을 크기 9인 문자열에 대하여 9-2개의 해쉬값을 생성하고, 컨시큐티브 해싱(Consecutive 3-gram Hashing)(52) 3-바이트 수퍼 알파벳(super-alphabet)에 대한 해쉬값을 크기 9인 문자열에 대하여 9/3개의 해쉬값을 생성한다. The security system uses overlapping 3-gram hashing (51) for the same character string to generate a hash value for the 3-byte super-alphabet and a 9-2 hash value for a string of size 9. And a hash value for the Consecutive 3-gram Hashing (52) 3-byte super-alphabet to generate 9/3 hash values for a string of size 9.

예를 들어, 도 2 의 (a)와 같이 슬라이딩 윈도우를 적용한 오버랩핑 해싱(51)의 경우, 입력된 데이터에 대하여 해싱에 따른 문자열의 크기를 지정하고, 문자열의 크기에 따라 첫번째 윈도우는 ‘85, ff, 53’, 두번째 윈도우는 ff, 53, 4d, 세번째 윈도우는 ‘53, 4d, 42’로 설정되어 해싱이 수행된다. For example, in the case of the overlapping hashing 51 to which the sliding window is applied as shown in FIG. 2 (a), the size of a string according to hashing is specified for the input data, and the first window is '85 , ff, 53 ', the second window is set to ff, 53, 4d, and the third window is set to '53, 4d, 42' and hashing is performed.

한편, 도 2의(b)와 같이 컨시큐티브 해싱(52)의 경우에는 지정된 문자열의 크기에 따라 첫번째 윈도우는 ‘85, ff, 53’, 두번째 윈도우는 ‘4d, 42, 72’로 나누어서 해싱이 수행된다. On the other hand, as shown in (b) of FIG. 2, in the case of the concatenated hashing 52, the first window is hashed by dividing the first window into '85, ff, 53 'and the second window by' 4d, 42, 72 '. This is done.

보안시스템은 상기와 같이 규칙으로 사용할 패턴 셋에 대해서는 더 많은 해쉬값을 생성하게 하면, 기존의 규칙과 비교할 현재 문자열의 값은, 연산의 수를 줄일 수 있게 된다. If the security system generates more hash values for the pattern set to be used as a rule as described above, the value of the current string to be compared with the existing rule can reduce the number of operations.

도 3 은 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 비트벡터 테이블의 구조 설명에 참조되는 도이다. 3 is a diagram referred to for describing a structure of a bit vector table used in the signature clustering method according to an embodiment of the present invention.

전술한 도 2의 두가지 방식의 해쉬함수를 이용하여 해쉬값이 산출되면, 보안시스템은 도 3에 도시된 바와 같이 구성되는 비트 벡터 테이블의 해당 메모리 영역에 1을 설정한다. When the hash value is calculated using the hash method of the two methods of FIG. 2 described above, the security system sets 1 to the corresponding memory area of the bit vector table configured as shown in FIG.

해쉬값이 형성되면, 보안 시스템은 도 3과 같은 형태의 비트벡터메모리에, 해쉬값을 이용하여, 그에 대응되는 위치에 저장한다. When the hash value is formed, the security system stores the hash value in the bit vector memory of the form shown in FIG.

여기서, X축(62)는 시그니처 인덱스로서, 비트-벡터 테이블에 규칙으로 삽입되는 시그니처 또는 시그니처 후보의 관리 인덱스를 의미한다. Y축(63)은 2가지 해쉬함수의 알고리즘에 의해 사전에 정의되는 해싱 결과값의 범위(0 ~ MAX-1)를 나타낸다. Here, the X-axis 62 is a signature index, and means a management index of a signature or signature candidate inserted in a bit-vector table as a rule. The Y axis 63 represents a range (0 to MAX-1) of hashing result values predefined by the two hash function algorithms.

비트-벡터테이블은 시그니처 후보를 관리하기 위해 사용되며, 시그니처 풀(SP)에 존재하는 각각의 시그니처 패턴을 관리하기 위해서도 사용된다.The bit-vector table is used to manage the signature candidates, and is also used to manage each signature pattern present in the signature pool SP.

도 4 는 본 발명의 일실시예에 따른 시그니처 포함성 기반의 노드 관리 방법에 따른 동작설명에 참조되는 순서도이다.4 is a flowchart of an operation description according to a node management method based on signature inclusion according to an embodiment of the present invention.

유입되는 패킷에 대하여(S110), 유력한 메시지(Prevalent MSG)를 추출한다(S120). 이때, 메시지(Prevalent MSG)를 목적지 포트 별로 관리한다.With respect to the incoming packet (S110), a strong message (Prevalent MSG) is extracted (S120). At this time, a message (Prevalent MSG) is managed for each destination port.

현 포트의 첫번째 메시지인 경우(S130), 기존의 패턴을 관리하는 비트벡터테이블이 초기상태이므로 메시지(Prevalent MSG)에 대하여 등록을 수행한다. In the case of the first message of the current port (S130), since the bit vector table managing the existing pattern is in an initial state, registration is performed for the message (Prevalent MSG).

오버랩핑 해싱(Overlapping hashing)을 수행하고(S140), 해쉬값을 이용하여 시그니처 후보 비트 벡터 테이블을 갱신한다(S150). 마지막에 도달하기까지 상기와 같은 해싱 및 시그니처 후보 비트 벡터 테이블 갱신을 반복한다(S140 내지 S160)Overlapping hashing is performed (S140), and the signature candidate bit vector table is updated using the hash value (S150). The above hashing and signature candidate bit vector table update is repeated until the end (S140 to S160).

이때, 메시지(Prevalent MSG) 데이터를 1바이트 쉬프트 이동하는 슬라이딩-윈도우 기법을 적용하여 3-그램 오버랩핑 해싱 (Overlapping 3-gram hashing) 처리하고, 그에 따른 처리된 결과값인 해쉬값을 비트-벡터테이블의 해당하는 영역에 업데이트한다. At this time, a 3-gram overlapping hashing process is performed by applying a sliding-window technique of shifting the message (Prevalent MSG) data by 1 byte, and the resulting hash value is a bit-vector. Update to the corresponding area of the table.

첫번째 규칙의 경우 X열(62)의 첫번째에 위치하게 되며, 해싱 결과값의 발생범위가 1M일 경우, 비트-벡터의 Y열(63)의 최대값(MAX)은 1M-1이 된다. 해싱 결과값은 충돌 정도를 고려하여 재조정 가능하다. 1바이트 쉬프트 슬라이딩-윈도우를 적용한 오버랩핑 해싱(Overlapping Hashing)과 비트벡터테이블의 업데이트에 대하여 메시지(Prevalent MSG)의 마지막에 이를 때까지 적용한다. 해당 메시지(Prevalent MSG)의 끝까지 해싱을 완료하였으면, 루프를 빠져나온다.In the case of the first rule, it is positioned at the first of the X column 62, and when the generation range of the hashing result value is 1M, the maximum value MAX of the Y column 63 of the bit-vector is 1M-1. The hashing result can be readjusted considering the degree of collision. Overlapping hashing with 1-byte shift sliding window and update of the bit vector table are applied until the end of the message (Prevalent MSG). Once the hashing has been completed to the end of the message (Prevalent MSG), the loop exits.

첫번째 메시지가 아닌 경우, 메시지에 대하여 컨시큐티브 해싱 (Consecutive 3-gram Hashing))을 수행한다(S170). 해싱 결과에 따라, 해쉬값을 시그니처 후보 맵의 비트 벡터 테이블에서 조회한다(S180). If it is not the first message, Consecutive 3-gram Hashing) is performed on the message (S170). According to the hashing result, the hash value is retrieved from the bit vector table of the signature candidate map (S180).

이때, 조회결과, 해쉬값이 존재하지 않는 것은 기존의 시그니처 후보군에 포함되지 않음을 의미한다. 이러한 시그니처 후보는 새롭게 비트-벡터테이블에 값을 등록하여야 하므로 앞서 설명한 바와 같이 메시지(Prevalent MSG)에 대한 등록 절차를 수행하게 된다(S140).  At this time, if the hash value does not exist as a result of the inquiry, it means that it is not included in the existing signature candidate group. Since the signature candidate must newly register a value in the bit-vector table, the signature candidate performs a registration procedure for the message (Prevalent MSG) as described above (S140).

한편, 조회 결과 해쉬값이 존재하는 경우, 엑티브(Active)로 검색되는 X열(602)의 인덱스(index) 값들을 현재결과테이블에 저장한다(S200). 이렇게 저장된 값과 초기에 모든 비트가 1로 설정된 전체결과테이블과 교집합을 하여(And 논리연산을 수행), 검색되는 X열(62)의 인덱스 값들을 추적한다. On the other hand, if there is a hash value as a result of the search, the index values of the X column 602 searched by Active are stored in the current result table (S200). By intersecting the stored value and the result table with all bits initially set to 1 (and performing a logical operation), the index values of the X column 62 to be searched are tracked.

루프가 수행되는 도중에 컨시큐티브 해싱(Consecutive 3-gram Hashing)의 해쉬값이 현재결과테이블, 전체결과테이블에 존재하지 않는 경우는 현재의 메시지(Prevalent MSG)의 컨텐츠가 기존의 패턴데이터베이스(DB)에 없음을 나타낸다(S210 내지 S260).If the hash value of Consecutive 3-gram Hashing is not present in the current result table or the entire result table during the loop, the contents of the current message (Prevalent MSG) are stored in the existing pattern database (DB). Not shown (S210 to S260).

도 5 는 본 발명의 일실시예에 따른 시그니처의 유사성 기반 시그니처 후보 관리 방법에 따른 동작설명에 참조되는 순서도이다.5 is a flowchart of an operation description according to a signature candidate management method based on similarity of signatures according to an embodiment of the present invention.

본 발명의 보안시스템은 상기와 같은 특징 중 클러스터링을 진행할 때, 각각의 객체간의 유사성을 판정하기 위해 유사성 항목을 사용하여 시그니처 후보를 관리한다. The security system of the present invention manages the signature candidate using the similarity item to determine the similarity between each object when performing clustering among the above features.

보안시스템은 모든 컨텐츠별로 클러스터링을 한 후, 끌어올리는방식(bottom-up)의 하이어락키컬 클러스터링(Hierarchical clustering)을 수행한다. 이때, 이러한 방법을 이용하기 위해서는 각 클러스터(cluster)가 구성되어 있어야 하므로, 오프라인(off-line)으로 배치(batch) 처리하여 클러스터링(clustering)한 후 이 결과를, 클러스터링(clustering) 수행 후 결과에 대하여 시그니처로서 적용가능한지 오탐지율(false positive rate)을 판정한다.The security system clusters all contents and then performs hierarchical clustering of bottom-up. At this time, in order to use this method, each cluster should be configured. Therefore, after batching off-line and clustering the result, the clustering is performed. Determine a false positive rate as applicable for the signature.

도 5에 도시된 바와 같이, 새로운 시그니처 컨텐츠가 유입되면(S310), 각 포트마다 첫번째 시그니처 후보가 유입될 때 생성시간이 기록된다. 이렇게 기록된 생 성시간과, 환경설정에 의해 사전에 설정된 시그니처 풀 리셋시간 (SP_reset), 시그니처 후보 노드 리셋시간(SG_reset), 시그니처 노드 최대수(SG_MAX), 클러스터링 시간(CL_time)와 비교한 후 이에 적절한 행동을 취하게 된다.As shown in FIG. 5, when a new signature content is introduced (S310), a generation time is recorded when the first signature candidate is introduced for each port. This recorded time is compared with the signature full reset time (SP_reset), signature candidate node reset time (SG_reset), maximum number of signature nodes (SG_MAX), and clustering time (CL_time). Take appropriate action.

먼저 유입된 시그니처 컨텐츠에 의해, 경과시간이 시그니처 풀 리셋시간(SP_reset)보다 큰 경우(402)에는(S320), 현 목적지 포트의 시그니처 풀(SP)과 시그니처 그룹(SG)을 리셋하고(S330), 해당 객체의 스트럭처 각각을 메모리에서 배포한다(free)(S340). 그리고 현 프로세스의 종료 후, 하고, 다음 시그니처 컨텐츠를 수신하기 위하여 대기한다.If the elapsed time is greater than the signature pool reset time SP_reset (S320) (S320), the signature pool (SP) and the signature group (SG) of the current destination port are reset (S330). In operation S340, each structure of the corresponding object is free from memory. After the end of the current process, it waits to receive the next signature content.

한편, 경과시간이 시그니처 풀 리셋시간 (SP_reset)보다 크지 않고, 유입된 시그니처 컨텐츠에 의해, 경과시간이 시그니처 후보 노드 리셋시간(SG_reset)보다 큰 경우(S350), 현 목적지포트의 시그니처 그룹에서 발생빈도수(Hit_count)값이 빈도한계값/2(Hit_Threshold/2) 이하의 시그니처 후보 노드에 대하여 리셋하며 (S360), 관련 링크드 리스트를 관리한다. On the other hand, if the elapsed time is not greater than the signature full reset time (SP_reset) and the elapsed time is larger than the signature candidate node reset time (SG_reset) due to the inflowed signature content (S350), the occurrence frequency in the signature group of the current destination port The (Hit_count) value is reset for signature candidate nodes having a frequency threshold value equal to or less than Hit Threshold / 2 (S360), and the associated linked list is managed.

리셋 되는 시그니처 노드는 메모리에서 배포되며(S370) 링크드리스트에서도 삭제되고, 앞 노드의 다음(next) 위치에 현 노드의 다음을 위치하게 한다. 그리고 현 프로세스를 종료하고, 다음 시그니처 컨텐츠를 수신하기 위하여 대기한다.The signature node to be reset is distributed in the memory (S370) and deleted from the linked list, so that the next node of the current node is located next to the next node. Terminate the current process and wait to receive the next signature content.

여기서, 유입된 시그니처 컨텐츠에 의해, 시그니처 후보 노드의 수가 사전에 정의된 최대 노드수(MAX_node)보다 클 경우(S380), 노드를 관리하고, 메모리를 해제한다. 그리고, 현 프로세스를 종료하고, 다음 시그니처 컨텐츠를 수신하기 위해 대기한다.Here, when the number of signature candidate nodes is larger than the predefined maximum number of nodes MAX_node (S380), the signatures are managed and the memory is released. The process then terminates and waits to receive the next signature content.

시그니처 후보 노드의 수가 사전에 정의된 최대 노드수(MAX_ node) 보다 클 경우(S380)에 대해서는 다음과 같다. If the number of signature candidate nodes is larger than the predefined maximum number of nodes MAX_node (S380), the following is the case.

도 6 은 본 발명의 일실시예에 따른 시그니처 후보 클러스터링 방법에 따른 동작설명에 참조되는 순서도이다.6 is a flowchart referred to for describing an operation according to the signature candidate clustering method according to an embodiment of the present invention.

도 6을 참조하면, 유입된 시그니처 컨텐츠(S310, 도4)에 의해, 경과시간이 클러스터링 시간(CL_time)보다 큰 경우(400), 시그니처 그룹(SG)의 리스트에 대하여 발생빈도수(Hit_count)가 빈도한계값(Hitcount_th)보다 큰 노드를 추출(S410)하여 별도의 링크드리스트를 형성한다. Referring to FIG. 6, when the elapsed time is greater than the clustering time CL_time (400), the frequency of occurrence (Hit_count) is high for the list of signature groups SG by the inflowed signature content S310 (FIG. 4). Nodes larger than the threshold value Hitth_th are extracted (S410) to form a separate linked list.

형성된 리스트에 존재하는 노드의 수가 소정 수(M)개인 경우, 상기 수의 노드에 대하여 서로간의 유사성 테이블을 형성(S420)한다. When the number of nodes existing in the formed list is a predetermined number (M), a similarity table is formed with respect to the number of nodes (S420).

이렇게 생성된 유사성 값이 유사성한계값(resemble_th)보다 큰 노드들에 대하여 하나의 링크드 리스트 형태의 그룹을 형성한다(S430). 다음 그룹은 현재그룹에서 포인팅 위치를 가지고 관리한다. The generated similarity value forms a group in the form of a linked list for nodes having a larger value than the similarity limit value (resemble_th) (S430). The next group is managed with the pointing position in the current group.

한 그룹핑 내에 속한 노드에 대해 2개의 노드간에 LCSeq(Longest Common Subsequence)를 수행(S440)하여, 공통적으로 발생하는 시퀀스를 기준으로 문자열 집합을 생성한다. 이때 LCSeq는 동일 문자열을 추출하는 패턴인식 알고리즘의 하나로, 다수개의 동일 문자열 중 가장 긴 문자열을 추출하되, 동일 문자열에 대하여 순서를 고려하여 추출하는 방식이다. 가장 긴 문자열을 추출함으로써 일부 패킷이 단편화되거나 미세하게 변경되어도 시그니처를 추출할 수 있고, 연속되지 않은 동일한 문자열의 검색이 가능한 특징이 있다. Longest Common Subsequence (LCSeq) is performed between two nodes for nodes belonging to one grouping (S440) to generate a string set based on a commonly occurring sequence. At this time, LCSeq is one of pattern recognition algorithms for extracting the same character string. The LCSeq extracts the longest character string among a plurality of identical character strings, and considers the same character strings in order. By extracting the longest string, the signature can be extracted even if some packets are fragmented or slightly changed, and it is possible to search for the same non-contiguous string.

이를 통하여 그룹핑 된 하나의 그룹 내에서 하나의 시그니처 후보를 결과로 제시한다. 이렇게 생성된 하나의 시그니처 후보는 시그니처를 관리하는 시그니처 풀(SP)에 등록하기 위하여, 기존의 시그니처 풀(SP)내의 시그니처와 유사성을 점검한다(S460). Through this, one signature candidate in a grouped group is presented as a result. The signature candidate thus generated checks the similarity with the signature in the existing signature pool SP in order to register with the signature pool SP managing the signature (S460).

이에 의하여 유사도 이상인 유사성을 갖는 기존의 시그니처가 존재하는 경우 기존의 시그니처와 현재의 시그니처의 LCSeq(Longest Common Subsequence)를 수행(S470)하여, 그 결과를 기존의 시그니처가 위치하는 시그니처 풀(SP)에 등록(S480)한다. As a result, when there is an existing signature having similarity or more than the similarity, the LCSeq (Longest Common Subsequence) of the existing signature and the current signature is performed (S470), and the result is placed in the signature pool (SP) where the existing signature is located. Register (S480).

시그니처 풀(SP)내의 시그니처와 유사성을 점검한 결과, 유사도보다 크지 않은 경우, 현재 그룹핑에 의해 생성된 시그니처를 시그니처 풀(SP)에 등록(S480)한다. As a result of checking the similarity between the signature in the signature pool SP and not greater than the similarity, the signature generated by the current grouping is registered in the signature pool SP (S480).

시그니처 풀(SP)에 등록 시, 시그니처 비트-벡터 테이블을 업데이트 하기 위하여, 3-그램 오버랩핑 해싱(Overlapping 3-gram hashing)을 수행하고(S490), 그 결과를 시그니처 비트-벡터 테이블에 업데이트(S550)한다. When registering to the signature pool SP, in order to update the signature bit-vector table, a 3-gram overlapping hashing is performed (S490), and the result is updated in the signature bit-vector table ( S550).

3-그램 데이터가 더 있다면 3-그램 오버랩핑 해싱(Overlapping 3-gram hashing)을 다시 수행하고(S510), 그렇지 않다면 다음 시그니처 컨텐츠를 수신하기 위해 현 프로세스를 종료한다.If there is more 3-gram data, 3-Lapping 3-gram hashing is performed again (S510), otherwise, the current process is terminated to receive the next signature content.

도 7 은 본 발명의 일실시예에 따른 최종 시그니처 클러스터링 방법에 따른 동작설명에 참조되는 순서도이다. 7 is a flowchart referred to for describing an operation according to the final signature clustering method according to an embodiment of the present invention.

도 7을 참조하면 새로운 시그니처가 유입된 후 전술한 도 5,6의 조건을 만족하지 않은 상태에서 시그니처 집합을 관리하는 시그니처 풀(SP)에 의해 2가지 흐름으로 관리된다(B). Referring to FIG. 7, after a new signature is introduced, two streams are managed by the signature pool SP managing the signature set in a state in which the conditions of FIGS. 5 and 6 are not satisfied (B).

먼저, 시그니처 풀(SP)이 비어있지 않은 경우는(S560), 현재 유입되는 시그니처 컨텐츠가 기존의 시그니처 풀(SP)에 존재하는 시그니처와 패턴매칭을 수행하여야 한다. First, when the signature pool SP is not empty (S560), the signature content and the pattern matching may be performed with the signature content currently flowing in the existing signature pool SP.

이러한 패턴매칭을 수행할 때, 시그니처 풀(SP) 내에 소정수(M)의 시그니처가 존재하더라도 소정수(M)에 대응하는 만큼 패턴매칭을 수행하는 것이 아니라, 적은 메모리를 사용하며 빠른 컴퓨팅 시간을 제공하기 위해 도 4에서 사용되었던 방법을 이 부분에 적용한다.When performing such pattern matching, even if there is a predetermined number M of signatures in the signature pool SP, the pattern matching is not performed as much as the corresponding number M, but it uses less memory and provides faster computing time. The method used in FIG. 4 to provide applies to this part.

시그니처 풀(SP)에 등록되는 시그니처 컨텐츠에 의해 시그니처 비트-맵에 등록되어 있는 해쉬값과 비교하는 작업을 진행하기 위해 3-그램 컨시큐티브 해싱(Consecutive 3-gram Hashing)을 마지막까지 수행한다(S660). In order to proceed with comparing the hash value registered in the signature bit-map by the signature content registered in the signature pool (SP), 3-gram Consistent 3-gram Hashing is performed until the end ( S660).

이러한 절차에 의해 패턴매칭 현재결과 테이블이 널(NULL)이 아니거나(S670), 패턴매칭 전체결과 테이블이 널(NULL)이 아니면(S680), 3-그램 데이터의 끝까지 반복작업을 수행한다(S690, S660 내지 S690). By this procedure, if the pattern matching current result table is not null (S670) or if the pattern matching result table is not null (S680), the operation is repeated until the end of the 3-gram data (S690). , S660 to S690).

3-그램 데이터의 마지막까지 3-그램 컨시큐티브 해싱(Consecutive 3-gram Hashing)을 수행한 결과 전체결과테이블이 널(NULL)이 아니면(S700), 다시 말해서 시그니처 비트-벡터 맵에 해당하는 엔트리가 존재하는 경우, 존재하는 모든 엔트리와 현재 유입된 시그니처 후보 컨텐츠와 패턴매칭을 수행한다(S710). If the entire result table is not null (S700) as a result of performing 3-gram congestive 3-gram hashing to the end of 3-gram data, that is, an entry corresponding to the signature bit-vector map If is present, all existing entries and the signature candidate contents and pattern matching currently introduced are performed (S710).

그 결과 정확히 일치하는 경우(S720), 현재의 시그니처 컨텐츠에 대한 시그니처가 이미 생성되었다는 것을 나타내는 플래그(FLAG) 값을 설정(S730)하고, 5-튜플(tuple)을 포함한 시그니처를 생성하여, 시그니처를 이용하는 프로세스에 전송한다.As a result, if it matches exactly (S720), a flag (FLAG) value indicating that a signature for the current signature content has already been generated is set (S730), and a signature including a 5-tuple is generated to generate a signature. Send to process to use.

그리고 다음 유입되는 시그니처 컨텐츠의 수신을 위해 프로세스를 종료한 다(S750). 시그니처 생성 플래그(FLAG)를 설정하는 이유는, 시그니처 풀 리셋시간 (SP_reset)이 적용되기 전까지 시그니처의 반복생성을 막기 위함이다.Then, the process ends to receive the incoming signature content (S750). The reason for setting the signature generation flag FLAG is to prevent the repetition of signature generation until the signature full reset time SP_reset is applied.

3-그램 컨시큐티브 해싱(Consecutive 3-gram Hashing)을 수행하여 패턴매칭한 현재결과테이블이 널(NULL)이거나 패턴배합 후 전체결과테이블이 널(NULL)인 경우, 이는 시그니처 풀(SP)의 시그니처와 일치하지 않는 것으로 판단한다. 이런 경우 시그니처 후보를 관리하는 프로세스로 분기한다.If the current result table that is pattern-matched by performing 3-gram Consistent 3-gram Hashing is null, or if the entire result table is null after pattern blending, it is determined by the signature pool (SP). It is determined that the signature does not match. In this case, branches to the process of managing signature candidates.

새로운 시그니처가 유입된 후 전술한 도 4,5에서의 시그니처 풀 리셋시간 (SP_reset), 시그니처 후보 노드 리셋시간(SG_reset), 시그니처 노드 등에 대한 조건을 만족하지 않고, 스그니처풀(SP)이 널(NULL)이거나, 상기 조건 중 하나라도 만족하지 않는 경우, 현재 유입된 시그니처 컨텐츠는 시그니처 풀에 포함되지 않은 시그니처 후보로서 관리한다. 이러한 경우 시그니처 후보에 대한 비트-벡터테이블을 조회하는 절차를 진행하기 위하여 3-그램 컨시큐티브 해싱(Consecutive 3-gram Hashing)을 수행한다(S560). After the new signature is introduced, the signature pool SP does not satisfy the conditions for the signature pool reset time SP_reset, the signature candidate node reset time SG_reset, the signature node, and the like in FIGS. 4 and 5 described above. NULL), or if any of the above conditions are not satisfied, the currently introduced signature content is managed as a signature candidate not included in the signature pool. In this case, in order to proceed with a procedure for querying a bit-vector table for the signature candidate, 3-gram congestive 3-gram hashing is performed (S560).

그러나, 3-그램 데이터의 마지막까지 진행하였을 때, 현재 결과테이블이 널(NULL)이 아니면(S600), 해당하는 인덱스를 갖는 시그니처 후보 노드의 발생빈도수(hit_count)를 1 증가(S650)하고, 프로세스를 종료한다.However, if the current result table is not null (S600) when the end of the 3-gram data is advanced (S600), the frequency of occurrence (hit_count) of the signature candidate node having the corresponding index is increased by one (S650), and the process is performed. To exit.

그 현재결과 테이블(S570)과 전체결과 테이블(S580)이 널(NULL)이 아닌 경우, 3-그램 마지막까지 반복수행 한다(S590, S560 내지 S590). 3-그램 마지막에 이르기 전 현재결과 테이블 또는 전체 결과 테이블(S600)이 널(NULL)인 경우, 이는 기존의 시그니처 후보에 포함되지 않는 새로운 시그니처 후보로서 노드를 형성한다. 이를 위해 시그니처 후보 비트-벡터 테이블에 해당하는 해쉬값을 설정하기 위하여(S620) 3-그램 오버랩핑 해싱(Overlapping 3-gram hashing)을 수행하고(S610), 3-그램 마지막(418)까지 반복 설정한다(S630, S610 내지 S630). If the current result table S570 and the entire result table S580 are not null, the process is repeated until the end of the 3-grams (S590, S560 to S590). If the current result table or the entire result table S600 is null before reaching the end of the 3-gram, this forms a node as a new signature candidate that is not included in the existing signature candidate. To this end, in order to set a hash value corresponding to the signature candidate bit-vector table (S620), a 3-gram overlapping hashing is performed (S610), and the repeat setting is performed until the end of the 3-gram (418). (S630, S610 to S630).

3-그램 데이터 마지막까지 위 작업이 진행되었을 경우, 시그니처 캔디데이트(Signature candidate)를 시그니처의 해당 목적지 주소를 갖는 링크드 리스트의 마지막에 삽입(419)한 후 프로세스를 종료한다(S640).When the above operation is performed until the end of the 3-gram data, the signature candidate is inserted 419 at the end of the linked list having the corresponding destination address of the signature and the process is terminated (S640).

따라서, 본 발명은 여러 개의 규칙에 대하여 하나의 객체를 멀티패턴 매칭을 수행하는 경우 적은 메모리와 적은 양의 연산으로도 수행이 가능하고, 또한 현재의 객체가 기존의 패턴의 서브셋인지 포함성 여부를 판단한 수 있다. Therefore, when the multi-pattern matching is performed on an object with respect to a plurality of rules, the present invention can be performed with a small amount of memory and a small amount of operations. You can judge.

본 발명은 규칙을 관리 시 오버랩핑 해싱(Overlapping Hashing)을 이용하고, 규칙과 비교하기 위한 객체에는 컨시큐티브 해싱(Consecutive Hashing)을 적용하여, 다수의 규칙이 존재하더라도, 비교하기 위한 현 객체에 의해 생성되는 해싱(Hashing) 결과값에 따라 연산이 발생하도록 하여 다량의 문서들에서 특정 단어가 포함된 텍스트를 찾는 작업이 훨씬 빠른 시간에 진행될 수 있다.The present invention uses overlapping hashing when managing a rule, and by applying congestive hashing to an object for comparison with a rule, even if a plurality of rules exist, the current object for comparison Finding the text containing a specific word in a large amount of documents can be performed much faster by causing the operation to occur according to the hashing result generated by the hash.

또한, 본 발명은 하드웨어로 구현하기에도 쉬운 비트-운영을 하는 발명이므로, 하드웨어를 이용하여 빠른 패턴 매칭을 제공할 수 있고, 관리된 시그니처 후보들에 대하여 유사성을 확인하여, 일정 유사도 값 이상의 노드들을 하나로 그룹핑 하고, 그룹 내에서 하나의 시그니처를 결과로 제시할 수 있다. In addition, since the present invention is a bit-operation that is easy to implement in hardware, it is possible to provide fast pattern matching using hardware, and to check similarity with respect to the managed signature candidates. You can group and present one signature as a result within a group.

이를 통하여 오프라인으로 수행되면서, 클러스터링 후에는 유입되는 데이터 에 대하여 처리를 제공하지 못하는 방법에 반해, 본 발명은 데이터의 삽입 시 이미 유사도를 기반으로 클러스터링을 제공한다. 이런 절차에 의해 하나의 트리에는 동질성을 갖는 데이터만 존재하게 되며, 온라인 운영이 가능할 뿐 아니라 실시간 처리 시스템 구축이 가능하게 된다. In this way, while being performed offline, the present invention provides clustering based on the similarity at the time of insertion of data, whereas the method cannot provide processing on incoming data after clustering. By this procedure, only homogeneous data exists in one tree, and not only online operation but also real-time processing system can be constructed.

이상과 같이 본 발명에 의한 해싱결과값의 비트-벡터를 이용한 공격시그니처 분류에 기반한 시그니처 클러스터링 방법은 예시된 도면을 참조로 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 이에 한정되지 않고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 응용될 수 있다. As described above, the signature clustering method based on the attack signature classification using the bit-vector of the hashing result according to the present invention has been described with reference to the illustrated drawings, but the present invention is not limited thereto by the embodiments and the drawings disclosed herein. Instead, the present invention may be applied by those skilled in the art.

도 1 은 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 유력 메시지의 구성 설명에 참조되는 도, 1 is a reference to the configuration description of a strong message used in a signature clustering method according to an embodiment of the present invention;

도 2 는 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 해싱방법의 설명에 참조되는 도, 2 is a reference to the description of the hashing method used in the signature clustering method according to an embodiment of the present invention;

도 3 은 본 발명의 일실시예에 따른 시그니처 클러스터링 방법에서 사용되는 비트벡터 테이블의 구조 설명에 참조되는 도, 3 is a diagram referred to for explaining a structure of a bit vector table used in a signature clustering method according to an embodiment of the present invention;

도 4 는 본 발명의 일실시예에 따른 시그니처 포함성 기반의 노드 관리 방법에 따른 동작설명에 참조되는 순서도, 4 is a flowchart referred to for describing an operation according to a method for managing node signature-based nodes according to an embodiment of the present invention;

도 5 는 본 발명의 일실시예에 따른 시그니처의 유사성 기반 시그니처 후보 관리 방법에 따른 동작설명에 참조되는 순서도, 5 is a flowchart referred to an operation description according to a signature candidate management method based on similarity of signatures according to an embodiment of the present invention;

도 6 은 본 발명의 일실시예에 따른 시그니처 후보 클러스터링 방법에 따른 동작설명에 참조되는 순서도, 6 is a flowchart referred to for describing an operation according to a signature candidate clustering method according to an embodiment of the present invention;

도 7 은 본 발명의 일실시예에 따른 최종 시그니처 클러스터링 방법에 따른 동작설명에 참조되는 순서도이다. 7 is a flowchart referred to for describing an operation according to the final signature clustering method according to an embodiment of the present invention.

<도면의 주요 부분에 관한 부호의 설명><Explanation of symbols on main parts of the drawings>

10: 시그니처 11 내지 18: 컨텐츠10: signature 11 to 18: content

61, 62, 63: 비트벡터 테이블61, 62, 63: bitvector table

Claims (10)

보안시스템이, 유입되는 패킷으로부터 시그니처 후보로 유력한 유력메시지를 추출하는 단계;Extracting, by the security system, a likely message as a signature candidate from an incoming packet; 상기 유력메시지가 첫번째 메시지인 경우, 상기 유력메시지를 오버랩핑 해싱하고, 그 해쉬값을 이용하여 비트벡터테이블을 갱신하여 상기 유력메시지를 등록하는 단계;If the message is a first message, overlapping and hashing the message, and updating the bit vector table using the hash value to register the message; 상기 유력메시지가 첫번째 메시지가 아닌 경우, 상기 유력메시지를 컨시큐티브 해싱(Consecutive hashing)하고, 그 해쉬값을 상기 비트벡터테이블로부터 검색하는 단계; 및If the force message is not the first message, consequently hashing the force message and retrieving the hash value from the bit vector table; And 상기 검색결과, 상기 비트벡터테이블에 상기 해쉬값이 존재하는 않는 경우 상기 등록단계를 수행하고, 상기 해쉬값이 존재하는 경우, 처리결과를 출력하는 단계를 포함하는 시그니처 후보 관리방법. And performing the registration step when the hash value does not exist in the bit vector table as a result of the search, and outputting a processing result when the hash value exists. 시그니처 컨텐츠가 유입된 생성시간을 기준으로 경과시간이 기 설정된 기준시간 이상인 경우, 보안시스템이, 유입된 데이터를 리셋하는 단계;Resetting, by the security system, the introduced data when the elapsed time is greater than or equal to a preset reference time based on the generation time of the signature content; 상기 경과시간이 기 설정된 클러스터링 시간보다 큰 경우, 발생빈도 및 유사도에 기반하여 상기 시그니처 컨텐츠에 대한 시그니처 후보를 생성하는 단계; 및Generating a signature candidate for the signature content based on a frequency of occurrence and a similarity when the elapsed time is greater than a preset clustering time; And 상기 시그니처 후보와 기 등록된 시그니처의 유사성 분석을 통해, 상기 시그니처 후보를 새로운 시그니처로써 시그니처 풀(SP)에 등록하는 단계를 포함하는 시그니처 클러스터링 방법.And registering the signature candidate as a new signature in a signature pool (SP) by analyzing the similarity between the signature candidate and a previously registered signature. 제 2 항에 있어서, The method of claim 2, 상기 데이터 리셋 시, 상기 경과시간이, 시그니처 풀 리셋시간, 시그니처 후보 노드 리셋시간 및 시그니처 노드 최대수 중 적어도 하나에 대한 기준시간보다 큰 경우, 상기 시그니처 풀 또는 상기 시그니처 후보 노드를 리셋하는 것을 특징으로 하는 시그니처 클러스터링 방법.The signature pool or the signature candidate node is reset when the elapsed time is greater than a reference time for at least one of a signature pool reset time, a signature candidate node reset time, and a maximum number of signature nodes. Signature clustering method. 제 2 항에 있어서, The method of claim 2, 상기 후보생성단계는, 상기 시그니처 컨텐츠에서, 시그니처 그룹(SG)의 리스트에 대한 발생빈도수(Hit_count)가 빈도한계값(Hitcount_th)보다 큰 노드를 추출하여 별도의 리스트를 형성하고, 상기 리스트에 존재하는 노드의 수가 소정 수 이상인 경우, 상기 각 노드 상호 간의 유사성 테이블을 형성하며, In the candidate generating step, a separate list is formed by extracting nodes in which the frequency of occurrence (Hit_count) of the list of signature groups (SG) is greater than the frequency limit value (Hitcount_th) from the signature content, and exists in the list. If the number of nodes is more than a predetermined number, the similarity table between each node is formed, 상기 유사성 테이블에서, 유사성 값이 유사성한계값(resemble_th)보다 큰 노드들에 대하여 하나의 링크드리스트 형태의 그룹을 형성하는 것을 특징으로 하는 시그니처 클러스터링 방법. And in the similarity table, form a linked list group for nodes having a similarity value greater than a similarity threshold value. 제 4 항에 있어서, The method of claim 4, wherein 상기 후보생성단계는, 상기 그룹 내에 속한 노드에 대해 2개의 노드간에 동일 문자열을 추출하는 LCSeq(Longest Common Subsequence)를 수행하여, 공통적으로 발생하는 시퀀스를 기준으로 생성된 문자열 집합을, 상기 시그니처 후보로 생성하는 것을 특징으로 하는 시그니처 클러스터링 방법. The candidate generation step includes performing a LCSeq (Longest Common Subsequence) for extracting the same string between two nodes for the nodes in the group, and using the signature set generated based on a commonly occurring sequence as the signature candidate. Signature clustering method characterized in that the generation. 제 5 항에 있어서, The method of claim 5, 상기 등록단계는, 상기 시그니처 후보와 기 등록된 시그니처의 유사성을 분석하여, In the registration step, by analyzing the similarity between the signature candidate and the pre-registered signature, 상기 시그니처 후보와 상기 기 등록된 시그니처간의 유사성이 기 설정된 유사도 이상이면, 상기 기 등록된 시그니처와 현재의 상기 시그니처 후보 간의 동일 문자열을 추출하는 LCSeq(Longest Common Subsequence)의 수행 결과를 상기 기 등록된 시그니처가 위치하는 상기 시그니처 풀(SP)에 등록하고,If the similarity between the signature candidate and the pre-registered signature is equal to or greater than a preset similarity, the result of performing the LCSeq (Longest Common Subsequence) for extracting the same character string between the pre-registered signature and the current signature candidate is registered. Register with the signature pool (SP) where is located, 상기 시그니처 후보와 상기 기 등록된 시그니처 간의 유사성이 상기 유사도 미만이면, 새로운 시그니처로써 상기 시그니처 풀(SP)에 등록하는 것을 특징으로 하는 시그니처 클러스터링 방법. And if the similarity between the signature candidate and the pre-registered signature is less than the similarity, registering with the signature pool (SP) as a new signature. 제 6 항에 있어서, The method of claim 6, 상기 등록단계는, 상기 시그니처 후보에 대하여 3-그램 오버랩핑 해싱(Overlapping 3-gram hashing)을 수행하고, 생성된 해쉬값을 시그니처 비트-벡터 테이블에 업데이트하는 것을 특징으로 하는 시그니처 클러스터링 방법. The registering step may include performing 3-gram overlapping hashing on the signature candidate, and updating the generated hash value in the signature bit-vector table. 제 2 항에 있어서, The method of claim 2, 상기 경과시간이 상기 클러스터링 시간보다 작은 경우, 시그니처를 관리하는 시그니처 풀(SP)의 상태에 대응하여, If the elapsed time is less than the clustering time, corresponding to the state of the signature pool SP managing the signature, 상기 시그니처 풀(SP)이 비어 있지 않은 경우, 현재 유입되는 시그니처 컨텐츠에 대해 3-그램 컨시큐티브 해싱(Consecutive 3-gram hashing)을 수행하고, 그 해쉬값을 이용하여 기 등록된 시그니처와 패턴매칭을 수행하여 상기 시그니처 컨텐츠가 기존의 시그니처 풀(SP)에 존재하는지 여부를 확인하는 단계를 더 포함하는 것을 특징으로 하는 시그니처 클러스터링 방법.If the signature pool SP is not empty, 3-gram congestive 3-gram hashing is performed on the current signature content, and the registered signature and pattern matching are performed using the hash value. And determining whether the signature content exists in an existing signature pool (SP). 제 8 항에 있어서, The method of claim 8, 상기 시그니처 컨텐츠가 기존의 시그니처 풀(SP)에 존재하는지 여부를 확인하는 단계는, 상기 시그니처 컨텐츠의 마지막까지 3-그램 컨시큐티브 해싱(Consecutive 3-gram hashing)을 수행한 결과, 전체결과테이블에 적어도 하나의 엔트리가 존재하는 경우, 존재하는 모든 엔트리와 현재 유입된 상기 시그니처 컨텐츠와 패턴매칭을 수행하여, The step of checking whether the signature content exists in the existing signature pool (SP) may be performed by performing 3-gram congestive 3-gram hashing until the end of the signature content. If there is at least one entry, pattern matching is performed with all existing entries and the signature content currently imported, 상기 시그니처 컨텐츠가 상기 엔트리와 일치하면, 상기 시그니처 컨텐츠에 대한 시그니처가 이미 생성되었음을 나타내는 플래그(FLAG) 값을 설정하고, 5-튜플(tuple)을 포함한 시그니처를 생성하여, 상기 시그니처를 이용하는 프로세스로 전송하는 것을 특징으로 하는 시그니처 클러스터링 방법.If the signature content matches the entry, set a flag FLAG indicating that a signature for the signature content has already been generated, generate a signature including a 5-tuple, and send it to a process using the signature. Signature clustering method characterized in that. 제 9 항에 있어서, The method of claim 9, 상기 시그니처 컨텐츠의 마지막까지 3-그램 컨시큐티브 해싱(Consecutive 3-gram hashing)을 수행한 결과, 현재결과테이블에 적어도 하나의 엔트리가 존재하지 않는 경우 및 상기 전체결과테이블에 적어도 하나의 엔트리가 존재하지 않는 경우 중 어느 하나의 경우, As a result of performing 3-gram congestive 3-gram hashing until the end of the signature content, at least one entry does not exist in the current result table and at least one entry exists in the entire result table. If you don't either 상기 시그니처 컨텐츠가 상기 시그니처 풀(SP)의 시그니처와 일치하지 않는 것으로 판단하여 시그니처 후보 관리를 수행하는 것을 특징으로 하는 시그니처 클러스터링 방법.Signature candidate management is performed by determining that the signature content does not match the signature of the signature pool (SP).
KR1020080131727A 2008-12-22 2008-12-22 Signature clustering method based grouping attack signature by the hashing KR101079815B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080131727A KR101079815B1 (en) 2008-12-22 2008-12-22 Signature clustering method based grouping attack signature by the hashing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080131727A KR101079815B1 (en) 2008-12-22 2008-12-22 Signature clustering method based grouping attack signature by the hashing

Publications (2)

Publication Number Publication Date
KR20100073136A KR20100073136A (en) 2010-07-01
KR101079815B1 true KR101079815B1 (en) 2011-11-03

Family

ID=42636151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080131727A KR101079815B1 (en) 2008-12-22 2008-12-22 Signature clustering method based grouping attack signature by the hashing

Country Status (1)

Country Link
KR (1) KR101079815B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440292B (en) * 2013-08-16 2016-12-28 新浪网技术(中国)有限公司 Multimedia information retrieval method and system based on bit vectors
KR101881797B1 (en) 2018-01-03 2018-07-26 주식회사 윈스 Multipattern policy detection system and method
KR102053781B1 (en) * 2018-04-02 2020-01-22 주식회사 윈스 Apparatus and method for extracting signiture

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005036339A2 (en) 2003-10-03 2005-04-21 Enterasys Networks, Inc. System and method for dynamic distribution of intrusion signatures
KR100809416B1 (en) 2006-07-28 2008-03-05 한국전자통신연구원 Appatus and method of automatically generating signatures at network security systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005036339A2 (en) 2003-10-03 2005-04-21 Enterasys Networks, Inc. System and method for dynamic distribution of intrusion signatures
KR100809416B1 (en) 2006-07-28 2008-03-05 한국전자통신연구원 Appatus and method of automatically generating signatures at network security systems

Also Published As

Publication number Publication date
KR20100073136A (en) 2010-07-01

Similar Documents

Publication Publication Date Title
US9514246B2 (en) Anchored patterns
US9858051B2 (en) Regex compiler
Darling et al. A lexical approach for classifying malicious URLs
CN104982011B (en) Use the document classification of multiple dimensioned text fingerprints
US20180067921A1 (en) System and method for keyword spotting using representative dictionary
Hu et al. Mobile app squatting
CN112671701B (en) Vehicle-mounted terminal intrusion detection method based on vehicle-mounted network abnormal behavior feature driving
WO2021139641A1 (en) Web attack detection method and device, electronic apparatus, and storage medium
US8336098B2 (en) Method and apparatus for classifying harmful packet
CN113079150B (en) Intrusion detection method for power terminal equipment
CN110958233A (en) Encryption type malicious flow detection system and method based on deep learning
CN112507336A (en) Server-side malicious program detection method based on code characteristics and flow behaviors
CN110213280A (en) Ddos attack detection method based on LDMDBF under a kind of SDN environment
KR101079815B1 (en) Signature clustering method based grouping attack signature by the hashing
Machlica et al. Learning detectors of malicious web requests for intrusion detection in network traffic
KR100937217B1 (en) Optimizing system and method of signature
KR101060733B1 (en) Method and device for network intrusion detection using application protocol recognition
US11647046B2 (en) Fuzzy inclusion based impersonation detection
EP2216947A1 (en) Method of identifying spam messages
KR100951930B1 (en) Method and Apparatus for classificating Harmful Packet
Jain et al. A novel distributed semi-supervised approach for detection of network based attacks
CN114024701A (en) Domain name detection method, device and communication system
KR101003502B1 (en) Signature String clustering Method Based on the Resemblance and Containment in the Sequence
Hamroun et al. A review on lexical based malicious domain name detection methods
Wang et al. Extraction of fingerprint from regular expression for efficient prefiltering

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
FPAY Annual fee payment

Payment date: 20140926

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150925

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160927

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee