KR102006220B1 - Apparatus and method for reconfiguring signiture - Google Patents
Apparatus and method for reconfiguring signiture Download PDFInfo
- Publication number
- KR102006220B1 KR102006220B1 KR1020180059159A KR20180059159A KR102006220B1 KR 102006220 B1 KR102006220 B1 KR 102006220B1 KR 1020180059159 A KR1020180059159 A KR 1020180059159A KR 20180059159 A KR20180059159 A KR 20180059159A KR 102006220 B1 KR102006220 B1 KR 102006220B1
- Authority
- KR
- South Korea
- Prior art keywords
- signature
- fragment
- load
- impact
- influence
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 시그니처 기반의 비정상 트래픽 탐지 기법에 이용되는 시그니처를 재구성하기 위한 장치 및 방법에 관한 것이고, 더 상세하게 시그니처를 이루는 복수의 시그니처 단편들의 순서를 재배치함으로써 각 시그니처를 최적화시킬 수 있는 시그니처 재구성 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for reconstructing a signature used in a signature-based abnormal traffic detection technique, and more particularly to a signature reconstruction apparatus capable of optimizing each signature by rearranging a sequence of a plurality of signature fragments that make up a signature. And to a method.
컴퓨터 및 인터넷 보급의 확산에 따라 ISP(Internet Service Provider) 업체가 늘어나고 있다. ISP는 개인이나 기업에게 인터넷 접속 서비스, 웹 사이트 구축 등을 제공하는 회사를 의미하며, ISP 업체는 광범위한 정보통신망을 제공하고 있다. 그러나, ISP 업체가 증가함에 따라, 이에 따른 부작용도 급증하고 있다. 특히, P2P(Peer-to-Peer) 응용서비스, 이메일 등을 통해 비정상 트래픽을 발생시키는 웜, 바이러스, 백도어, 랜섬웨어 등이 인터넷에 다량으로 유포되고 있으며, 이들의 공격기법 또한 고도화되고 다양화되어 가는 추세이다. 이들 공격기법은 정보통신망의 안전성 및 신뢰성을 위협하고 있어서, 공격에 대한 발생 징후를 사전에 탐지하여 대응할 수 있는 방안의 필요성이 대두되고 있다.Internet service provider (ISP) companies are increasing due to the proliferation of computers and the Internet. ISP refers to a company that provides Internet access services and web sites to individuals and companies. ISP companies provide a wide range of information and communication networks. However, as the number of ISP companies increases, the side effects are increasing rapidly. In particular, worms, viruses, backdoors and ransomware that generate abnormal traffic through peer-to-peer (P2P) application services and e-mail are widely distributed on the Internet, and their attack techniques are also advanced and diversified. The trend is going. Since these attack techniques threaten the safety and reliability of the information communication network, there is a need for a method for detecting and responding to the occurrence of an attack in advance.
정보통신망의 이상 징후를 탐지하는 기법 중에는 시그니처 기반의 비정상 트래픽 탐지 기법이 있다. 시그니처란 트래픽의 특징을 나타내는 것으로서, 특정 응용 프로토콜 수행을 위해서 네트워크 상으로 주고 받는 메시지 중에서 해당 응용 프로토콜에서만 발견되는 비트 패턴을 의미한다. 시그니처는 보통 정규표현식(Regular Expression)의 형태로 메모리에 저장될 수 있다. Among the techniques for detecting abnormal signs of information and communication network, there is a signature-based abnormal traffic detection technique. The signature indicates the characteristics of the traffic, and means a bit pattern found only in the corresponding application protocol among messages transmitted and received on the network to perform a specific application protocol. Signatures can usually be stored in memory in the form of regular expressions.
정규표현식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용되는 형식 언어로서, 다양한 검색 엔진, 문서 편집기 등을 포함하는 대부분의 어플리케이션 상에서 주로 텍스트 패턴 매칭에 활용되고 있다. 그런데 정규표현식이 유연성이 높은 형태로 이루어지는 경우(예를 들어, 정규표현식이 불특정 표현 또는 길이를 나타내는 자료형 또는 짧은 길이로 표현되는 경우), 매칭되는 텍스트 패턴이 과도하게 많아지고, 계산량이 증가될 수 있다. 또한, 매칭 범위가 모호한 경우 이를 자료구조로 표현하였을 때, 탐색 구조의 회귀가 빈번하게 발생할 수 있다. 이렇듯 탐색 과정에서 빈번한 회기의 발생 등으로 많은 반복적인 계산이 발생하는 경우에 대해서 '부하 비용이 크다'라고 표현한다.Regular expressions are a formal language used to represent a set of strings with specific rules, and are used primarily for text pattern matching in most applications, including various search engines and text editors. However, if the regular expression is formed in a highly flexible form (for example, if the regular expression is represented by a data type representing an unspecified expression or length or a short length), the pattern of texts to be matched may be excessively large and the calculation amount may increase. have. In addition, when the matching range is ambiguous, when the data structure is expressed, regression of the search structure may occur frequently. As such, the load cost is high for the case where many repetitive calculations occur due to the occurrence of frequent sessions.
한편, 시그니처를 이용한 비정상 트래픽 탐지 기법은 서버로 송신되는 패킷들 중 시그니처를 포함하는 패킷을 탐지하고, 탐지된 패킷이 비정상 패킷인지 여부를 판단함으로써 이루어진다. 다만, 부하 비용이 큰 시그니처를 이용하여 비정상 트래픽을 탐지할 경우, 송신되는 매 패킷에 대해 큰 부하 비용을 갖는 시그니처를 활용하여 비정상 트래픽 여부를 확인해야 하므로, 보안 시스템의 시스템 부하가 높아진다. 이러한 문제는 DDoS(Distributed Denial of Service Attack)와 같이 대규모 공격이 발생할 경우, 심각한 문제를 초래할 수 있다. 따라서, 부하 비용을 고려하여, 비정상 트래픽의 탐지에 이용되는 시그니처를 재구성할 수 있는 새로운 방법이 요구된다.Meanwhile, the abnormal traffic detection technique using the signature is performed by detecting a packet including a signature among the packets transmitted to the server, and determining whether the detected packet is an abnormal packet. However, when detecting abnormal traffic using a signature with a high load cost, the system load of the security system is increased because a signature having a large load cost should be checked for every packet transmitted. This problem can cause serious problems when large attacks such as Distributed Denial of Service Attack (DDoS) occur. Therefore, in view of the load cost, a new method for reconfiguring signatures used for detection of abnormal traffic is required.
본 발명은 시그니처 기반으로 비정상 트래픽을 탐지하는 네트워크 장비에 적용되어, 다수의 시그니처를 탐색이 가능한 자료구조로 변환하는 과정에서 탐색 시간에 영향을 주는 요소별 영향도를 계산하고 이를 기반으로 한 최적화 과정을 통해 시그니처를 구성하는 시그니처 단편들의 순서를 재배치할 수 있는 시그니처 재구성 장치 및 방법을 제공하는데 그 목적이 있다.The present invention is applied to network equipment that detects abnormal traffic on the basis of signature, and calculates the influence of each element that affects search time in the process of converting multiple signatures into searchable data structures, and based on the optimization process It is an object of the present invention to provide a signature reconstruction apparatus and method capable of rearranging the order of the signature fragments constituting the signature.
상기와 같은 과제를 해결하기 위한 본 발명의 시그니처 기반 비정상 트래픽 탐지를 위한 시그니처 재구성 방법은 데이터베이스에 저장된 시그니처 리스트에서 하나의 시그니처를 선택하고, 선택된 시그니처를 복수의 시그니처 단편들로 분할하는 단계; 복수의 시그니처 단편들을 복수의 부하요소에 대해 검사하여, 복수의 부하요소마다 제1 영향도를 산출하는 단계; 복수의 부하요소에 대한 가중치를 제1 영향도에 각각 적용함으로써, 복수의 부하요소마다 제2 영향도를 산출하는 단계; 산출된 제2 영향도 중에서 각 시그니처 단편에 대응하는 제2 영향도들을 합산하여, 각 시그니처 단편에 대한 최종 부하 영향도를 산출하는 단계; 및 산출된 최종 부하 영향도의 크기에 따라, 복수의 시그니처 단편들의 순서를 재배치하는 단계를 포함하는 것을 특징으로 한다.The signature reconstruction method for signature-based abnormal traffic detection of the present invention for solving the above problems comprises the steps of selecting one signature from a signature list stored in a database, and dividing the selected signature into a plurality of signature fragments; Inspecting the plurality of signature fragments for a plurality of load elements to produce a first degree of influence for each of the plurality of load elements; Calculating second influence for each of the plurality of load elements by applying weights for the plurality of load elements to the first influence; Summing second influences corresponding to each signature fragment from the calculated second influences to calculate a final load impact for each signature fragment; And rearranging the order of the plurality of signature fragments according to the magnitude of the calculated final load impact.
또한, 복수의 부하요소에 대한 가중치 중 적어도 두 개는 상이할 수 있다.In addition, at least two of the weights for the plurality of load elements may be different.
또한, 가중치는 시그니처 구성, 패턴 탐색 알고리즘, 시그니처 기반 비정상 트래픽 탐지를 수행하는 보안 장치의 사양 중 적어도 하나에 따라 각각 조절될 수 있다.The weight may be adjusted according to at least one of a signature configuration, a pattern search algorithm, and a specification of a security device that performs signature-based abnormal traffic detection.
또한, 복수의 부하요소에 대한 검사는 시그니처 단편에 포함된 패턴의 문법 검사를 포함하고, 제1 영향도를 산출하는 단계는 시그니처 단편에 포함된 패턴의 문법에 따른 제1 영향도를 산출하는 단계를 포함할 수 있다.In addition, the checking of the plurality of load elements may include a grammar check of the pattern included in the signature fragment, and the calculating of the first impact may include calculating a first influence according to the grammar of the pattern included in the signature fragment. It may include.
또한, 복수의 부하요소에 대한 검사는 시그니처 단편의 길이 검사를 포함하고, 제1 영향도를 산출하는 단계는 시그니처 단편의 길이가 짧을수록 크기가 커지도록 길이 검사에 따른 제1 영향도를 산출하는 단계를 포함할 수 있다. In addition, the inspection of the plurality of load elements includes the inspection of the length of the signature fragment, and the calculating of the first impact may include calculating the first impact according to the length inspection so that the smaller the length of the signature fragment is, the larger the size becomes. It may include a step.
또한, 복수의 부하요소에 대한 검사는 시그니처 단편에 대한 오토마타 활성 상태 크기 검사를 포함하고, 제1 영향도를 산출하는 단계는 시그니처 단편의 오토마타 활성 상태 크기에 따른 제1 영향도를 산출하는 단계를 포함할 수 있다.In addition, the checking of the plurality of load elements may include checking an automata active state size of the signature fragment, and calculating the first impact level comprises calculating a first influence according to the automata active state size of the signature fragment. It may include.
또한, 복수의 부하요소에 대한 검사는 시그니처 단편에 대한 오토마타 활성상태 검색공간 크기 검사를 포함하고, 제1 영향도를 산출하는 단계는 시그니처 단편의 오토마타 활성상태 검색공간 크기에 따른 제1 영향도를 산출하는 단계를 포함할 수 있다.In addition, the inspection of the plurality of load elements may include checking the automata active state search space size of the signature fragment, and calculating the first influence may include determining a first influence according to the automata active state search space size of the signature fragment. It may include the step of calculating.
또한, 본 발명의 일 실시예에 따른 시그니처 재구성 방법은 복수의 시그니처 단편이 미리 설정된 패널티 조건에 일치하는지 확인하는 단계; 및 패널티 조건에 일치하는 시그니처 단편에 패널티 값을 부여하는 단계를 더 포함하고, 각 시그니처 단편에 대한 최종 부하 영향도를 산출하는 단계는 패널티 값이 부여된 시그니처 단편의 경우, 산출된 최종 부하 영향도에 부여된 패널티 값을 합하는 단계를 포함할 수 있다.In addition, the signature reconstruction method according to an embodiment of the present invention comprises the steps of checking whether a plurality of signature fragments match a predetermined penalty condition; And assigning a penalty value to the signature fragment that matches the penalty condition, and calculating the final load impact for each signature fragment comprises, in the case of a signature fragment given a penalty value, the final load impact calculated. And summing the penalty values assigned to.
상기와 같은 과제를 해결하기 위한 본 발명의 시그니처 기반 비정상 트래픽 탐지를 위한 시그니처 재구성 장치는 데이터베이스에 저장된 시그니처 리스트에서 하나의 시그니처를 선택하고, 선택된 시그니처를 복수의 시그니처 단편들로 분할하는 시그니처 분할부; 복수의 시그니처 단편들을 복수의 부하요소에 대해 검사하여, 복수의 부하요소마다 제1 영향도를 산출하는 부하요소 검사부; 복수의 부하요소에 대한 가중치를 제1 영향도에 각각 적용함으로써, 복수의 부하요소마다 제2 영향도를 산출하는 가중치 처리부; 및 산출된 제2 영향도 중에서 각 시그니처 단편에 대응하는 제2 영향도들을 합산하여, 각 시그니처 단편에 대한 최종 부하 영향도를 산출하고, 산출된 최종 부하 영향도의 크기에 따라 복수의 시그니처 단편들의 순서를 재배치하는 시그니처 재구성부를 포함할 수 있다.The signature reconstruction apparatus for detecting signature-based abnormal traffic according to the present invention for solving the above problems comprises: a signature division unit for selecting one signature from a signature list stored in a database and dividing the selected signature into a plurality of signature fragments; A load element inspecting unit inspecting a plurality of signature fragments with respect to the plurality of load elements, and calculating a first degree of influence for each of the plurality of load elements; A weight processor configured to calculate a second influence degree for each of the plurality of load elements by applying weights of the plurality of load elements to the first influence degree, respectively; And summing second influences corresponding to each signature fragment from the calculated second influences to calculate a final load influence on each signature fragment, and calculating a plurality of signature fragments according to the calculated final load influence. It may include a signature reconstruction unit for rearranging the order.
상기와 같은 과제를 해결하기 위한 본 발명의 시그니처 재구성 장치는 상술한 방법을 수행하는 제어부를 포함할 수 있다.The signature reconstruction apparatus of the present invention for solving the above problems may include a controller for performing the above-described method.
본 발명의 일 실시예에 따른 시그니처 재구성 장치 및 방법은 각 시그니처에 포함된 시그니처 단편 중 주요 요소로 판단되는 부하 요인에 기반하여 각 순서를 재배치함으로써 보다 최적화된 탐색 환경을 구성할 수 있다.The signature reconstruction apparatus and method according to an embodiment of the present invention may configure a more optimized search environment by rearranging each order based on a load factor determined as a main element among signature fragments included in each signature.
또한, 본 발명의 일 실시예에 따른 시그니처 재구성 장치 및 방법은 시그니처와 하드웨어 장비, 네트워크 망 등의 영향을 산술적인 수치로 부하 영향도에 반영할 수 있다.In addition, the signature reconstruction apparatus and method according to an embodiment of the present invention may reflect the influence of the signature, hardware equipment, network, etc. in an arithmetic numerical value to the load influence.
도 1은 본 발명의 일 실시예에 따른 비정상 트래픽 탐지 시스템에 대한 개념도이다.
도 2는 본 발명의 제1 실시예에 따른 시그니처 재구성 장치에 대한 블록도이다.
도 3은 본 발명의 제1 실시예에 따른 시그니처 재구성 장치를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다.
도 4는 본 발명의 제2 실시예에 따른 시그니처 재구성 장치에 대한 블록도이다.
도 5는 본 발명의 제2 실시예에 따른 시그니처 재구성 장치를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다.
도 6은 본 발명의 제3 실시예에 따른 시그니처 재구성 장치에 대한 블록도이다.
도 7은 오토마타 생성부를 통해 생성된 오토마타의 일 예시를 도시한다.
도 8은 본 발명의 제3 실시예에 따른 시그니처 재구성 장치를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다.
도 9는 본 발명의 일 실시예에 따른 시그니처 재구성 방법에 대한 흐름도이다.1 is a conceptual diagram of an abnormal traffic detection system according to an embodiment of the present invention.
2 is a block diagram of a signature reconstruction apparatus according to a first embodiment of the present invention.
3 is a conceptual view illustrating a method of reconfiguring one signature through the signature reconstruction apparatus according to the first embodiment of the present invention.
4 is a block diagram of a signature reconstruction apparatus according to a second embodiment of the present invention.
5 is a conceptual diagram illustrating a method of reconstructing one signature through the signature reconstruction apparatus according to the second embodiment of the present invention.
6 is a block diagram of a signature reconstruction apparatus according to a third embodiment of the present invention.
7 illustrates an example of an automata generated through the automata generator.
FIG. 8 is a conceptual diagram illustrating a method of reconfiguring one signature through the signature reconstruction apparatus according to the third embodiment of the present invention.
9 is a flowchart illustrating a signature reconstruction method according to an embodiment of the present invention.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.
도 1은 본 발명의 일 실시예에 따른 비정상 트래픽 탐지 시스템(1000)에 대한 개념도이다. 본 발명의 일 실시예에 따른 비정상 트래픽 탐지 시스템(1000)은 복수의 클라이언트(1a, 1b, 1c)들, 서버(2), 보안 장치(10), 데이터베이스(20) 및 시그니처 재구성 장치(100)를 포함한다. 시그니처 재구성 장치(100)는 보안 장치(10)의 내부에 장착되거나 소프트웨어의 형태로 설치될 수 있고, 별도의 장치 형태로 보안 장치(10)에 직접 연결될 수도 있다. 도 1에서, 클라이언트의 개수는 3개인 것으로 도시되었으나, 이는 예시일 뿐이고 실제 환경에 따라 다양한 수의 클라이언트들이 포함될 수 있다.1 is a conceptual diagram of an abnormal
보안 장치(10)는 복수의 클라이언트들(1a, 1b, 1c)로부터 송신된 패킷들을 분석함으로써 비정상 트래픽을 탐지하는 기능을 한다. 여기서, 보안 장치(10)는 데이터베이스(20)에 저장된 탐지패턴 리스트(이하, 시그니처 리스트)를 이용하여, 복수의 클라이언트들(1a, 1b, 1c)로부터 서버(2)로 송신된 패킷(또는 패킷에 포함된 페이로드)들을 분석하고 비정상 트래픽을 탐지할 수 있다. 구체적으로, 보안 장치(10)는 패킷을 수집하고, 패킷의 내용과 시그니처 리스트에 포함된 각 시그니처를 순차적으로 비교하는 과정을 수행한다. 여기서, 각 시그니처는 적어도 하나의 시그니처 단편을 포함하고, 시그니처 단편의 패턴은 정규표현식의 형태를 가질 수 있다.The
예를 들어, 복수의 클라이언트들(1a, 1b, 1c) 중 제1 클라이언트(1a)가 패킷을 보낸 상황을 가정한다. 보안 장치(10)는 제1 클라이언트(1a)가 송신한 패킷을 분석하고, 패킷의 내용을 추출할 수 있다. 그 후, 보안 장치(10)는 제1 클라이언트(1a)가 송신한 패킷의 내용이 데이터베이스(20)에 저장된 각 시그니처에 대응하는지 비교한다. 상술한 것처럼, 데이터베이스(20)는 복수의 시그니처들을 포함하는 시그니처 리스트를 포함하고, 각 시그니처는 정규표현식으로 표현된 복수의 시그니처 단편을 포함한다. 본 발명의 설명을 위한 예시로서, 시그니처 리스트는 n개의 시그니처를 포함하고, 각 시그니처는 아래의 수학식 1과 같이 표현되는 것으로 가정한다.For example, assume a situation in which the first client 1a sends a packet among the plurality of
수학식 1에서 Sn는 n 번째 시그니처를 나타내고, P'는 시그니처에 포함된 시그니처 단편을 나타낸다. 수학식 1에서 A, B, C, D, E, F, G, X, Y, Z는 각 시그니처 단편의 구분을 위해 상이한 문자를 기재하였으나, 이들 중 적어도 일부는 동일할 수도 있다.In
이 예시에서, 보안 장치(10)는 제1 클라이언트(1a)가 송신한 패킷의 내용과 데이터베이스(20)에 저장된 n개의 시그니처(S1, S2, Sn)를 순차적으로 비교할 수 있다. 예를 들어, 보안 장치(10)는 패킷의 내용과 제1 시그니처(S1)에 포함된 첫 번째 시그니처 단편(P'A')의 패턴을 비교하고, 패킷의 내용이 제1 시그니처(S1)의 첫 번째 시그니처 단편(P'A')의 패턴에 일치하는지 판단한다. 판단 결과, 패킷의 내용이 제1 시그니처(S1)에 포함된 첫 번째 시그니처 단편(P'A')의 패턴에 일치하는 경우, 보안 장치(10)는 패킷의 내용과 제1 시그니처(S1)에 포함된 두 번째 시그니처 단편(P'B')의 패턴을 비교한다. 또한, 패킷의 내용이 제1 시그니처(S1)에 포함된 두 번째 시그니처 단편(P'B')의 패턴에도 일치하는 경우, 보안 장치(10)는 패킷의 내용과 제1 시그니처(S1)에 포함된 세 번째 시그니처 단편(P'C')의 패턴을 비교한다. 판단 결과, 패킷의 내용이 제1 시그니처(S1)에 포함된 두 번째 시그니처 단편(P'C')의 패턴에도 일치하는 경우, 보안 장치(10)는 패킷이 제1 시그니처(S1)와 대응되는 비정상 트래픽인 것으로 판단하고, 수신한 패킷을 버릴 것이다.In this example, the
반대로, 보안 장치(10)는 패킷의 내용이 제1 시그니처(S1)에 포함된 시그니처 단편들(P'A', P'B', P'C')의 패턴 중 적어도 하나에 일치하지 않는 경우, 패킷의 내용과 다음 시그니처(본 예시에서 제2 시그니처(S2))의 첫 번째 시그니처 단편의 패턴의 비교를 수행한다. 보안 장치(10)에서 이루어지는 패킷의 내용과 제2 시그니처(S2) 내지 제n 시그니처(Sn)의 비교 과정은 제1 시그니처(S1)와의 비교 과정과 실질적으로 동일하므로, 중복되는 설명은 생략한다.On the contrary, the
보안 장치(10)는 패킷의 내용과 각 시그니처를 순차적으로 비교하여, 패킷의 내용이 적어도 하나의 시그니처와 일치하는 경우, 해당 패킷을 비정상 트래픽으로 판단하고 버린다. 반대로, 패킷의 내용이 모든 시그니처와 일치하지 않는 경우, 보안 장치(10)는 제1 클라이언트(1a)가 송신한 패킷을 정상 트래픽으로 판단하고, 패킷을 서버(2)로 전달한다.The
이처럼, 보안 장치(10)는 클라이언트로부터 수신한 패킷에 대해, 시그니처 리스트에 속한 시그니처 순으로, 그리고 각 시그니처에 포함된 시그니처 단편 순으로 비교 과정을 수행한다. 즉, 보안 장치(10)를 통해 이루어지는 비정상 트래픽 검사 과정은 시그니처 단편의 배열에 따라 복잡도가 결정될 수 있다.As such, the
본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 보안 장치(10)가 이용하는 데이터베이스(20) 내의 시그니처 리스트를 분석하고, 분석 결과에 따라 시그니처 리스트에 포함된 각 시그니처의 순서를 재배치함으로써 비정상 트래픽 검사 효율을 높일 수 있다. 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)가 각 시그니처를 재구성할 때 고려되는 사항들은 다음과 같다.The
첫째, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 정규표현식 문법을 검사한다. 구체적으로, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법(예를 들어, 메타문자, 문자 클래스 등)이 시그니처 단편에 포함되어있는지 여부를 검사할 수 있다. 앞서 설명한 것처럼 정규표현식이 단순한 자료구조로 표현되는 경우, 어느 시그니처 단편은 공격 패턴이 명확하게 포함된 한편, 어느 시그니처 단편은 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법(예를 들어, '*', '+', ".{x, }" 등)을 포함할 수 있다. 다만, 불특정 길이 또는 불특정 자료형을 나타내는 문법은 정상 트래픽에 포함된 데이터에도 매칭될 확률이 높다.First, the
예를 들어, 제1 시그니처(S1)에서, P'A'는 "*g"이고, P'B'는 "abcd"이고, P'C'는 "12345jpg"이며, 유입되는 패킷은 "bcc345defg"의 내용을 갖는 상황을 가정한다. 그리고, "*"은 모든 길이의 문자를 의미하는 것으로 가정한다. P'A'에서 '*g'는 마지막 문자가 g인 모든 문자열(예를 들어, "g", "baaag", "bcdddsg", "baabbaag" 등)을 나타내므로, 텍스트 등으로 이루어진 다른 패턴들에 비해 매칭 확률이 높을 것이다.For example, in the first signature S 1 , P'A 'is "* g", P'B' is "abcd", P'C 'is "12345jpg", and the incoming packet is "bcc345defg." Assume a situation with the contents of ". And, "*" is assumed to mean a character of all lengths. In P'A ',' * g 'represents all strings with the last character g (eg, "g", "baaag", "bcdddsg", "baabbaag", etc.), so that other patterns of text, etc. The matching probability will be higher than.
이 예시에서, 보안 장치(10)는 패킷의 내용과 제1 시그니처(S1)의 첫 번째 시그니처 단편(P'A')인 "*g"를 비교한다. 여기서, 보안 장치(10)가 송신한 패킷에는 "bcc345defg"와 같이 마지막 문자가 'g'이므로, 보안 장치(10)는 패킷의 내용이 제1 시그니처(S1)의 첫 번째 시그니처 단편(P'A')과 일치하는 것으로 판단하고, 패킷의 내용과 두 번째 시그니처 단편(P'B')과 비교를 할 것이다. 그 후, 보안 장치(10)는 패킷의 내용과 제1 시그니처(S1)의 두 번째 시그니처 단편(P'B')인 "abcd"를 비교한다. 이 예시에서, 패킷의 내용과 제1 시그니처(S1)의 두 번째 시그니처 단편(P'B')은 서로 일치하지 않으므로, 보안 장치(10)는 패킷의 내용과 제2 시그니처(S2) 간 비교를 수행하게 될 것이다.In this example, the
다른 예시로서, 제1 시그니처(S1)가 P'B' P'C' P'A' 순으로 구성된 상황을 가정한다. 보안 장치(10)는 제1 시그니처(S1)의 첫 번째 시그니처 단편인 P'B'와 패킷의 내용을 비교할 것이다. 이 경우, 패킷의 내용과 제1 시그니처(S1)의 첫 번째 시그니처 단편(P'B')은 서로 일치하지 않으므로, 보안 장치(10)는 제1 시그니처(S1)에 대한 추가적인 비교 과정 없이, 바로 제2 시그니처(S2)를 통한 비교를 수행할 것이다.As another example, assume a situation in which the first signature S 1 is configured in order of P'B 'P'C'P'A'. The
이처럼, 시그니처에 불특정 길이 또는 불특정 자료형인 메타문자 또는 문자 클래스를 포함하는 시그니처 단편이 우선적으로 배치된 경우 클라이언트로부터 송신된 패킷이 정상 패킷이더라도, 이 메타문자 또는 문자 클래스로 인해 가능한, 문자열의 다양한 조합만큼 시그니처의 두 번째 시그니처 단편에 대한 검사가 수행될 확률이 높다. 다시 말해, 이러한 시그니처를 이용한 비정상 트래픽의 검사 효율은 상당히 떨어질 것이다. 반면, 불특정 길이 또는 불특정 자료형의 문자를 포함하는 시그니처 단편이 차후에 비교될 수 있도록 시그니처의 뒤쪽에 배치되면, 이 시그니처를 이용한 비정상 트래픽의 검사 효율을 높일 수 있다.Thus, if signature fragments containing metacharacters or character classes of unspecified length or unspecified type are preferentially placed in the signature, various combinations of strings possible due to this metacharacter or character class, even if the packet sent from the client is a normal packet As such, there is a high probability that a check is performed on the second signature fragment of the signature. In other words, the inspection efficiency of abnormal traffic using this signature will be considerably reduced. On the other hand, if signature fragments containing characters of unspecified length or unspecified data type are placed behind the signature so that they can be compared later, the efficiency of inspection of abnormal traffic using the signature can be improved.
둘째, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 패턴의 길이를 고려한다. 하나의 시그니처는 복수의 시그니처 단편을 가질 수 있고, 각 시그니처 단편은 서로 상이한 패턴 길이를 가질 수 있다. 일반적으로, 시그니처 단편들에서, 상대적으로 길이가 긴 시그니처 단편은 희소성이 있는 것으로 볼 수 있고, 길이가 짧은 시그니처 단편은 패킷의 내용과 일치 확률이 높으므로, 전처리 과정에서 높은 부하를 야기할 가능성이 있다. 따라서, 일정 길이 범위 내에서 희소성이 높은 시그니처 단편에 대해서는 낮은 부하 영향도를 부여할 수 있고, 희소성이 낮은 시그니처 단편(예를 들어, 문자 길이가 일정 길이 미만인 시그니처 단편)은 높은 부하 영향도를 부여할 수 있다. 또한, 길이가 정의한 범위를 벗어나는 경우는 매칭 비용 발생을 고려하여 부하 영향도를 추가적으로 부여할 수 있다. 여기서, 부하 영향도란 아래에서 설명되는 부하요소 별로 보안 장치 또는 네트워크에 발생시킬 부하 정도를 나타낸다.Second, the
이처럼, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 상술한 메타문자 또는 문자 클래스의 존재여부와, 시그니처 단편에 포함된 패턴의 길이를 이용하여 각 시그니처를 재구성할 수 있다. 또한, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 아래에서 설명되는 사항들을 선택적으로 더 고려할 수도 있다.As such, the
본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 오토마타 활성상태 크기를 더 고려할 수 있다. 오토마타는 복수의 상태를 포함할 수 있고, 오토마타 활성상태가 크다는 것은 상태의 개수가 많아, 문자열을 검색하는 과정에서 많은 상태 전이를 거쳐야 한다는 것을 의미한다. 오토마타의 상태가 많을수록 매칭되기까지 많은 조건을 만족시켜야 하기 때문에 전이 상태를 보관하는 시간, 활성상태를 지속적으로 변경하며 오토마타 전체를 검색하는 시간이 탐색 부하에 직접적 연관 요소로 작용할 수 있다.
또한, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 오토마타 활성상태 검색공간 크기를 더 고려할 수 있다. 오토마타 활성상태 검색공간 크기는 활성상태 개수와는 별개로 부하 영향도를 표현할 수 있는 또 다른 요소로서, 검색공간 크기가 커지면, 부하 영향도도 비례하여 증가된다. 여기서, 오토마타 활성상태 검색공간 크기란 오토마타의 활성상태 개수와 무관하게, 매칭 범위가 모호하거나 반복적인 계산을 하는 정규표현식 문법을 위해 확보하는 메모리 공간을 나타낸다. 오토마타 활성상태 검색공간 크기는 정규표현식의 표현에 따라 매칭을 결정하기 전에, 가능성이 있는 모든 문자열에 대해 저장을 하는 공간의 크기로 볼 수 있다. 예를 들어, 정규표현식에서 '*'이라는 문자는 '모든 길이의 문자'라는 의미를 갖는다. 따라서, "*.co.kr"이라는 패턴이 있다고 가정할 때, .co.kr이 검출되기 전까지 내부적으로 ".co.kr을 포함할 가능성이 있는" 모든 문자열에 대한 정보를 메모리에 저장해야 한다. 이 때의 저장 공간의 크기가 오토마타 활성상태 검색공간 크기로 정의될 수 있다.In addition, the
도 2는 본 발명의 제1 실시예에 따른 시그니처 재구성 장치(100)에 대한 블록도이다. 본 발명의 제1 실시예에 따른 시그니처 재구성 장치(100)는 시그니처 기반 비정상 트래픽 탐지가 효율적으로 수행될 수 있도록, 시그니처에 포함된 각 시그니처 단편의 배치 순서를 재구성할 수 있다. 이를 위해, 본 발명의 제1 실시예에 따른 시그니처 재구성 장치(100)는 시그니처 분할부(110), 부하요소 검사부(120) 및 시그니처 재구성부(140)를 포함한다. 여기서, 시그니처 분할부(110), 부하요소 검사부(120) 및 시그니처 재구성부(140)는 본 발명의 이해를 돕기 위해 기능별로 구분한 것이고, 시그니처 재구성 장치(100)는 하나의 제어부 또는 소프트웨어의 형태로 구현될 수 있다. 또한, 시그니처 재구성 장치(100)는 단일 코어 또는 다중 코어로 이루어진 CPU, MPU 등으로 구현될 수도 있다.2 is a block diagram of the
데이터베이스(20)는 복수의 시그니처를 시그니처 리스트의 형태로 저장할 수 있다. 또한, 시그니처 분할부(110)는 데이터베이스(20)에 저장된 시그니처들 중 하나의 시그니처를 선택하고, 시그니처를 복수의 시그니처 단편들로 분할할 수 있다. 예를 들어, 시그니처 분할부(110)는 파서(parser)일 수 있고, 시그니처를 입력 받아, 문자열 패턴과 정규표현식 문법 등을 고려하여 복수의 시그니처 단편들(예를 들어, 구문을 해석할 수 있는 단위)로 분할한다. 또한, 시그니처 분할부(110)는 컴파일러 또는 인터프리터에서 시그니처를 읽고, 그 구조를 알아내는 구문 분석(parsing)을 하는 구성을 나타낸다. 시그니처 분할부(110)에 의해 수행되는 시그니처 분할 방식은 특정 방식으로 제한되지 않고 다양한 방식으로 이루어질 수 있다.The
부하요소 검사부(120)는 시그니처 분할부(110)를 통해 분할된 각 시그니처 단편에 대해, 부하요소마다 제1 영향도를 산출한다. 여기서, 부하요소는 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 시그니처 단편에 포함되어있는지 여부와 시그니처 단편의 패턴의 길이, 오토마타 활성상태 크기 및 오토마타 활성상태 검색공간 크기 중 적어도 일부를 포함한다. 본 발명의 제1 실시예는 부하요소 검사부(120)가 위의 두 개의 부하요소에 대해 검사를 수행하는 것으로 설명되나 이는 예시일 뿐이고, 부하요소 검사부(120)를 통해 이루어지는 검사는 이 두 개의 부하요소 외에 다른 부하요소가 더 추가될 수 있다. 아래의 설명에서는 제1 검사 모듈(121)이 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법의 존재 여부를 고려하고, 제2 검사 모듈(122)이 시그니처 단편의 패턴의 길이를 고려하는 상황을 가정한다.The load
제1 검사 모듈(121)은 데이터베이스(20)로부터 선택된 시그니처(예를 들어, 제1 시그니처)에 포함된 각 시그니처 단편에 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법(예를 들어, 메타문자, 문자 클래스 등)을 포함하는지 확인하고, 이에 따라 영향도를 부여한다. 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법(예를 들어, 메타문자, 문자 클래스 등)은 다양하게 존재하고, 각 정규표현식 문법(예를 들어, 메타문자 또는 문자 클래스)마다 비정상 트래픽 탐지를 수행하는 보안 장치(10)에 야기될 부하도 상이하다. 따라서, 제1 검사 모듈(121)은 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법의 존재 여부 및 종류를 확인하고, 이의 존재 여부 또는 종류에 따라 상이한 부하 영향도를 부여한다.The
예를 들어, 제1 검사 모듈(121)은 시그니처 단편에 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 존재하지 않음을 확인한 경우, 제1 영향도를 기본값(예를 들어, 0 또는 다른 부하요소의 제1 영향도와 비교하여 상대적으로 낮은 값)으로 결정할 수 있다. 반대로, 제1 검사 모듈(121)은 시그니처 단편에 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 존재함을 확인한 경우, 제1 부하요소의 제1 영향도를 해당 정규표현식 문법(예를 들어, 메타문자, 문자 클래스 등)에 따라 미리 설정된 값으로 결정한다. 따라서, 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법 중 상대적으로 부하 영향도가 낮은 정규표현식 문법이 포함된 시그니처 단편은 낮은 영향도 값이 설정될 수 있고, 상대적으로 부하 영향도가 높은 정규표현식 문법이 포함된 시그니처 단편은 높은 영향도 값이 설정될 수 있다.For example, when the
제2 검사 모듈(122)은 시그니처 단편의 패턴 길이를 확인하고, 패턴 길이에 따라 상이한 영향도를 부여한다. 앞서 설명한 것처럼, 상대적으로 길이가 긴 패턴은 희소성이 높은 것으로 볼 수 있고, 상대적으로 길이가 짧은 패턴은 희소성이 낮은 것으로 볼 수 있다. 또한, 상대적으로 길이가 짧은 패턴은 패킷과의 일치 확률이 높아서 높은 부하를 야기할 가능성이 있다. 따라서, 제2 검사 모듈(122)은 시그니처 단편의 패턴의 길이를 확인하고, 패턴의 길이가 낮을수록 제2 부하요소의 제1 영향도에 높은 값을 부여한다. 예를 들어, 제2 검사 모듈(122)은 시그니처 단편의 패턴 길이를 복수 개의 패턴 길이 판단 범위와 비교하고, 시그니처 단편의 패턴 길이가 속하는 패턴 길이 판단 범위에 따라 상이한 값을 제2 부하요소의 제1 영향도로 설정할 수 있다. 또한, 제2 검사 모듈(122)은 패턴의 길이가 미리 정의된 패턴 길이 판단 범위 미만인 경우, 매칭 비용 발생을 고려하여 부하 영향도를 추가적으로 부여할 수 있다.The
도 1을 참조로 설명한 것처럼, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 비정상 트래픽 탐지에서 주요 부하요소로 판단되는 부하 요인을 강조함으로써 시그니처를 재구성할 수 있다. 이를 위해, 본 발명의 일 실시예에 따른 시그니처 재구성 장치(100)는 시그니처 재구성부(140)를 더 포함한다.As described with reference to FIG. 1, the
시그니처 재구성부(140)는 부하요소 검사부(120)를 통해 계산된 시그니처 단편 별로 각 부하요소에 대한 제1 영향도를 이용하여 시그니처 단편 별로 최종 부하 영향도를 산출한다. 예를 들어, 제1 시그니처 단편의 제1 부하요소의 제1 영향도가 20, 제1 시그니처 단편의 제2 부하요소의 제1 영향도가 50으로 부여된 상황을 가정하면, 제1 시그니처 단편의 최종 부하 영향도는 제1 부하요소의 제1 영향도와 제2 부하요소의 제1 영향도를 합한 70이 된다. 시그니처 재구성부(140)는 부하요소 검사부(120)를 통해 산출된 제1 영향도를 합산하는 과정을 시그니처 단편 별로 수행함으로써, 시그니처 단편 별 최종 부하 영향도를 산출한다.The
또한, 시그니처 재구성부(140)는 데이터베이스(20)로부터 선택된 시그니처의 시그니처 단편마다 최종 부하 영향도를 산출하고, 최종 부하 영향도에 따라 시그니처 단편들을 재배치한다. 예를 들어, 시그니처 재구성부(140)는 시그니처 단편들의 최종 부하 영향도를 비교하고, 최종 부하 영향도가 낮을수록 시그니처의 전단에 시그니처 단편을 배치하고, 최종 부하 영향도가 높을수록 시그니처의 후단에 시그니처 단편을 배치하는 재배치를 수행할 수 있다.In addition, the
도 3은 본 발명의 제1 실시예에 따른 시그니처 재구성 장치(100)를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다. 도 3에 도시된 예시에서는 데이터베이스(20)에서 제1 시그니처(S1)가 선택되었고, 제1 시그니처(S1)는 제1 시그니처 단편(P'A'), 제2 시그니처 단편(P'B') 및 제3 시그니처 단편(P'C')을 포함하고, S1이 P'A' P'B' P'C' 순으로 시그니처 단편을 포함한 상황을 가정한다. 또한, 부하요소 검사부(120)는 두 개의 부하요소에 대해 검사를 수행하는 상황을 가정한다.3 is a conceptual diagram illustrating a method of reconstructing one signature through the
시그니처 분할부(110)는 문자열 패턴과 정규표현식 문법 등을 고려하여 제1 시그니처(S1)를 분석하고, 분석 결과에 따라 제1 시그니처(S1)를 복수의 시그니처 단편들로 분할한다. 본 예시에서는 위의 가정에 따라 시그니처 분할부(110)가 제1 시그니처(S1)를 제1 시그니처 단편(P'A'), 제2 시그니처 단편(P'B') 및 제3 시그니처 단편(P'C')으로 분할할 수 있다.The
부하요소 검사부(120)는 시그니처 분할부(110)를 통해 분할된 각 시그니처 단편(P'A', P'B', P'C')에 대해, 부하요소에 대한 제1 영향도를 산출한다. 예를 들어, 부하요소 검사부(120)가 두 개의 부하요소에 대해 검사를 수행한다고 가정하면, 부하요소 검사부(120)는 시그니처 단편 순으로 시그니처 단편마다 제1 영향도를 산출할 수 있다. 예를 들어, 부하요소 검사부(120)는 순차적으로 제1 시그니처 단편(P'A')에 대해 제1 및 제2 부하요소의 제1 영향도를 산출하고, 제2 시그니처 단편(P'B')에 대해 제1 및 제2 부하요소의 제1 영향도를 산출하며, 제3 시그니처 단편(P'C')에 대해 제1 및 제2 부하요소의 제1 영향도를 산출할 수 있다. 다른 예시로서, 부하요소 검사부(120)는 부하요소 순으로 시그니처 단편 별로 제1 영향도를 산출할 수 있다. 예를 들어, 부하요소 검사부는 (120)는 순차적으로, 제1 부하요소에 대해 제1, 제2 및 제3 시그니처 단편(P'A', P'B', P'C')을 검사한 후, 제2 부하요소에 대해 제1, 제2 및 제3 시그니처 단편(P'A', P'B', P'C')을 검사하여 시그니처 단편 별로 각 부하요소의 제1 영향도를 산출할 수 있다. 부하요소 검사부(120)를 통해 이루어지는 제1 영향도 산출 순서는 위의 순서로 제한되지 않고, 이의 조합 또는 역순으로도 가능하다. 또한, 위의 설명에서는 부하요소 검사부(120)를 통해 이루어지는 제1 영향도 산출이 시그니처 단편 순으로 또는 부하요소 순으로 순차적으로 이루어지는 것으로 설명하였으나, 이러한 산출 과정은 병렬적으로 동시에 이루어질 수도 있다.The load
시그니처 재구성부(140)는 부하요소 검사부(120)를 통해 산출된 시그니처 단편 별로 제1 영향도를 합산함으로써 시그니처 단편 별로 최종 부하 영향도를 산출한다. 그 후, 시그니처 재구성부(140)는 각 시그니처 단편의 최종 부하 영향도를 비교하고, 최종 부하 영향도의 크기가 상대적으로 낮은 시그니처 단편을 시그니처의 전단에, 최종 부하 영향도의 크기가 상대적으로 높은 시그니처 단편을 시그니처의 후단에 배치함으로써, 시그니처를 재구성한다.The
예를 들어, 시그니처 재구성부(140)를 통해 산출된 결과가 제1 시그니처 단편(P'A')의 최종 부하 영향도가 70이고, 제2 시그니처 단편(P'B')의 최종 부하 영향도가 60이며, 제3 시그니처 단편(P'C')의 최종 부하 영향도가 80인 상황을 가정하면, 시그니처 재구성부(140)는 각 시그니처 단편의 최종 부하 영향도의 크기를 고려하여, 제1 시그니처(S1)를 제2 시그니처 단편(P'B'), 제1 시그니처 단편(P'A'), 제3 시그니처 단편(P'C') 순으로 재구성 할 것이다. 다른 예시로서, 시그니처 재구성부(140)를 통해 산출된 결과가 제1 시그니처 단편(P'A')의 최종 부하 영향도가 80이고, 제2 시그니처 단편(P'B')의 최종 부하 영향도가 30이며, 제3 시그니처 단편(P'C')의 최종 부하 영향도가 50인 상황을 가정하면, 시그니처 재구성부(140)는 각 시그니처 단편의 최종 부하 영향도의 크기를 고려하여, 제1 시그니처(S1)를 제2 시그니처 단편(P'B'), 제3 시그니처 단편(P'C'), 제1 시그니처 단편(P'A') 순으로 재배치 할 것이다.For example, the result calculated by the
도 4는 본 발명의 제2 실시예에 따른 시그니처 재구성 장치(200)에 대한 블록도이다. 본 발명의 제2 실시예에 따른 시그니처 재구성 장치(200)는 시그니처 분할부(210), 부하요소 검사부(220), 가중치 처리부(230) 및 시그니처 재구성부(240)를 포함하여 구성될 수 있다. 여기서, 시그니처 분할부(210), 부하요소 검사부(220), 가중치 처리부(230) 및 시그니처 재구성부(240)는 본 발명의 이해를 돕기 위해 기능별로 구분한 것이고, 시그니처 재구성 장치(200)는 하나의 제어부 또는 소프트웨어의 형태로 구현될 수 있다. 또한, 시그니처 재구성 장치(200)는 단일 코어 또는 다중 코어로 이루어진 CPU, MPU 등으로 구현될 수도 있다. 또한, 본 발명의 제2 실시예는 시그니처 재구성 장치(200)가 가중치 처리부(230)를 더 포함하는 점, 그리고 시그니처 재구성부(240)가 가중치 처리부(230)를 이용하여 시그니처를 재구성한다는 점을 제외하고, 제1 실시예와 실질적으로 동일하다. 따라서, 아래에서는 제1 실시예와 차이점을 중심으로 그 설명이 이루어진다.4 is a block diagram of the
가중치 처리부(230)는 복수의 부하요소에 대한 가중치를 산출하고, 부하요소 검사부(220)에서 출력된 각 부하요소의 제1 영향도에 복수의 부하요소에 대한 가중치를 반영함으로써, 각 부하요소의 제2 영향도를 산출한다. 즉, 가중치 처리부(230)는 각 부하요소의 제1 영향도에 가중치를 각각 반영함으로써, 제1 영향도 값들을 조절한다. 가중치 처리부(230)를 통해 가중치를 고려하는 이유는 본 발명의 실시예에 따른 시그니처 재구성 장치 또는 방법이 적용되는 보안 장치(10)의 성능(예를 들어, CPU의 사양, 메모리의 용량 등)과 통신 환경이 상이할 수 있기 때문이다. 예를 들어, 어떠한 환경에서는 각 시그니처 단편의 구성(예를 들어, 단순 텍스트 또는 정규표현식)이 보안 장치(10)의 부하에 크게 관여할 수 있는 한편, 다른 환경에서는 그렇지 않을 수 있다. 따라서, 가중치 처리부(230)는 아래의 사항을 고려하여 각 부하요소에 대한 가중치를 산출하고, 산출된 가중치들을 이용하여, 부하요소 검사부(220)에서 출력된 제1 영향도의 크기를 각각 조절한다.The
먼저, 가중치 처리부(230)는 제1 부하요소로 언급된 데이터베이스(20)에 저장된 시그니처의 구성을 고려한다. 시그니처의 구성은 단순 텍스트로만 구성되거나 또는, 여러 반복문과 정규표현식이 포함된 문자열 등으로 구성될 수 있다. 예를 들어, 데이터베이스(20)에 저장된 시그니처 리스트에서 대부분의 시그니처들이 단순 텍스트만으로 이루어진 경우, 시그니처의 문법으로 인해 발생할 부하 영향도는 상당히 낮을 것이다.First, the
따라서, 가중치 처리부(230)는 전체 시그니처에서 구성이 단순 텍스트로 이루어진 시그니처 단편의 비율을 확인하고, 이 비율이 미리 설정된 비율(예를 들어, 30%, 40%, 50% 등)을 벗어난 경우 제1 부하요소에 대한 가중치를 높일 수 있다. 일 실시예에서, 가중치 처리부(230)는 시그니처 구성에서 단순 텍스트의 비율이 미리 설정된 비율을 초과하는 경우, 제1 부하요소의 가중치를 다른 가중치에 비해 상대적으로 높게 결정할 수 있다.Therefore, the
또한, 가중치 처리부(230)는 보안 장치(10)가 이용하는 패턴 탐색 알고리즘을 확인하고, 패턴 탐색 알고리즘의 종류에 따라 제2 부하요소의 가중치를 높거나 낮게 설정할 수 있다. 보안 장치(10)가 적용되는 네트워크 망 환경은 다양한 트래픽이 흐르는 인터넷 망뿐만 아니라, 특정 서비스망으로 한정할 수 있다. 보안 장치(10)는 보안 장치(10)가 적용될 망에 따라 상이한 패턴 탐색 알고리즘이 적용될 수 있는데, 이들 중 어떤 패턴 탐색 알고리즘은 패턴의 길이에 따라 문자열 탐색 시간이 길어지는 방식일 수 있다. 따라서, 가중치 처리부(230)는 보안 장치(10)가 이용하는 패턴 탐색 알고리즘을 확인함으로써 제2 부하요소의 가중치를 조절할 수 있다.In addition, the
가중치는 각 부하요소 별로 고정된 값이 아니다. 가중치의 부여는 시그니처의 구성, 운용 장비의 물리적 장치의 특성, 장비를 운용하는 네트워크망의 트래픽 특성을 고려하여 가변적으로 이루어질 수 있다. The weight is not a fixed value for each load factor. The weighting may be made in consideration of the configuration of the signature, the characteristics of the physical device of the operation equipment, and the traffic characteristics of the network for operating the equipment.
또한, 가중치 처리부(230)는 각 부하요소의 제2 영향도에 대해 추가적인 조정이 필요한지 확인할 수 있다. 예를 들어, 가중치 처리부(230)는 패널티 정보를 확인하고, 패널티 정보를 이용하여 아래에서 설명되는 시그니처 단편에 대한 최종 부하 영향도에 추가적인 조정이 필요한지 확인할 수 있다. 패널티 정보는 시그니처 단편에 추가적인 부하 영향도를 부여할지 판단하기 위한 패널티 조건을 포함하는 정보이다. 즉, 패널티 정보는 부하요소 검사부(220)를 통한 각 부하요소의 검사과정에서 산술적인 부하 판단기준 이외에, 추가적인 판단 과정을 통해 시그니처 단편이 패널티 정보에 포함된 추가적인 패널티 조건에 일치하는지 판단할 때 이용될 수 있다. 가중치 처리부(230)는 패널티 정보에 포함된 추가적인 판단 조건(예를 들어, 패널티 조건)에 일치하는 경우, 이 시그니처 단편에 대한 패널티 값을 부여한다.In addition, the
예를 들어, 가중치 처리부(230)는 위에서 설명한 부하요소들에 대한 영향도 산출 이외에, 추가적인 패널티 조건을 이용한 비교 과정을 수행하고 패널티 조건에 일치하는 시그니처 단편이 검색되면, 검색된 시그니처 단편의 순서를 최종 부하 영향도에 재배치하는 패널티 값을 부여할 수 있다. 다시 말해, 가중치는 부하요소에 대한 제1 영향도에 적용되는 값이고, 패널티 값은 시그니처 단편에 대해 적용되는 값이다.For example, in addition to calculating the influence on the load factors described above, the
시그니처 재구성부(240)는 가중치 처리부(230)에서 출력된 각 부하요소의 제2 영향도를 받고, 제2 영향도를 이용하여 시그니처 단편의 최종 부하 영향도를 산출한다. 또한, 시그니처 재구성부(240)는 최종 부하 영향도를 산출하기 전, 시그니처 단편에 패널티 값이 부여되었는지 확인하고, 패널티값이 부여된 경우 각 부하요소 제2 영향도와 패널티 값 모두를 합하여 시그니처 단편의 최종 부하 영향도를 산출할 수 있다.The
또한, 시그니처 재구성부(240)는 시그니처의 모든 시그니처 단편에 대해 최종 부하 영향도가 산출되었는지 확인하고, 모든 시그니처 단편에 대한 최종 부하 영향도가 산출된 경우, 시그니처에서 최종 부하 영향도의 크기에 따라 각 시그니처 단편을 재배치함으로써 시그니처를 재구성한다. 시그니처 재구성부(240)를 통해 이루어지는 동작은 도 2 및 도 3을 참조로 상세히 설명하였으므로, 중복되는 설명은 생략한다.In addition, the
본 발명의 제2 실시예에 따른 시그니처 재구성 장치(200)는 가중치를 반영하여(예를 들어, 시그니처 구성과 패턴 탐색 알고리즘 등을 고려하여) 부하요소에 대해 영향도를 산출할 수 있다. 가중치는 검색 성능에 영향이 큰 부하요소에서 계산된 부하 발생 비용이 통합 비용(예를 들어, 최종 부하 영향도)에 적용될 때의 비중을 높이는 역할을 한다. 상황에 따라 조절된 크기의 가중치를 반영함으로써, 가중치가 적용되지 않을 때보다 시그니처의 부하 여부 검출 확률을 높일 수 있으며, 적은 탐색 시간도 보장할 수 있다.The
도 5는 본 발명의 제2 실시예에 따른 시그니처 재구성 장치(200)를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다. 도 5에 도시된 예시는 도 3에 도시된 예시와 마찬가지로, 데이터베이스(20)에서 제1 시그니처(S1)가 선택되었고, 제1 시그니처(S1)는 제1 시그니처 단편(P'A'), 제2 시그니처 단편(P'B') 및 제3 시그니처 단편(P'C')을 포함하고, 제1 시그니처(S1)가 P'A' P'B' P'C' 순으로 시그니처 단편을 포함한 상황을 가정한다. 부하요소 검사부(220)는 두 개의 부하요소에 대해 검사를 수행하는 상황을 가정한다. 또한, 본 발명의 제2 실시예는 가중치를 고려한다는 점을 제외하고, 제1 실시예와 실질적으로 동일하므로 아래에서는 차이점 위주로 설명이 이루어진다.5 is a conceptual diagram illustrating a method of reconstructing one signature through the
가중치 처리부(230)는 부하요소 검사부(220)에서 출력된 각 부하요소의 제1 영향도(도 5에서, 제1 부하요소의 제1 영향도 및 제2 부하요소의 제1 영향도)에 복수의 부하요소에 대한 가중치를 적용함으로써, 각 부하요소의 제2 영향도(도 5에서, 제1 부하요소의 제2 영향도 및 제2 부하요소의 제2 영향도)를 산출한다. 도 5에 도시된 예시는 제1 부하요소에 대한 가중치가 제2 부하요소에 대한 가중치보다 높은 상황을 가정한다. 예를 들어, 제1 부하요소의 제1 영향도 및 제1 부하요소의 제2 영향도가 각각 30이고, 제1 부하요소의 가중치 및 제2 부하요소의 가중치가 각각 1.5 및 0.5인 상황을 가정하면, 제1 부하요소의 제2 영향도는 45, 그리고 제2 부하요소의 제2 영향도는 15가 될 것이다. 또한, 제1 부하요소의 제1 영향도 및 제1 부하요소의 제2 영향도가 각각 60 및 30이고, 제1 부하요소의 가중치 및 제2 부하요소의 가중치가 각각 1.5 및 0.5인 상황을 가정하면, 제1 부하요소의 제2 영향도는 90, 그리고 제2 부하요소의 제2 영향도는 15가 될 것이다.The
시그니처 재구성부(240)는 가중치 처리부(230)를 통해 가중치가 반영된 제2 영향도들을 합산함으로써, 각 시그니처 단편의 최종 부하 영향도를 계산한다. 또한, 시그니처 재구성부(240)는 시그니처에 포함된 모든 시그니처 단편들의 최종 부하 영향도 계산이 완료되면, 최종 부하 영향도의 크기에 따라 시그니처 단편들을 P'B' P'C' P'A' 순으로 재배치함으로써, 시그니처를 재구성한다.The
도 6은 본 발명의 제3 실시예에 따른 시그니처 재구성 장치(300)에 대한 블록도이다. 본 발명의 제3 실시예에 따른 시그니처 재구성 장치(300)는 시그니처 분할부(310), 부하요소 검사부(320), 가중치 처리부(330), 시그니처 재구성부(340) 및 오토마타 생성부(350)를 포함하여 구성될 수 있다. 여기서, 시그니처 분할부(310), 부하요소 검사부(320), 가중치 처리부(330), 시그니처 재구성부(340) 및 오토마타 생성부(350)는 본 발명의 이해를 돕기 위해 기능별로 구분한 것이고, 시그니처 재구성 장치(300)는 하나의 제어부 또는 소프트웨어의 형태로 구현될 수 있다. 또한, 시그니처 재구성 장치(300)는 단일 코어 또는 다중 코어로 이루어진 CPU, MPU 등으로 구현될 수도 있다. 또한, 본 발명의 제3 실시예는 부하요소 검사부(320)가 N개의 부하요소를 고려하는 점, 그리고 부하요소 검사부(320)를 통해 고려될 오토마타를 생성하기 위한 오토마타 생성부(350)를 더 포함하는 점을 제외하고, 제1 실시예 또는 제2 실시예와 실질적으로 동일하다. 따라서, 아래에서는 제1 실시예 또는 제2 실시예와의 차이점을 중심으로 그 설명이 이루어진다.6 is a block diagram of the
시그니처 분할부(310)는 데이터베이스(20)에 저장된 시그니처들 중 하나의 시그니처를 선택하고, 시그니처를 복수의 시그니처 단편들로 분할한다.The
오토마타 생성부(350)는 시그니처 분할부(310)를 통해 분할된 복수의 시그니처 단편들에 대한 오토마타를 하나씩 순차적으로 생성하거나 동시에 생성할 수 있다. 여기서, 오토마타는 디지털 컴퓨터에 대한 추상적 모델을 나타내며, 유한 상태일 수 있다. 유한 상태의 오토마타는 유한개의 상태, 입력, 상태전이 함수, 하나의 초기 상태, 적어도 하나의 종료 상태를 포함한다. 일반적으로, 유한 상태 모델은 연속적으로 입력되는 입력에 대한 처리를 위한 모델이다. 오토마타 생성부(350)를 통해 생성한 오토마타의 예시는 도 7에 도시된다.The
도 7은 오토마타(예를 들어, 유한 상태 오토마타)의 개념을 설명하기 위한 개념도이다. 도 7에서 숫자 0 내지 숫자 5를 포함하는 원은 유한 오토마타의 상태를 각각 나타내고, 화살표에 병기된 문자(a, b, d)는 상태 전이 조건을 나타낸다. 입력된 문자가 상태 전이 조건을 만족할 경우 화살표 방향으로 상태가 전이된다. 예를 들어, 0이 표시된 원은 시작 상태를 나타내고, 시작 상태에서 a가 입력되면 상태 1로 전이된다. 또한, 두 개의 동심원으로 이루어진 5로 표시된 원은 최종 상태를 나타낸다. 시작 상태에서부터 출발하여, 상태가 전이(transition)된 결과 종료 상태에 도달하면 검색하고자 하는 문자열이 검색되었음을 의미한다. 다시 도 6을 참조한다.7 is a conceptual diagram illustrating the concept of an automata (for example, a finite state automata). In Fig. 7, circles containing numerals 0 to 5 represent the states of the finite automata, respectively, and letters (a, b, d) written in the arrows indicate state transition conditions. If the entered character satisfies the transition condition, the transition is made in the direction of the arrow. For example, a circle with 0 indicates a start state, and when a is entered in the start state, the state transitions to
부하요소 검사부(320)는 시그니처 분할부(310)를 통해 각 시그니처 단편에 대해, 각 부하요소의 제1 영향도를 산출한다. 제1 및 제2 실시예에서 두 개의 부하요소에 대해 제1 영향도를 산출한 것과 달리, 부하요소 검사부(320)는 N 개(예를 들어, 3개, 4개 또는 그 이상)의 부하요소에 대한 제1 영향도를 산출할 수 있다. 예를 들어, 부하요소는 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 시그니처 단편에 포함되어있는지의 여부, 시그니처 단편의 패턴의 길이, 오토마타 활성상태 크기 및 오토마타 활성상태 검색공간 크기 중 적어도 일부를 포함한다. 도 6에서는 부하요소가 4개인 것으로 도시되나, 이는 예시일 뿐이고 부하요소 검사부(320)는 위의 부하요소 중 일부 또는 전체, 또는 위의 부하요소 외의 다른 부하요소를 고려하여 각 부하요소에 대한 제1 영향도를 산출할 수 있다.The load
부하요소 검사부(320)는 이들 네 개의 부하요소 중 적어도 일부 또는 전체, 또는 상술한 부하요소 이외의 다른 부하요소에 대해 제1 영향도를 산출할 수 있다. 아래에서는 부하요소 검사부(320)가 네 개의 검사 모듈(321, 322, 323, 324)을 포함하여 네 개의 부하요소에 대한 제1 영향도를 산출하는 상황을 가정한다. 예를 들어, 제1 검사 모듈(321)이 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법의 존재 여부를 고려하고, 제2 검사 모듈(322)이 시그니처 단편의 패턴의 길이를 고려하고, 제3 검사 모듈(323)이 오토마타 활성상태 크기를 고려하며, 제4 검사 모듈(324)이 오토마타 활성상태 검색공간 크기를 고려하는 상황을 가정한다. 여기서, 제1 및 제2 검사 모듈(321, 322)을 통해 이루어지는 동작은 도 2를 참조로 설명한 제1 및 제2 검사 모듈(121, 122)과 실질적으로 동일하므로, 중복되는 설명은 생략한다.The load
제3 검사 모듈(323)은 오토마타 생성부(350)를 통해 생성된 시그니처 단편의 오토마타의 활성상태 크기에 따라 제3 부하요소의 제1 영향도를 부여할 수 있다. 앞서 설명한 바와 같이, 오토마타의 활성상태가 크다는 것은, 문자열을 검색하는 과정에서 많은 상태 전이를 거쳐야 함을 의미한다. 예를 들어, 활성상태가 큰 오토마타를 갖는 시그니처 단편을 이용하여 비정상 트래픽을 검출할 경우, 매칭되기 까지 많은 조건을 만족시켜야 하기 때문에 전이 상태를 보관하는 시간과, 활성상태를 지속적으로 변경하며 오토마타 전체를 검색하는 시간이 탐색 부하에 직접적 연관 요소로 작용할 수 있다. 따라서, 제3 검사모듈(323)은 이러한 특성을 고려하여 활성상태가 클수록 높은 값을, 그리고 활성상태가 낮을수록 낮은 값을 제3 부하요소의 제1 영향도에 부여할 수 있다.The third inspection module 323 may give a first influence of the third load element according to the size of the automata of the signature fragment generated by the
제4 검사 모듈(324)은 오토마타 생성부(350)를 통해 생성된 시그니처 단편의 오토마타의 활성상태 검색공간 크기에 따라 제4 부하요소의 제1 영향도를 부여할 수 있다. 오토마타의 활성상태 개수는 적으나 매칭 범위가 모호하거나 반복적인 계산을 하는 정규표현식 문법을 위해 확보하는 메모리 공간은 활성상태 검색공간의 크기로서 표현될 수 있다. 이는 활성상태 개수와는 별개로 부하 영향도를 표현할 수 있는 오토마타 검증의 또 다른 주요 요소로서, 검색공간 크기와 비례하여 부하 영향도가 부여된다.The fourth inspection module 324 may give the first influence of the fourth load element according to the size of the active state search space of the automata of the signature fragment generated by the
가중치 처리부(330)는 부하요소 검사부(320)에서 출력된 각 부하요소의 제1 영향도에 가중치를 각각 반영함으로써, 각 부하요소의 제2 영향도를 산출한다. 즉, 가중치 처리부(330)는 각 부하요소의 제1 영향도에 가중치를 반영함으로써, 각 부하요소의 제1 영향도 값을 조절한다. 제2 실시예와는 달리, 가중치 처리부(330)는 제1 및 제2 검사 모듈(321, 322)에서 출력된 제1 및 제2 부하요소에 대한 제1 영향도 뿐 아니라, 제3 및 제4 검사 모듈(323, 324)에서 출력된 제3 및 제4 부하요소에 대한 제1 영향도에 제3 및 제4 부하요소에 대한 가중치를 적용함으로써, 제1 내지 제4 부하요소에 대한 제2 영향도를 산출할 수 있다. 한편, 제1 및 제2 부하요소에 대해 가중치를 반영할 때에 고려되어야 할 사항은 위에서 상세히 설명하였으므로, 아래에서는 제3 및 제4 부하요소에 대한 가중치를 반영할 때에 고려되어야 할 사항을 중심으로 설명이 이루어진다.The
가중치 처리부(330)는 시그니처 재구성 장치(300) 또는 방법이 적용되는 보안 장비의 성능을 고려할 수 있다. 본 발명의 실시예들에 따른 시그니처 재구성 장치(300)는 시그니처를 운용하는 장비를 대용량 네트워크 트렁크를 처리하는 고성능의 시스템을 가정하고 있으나, 본 발명의 실시예들을 적용하는 기술이 소프트웨어 기반에서 동작할 수 있기 때문에 운용 장비의 환경이 변수가 될 수 있다. 메모리가 적은 시스템에서 오토마타 활성상태 검색공간 크기는 주요 검토 요소가 되며, 가급적 가중치를 높여 그 패턴이 후 순위로 처리될 수 있도록 조치하는 것이 옳다. The
따라서, 가중치 처리부(330)는 제1 부하요소로 언급된 시그니처 구성이 정규 표현식인 경우(정규 표현식은 오토마타 활성상태 또는 오토마타 활성상태 검색 공간 크기에 영향을 미침), 그리고 보안 장치(10)에서 메모리의 여유 공간이 적은 경우, 제3 부하요소 및 제4 부하요소에 대한 가중치를 상대적으로 높일 수 있다. 또한, 가중치 처리부(330)는 시그니처 구성이 단순 텍스트인 경우, 텍스트를 구성하는 문자의 개수가 오토마타의 상태 개수에 영향을 미치므로 제3 부하요소의 가중치를 증가시킬 수 있다.Accordingly, the
부하를 나타내는 각 요소는 서로 연관성이 있다. 예를 들어, 하나의 시그니처 단편이 100 바이트를 초과하는 텍스트 패턴인 상황을 가정한다. 100 바이트를 초과하는 텍스트 패턴은 예를 들어, 100개를 초과하는 숫자 또는 문자의 조합을 포함할 수 있고, 이 텍스트 패턴에 대해 생성된 오토마타는 100개를 초과하는 상태를 포함하므로, 오토마타의 활성상태 크기도 상대적으로 크다. 그러나, 시그니처 단편이 큰 텍스트 패턴의 경우, 이와 완전히 일치하는 문자열을 찾기 어렵기 때문에, 상대적으로 반복적인 계산의 수행 횟수가 적어진다. 따라서, 오토마타 활성상태 검색공간 크기는 크지 않다. Each factor representing a load is related to each other. For example, suppose that one signature fragment is a text pattern that exceeds 100 bytes. Text patterns exceeding 100 bytes may include, for example, more than 100 numbers or combinations of characters, and automata generated for this text pattern may contain more than 100 states, thus enabling the activation of automata. The state size is also relatively large. However, in the case of a large text pattern with a signature fragment, it is difficult to find a string that perfectly matches this, so that the number of relatively repetitive calculations is performed. Therefore, the size of the automata active search space is not large.
다른 예시로서, 동일 문자가 4개 이상 100개 이하 반복을 의미하는 '.{4,100}'와 같은 시그니처 단편은 그 길이가 길지 않기 때문에, 오토마타의 활성상태 크기도 크지 않다. 그러나 탐색이 종료되는 시점까지 최소 4 바이트에서 100 바이트까지의 문자열 범위에 대하여 매칭 가능성을 확보해야 하기 때문에, 오토마타 활성상태 검색공간의 크기는 커야 한다.As another example, a signature fragment such as '. {4,100}', which means 4 to 100 or more repetitions of the same character, does not have a long length, so the size of the active state of the automata is not large. However, the size of the automata active search space must be large because matching possibilities must be ensured for a string range of at least 4 bytes to 100 bytes until the end of the search.
이처럼, 가중치 처리부(330)는 본 발명의 실시예들에 따른 시그니처 재구성 장치(300) 또는 방법이 적용될 장비의 성능, 그리고 시그니처 리스트에 포함된 각 시그니처의 구조 등을 고려하여, 부하요소 별로 상이한(또는 적어도 두 개가 상이한) 가중치를 적용할 수 있다. 또한, 위에서는 가중치를 증가시키거나 감소시키는 상황에 대해 설명하였다. 다만 이는 예시일 뿐이고, 상기 조건 외에도 다양한 조건을 통해 또는 다양한 상황에 따라 각 부하요소에 대한 가중치가 산출 또는 조절될 수 있다.As such, the
가중치 처리부(330)는 제2 실시예와 마찬가지로, 패널티 정보를 확인하고, 패널티 정보를 이용하여 시그니처 단편에 패널티 값을 부여할지 여부를 결정할 수 있다. 패널티 정보를 이용하여 시그니처 단편의 최종 부하 영향도를 조정하는 방법에 대한 설명은 도 4를 참조로 상세히 언급하였으므로, 중복되는 설명을 생략한다.Like the second embodiment, the
시그니처 재구성부(340)는 가중치 처리부(330)에서 출력된 각 부하요소의 제2 영향도를 수신하고, 제2 영향도를 이용하여 시그니처 단편의 최종 부하 영향도를 산출한다. 또한, 시그니처 재구성부(340)는 시그니처 단편에 패널티 값이 부여된 경우, 각 부하요소의 제2 영향도와 패널티 값 모두를 합산함으로써 시그니처 단편의 최종 부하 영향도를 산출할 수 있다. 그 후, 시그니처 재구성부(340)는 그 시그니처에서 최종 부하 영향도의 크기에 따라 각 시그니처 단편을 재배치함으로써, 시그니처를 재구성한다. 시그니처 재구성부(340)를 통해 이루어지는 동작은 위에서 상세히 설명하였으므로, 중복되는 설명은 생략한다.The
도 8은 본 발명의 제3 실시예에 따른 시그니처 재구성 장치(300)를 통해, 하나의 시그니처를 재구성하는 방법을 설명하기 위한 개념도이다. 도 8에 도시된 예시는 도 3 및 도 5에 도시된 예시와 마찬가지로, 데이터베이스(20)에서 제1 시그니처(S1)가 선택되었고, 제1 시그니처(S1)는 제1 시그니처 단편(P'A'), 제2 시그니처 단편(P'B') 및 제3 시그니처 단편(P'C')을 포함하고, 제1 시그니처(S1)가 P'A' P'B' P'C' 순으로 시그니처 단편을 포함한 상황을 가정한다. 이에 부가하여, 부하요소 검사부(320)는 네 개의 부하요소에 대해 검사를 수행하는 상황을 가정한다. 8 is a conceptual diagram illustrating a method of reconstructing one signature through the
도 8을 참고하면, 부하요소 검사부(320)는 시그니처 분할부(310)를 통해 분할된 각 시그니처 단편(P'A', P'B', P'C')에 대해, 각 부하요소의 제1 영향도를 산출한다. 예를 들어, 부하요소 검사부(320)는 시그니처 단편 순으로, 또는 부하요소 순으로, 제1 부하요소 내지 제4 부하요소에 대한 제1 영향도를 산출할 수 있다. 도 3을 참조로 설명한 바와 같이, 부하요소 검사부(320)를 통해 이루어지는 제1 영향도 산출은 순차적으로는 물론, 병렬적으로 동시에 이루어질 수도 있다. 도 6을 참조로 설명한 것처럼, 제1 부하요소는 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 시그니처 단편에 포함되어있는지의 여부를 나타내고, 제2 부하요소는 시그니처 단편의 패턴의 길이를 나타내고, 제3 부하요소는 오토마타 활성상태 크기를 나타내며, 제4 부하요소는 오토마타 활성상태 검색공간 크기를 나타낼 수 있다.Referring to FIG. 8, the load
가중치 처리부(330)는 부하요소 검사부(320)에서 출력된 제1 내지 제4 부하요소의 제1 영향도에 복수의 부하요소에 대한 가중치를 적용함으로써 각 부하요소의 제2 영향도를 산출한다. 또한, 가중치 처리부(330)는 패널티 조건 등을 고려하여 제2 영향도를 산출할 수 있다.The
시그니처 재구성부(340)는 가중치 처리부(330)를 통해 가중치가 반영된(또는 패널티가 반영된) 각 부하요소의 제2 영향도를 합산함으로써, 각 시그니처 단편의 최종 부하 영향도를 계산한다. 또한, 시그니처 재구성부(340)는 시그니처에 포함된 모든 시그니처 단편들의 최종 부하 영향도 계산이 완료되면, 최종 부하 영향도의 크기에 따라 시그니처 단편들을 P'B' P'C' P'A' 순으로 재배치함으로써, 시그니처를 재구성한다.The
도 9는 본 발명의 일 실시예에 따른 시그니처 재구성 방법에 대한 흐름도이다. 상술한 바와 같이, 본 발명의 일 실시예에 따른 시그니처 재구성 방법은 시그니처 기반 비정상 트래픽 탐지 기법이 보다 효율적으로 이루어질 수 있도록, 시그니처에 포함된 각 시그니처 단편을 재구성함으로써 각 시그니처를 재구성할 수 있다. 본 발명의 일 실시예에 따른 시그니처 재구성 방법은 도 1 내지 도 8을 참조로 설명된 장치(예를 들어, 복수의 구성들 또는 하나의 제어부를 포함하는 장치)에 의해 이루어지거나, 다른 실시예에서 소프트웨어의 형태로 보안 장치에 설치됨으로써 적용될 수 있다. 이하에서는 위에서 설명된 사항과 중복되는 부분은 생략하여 그 설명이 이루어진다.9 is a flowchart illustrating a signature reconstruction method according to an embodiment of the present invention. As described above, the signature reconstruction method according to an embodiment of the present invention may reconstruct each signature by reconstructing each signature fragment included in the signature so that the signature-based abnormal traffic detection technique can be performed more efficiently. The signature reconstruction method according to an embodiment of the present invention may be performed by the apparatus described above with reference to FIGS. 1 through 8 (for example, a plurality of configurations or an apparatus including one controller), or in another embodiment. It can be applied by being installed in the security device in the form of software. In the following description is omitted to omit the overlapping parts described above.
S110 단계는 데이터베이스(20)에 저장된 시그니처 중 하나의 시그니처(예를 들어, 제1 시그니처)를 선택하는 단계이다. 앞서 설명한 것처럼, 데이터베이스는 복수의 시그니처들을 시그니처 리스트의 형태로 구비할 수 있다.In step S110, a signature (eg, a first signature) of one of the signatures stored in the
S120 단계는 S110 단계를 통해 선택한 시그니처(예를 들어, 제1 시그니처)를 복수의 단편들로 분할하는 단계이다. 예를 들어, S120 단계는 파서 등을 이용하여 시그니처를 수신하고, 문자열 패턴과 정규표현식 문법 등을 고려하여 복수의 시그니처 단편들로(예를 들어, 구문을 해석할 수 있는 단위로) 분할함으로써 이루어질 수 있다. S120 단계에서 이루어지는 구문 분석 방식은 다양한 방식이 존재하므로, 본 발명에서는 이를 특정 방식으로 제한하지 않는다.In step S120, the signature (for example, the first signature) selected through step S110 is divided into a plurality of fragments. For example, step S120 may be performed by receiving a signature using a parser or the like and dividing the signature into a plurality of signature fragments (for example, in a unit that can parse a syntax) in consideration of a string pattern and a regular expression grammar. Can be. Since the parsing method performed in step S120 exists in various ways, the present invention does not limit it to a specific method.
S130 단계는 S120 단계를 통해 분할된 각 시그니처 단편들 중 하나의 시그니처 단편을 선택하고, 선택한 시그니처 단편의 각 부하요소의 제1 영향도를 산출하는 단계이다. 부하요소는 불특정 길이 또는 불특정 자료형을 나타내는 정규표현식 문법이 시그니처 단편에 포함되어있는지의 여부, 시그니처 단편의 패턴의 길이, 오토마타 활성상태 크기 및 오토마타 활성상태 검색공간 크기 중 적어도 일부를 포함한다. 예를 들어, S130 단계는 선택한 시그니처 단편에 대해, 두 개, 세 개, 네 개 또는 그 이상의 부하요소의 제1 영향도를 산출할 수 있다. 부하요소는 위에서 설명한 것으로 제한되지 않고 다른 부하요소가 더 고려될 수 있다. 그리고, 각 부하요소에 대한 제1 영향도 산출 방법은 위에서 상세히 언급하였으므로, 중복되는 설명은 생략한다.In operation S130, a signature fragment of one of the signature fragments divided through the operation S120 may be selected, and a first influence of each load element of the selected signature fragment may be calculated. The load factor includes at least some of whether a regular expression grammar representing an unspecified length or unspecified data type is included in the signature fragment, the length of the pattern of the signature fragment, the size of the automata active state, and the size of the automata active state search space. For example, step S130 may calculate the first impact of two, three, four or more load factors for the selected signature fragment. The load element is not limited to that described above, and other load elements may be further considered. In addition, since the method of calculating the first impact degree for each load element has been described in detail above, redundant description thereof will be omitted.
S140 단계는 복수의 부하요소에 대한 가중치를 산출 하는 단계이다. 앞서 설명한 바와 같이, 본 발명의 일 실시예에 따른 시그니처 재구성 방법은 시그니처의 구성, 패턴 탐색 알고리즘의 종류, 시스템 메모리의 여유 공간 등을 고려하여, 각 부하요소에 대한 가중치를 산출한다. 가중치를 산출하는 방법과 이에 이용되는 조건 등은 위에서 상세히 설명하였으므로, 중복되는 설명은 생략한다.Step S140 is a step of calculating weights for the plurality of load elements. As described above, the signature reconstruction method according to an embodiment of the present invention calculates a weight for each load element in consideration of the configuration of the signature, the type of pattern search algorithm, the free space of the system memory, and the like. Since the method for calculating the weight and the conditions used therein have been described in detail above, redundant descriptions will be omitted.
S150 단계는 S130 단계를 통해 산출한 각 부하요소의 제1 영향도에 S140 단계를 통해 산출된 복수의 부하요소에 대한 가중치를 각각 적용함으로써, 각 부하요소의 제2 영향도를 산출하는 단계이다.In step S150, the second influence of each load element is calculated by applying weights for the plurality of load elements calculated in step S140 to the first influence of each load element calculated in step S130.
S150 단계 이후, 도 9에서 블록 A로 도시된, 패널티 정보를 확인하고, 시그니처 단편이 패널티 정보에 포함된 패널티 조건에 매칭하는지 확인한다. 확인 결과, 패널티 조건에 매칭하는 시그니처 단편에 패널티 값을 부여하는 단계가 수행될 수 있다. 패널티 조건을 이용한 확인 단계 및 패널티 조건에 매칭하는 시그니처 단편에 패널티 값을 부여하는 단계는 필수적이지 않다. 그리고, 이들 단계에 대한 설명은 위에서 상세히 설명하였으므로, 중복되는 설명은 생략한다.After step S150, the penalty information, which is illustrated by block A in FIG. 9, is checked, and whether the signature fragment matches the penalty condition included in the penalty information is checked. As a result of the check, a step of assigning a penalty value to the signature fragment matching the penalty condition may be performed. The step of checking using the penalty condition and assigning a penalty value to the signature fragment matching the penalty condition is not essential. In addition, since the description of these steps has been described in detail above, redundant descriptions are omitted.
S160 단계는 시그니처 단편 별로, 각 부하요소의 제2 영향도를 합산함으로써 각 시그니처 단편에 대한 최종 부하 영향도를 산출하는 단계이다.In step S160, for each signature fragment, the final load impact for each signature fragment may be calculated by summing the second impact of each load element.
S170 단계는 S110 단계를 통해 선택한 시그니처에서 모든 시그니처 단편에 대한 최종 부하 영향도가 산출되었는지 확인하는 단계이다. 확인 결과, 모든 시그니처 단편에 대한 최종 부하 영향도가 산출된 경우, S180 단계가 수행된다. S110 단계에서 선택된 시그니처에 다른 시그니처 단편이 더 존재하는 경우, S130 단계 내지 S160 단계가 더 수행될 수 있다. S170 단계를 통해, S130 단계 내지 S160 단계는 하나의 시그니처에서 모든 시그니처 단편에 대한 최종 부하 영향도가 산출될 때까지 반복될 수 있다.In step S170, the final load influence on all signature fragments is calculated from the signature selected through step S110. As a result, when the final load influence on all the signature fragments is calculated, step S180 is performed. If another signature fragment is further present in the signature selected in step S110, steps S130 to S160 may be further performed. Through step S170, steps S130 to S160 may be repeated until the final load impact for all signature fragments is calculated in one signature.
위의 설명에서는, S130 단계 내지 S160 단계는 S120 단계를 통해 분할한 시그니처 단편 순으로 반복적으로 이루어지는 것으로 설명되었다. 다만 이는 예시일 뿐이고, S130 단계 내지 S160 단계는 각 시그니처에 대해 병렬적으로 제1 영향도, 제2 영향도 및 최종 부하 영향도를 산출함으로써 이루어질 수 있다.In the above description, it has been described that steps S130 to S160 are repeatedly performed in the order of signature fragments divided through step S120. However, this is merely an example, and steps S130 to S160 may be performed by calculating first impact degree, second impact degree, and final load impact degree in parallel with respect to each signature.
S180 단계는 하나의 시그니처(예를 들어, 제1 시그니처)에 대한 최종 부하 영향도 산출이 완료될 때 수행되고, 각 시그니처 단편의 최종 부하 영향도에 따라 상기 시그니처에 포함된 각 시그니처 단편의 순서를 재배치하는 단계이다. 앞서 설명한 것처럼, S180 단계는 최종 부하 영향도가 낮은 시그니처 단편을 시그니처의 전단에 재배치하고, 최종 부하 영향도가 높은 시그니처 단편을 시그니처의 후단에 재배치함으로써 이루어질 수 있다.Step S180 is performed when the final load impact calculation for one signature (eg, the first signature) is completed, and the order of each signature fragment included in the signature is determined according to the final load impact of each signature fragment. It is the stage of relocation. As described above, the step S180 may be performed by relocating the signature fragment having a low final load impact to the front end of the signature and relocating the signature fragment having a high final load impact to the rear end of the signature.
S190 단계는 데이터베이스(20)에서(예를 들어, 시그니처 리스트에서) 다른 시그니처가 존재하는지 확인하는 단계이다. 확인 결과, 시그니처의 재구성이 이루어지지 않은 다른 시그니처가 존재하는 경우, S110 단계 내지 S180 단계가 재수행된다. 그렇지 않은 경우, 모든 과정이 종료된다.Step S190 is a step for checking whether there is another signature in the database 20 (eg, in the signature list). As a result of the check, when there is another signature for which the signature is not reconstructed, steps S110 to S180 are performed again. Otherwise, all the processes are terminated.
본 발명에 따른 상기 예시적인 방법들은 프로세서에 의해 실행되는 프로그램 명령들, 소프트웨어 모듈, 마이크로코드, 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함함)로 읽을 수 있는 기록 매체에 기록된 컴퓨터 프로그램 제품, 애플리케이션, 논리 회로들, 주문형 반도체, 또는 펌웨어 등 다양한 방식으로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD, DVD, 자기 테이프, 하드 디스크, 플로피 디스크, 하드 디스크, 광데이터 저장 장치 등이 있으며, 이에 제한되는 것은 아니다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The exemplary methods according to the present invention are computer program products recorded on a recording medium readable by a computer (including an apparatus having an information processing function), program instructions executed by a processor, a software module, microcode, a computer, Applications, logic circuits, application specific semiconductors, or firmware can be implemented in a variety of ways. Examples of the computer-readable recording medium include, but are not limited to, a ROM, a RAM, a CD, a DVD, a magnetic tape, a hard disk, a floppy disk, a hard disk, an optical data storage device, and the like. In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.
이상의 설명은 본 발명을 예시적으로 설명한 것에 불과하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술적 사상에서 벗어나지 않는 범위에서 다양한 변형이 가능할 것이다.The above description is merely illustrative of the present invention, and various modifications may be made by those skilled in the art without departing from the technical spirit of the present invention.
100: 시그니처 재구성 장치 110: 시그니처 분할부
120: 부하요소 검사부 140: 시그니처 재구성부
200: 시그니처 재구성 장치 210: 시그니처 분할부
220: 부하요소 검사부 230: 가중치 처리부
240: 시그니처 재구성부100: signature reconstruction device 110: signature divider
120: load element inspection unit 140: signature reconstruction unit
200: signature reconstruction device 210: signature divider
220: load element inspection unit 230: weight processing unit
240: signature reconstruction unit
Claims (10)
데이터베이스에 저장된 시그니처 리스트에서 하나의 시그니처를 선택하고, 상기 선택된 시그니처를 복수의 시그니처 단편들로 분할하는 단계;
상기 복수의 시그니처 단편들을 복수의 부하요소에 대해 검사하여, 상기 복수의 부하요소마다 제1 영향도를 산출하는 단계;
상기 복수의 부하요소에 대한 가중치를 상기 제1 영향도에 각각 적용함으로써, 상기 복수의 부하요소마다 제2 영향도를 산출하는 단계;
상기 복수의 시그니처 단편들에 포함된 시그니처 단편이 미리 설정된 패널티 조건에 일치할 경우 상기 시그니처 단편에 패널티 값을 부여하는 단계;
상기 산출된 제2 영향도 중에서 각 시그니처 단편에 대응하는 제2 영향도 및 상기 각 시그니처 단편에 부여된 패널티 값을 기반으로 각 시그니처 단편에 대한 최종 부하 영향도를 산출하는 단계; 및
상기 산출된 최종 부하 영향도의 크기에 따라, 상기 복수의 시그니처 단편들의 순서를 재배치하는 단계를 포함하는 것을 특징으로 하는 시그니처 재구성 방법.Signature reconfiguration method for signature based abnormal traffic detection,
Selecting one signature from a signature list stored in a database, and dividing the selected signature into a plurality of signature fragments;
Inspecting the plurality of signature fragments against a plurality of load elements to produce a first degree of influence for each of the plurality of load elements;
Calculating a second influence degree for each of the plurality of load elements by applying weights of the plurality of load elements to the first influence degree, respectively;
Assigning a penalty value to the signature fragment when the signature fragment included in the plurality of signature fragments meets a preset penalty condition;
Calculating a final load impact on each signature fragment based on a second impact corresponding to each signature fragment among the calculated second impact and a penalty value assigned to each signature fragment; And
And reordering the plurality of signature fragments according to the calculated magnitude of the final load impact.
상기 복수의 부하요소에 대한 가중치 중 적어도 두 개는 상이한 것을 특징으로 하는 시그니처 재구성 방법.The method of claim 1,
And wherein at least two of the weights for the plurality of load elements are different.
상기 가중치는 시그니처 구성, 패턴 탐색 알고리즘, 시그니처 기반 비정상 트래픽 탐지를 수행하는 보안 장치의 사양 중 적어도 하나에 따라 각각 조절되는 것을 특징으로 하는 시그니처 재구성 방법.3. The method of claim 2,
And the weight is adjusted according to at least one of a signature configuration, a pattern search algorithm, and a specification of a security device that performs signature-based abnormal traffic detection.
상기 복수의 부하요소에 대한 검사는,
상기 시그니처 단편에 포함된 패턴의 문법 검사를 포함하고, 상기 제1 영향도를 산출하는 단계는 상기 시그니처 단편에 포함된 패턴의 문법에 따른 제1 영향도를 산출하는 단계를 포함하는 것을 특징으로 하는 시그니처 재구성 방법.The method of claim 1,
Inspection of the plurality of load elements,
Including the grammar check of the pattern included in the signature fragment, wherein calculating the first impact degree comprises the step of calculating a first impact degree according to the grammar of the pattern included in the signature fragment Signature reconstruction method.
상기 복수의 부하요소에 대한 검사는,
상기 시그니처 단편의 길이 검사를 포함하고, 상기 제1 영향도를 산출하는 단계는, 상기 시그니처 단편의 길이가 짧을수록 크기가 커지도록 상기 길이 검사에 따른 제1 영향도를 산출하는 단계를 포함하는 것을 특징으로 하는 시그니처 재구성 방법. The method of claim 1,
Inspection of the plurality of load elements,
And including checking the length of the signature fragment, and calculating the first influence, calculating the first impact according to the length checking such that the smaller the length of the signature fragment is, the larger the size becomes. Characterized by the signature reconstruction method.
상기 복수의 부하요소에 대한 검사는,
상기 시그니처 단편에 대한 오토마타 활성 상태 크기 검사를 포함하고, 상기 제1 영향도를 산출하는 단계는 상기 시그니처 단편의 오토마타 활성 상태 크기에 따른 제1 영향도를 산출하는 단계를 포함하는 것을 특징으로 하는 시그니처 재구성 방법.The method of claim 1,
Inspection of the plurality of load elements,
Checking an automata active state size for the signature fragment, and calculating the first impact level comprising calculating a first influence according to the automata active state size of the signature fragment. Reconstruction method.
상기 복수의 부하요소에 대한 검사는,
상기 시그니처 단편에 대한 오토마타 활성상태 검색공간 크기 검사를 포함하고, 상기 제1 영향도를 산출하는 단계는 상기 시그니처 단편의 오토마타 활성상태 검색공간 크기에 따른 제1 영향도를 산출하는 단계를 포함하는 것을 특징으로 하는 시그니처 재구성 방법.The method of claim 1,
Inspection of the plurality of load elements,
Checking the size of the automata active state search space for the signature fragment, wherein calculating the first impact includes calculating a first degree of influence according to the size of the automata active state search space of the signature fragment. Characterized by the signature reconstruction method.
상기 최종 부하 영향도는 상기 각 시그니처 단편에 대응하는 제2 영향도 및 상기 각 시그니처 단편에 부여된 패널티 값을 합산하여 결정되는 것을 특징으로 하는 시그니처 재구성 방법.The method of claim 1,
And the final load impact is determined by summing the second impact corresponding to each signature fragment and the penalty value assigned to each signature fragment.
데이터베이스에 저장된 시그니처 리스트에서 하나의 시그니처를 선택하고, 상기 선택된 시그니처를 복수의 시그니처 단편들로 분할하는 시그니처 분할부;
상기 복수의 시그니처 단편들을 복수의 부하요소에 대해 검사하여, 상기 복수의 부하요소마다 제1 영향도를 산출하는 부하요소 검사부;
상기 복수의 부하요소에 대한 가중치를 상기 제1 영향도에 각각 적용함으로써, 상기 복수의 부하요소마다 제2 영향도를 산출하는 가중치 처리부; 및
상기 복수의 시그니처 단편들에 포함된 시그니처 단편이 미리 설정된 패널티 조건에 일치할 경우 상기 시그니처 단편에 패널티 값을 부여하고, 상기 산출된 제2 영향도 중에서 각 시그니처 단편에 대응하는 제2 영향도 및 상기 각 시그니처 단편에 부여된 패널티 값을 기반으로, 상기 각 시그니처 단편에 대한 최종 부하 영향도를 산출하고, 상기 산출된 최종 부하 영향도의 크기에 따라 상기 복수의 시그니처 단편들의 순서를 재배치하는 시그니처 재구성부를 포함하는 것을 특징으로 하는 시그니처 재구성 장치.A signature reconstruction device for signature-based abnormal traffic detection,
A signature division unit that selects one signature from a signature list stored in a database, and divides the selected signature into a plurality of signature fragments;
A load element inspecting unit inspecting the plurality of signature fragments with respect to a plurality of load elements and calculating a first degree of influence for each of the plurality of load elements;
A weight processor configured to calculate a second influence degree for each of the plurality of load elements by applying weights of the plurality of load elements to the first influence degree, respectively; And
When a signature fragment included in the plurality of signature fragments meets a preset penalty condition, a penalty value is assigned to the signature fragment, and a second impact degree corresponding to each signature fragment among the calculated second impact degrees and the The signature reconstruction unit calculates a final load impact for each signature fragment based on the penalty value assigned to each signature fragment and rearranges the sequence of the plurality of signature fragments according to the calculated magnitude of the final load impact. Signature reconstruction apparatus comprising a.
제1항 내지 제8항 중 어느 한 항에 따른 방법을 수행하는 제어부를 포함하는, 시그니처 재구성 장치.A signature reconstruction device for signature-based abnormal traffic detection,
A signature reconstruction apparatus comprising a control unit for performing a method according to any one of claims 1 to 8.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180059159A KR102006220B1 (en) | 2018-05-24 | 2018-05-24 | Apparatus and method for reconfiguring signiture |
US16/420,836 US11223641B2 (en) | 2018-05-24 | 2019-05-23 | Apparatus and method for reconfiguring signature |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180059159A KR102006220B1 (en) | 2018-05-24 | 2018-05-24 | Apparatus and method for reconfiguring signiture |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102006220B1 true KR102006220B1 (en) | 2019-08-02 |
Family
ID=67614184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180059159A KR102006220B1 (en) | 2018-05-24 | 2018-05-24 | Apparatus and method for reconfiguring signiture |
Country Status (2)
Country | Link |
---|---|
US (1) | US11223641B2 (en) |
KR (1) | KR102006220B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11616759B2 (en) * | 2021-04-09 | 2023-03-28 | Palo Alto Networks, Inc. | Increased coverage of application-based traffic classification with local and cloud classification services |
CA3212858A1 (en) * | 2021-04-09 | 2022-10-13 | Mengying JIANG | Increased coverage of application-based traffic classification with local and cloud classification services |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101229012B1 (en) * | 2011-12-29 | 2013-02-15 | 시큐아이닷컴 주식회사 | Signature detecting device and method |
KR101631242B1 (en) * | 2015-01-27 | 2016-06-16 | 한국전자통신연구원 | Method and apparatus for automated identification of sifnature of malicious traffic signature using latent dirichlet allocation |
KR101633649B1 (en) | 2014-01-31 | 2016-06-28 | 캐비엄, 인코포레이티드 | Method and apparatus for optimizing finite automata processing |
KR20160085593A (en) * | 2015-01-08 | 2016-07-18 | 주식회사 윈스 | Method and apparatus for profiling service of network security element based signature |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016073457A2 (en) * | 2014-11-03 | 2016-05-12 | Level 3 Communications, Llc | Identifying a potential ddos attack using statistical analysis |
US11244225B2 (en) | 2015-07-10 | 2022-02-08 | Samsung Electronics Co., Ltd. | Neural network processor configurable using macro instructions |
KR20170060280A (en) * | 2015-11-24 | 2017-06-01 | 한국전자통신연구원 | Apparatus and method for automatically generating rules for malware detection |
US20180063178A1 (en) * | 2016-09-01 | 2018-03-01 | Promithius Inc. | Method and systems for real-time internal network threat detection and enforcement |
FR3057123A1 (en) * | 2016-09-30 | 2018-04-06 | Orange | METHOD AND SYSTEM FOR DETECTING INTRUSIONS ON A NETWORK |
-
2018
- 2018-05-24 KR KR1020180059159A patent/KR102006220B1/en active IP Right Grant
-
2019
- 2019-05-23 US US16/420,836 patent/US11223641B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101229012B1 (en) * | 2011-12-29 | 2013-02-15 | 시큐아이닷컴 주식회사 | Signature detecting device and method |
KR101633649B1 (en) | 2014-01-31 | 2016-06-28 | 캐비엄, 인코포레이티드 | Method and apparatus for optimizing finite automata processing |
KR20160085593A (en) * | 2015-01-08 | 2016-07-18 | 주식회사 윈스 | Method and apparatus for profiling service of network security element based signature |
KR101631242B1 (en) * | 2015-01-27 | 2016-06-16 | 한국전자통신연구원 | Method and apparatus for automated identification of sifnature of malicious traffic signature using latent dirichlet allocation |
Also Published As
Publication number | Publication date |
---|---|
US11223641B2 (en) | 2022-01-11 |
US20190364066A1 (en) | 2019-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11899786B2 (en) | Detecting security-violation-associated event data | |
JP5240475B2 (en) | Approximate pattern matching method and apparatus | |
Widodo et al. | A new content-defined chunking algorithm for data deduplication in cloud storage | |
CN103733590B (en) | Compiler for regular expressions | |
US20200183986A1 (en) | Method and system for document similarity analysis | |
US20090235357A1 (en) | Method and System for Generating a Malware Sequence File | |
Rudd et al. | Meade: Towards a malicious email attachment detection engine | |
US20210097177A1 (en) | System and method for detection of malicious files | |
US20160321255A1 (en) | Unsolicited bulk email detection using url tree hashes | |
US11288368B1 (en) | Signature generation | |
US11080398B2 (en) | Identifying signatures for data sets | |
KR101913141B1 (en) | Enhancing apparatus and method of the search ability for regular expressions based on cost optimized | |
Pungila et al. | A highly-efficient memory-compression approach for GPU-accelerated virus signature matching | |
US9075836B2 (en) | Partitioning keys for hash tables | |
Naik et al. | Fuzzy-import hashing: A static analysis technique for malware detection | |
KR102006220B1 (en) | Apparatus and method for reconfiguring signiture | |
US8260780B2 (en) | Protection of database operations | |
CN112199344A (en) | Log classification method and device | |
EP3798885B1 (en) | System and method for detection of malicious files | |
CN110196952A (en) | Search processing method, device, equipment and the storage medium of program code | |
CN113486359B (en) | Method and device for detecting software loopholes, electronic device and storage medium | |
Kawano et al. | High-speed DPI method using multi-stage packet flow analyses | |
US20150081649A1 (en) | In-line deduplication for a network and/or storage platform | |
US20220272125A1 (en) | Systems and methods for malicious url pattern detection | |
Pungila | Hybrid compression of the aho-corasick automaton for static analysis in intrusion detection systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |