KR100912806B1 - Automatic Signature Extraction System and Method for Internet traffic - Google Patents

Automatic Signature Extraction System and Method for Internet traffic Download PDF

Info

Publication number
KR100912806B1
KR100912806B1 KR1020060124122A KR20060124122A KR100912806B1 KR 100912806 B1 KR100912806 B1 KR 100912806B1 KR 1020060124122 A KR1020060124122 A KR 1020060124122A KR 20060124122 A KR20060124122 A KR 20060124122A KR 100912806 B1 KR100912806 B1 KR 100912806B1
Authority
KR
South Korea
Prior art keywords
signature
record
flows
flow
packet
Prior art date
Application number
KR1020060124122A
Other languages
Korean (ko)
Other versions
KR20080052086A (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 KR1020060124122A priority Critical patent/KR100912806B1/en
Publication of KR20080052086A publication Critical patent/KR20080052086A/en
Application granted granted Critical
Publication of KR100912806B1 publication Critical patent/KR100912806B1/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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • 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

Landscapes

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

Abstract

본 발명은 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치 및 방법에 관한 것으로, 플로우 형태로 저장된 인터넷 트래픽 파일로부터 개별 플로우를 순차적으로 추출하는 파일 처리부, 상기 파일 처리부로부터 전달받은 상기 개별 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드를 검사하여, 시그너춰를 생성하는데 필요한 상기 페이로드의 특성을 나타내는 사전정보를 수집하는 사전정보 수집부; 및 상기 사전정보에 기초하여 상기 개별 플로우를 순회하면서 시그너춰 레코드를 생성하는 시그너춰 레코드 저장부로 구성되어, 내용 기반(content-based) 트래픽 감지 장치에 사용되는 시그너춰를 자동적으로 신속하게 추출할 수 있어 인터넷에 유입되는 트래픽 중 대역폭을 과다하게 점유하는 것으로 알려진 P2P 응용 프로그램 등에서 발생하는 트래픽을 효과적으로 차단할 수 있다.The present invention relates to an apparatus and method for extracting a specific Internet application signature from Internet traffic, comprising: a file processing unit for sequentially extracting individual flows from an Internet traffic file stored in a flow form, in the individual flows received from the file processing unit A dictionary information collecting unit for inspecting payloads attached to respective packets stored in the packet, and collecting dictionary information representing characteristics of the payload required to generate a signature; And a signature record storage unit configured to generate a signature record while circulating the individual flows based on the prior information, so that the signature used in the content-based traffic detection apparatus can be automatically and quickly extracted. It can effectively block traffic from P2P applications, which are known to occupy excessive bandwidth among the traffic entering the Internet.

인터넷 트래픽, 플로우, 트래픽 감지, 시그너춰 Internet traffic, flow, traffic detection, signature

Description

인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치 및 방법.{Automatic Signature Extraction System and Method for Internet traffic}Device and method for extracting specific Internet application signatures from Internet traffic. {Automatic Signature Extraction System and Method for Internet traffic}

도 1은 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출 시스템의 개략적인 구성을 나타낸 도면이다.1 is a view showing a schematic configuration of a signature automatic extraction system according to an embodiment of the present invention.

도 2는 본 발명의 바람직한 일 실시예에 따른 시그너춰 레코드의 구성을 나타낸 도면이다.2 is a diagram illustrating a configuration of a signature record according to an exemplary embodiment of the present invention.

도 3은 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출 방법의 개략적인 수행 절차를 나타낸 흐름도이다.3 is a flowchart illustrating a schematic execution procedure of a signature automatic extraction method according to an exemplary embodiment of the present invention.

도 4는 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출에 필요한 사전 정보를 플로우 파일로부터 수집하는 절차를 나타낸 흐름도이다.4 is a flowchart illustrating a procedure of collecting dictionary information necessary for signature automatic extraction from a flow file according to an exemplary embodiment of the present invention.

도 5는 본 발명의 바람직한 일 실시예에 따른 시그너춰 생성 절차를 나타낸 흐름도이다.5 is a flowchart illustrating a signature generation procedure according to an embodiment of the present invention.

도 6은 본 발명의 바람직한 일 실시예에 따른 상기 시그너춰 레코드 생성 및 갱신 과정에 대한 흐름도이다.6 is a flowchart illustrating the signature record generation and update process according to an exemplary embodiment of the present invention.

본 발명은 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치 및 방법에 관한 것으로, 보다 상세하게는 특정한 인터넷 응용 프로그램이 발생시키는 트래픽으로부터 해당 트래픽을 탐지하는 데 사용되는 시그너춰를 자동 추출하는 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for extracting a specific Internet application signature from Internet traffic, and more particularly, to an apparatus for automatically extracting a signature used to detect the traffic from traffic generated by a specific Internet application. And to a method thereof.

여기서 인터넷 트래픽(traffic)이라 함은 인터넷을 통해 전송되는 데이터 또는 데이터의 흐름을 일컫는 것으로, 인터넷 망을 통과하는 데이터들의 흐름이라고 할 수 있다.In this case, the Internet traffic (traffic) refers to the flow of data or data transmitted through the Internet, it can be referred to as the flow of data through the Internet network.

그리고 상기 플로우(flow)라 함은, 인터넷 트래픽을 구성하는 패킷을 프로토콜, 발신자 주소, 수신자 주소, 발신자 포트 번호, 수신자 포트 번호의 다섯가지 속성을 식별자로 하여 수집된 순서대로 조합한 것을 일컫는 것이다. 따라서 어떤 컴퓨터 A의 포트 7070에서 다른 컴퓨터 B의 포트 8080으로 TCP 프로토콜을 사용하여 트래픽을 전송하였을 경우, 이 트래픽 내의 모든 패킷은 하나의 플로우를 구성하게 된다. 한편 이 트래픽에 대한 응답으로 B가 A에게 전송한 TCP 트래픽은 이와는 다른 별도의 플로우를 구성하게 되는데, 발신자 주소, 수신자 주소, 발신자 포트 번호, 수신자 포트 번호의 정보가 상기 플로우와는 반대 방향으로 기술되기 때문이다.In addition, the flow refers to a combination of packets constituting Internet traffic in the order of collection using five attributes of a protocol, a sender address, a recipient address, a sender port number, and a receiver port number as identifiers. Thus, when traffic is transmitted from port 7070 of one computer A to port 8080 of another computer B using the TCP protocol, all packets in this traffic constitute one flow. On the other hand, the TCP traffic transmitted by B to A in response to this traffic constitutes a separate flow, in which the information of the sender address, the recipient address, the sender port number, and the receiver port number is described in the opposite direction to the flow. Because it becomes.

그리고 상기 시그너춰(signature)라 함은, 어떤 트래픽 플로우가 어떤 인터넷 응용 프로그램으로부터 발생하였는지를 알아내기 위한 식별자(identifier)로서, 트래픽 플로우를 구성하는 패킷의 페이로드(payload)로부터 추출되는 정보이다. 따 라서 어떤 응용 프로그램 A로부터 발생된 플로우 A-1, A-2, A-3, A-4, ... A-N 등이 그 2번째 패킷의 payload 네 번째 바이트 위치에 0x00ff00ff라는 옥텟(octet) 값을 가지고 있고, N이 통계적으로 유의미한 수준에서 큰 값일 경우, 이 0x00ff00ff는 응용 프로그램 A의 시그너춰가 된다. 인터넷으로부터 수집된 트래픽 플로우의 두 번째 패킷의 네 번째 바이트 위치에 해당 옥텟값이 등장할 경우 해당 플로우는 응용 프로그램 A로부터 발생한 것으로 결론지을 수 있기 때문이다. The signature is an identifier for identifying which traffic flow originates from which internet application, and is information extracted from a payload of a packet constituting the traffic flow. Therefore, flows A-1, A-2, A-3, A-4, ... AN, etc. generated from an application A octet value of 0x00ff00ff in the fourth byte position of the payload of the second packet. If N is a large value at a statistically significant level, this 0x00ff00ff becomes Application A's signature. This is because if the octet value appears in the fourth byte position of the second packet of the traffic flow collected from the Internet, it can be concluded that the flow originates from application A.

최근의 인터넷 트래픽의 상당 부분이 P2P 프로그램과 같은 소위 다량 트래픽 발생 응용 프로그램(Heavy-Hitter)에 의해 점유되고 있다는 것은 주지의 사실이다. 따라서 이런 트래픽이 기업망이나 학내망으로 유입되는 것을 차단하기 위해서는 기업망이나 학내망의 방화벽(firewall)에 통상적으로 설치되는 침입 탐지 시스템(IDS: Intrusion Detection System)에 해당 트래픽을 판별하는 데 사용되는 시그너춰를 등록하여 침입 탐지 시스템으로 하여금 해당 트래픽이 유입되는 것을 차단하도록 하는 것이 필요하다. 이러한 침입 탐지 시스템을 흔히 내용 기반 패킷 필터링 시스템(content-based packet filtering system)이라고 부르기도 한다.It is well known that a significant portion of the recent Internet traffic is occupied by so-called heavy-hitter applications such as P2P programs. Therefore, in order to prevent such traffic from entering the corporate or school network, the signature used to distinguish the traffic from an intrusion detection system (IDS), which is usually installed in the corporate or school network firewall. It is necessary to register an ID so that the intrusion detection system blocks the incoming traffic. Such intrusion detection systems are often referred to as content-based packet filtering systems.

그런데 통상적으로 종전에는 시그너춰를 찾아내기 위해 다수의 트래픽 분석가가 수집된 트래픽을 수작업으로 분석하여 시그너춰를 찾아내었는데, 인터넷에서 사용되는 응용의 발전 속도가 이러한 수공업적인 분석 속도로는 따라잡기 힘겨울 정도로 빨라지고 있기 때문에, 수집된 트래픽으로부터 시그너춰를 자동적으로 찾아낼 수 있는 방법 및 시스템에 대한 필요성이 매우 높다고 할 수 있다. Traditionally, in order to find signatures, many traffic analysts manually analyzed the collected traffic to find signatures. The speed of development of the applications used on the Internet is difficult to catch up with this manual analysis speed. As fast as winter, there is a great need for a method and system that can automatically detect signatures from collected traffic.

인터넷 트래픽으로부터 시그너춰를 생성하기 위한 기술이 제시되어 있는 종 래기술은 시그너춰를 통해 인터넷에서의 변칙 트래픽 발생을 탐지하기 위한 시그너처 기반 탐지 장치, 변칙 행위를 보이는 패킷들만을 따로 추출하기 위한 변칙 행위 기반 탐지 장치, 및 변칙 행위를 보이는 패킷들로부터 새로운 시그너춰를 생성하고 검증하기 위한 신규 시그너처 생성 및 검증 장치로 구성되어 있다. Conventional technologies, which have proposed techniques for generating signatures from Internet traffic, are signature-based detection devices for detecting the occurrence of anomalous traffic on the Internet through signatures, and anomalous behaviors to extract only packets showing anomalous behavior. And a new signature generation and verification device for generating and verifying a new signature from packets showing anomalous behavior.

상기 발명은 비록 시그너처를 자동 생성하는 방법을 제안하고는 있으나 인터넷에서 변칙 트래픽을 발생시키는 웜(Worm)이나 바이러스(Virus)와 같은 프로그램에 의해 발생되는 트래픽만을 그 대상으로 하고 있는 바 범용적으로 적용될 수 있는 방법이라고 할 수 없으며, 새로운 시그너처를 생성하는 구체적인 알고리즘을 제시하고 있지 않다는 면에 있어서는 그 발명의 내용이 구체적이지 못해 실제 시스템으로 실현되기에는 한계가 있다고 하겠다.Although the present invention proposes a method for automatically generating signatures, it only applies to traffic generated by a program such as a worm or virus that generates anomalous traffic on the Internet. It is not possible to say that this method is not possible, and in that it does not present a specific algorithm for generating a new signature, the contents of the invention are not specific, and thus there is a limit to the actual system.

본 발명이 이루고자 하는 기술적 과제는, 특정 인터넷 응용 프로그램으로부터 발생한 트래픽을 탐지하기 위한 시그너춰를 생성하는 데 있어서, 그 응용 프로그램으로부터 발생한 트래픽으로부터 만들어진 플로우들을 입력으로 사용하여 자동적으로 시그너춰를 생성하는 장치 및 방법을 제공하는 데 있다.An object of the present invention is to generate a signature for detecting a traffic originating from a specific internet application, and to automatically generate a signature by using flows generated from the traffic generated by the application as an input. And a method.

상기의 기술적 과제를 본 발명에 따른 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치는 플로우 형태로 저장된 인터넷 트래픽 파일로부터 개별 플로우를 순차적으로 추출하는 파일 처리부, 상기 파일 처리부로부터 전달받은 상기 개별 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드를 검사하여, 시그너춰를 생성하는데 필요한 상기 페이로드의 특성을 나타내는 사전정보를 수집하는 사전정보 수집부; 및 상기 사전정보에 기초하여 상기 개별 플로우를 순회하면서 시그너춰 레코드를 생성하는 시그너춰 레코드 저장부를 포함하는 것을 특징으로 한다.In accordance with an aspect of the present invention, an apparatus for extracting a specific Internet application signature from Internet traffic includes a file processor sequentially extracting individual flows from an Internet traffic file stored in a flow form, and the individual flows received from the file processor. A dictionary information collecting unit which inspects payloads attached to respective packets stored in the packet and collects dictionary information representing characteristics of the payload required to generate a signature; And a signature record storage unit configured to generate a signature record while iterating through the individual flows based on the prior information.

또한, 상기 사전정보 수집부는 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수, 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량, 상기 트래픽 파일에 속한 모든 플로우의 총량 및 상기 개별 플로우에 속한 모든 패킷의 갯수를 사전정보로 하여 기록하는 것을 특징으로 한다.The dictionary information collecting unit may include a number of times a specific value appears in a specific byte of the payload, a total amount of all flows belonging to a packet having a specific value at a specific position of the payload, a total amount of all flows belonging to the traffic file, and The number of all packets belonging to an individual flow is recorded as prior information.

삭제delete

또한, 상기 시그너춰 레코드 저장부는 시그너춰의 플로우내 위치에 대한 히스토그램, 시그너춰의 패킷내 위치에 대한 히스토그램, 시그너춰 문자열, 시그너춰 문자열 마스크, 프로토콜, 해당 시그너춰를 갖는 패킷을 포함하는 플로우 갯수, 해당 시그너춰를 갖는 패킷의 갯수 및 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합을 시그너춰 레코드로 하여 기록하는 것을 특징으로 한다.The signature record storage unit may also include a histogram of a location within a signature flow, a histogram of a location within a packet of a signature, a signature string, a signature string mask, a protocol, and a packet including a packet having a corresponding signature. The sum of the number of packets having the signature and the size of flows including the packet having the signature is recorded as a signature record.

또한, 상기 시그너춰 레코드 저장부는 상기 페이로드를 검사하여 시그너춰를 생성하고, 상기 시그너춰가 새로운 시그너춰인 경우에 상기 시그너춰와 함께 상기 사전정보를 이용하여 상기 시그너춰의 바이트를 담고 있는 원소 및 바이트 단위 길이를 시그너춰 레코드 형태로 변환하여 저장하는 것을 특징으로 한다.The signature record storage unit may generate a signature by inspecting the payload, and when the signature is a new signature, an element containing the signature byte using the dictionary information together with the signature. And converting the byte unit length into a signature record format and storing the converted byte.

또한, 상기 시그너춰 레코드 저장부는 상기 시그너춰 레코드가 저장된 시그 너춰 리스트를 생성하여 상기 개별 플로우를 순회하면서 생성한 시그너춰가 상기 시그너춰 리스트에 존재하는 경우에는 해당되는 시그너춰 레코드를 갱신하고, 상기 시그너춰 리스트에 존재하지 않는 경우에는 상기 시그너춰 리스트에 새로운 시그너춰 레코드를 생성하는 것을 특징으로 한다.The signature record storage unit may generate a signature list in which the signature record is stored, and if the signature generated while traversing the individual flow exists in the signature list, updates the corresponding signature record. If it does not exist in the signature list, it is characterized in that a new signature record is created in the signature list.

또한, 상기 파일처리부로부터 전달되는 개별 플로우가 존재하지 않는 경우에는 상기 시그너춰 레코드 저장부에서 생성된 시그너춰 레코드를 임의의 형식의 보고서 형태로 변환하는 시그너춰 레코드 변환부를 더 포함하는 것을 특징으로 한다.The method may further include a signature record converting unit converting the signature record generated by the signature record storage unit into a report form in an arbitrary format when there is no individual flow delivered from the file processing unit. .

상기 기술적 과제를 해결하기 위하여 본 발명이 제시하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법은, 플로우 형태로 저장된 인터넷 트래픽 파일로부터 개별 플로우를 순차적으로 추출하는 단계, 상기 개별 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드를 검사하여, 시그너춰를 생성하는데 필요한 상기 페이로드의 특성을 나타내는 사전정보를 수집하는 단계; 및 상기 사전정보에 기초하여 상기 개별 플로우를 순회하면서 시그너춰 레코드를 생성하는 시그너춰 레코드 저장단계를 포함하는 것을 특징으로 한다.In order to solve the above technical problem, a method for extracting a specific Internet application signature from the Internet traffic proposed by the present invention comprises the steps of sequentially extracting individual flows from an Internet traffic file stored in a flow form, and stored in the individual flows. Inspecting the payload attached to each of the packets present therein, and collecting advance information indicative of the characteristics of the payload required to generate a signature; And a signature record storing step of generating a signature record while iterating through the individual flows based on the prior information.

또한, 상기 사전정보를 수집하는 단계는 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수, 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량, 상기 트래픽 파일에 속한 모든 플로우의 총량 및 상기 개별 플로우에 속한 모든 패킷의 갯수를 사전정보로 하여 기록하는 것을 특징으로 한다.The collecting of the prior information may include: a number of times a specific value appears in a specific byte of the payload, a total amount of all flows belonging to a packet having a specific value at a specific position of the payload, and a total of all flows belonging to the traffic file. The total amount and the number of all packets belonging to the individual flows are recorded as prior information.

삭제delete

또한, 상기 시그너춰 레코드 저장단계는 시그너춰의 플로우내 위치에 대한 히스토그램, 시그너춰의 패킷내 위치에 대한 히스토그램, 시그너춰 문자열, 시그너춰 문자열 마스크, 프로토콜, 해당 시그너춰를 갖는 패킷을 포함하는 플로우 갯수, 해당 시그너춰를 갖는 패킷의 갯수 및 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합을 시그너춰 레코드로 하여 기록하는 것을 특징으로 한다.In addition, the signature record storing step may include a histogram for a location in a signature flow, a histogram for a location in a signature packet, a signature string, a signature string mask, a protocol, and a packet having a corresponding signature. The sum of the number, the number of packets having the signature and the size of flows including the packet having the signature is recorded as a signature record.

또한, 상기 시그너춰 레코드 저장단계는 상기 페이로드를 검사하여 시그너춰를 생성하고, 상기 시그너춰가 새로운 시그너춰인 경우에 상기 시그너춰와 함께 상기 사전정보를 이용하여 상기 시그너춰의 바이트를 담고 있는 원소 및 바이트 단위 길이를 시그너춰 레코드 형태로 변환하여 저장하는 것을 특징으로 한다.The signature record storing step may include generating a signature by inspecting the payload, and storing the signature byte using the dictionary information together with the signature when the signature is a new signature. Characteristic and byte unit lengths are converted into signature records and stored.

또한, 상기 시그너춰 레코드 저장단계는 상기 시그너춰 레코드가 저장된 시그너춰 리스트를 생성하여 상기 개별 플로우를 순회하면서 생성한 시그너춰가 상기 시그너춰 리스트에 존재하는 경우에는 해당되는 시그너춰 레코드를 갱신하고, 상기 시그너춰 리스트에 존재하지 않는 경우에는 상기 시그너춰 리스트에 새로운 시그너춰 레코드를 생성하는 것을 특징으로 한다.In addition, the signature record storing step may generate a signature list in which the signature record is stored, and update the corresponding signature record when the signature generated while traversing the individual flow exists in the signature list. If it does not exist in the signature list, a new signature record is generated in the signature list.

또한, 상기 추출되는 개별 플로우가 존재하지 않는 경우에는 상기 시그너춰 레코드 저장단계에서 생성된 시그너춰 레코드를 임의의 형식의 보고서 형태로 변환하는 시그너춰 레코드 변환단계를 더 포함하는 것을 특징으로 한다.The method may further include a signature record converting step of converting the signature record generated in the signature record storing step into a report form in any format when the extracted individual flow does not exist.

이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출 시스템의 개략적인 구성을 나타낸 도면이다. 도 1을 참조하면, 시그너춰 자동 추출 장치(110)은 파일 처리부(120), 시그너춰 생성부(130)를 포함한다.1 is a view showing a schematic configuration of a signature automatic extraction system according to an embodiment of the present invention. Referring to FIG. 1, the signature automatic extraction device 110 includes a file processor 120 and a signature generator 130.

먼저, 파일 처리부(120)는 상기 시그너춰 생성부(130)의 요청에 따라 플로우들이 순차적으로 연결된 형태로 만들어진 트래픽 파일(100)으로부터 개별 플로우를 순차적으로 추출하여 시그너춰 생성부(130)에 전달하는 기능을 수행한다. 이 때 플로우는 하나씩 개별적으로 시그너춰 생성부(130)에 전달된다.First, the file processor 120 sequentially extracts individual flows from the traffic file 100 in which the flows are sequentially connected according to the request of the signature generator 130, and delivers the individual flows to the signature generator 130. It performs the function. At this time, the flows are delivered to the signature generator 130 individually.

상기 도 1에 하나의 참조예로서 네 개의 플로우 즉, 플로우 1(101), 플로우 2(102), 플로우 3(103), 플로우 4(104)로 구성된 트래픽 파일(100)로부터 그 각각의 플로우들이 추출되어 시그너춰 생성부에 전달되는 과정이 제시되어 있다. 플로우 X에서 X는 플로우 별로 매겨진 순차적인 번호를 나타낸다. 따라서 시그너춰 생성부(130)는 파일 처리부(120)를 통해 시그너춰 파일을 순회하게 된다.As one reference example in FIG. 1, the respective flows from the traffic file 100 composed of four flows, that is, flow 1 101, flow 2 102, flow 3 103, and flow 4 104, The process of extraction and delivery to the signature generator is presented. In flow X, X represents a sequential number numbered for each flow. Accordingly, the signature generator 130 traverses the signature file through the file processor 120.

시그너춰 생성부(130)는 상기 파일 처리부(120)에서 전달한 개별 플로우들을 순차적으로 처리하여 시그너춰를 생성한다. 생성되는 시그너춰들은 파일 처리부(120)가 플로우 추출 및 전달 과정을 마칠 때 까지는 메모리에 저장되어 있다가, 파일 처리부(120)의 동작이 끝나면 보고서 형태로 변환된다. 특히 시그너춰 생성부는 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드(payload)를 검사하여 시그너춰를 생성한다.The signature generator 130 sequentially processes the individual flows transferred from the file processor 120 to generate a signature. The generated signatures are stored in the memory until the file processing unit 120 finishes the flow extraction and delivery process, and is converted into a report form after the operation of the file processing unit 120 ends. In particular, the signature generator generates a signature by inspecting a payload attached to each packet stored in the flow.

도 2는 본 발명의 바람직한 일 실시예에 따른 시그너춰 레코드의 구성을 나타낸 도면이다. 도 2를 참조하면, 하나의 시그너춰 레코드(200)는 시그너춰의 플로우 내 위치에 대한 히스토그램 정보(210), 시그너춰의 패킷 내 위치에 대한 히스토 그램 정보(220), 시그너춰 문자열(230), 시그너춰 문자열의 길이(240), 프로토콜(250), 해당 시그너춰를 갖는 패킷을 포함하는 플로우의 개수(260), 해당 시그너춰를 갖는 패킷의 개수(270)및 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합(280)의 정보로 구성된다.2 is a diagram illustrating a configuration of a signature record according to an exemplary embodiment of the present invention. Referring to FIG. 2, one signature record 200 includes histogram information 210 for a location in a signature flow, histogram information 220 for a location in a packet, and a signature string 230. ), The length of the signature string 240, the protocol 250, the number of flows including the packet with the signature 260, the number of packets with the signature 270, and the packet with the signature It consists of the information of the sum 280 of the size of the flows including.

상기 시그너춰의 플로우 내 위치에 대한 히스토그램 정보(210)는 해당 시그너춰를 갖는 패킷이 플로우 내의 몇 번째 패킷이었는지를 기록하기 위한 자료구조이다. 가령 시그너춰 문자열 0x00ff00ff가 플로우 1의 3번째, 플로우 2의 2번째, 플로우 3의 3번째, 플로우 4의 4 번째에 나타났다면, 해당 자료구조 내에는 플로우 내의 2 번째에 위치한 패킷 하나에서 시그너춰 0x00ff00ff가 관측되었음을 기록하기 위한 순서쌍 (2, 1)과, 플로우 내의 3번째에 위치한 패킷 두 개로부터 시그너춰 0x00ff00ff가 관측되었음을 기록하기 위한 순서쌍 (3, 2)와, 플로우 내의 4번째에 위치한 패킷 하나로부터 시그너춰 0x00ff00ff가 관측되었음을 기록하기 위한 순서쌍 (4, 1)이 저장될 것이다.The histogram information 210 for the location in the flow of the signature is a data structure for recording the number of packets in the flow of the packet having the signature. For example, if the signature string 0x00ff00ff appears in the third of flow 1, the second of flow 2, the third of flow 3, and the fourth of flow 4, the signature 0x00ff00ff in the second packet in the flow within that data structure. From the ordered pair (2, 1) to record that is observed, from the two thirdly located packets in the flow, from the ordered pair (3, 2) to record that the signature 0x00ff00ff is observed, and from one of the fourth located packets in the flow. An ordered pair (4, 1) will be stored to record that signature 0x00ff00ff was observed.

또한 상기 시그너춰의 패킷 내 위치에 대한 히스토그램 정보(220)는 해당 시그너춰가 페이로드 내의 몇 번째 바이트 위치에 나타났었는지를 기록하기 위한 자료구조이다. 가령 시그너춰 문자열 0x00ff00ff가 페이로드 내의 0번째 위치에 1 번, 2 번째 위치에 3번, 4 번째 위치에 1 번 나타났었다면, 상기 시그너춰의 패킷 내 위치에 대한 히스토그램 정보(220) 안에는 (0,1), (2, 3), (4, 1)의 세 개의 순서쌍이 저장될 것이다.In addition, the histogram information 220 about the position in the packet of the signature is a data structure for recording the position of the byte in the payload. For example, if the signature string 0x00ff00ff appeared once in the 0th position, 3rd in the 2nd position, and 1st in the 4th position in the payload, then the histogram information 220 for the position in the packet of the signature is (0). Three ordered pairs, (1), (2, 3) and (4, 1) will be stored.

또한 상기 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합(280)은 해당 시그너춰를 갖는 패킷들을 포함하는 모든 플로우에 대해서, 그 트래픽의 총량(즉, 개별 플로우의 크기의 합)을 계산한 것이다. In addition, the sum 280 of the sizes of flows including the packet with the signature is calculated for the total amount of the traffic (ie, the sum of the sizes of the individual flows) for all flows including the packets with the signature. will be.

도 3은 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출 방법의 개략적인 수행 절차를 나타낸 흐름도이다.3 is a flowchart illustrating a schematic execution procedure of a signature automatic extraction method according to an exemplary embodiment of the present invention.

시그너춰 생성부(130)는 상기 트래픽 파일(100)을 첫 번째 순회하는 동안에는 시그너춰를 생성하는 데 필요한 사전 정보를 수집(S304)하고, 상기 트래픽 파일(100)을 두 번째 순회하는 동안에는 시그너춰 레코드들을 생성하여 메모리에 저장해 두며(S305), 상기 파일 처리부(110)로부터 더 이상 전달되는 플로우가 없는 경우에는 메모리에 저장된 시그너춰 레코드들을 보고서 형태로 변환한다(S306). 보고서는 메모리에 저장된 시그너춰 레코드들을 사용하여 임의의 형식으로 만들어질 수 있다. The signature generator 130 collects prior information necessary to generate the signature during the first traversal of the traffic file 100 (S304), and the signature during the second traversal of the traffic file 100. Records are generated and stored in the memory (S305), and when there is no more flow transmitted from the file processor 110, the signature records stored in the memory are converted into a report form (S306). Reports can be generated in any format using signature records stored in memory.

도 4는 본 발명의 바람직한 일 실시예에 따른 시그너춰 자동 추출에 필요한 사전 정보를 플로우 파일로부터 수집하는 절차를 나타낸 흐름도이다.4 is a flowchart illustrating a procedure of collecting dictionary information necessary for signature automatic extraction from a flow file according to an exemplary embodiment of the present invention.

도 3의 시그너춰 생성에 필요한 사전 정보 수집 과정(S304)은 맨 처음으로 2차원 배열 변수인 PACKET_COUNTERS와 FLOW_BYTE_COUNTERS 및 일반 변수 TOTAL_FLOWS_IN_BYTES와 TOTAL_PACKETS의 값을 0으로 초기화한다(S401). PACKET_COUNTERS와 FLOW_BYTE_COUNTERS는 각각 64 x 256 크기의 2차원 배열이다.The prior information collection process (S304) required for signature generation of FIG. 3 initially initializes the values of two-dimensional array variables PACKET_COUNTERS and FLOW_BYTE_COUNTERS and general variables TOTAL_FLOWS_IN_BYTES and TOTAL_PACKETS to 0 (S401). PACKET_COUNTERS and FLOW_BYTE_COUNTERS are two-dimensional arrays of size 64 x 256, respectively.

그런 다음, 파일 처리부에 플로우를 요청하게 되고(S402), 남은 플로우가 없다는 응답이 상기 파일 처리부(110)로부터 전달된 경우에는 수행을 종료하지만, 그렇지 않은 경우에는 파일 처리부(110)로부터 전달받은 플로우 F를 읽는다(S404). 그런 후에는 플로우 F의 처리 과정에서 사용될 임시 2차원 배열 TMP_MATRIX를 초기화하고, TOTAL_PACKETS에는 F에 담긴 패킷의 총 개수를 더하고, TOTAL_FLOWS_IN_BYTES에는 F의 크기를 더한다(S405). TMP_MATRIX는 64 x 256 의 크기를 갖는다. 그런 다음에는 플로우 F가 데이터 플로우인지를 검사한다(S406).Then, the flow is requested to the file processing unit (S402), and if the response that there is no remaining flow is transmitted from the file processing unit 110, the execution ends, otherwise the flow received from the file processing unit 110 Read F (S404). Thereafter, the temporary two-dimensional array TMP_MATRIX to be used in the process of flow F is initialized, the total number of packets contained in F is added to TOTAL_PACKETS, and the size of F is added to TOTAL_FLOWS_IN_BYTES (S405). TMP_MATRIX has a size of 64 x 256. Then, it is checked whether the flow F is a data flow (S406).

별도의 값이 주어지지 않을 경우, 100개 이상의 패킷으로 구성되고 플로우를 구성하는 패킷들의 평균 크기가 1000 이상인 플로우를 데이터 플로우로 간주한다. 별도의 값이 주어지지 않을 경우, 데이터 플로우에 대해서는 BOUND에 10을 대입하고(S407), 그렇지 않을 경우에는 F에 속한 패킷 개수를 대입한다(S408). 그런 다음 플로우 F의 첫 BOUND 개만큼의 패킷을 순서대로 검사한다.If no value is given, a flow consisting of 100 or more packets and having an average size of 1000 or more packets is considered a data flow. If no value is given, 10 is substituted into BOUND for data flow (S407), otherwise, the number of packets belonging to F is substituted (S408). It then checks the first BOUND packets in flow F in order.

이 과정에서 각각의 패킷에 속한 페이로드의 각 바이트를 순서대로 검사한다. 이 때 검사되는 바이트가 페이로드의 J번째 바이트라고 하고 그 바이트의 값을 B라고 할 때 (이 때 B는 0보다 같거나 크고 255보다 같거나 작은 값을 갖는다), PACKET_COUNTERS[J][B]의 값은 1만큼 증가시키고, TMP_MATRIX[J][B]의 값은 1로 설정한다(S413). 이상의 과정이 모두 끝나서 플로우 F내의 모든 패킷에 대한 검사가 끝난 다음에는, TMP_MATRIX에 저장된 그 값이 0 아닌 모든 (J,K) 번째 원소에 대해서, FLOW_BYTE_COUNTERS[J][K]의 값을 F의 크기만큼 증가시킨다(S420).In this process, each byte of the payload belonging to each packet is checked in order. If the byte being checked is called the J th byte of the payload and the value of that byte is B (where B is greater than or equal to 0 and greater than or equal to 255), PACKET_COUNTERS [J] [B] Is increased by 1, and the value of TMP_MATRIX [J] [B] is set to 1 (S413). After all of the above steps have been completed and all the packets in the flow F have been examined, the value of FLOW_BYTE_COUNTERS [J] [K] is assigned to the size of F for every (J, K) th element whose value is stored in TMP_MATRIX. Increase by (S420).

상기 플로우 파일(100)에 저장된 모든 플로우에 대해서 상기 과정이 끝나면 그 결과로 PACKET_COUNTERS, FLOW_BYTE_COUNTERS, TOTAL_FLOWS_IN_BYTES, TOTAL_PACKETS의 네 변수에는 도 3에서의 실제 시그너춰 생성 과정(S305)에 사용될 정보가 담기게 된다.After the process is completed for all flows stored in the flow file 100, four variables, PACKET_COUNTERS, FLOW_BYTE_COUNTERS, TOTAL_FLOWS_IN_BYTES and TOTAL_PACKETS, contain information to be used in the actual signature generation process (S305) of FIG.

도 5는 본 발명의 바람직한 일 실시예에 따른 시그너춰 생성 절차를 나타낸 흐름도이다.5 is a flowchart illustrating a signature generation procedure according to an embodiment of the present invention.

시그너춰 생성부는 우선 도 3의 사전 정보 수집 과정(S304)에서 만들어진 정보들을 사용하여 새로운 이차원 배열 SIGMATRIX를 생성한다. SIGMATRIX의 크기는 64 x 255이다.The signature generator first generates a new two-dimensional array SIGMATRIX using the information generated in the prior information collection process S304 of FIG. 3. SIGMATRIX measures 64 x 255.

SIGMATRIX의 (I,J) 번째 원소 SIGMATRIX[I][J]의 값은 PACKET_COUNTERS[I][J]의 값이 10보다 크고, FLOW_BYTE_COUNTERS[I][J]의 값이 0.9와 TOTAL_FLOWS_IN_BYTES에 저장된 값을 곱해서 얻어지는 값보다 같거나 클 경우에만 1로 설정되고, 그 이외의 경우에는 0으로 설정된다(S505). 상기에 명시한 10이나 0.9 등의 수치는 달리 설정하지 않을 경우 적용되는 기본값이다. 이상의 과정이 완료된 후 시그너춰 생성부는 파일 처리부에 플로우를 요청(S508)하여 상기 트래픽 파일(100)에 저장된 플로우를 순서대로 가져온다(S510).The value of the (I, J) th element SIGMATRIX [I] [J] of SIGMATRIX has a value of PACKET_COUNTERS [I] [J] greater than 10 and the value of FLOW_BYTE_COUNTERS [I] [J] is 0.9 and TOTAL_FLOWS_IN_BYTES. It is set to 1 only when it is equal to or larger than the value obtained by multiplying, otherwise it is set to 0 (S505). The above values such as 10 or 0.9 are the default values unless otherwise specified. After the above process is completed, the signature generation unit requests a flow to a file processing unit (S508) to bring the flows stored in the traffic file 100 in order (S510).

새로운 플로우 F를 읽은 후에는(S510) 플로우 F내의 각각의 패킷에 속한 페이로드를 다음과 같이 검사한다. 우선 생성될 시그너춰를 담을 배열 SIGNATURE와, 배열 SIGNATURE의 각 원소중 실제로 SIGNATURE 바이트를 담고 있는 원소를 표기해 둘 목적으로 사용되는 배열 SIGNATURE_MASK와, 생성될 시그너춰의 바이트 단위 길이를 저장할 목적으로 사용되는 변수 SIGNATURE_LEN의 값을 초기화한다(S514).After reading the new flow F (S510), the payload belonging to each packet in the flow F is checked as follows. First, the array SIGNATURE to hold the signature to be created, the array SIGNATURE_MASK used to mark the elements of the array SIGNATURE that actually contain the SIGNATURE bytes, and the length in bytes of the signature to be created. The value of the variable SIGNATURE_LEN is initialized (S514).

그런 다음 해당 패킷의 페이로드 내의 모든 바이트 위치 J에 대해서, 해당 바이트의 값이 B일 때 SIGMATRIX[J][B]의 값이 0이 아니면 SIGNATURE[J]에 B를 대입하고 SIGNATURE_MASK[J]의 값은 0xFF로 설정하고 SIGNATURE_LEN을 증가시킨다. 그 이외의 경우에는 SIGNATURE[J]는 0으로 설정하고 SIGNATURE_MASK[J]의 값은 0으로 설정한다(S518).Then, for every byte position J in the payload of that packet, if the value of SIGMATRIX [J] [B] is nonzero when the value of that byte is B, then assign B to SIGNATURE [J] and replace SIGNATURE_MASK [J]. Set the value to 0xFF and increase SIGNATURE_LEN. Otherwise, SIGNATURE [J] is set to 0 and the value of SIGNATURE_MASK [J] is set to 0 (S518).

이상의 과정을 통해 만들어진 시그너춰가 새로운 시그너춰인 경우에는 해당 시그너춰는 도 2의 시그너춰 레코드의 형태로 변환되어 시그너춰 리스트에 삽입되고, 새로운 시그너춰가 아닌 경우에는 시그너춰 리스트에 이미 존재하는 시그너춰 레코드에 저장된 통계량을 갱신한다(S520). 이상의 과정을 모든 플로우의 모든 패킷에 대해서 순차적으로 반복하게 된다.If the signature created by the above process is a new signature, the signature is converted into the signature record of FIG. 2 and inserted into the signature list. If the signature is not a new signature, the signature already exists in the signature list. The statistics stored in the signature record are updated (S520). The above process is repeated sequentially for all packets of all flows.

도 6은 본 발명의 바람직한 일 실시예에 따른 상기 시그너춰 레코드 생성 및 갱신 과정에 대한 흐름도이다.6 is a flowchart illustrating the signature record generation and update process according to an exemplary embodiment of the present invention.

시그너춰 리스트 안에 도 5의 배열 SIGNATURE에 저장된 시그너춰와 동일한 시그너춰 문자열 및 프로토콜 번호를 갖는 시그너춰 레코드가 없는 경우, 새로운 시그너춰 레코드가 만들어져 삽입된다(S602). 이 때 시그너춰 레코드 내의 시그너춰의 플로우 내 위치에 대한 히스토그램(210)에는 순서쌍 (I, 1)이 대입된다. 또한 시그너춰의 패킷 내 위치에 대한 히스토그램(220)에는 순서쌍 (J, 1)이 저장된다.If there is no signature record having the same signature string and protocol number as the signature stored in the array SIGNATURE of FIG. 5 in the signature list, a new signature record is created and inserted (S602). At this time, an ordered pair (I, 1) is substituted into the histogram 210 for the position in the signature flow in the signature record. In addition, an ordered pair (J, 1) is stored in the histogram 220 for the location in the packet of the signature.

시그너춰 문자열(230)에는 도 5에서 사용한 배열 SIGNATURE에 저장된 값이 저장되고, 시그너춰 문자열 마스크(240)에는 도 5에서 사용한 배열 SIGNATURE_MASK에 저장된 값이 저장되며, 프로토콜 (250)에는 시그너춰가 추출된 패킷이 사용하는 프로토콜 값이 기록되며, 시그너춰를 갖는 패킷을 포함하는 플로우 개수(260)에는 1이, 시그너춰를 갖는 패킷의 개수(270)에는 1이, 그리고 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기 합(280)에는 도 5에서 사용한 플로우 F의 크기가 기록된다.The value stored in the array SIGNATURE used in FIG. 5 is stored in the signature string 230, the value stored in the array SIGNATURE_MASK used in FIG. 5 is stored in the signature string mask 240, and the signature is extracted in the protocol 250. The protocol value used by the received packet is recorded. The number of flows 260 including the packet having the signature is 1, the number 270 of the packet having the signature is 1, and the packet having the signature is stored. The size of the flow F used in FIG. 5 is recorded in the size sum 280 of the included flows.

반면 시그너춰 리스트 안에 도 5의 배열 SIGNATURE에 기록된 시그너춰와 동일한 시그너춰 문자열과 동일한 프로토콜 번호를 갖는 시그너춰가 존재하는 경우에는, 해당 시그너춰 레코드 내의 시그너춰의 플로우 내 위치에 대한 히스토그램(21)에 I에 대한 순서쌍 (I, X)가 존재하는 지를 검색하여, 존재하는 경우에는 (I, X+1)로 갱신하고, 존재하지 않는 경우에는 (I, 1)을 삽입한다(S605).On the other hand, if there is a signature in the signature list having the same signature string and the same protocol number as the signature recorded in the array SIGNATURE of Fig. 5, the histogram (21) for the position in the flow of the signature in the signature record is shown. If there is an ordered pair (I, X) for I, it is searched for and updated to (I, X + 1) if present, and (I, 1) is inserted if not present (S605).

또한 해당 시그너춰 레코드 내의 시그너춰의 패킷 내 위치에 대한 히스토그램(220)에 M에 대한 순서쌍 (J, Y)가 존재하는 지를 검색하여, 존재하는 경우에는 (J, Y+1)로 갱신하고, 존재하지 않는 경우에는 새로운 순서쌍 (J, 1)을 삽입한다(S605). 또한 해당 시그너춰 레코드 내의 시그너춰를 갖는 패킷을 포함하는 플로우 개수(260)은 해당 시그너춰 레코드가 플로우 F의 패킷을 처리하는 과정에서 한 번도 방문된 적이 없는 경우에만 1만큼 증가된다(S607).In addition, the histogram 220 for the position in the packet of the signature in the signature record is searched for the existence of an ordered pair (J, Y) for M, and if present, updated to (J, Y + 1), If it does not exist, a new ordered pair (J, 1) is inserted (S605). In addition, the number of flows 260 including the packet having the signature in the signature record is increased by 1 only when the signature record has never been visited in the process of processing the packet of the flow F (S607).

또한 해당 시그너춰 레코드 내의 시그너춰를 갖는 패킷의 개수(270)의 값은 1만큼 증가되며, 해당 시그너춰 레코드 내의 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기 합(280)의 값은 해당 시그너춰 레코드가 플로우 F의 패킷을 처리하는 과정에서 한 번도 방문된 적이 없는 경우에만 F의 크기만큼 증가된다(S607).In addition, the value of the number of packets 270 with signatures in the signature record is increased by 1, and the value of the sum of sizes 280 of flows including packets with signatures in the signature record is the corresponding signature. The record is incremented by the size of F only if it has never been visited in the process of processing the packet of the flow F (S607).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스 크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, which are also implemented in the form of carrier waves (for example, transmission over the Internet). It also includes. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, optimal embodiments have been disclosed in the drawings and the specification. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

이상에서 설명한 바와 같이, 본 발명에 따르면 특정한 인터넷 응용 프로그램이 발생시키는 트래픽에 대해서 그 시그너춰를 자동적으로 추출해 내는 것이 가능해진다.As described above, according to the present invention, the signature can be automatically extracted for the traffic generated by a specific Internet application program.

이러한 시그너춰 자동 추출 장치 및 방법은, IDS에 사용될 시그너춰를 자동적으로 추출하는 데 관심이 있는 망 관리자가 자신의 망에 유입되는 트래픽을 차단하기 위한 시그너춰를 만들어 내는 데 유용하게 사용될 수 있다.Such a signature automatic extraction apparatus and method may be useful for network managers interested in automatically extracting signatures to be used for IDS to create signatures for blocking traffic flowing into their networks.

Claims (18)

삭제delete 플로우 형태로 저장된 인터넷 트래픽 파일로부터 개별 플로우를 순차적으로 추출하는 파일 처리부;A file processor that sequentially extracts individual flows from an internet traffic file stored in a flow form; 상기 파일 처리부로부터 전달받은 상기 개별 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드를 검사하여, 시그너춰를 생성하는데 필요한 상기 페이로드의 특성을 나타내는 사전정보를 수집하는 사전정보 수집부; 및A dictionary information collection unit which inspects payloads attached to respective packets stored in the individual flows received from the file processing unit, and collects dictionary information indicating characteristics of the payloads required to generate a signature; And 상기 사전정보에 기초하여 상기 개별 플로우를 순회하면서 시그너춰 레코드를 생성하는 시그너춰 레코드 저장부;를 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.And a signature record storage unit configured to generate a signature record while circulating the individual flows based on the prior information. 제 2 항에 있어서,The method of claim 2, 상기 사전정보 수집부는 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수, 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량, 상기 트래픽 파일에 속한 모든 플로우의 총량 및 상기 개별 플로우에 속한 모 든 패킷의 갯수를 사전정보로 하여 기록하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.The pre-information collecting unit includes the number of times a specific value appears in a specific byte of the payload, the total amount of all flows belonging to a packet having a specific value at a specific position of the payload, the total amount of all flows belonging to the traffic file, and the individual flow. Apparatus for extracting a specific Internet application signature from the Internet traffic, characterized in that the number of all packets belonging to and recorded as the prior information. 제 2 항에 있어서,The method of claim 2, 상기 시그너춰 레코드 저장부는 시그너춰의 플로우내 위치에 대한 히스토그램, 시그너춰의 패킷내 위치에 대한 히스토그램, 시그너춰 문자열, 시그너춰 문자열 마스크, 프로토콜, 해당 시그너춰를 갖는 패킷을 포함하는 플로우 갯수, 해당 시그너춰를 갖는 패킷의 갯수 및 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합을 시그너춰 레코드로 하여 기록하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.The signature record storage unit includes a histogram for a location in a signature flow, a histogram for a location in a packet of a signature, a signature string, a signature string mask, a protocol, and a flow number including a packet having a corresponding signature. And recording the sum of the number of packets with signatures and the size of flows including the packets with signatures as a signature record and recording a specific Internet application signature from Internet traffic. 제 2 항에 있어서,The method of claim 2, 상기 시그너춰 레코드 저장부는 상기 페이로드를 검사하여 시그너춰를 생성하고, 상기 시그너춰가 새로운 시그너춰인 경우에 상기 시그너춰와 함께 상기 사전정보를 이용하여 상기 시그너춰의 바이트를 담고 있는 원소 및 바이트 단위 길이를 시그너춰 레코드 형태로 변환하여 저장하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.The signature record storage unit generates a signature by inspecting the payload, and when the signature is a new signature, an element and a byte containing the signature byte using the dictionary information together with the signature. Apparatus for extracting a specific Internet application signature from the Internet traffic, characterized in that the unit length is converted into a signature record form and stored. 제 2 항에 있어서,The method of claim 2, 상기 시그너춰 레코드 저장부는 상기 시그너춰 레코드가 저장된 시그너춰 리 스트를 생성하여 상기 개별 플로우를 순회하면서 생성한 시그너춰가 상기 시그너춰 리스트에 존재하는 경우에는 해당되는 시그너춰 레코드를 갱신하고, 상기 시그너춰 리스트에 존재하지 않는 경우에는 상기 시그너춰 리스트에 새로운 시그너춰 레코드를 생성하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.The signature record storage unit generates a signature list in which the signature record is stored and updates the corresponding signature record when the signature generated while traversing the individual flow exists in the signature list. And generate a new signature record in the signature list if it does not exist in the signature list. 제 2 항에 있어서,The method of claim 2, 상기 파일처리부로부터 전달되는 개별 플로우가 존재하지 않는 경우에는 상기 시그너춰 레코드 저장부에서 생성된 시그너춰 레코드를 임의의 형식의 보고서 형태로 변환하는 시그너춰 레코드 변환부;를 더 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 장치.And a signature record converting unit converting the signature record generated by the signature record storage unit into a report form in an arbitrary format when there is no individual flow delivered from the file processing unit. A device that extracts specific Internet application signatures from Internet traffic. 삭제delete 플로우 형태로 저장된 인터넷 트래픽 파일로부터 개별 플로우를 순차적으로 추출하는 단계;Sequentially extracting individual flows from an internet traffic file stored in a flow form; 상기 개별 플로우 내에 저장되어 있는 각각의 패킷들에 붙어있는 페이로드를 검사하여, 시그너춰를 생성하는데 필요한 상기 페이로드의 특성을 나타내는 사전정보를 수집하는 단계; 및Inspecting the payload attached to each of the packets stored in the respective flows and collecting prior information indicative of the characteristics of the payload required to generate a signature; And 상기 사전정보에 기초하여 상기 개별 플로우를 순회하면서 시그너춰 레코드를 생성하는 시그너춰 레코드 저장단계;를 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.And a signature record storing step of generating a signature record while iterating through the individual flows based on the prior information. 제 9 항에 있어서,The method of claim 9, 상기 사전정보를 수집하는 단계는 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수, 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량, 상기 트래픽 파일에 속한 모든 플로우의 총량 및 상기 개별 플로우에 속한 모든 패킷의 갯수를 사전정보로 하여 기록하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.The collecting of the prior information may include the number of times a specific value appears in a specific byte of the payload, the total amount of all flows belonging to a packet having a specific value at a specific position of the payload, the total amount of all flows belonging to the traffic file, and And extracting a specific internet application signature from the internet traffic, wherein the number of all packets belonging to each individual flow is recorded as prior information. 제 9 항에 있어서,The method of claim 9, 상기 시그너춰 레코드 저장단계는 시그너춰의 플로우내 위치에 대한 히스토그램, 시그너춰의 패킷내 위치에 대한 히스토그램, 시그너춰 문자열, 시그너춰 문자열 마스크, 프로토콜, 해당 시그너춰를 갖는 패킷을 포함하는 플로우 갯수, 해당 시그너춰를 갖는 패킷의 갯수 및 해당 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합을 시그너춰 레코드로 하여 기록하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.The signature record storing step may include a histogram for a location in a signature flow, a histogram for a location in a packet of a signature, a signature string, a signature string mask, a protocol, a number of flows including a packet having a corresponding signature, And recording the sum of the number of packets having the signature and the size of the flows including the packet having the signature as a signature record and recording the specific Internet application signature from the Internet traffic. 제 9 항에 있어서,The method of claim 9, 상기 시그너춰 레코드 저장단계는 상기 페이로드를 검사하여 시그너춰를 생성하고, 상기 시그너춰가 새로운 시그너춰인 경우에 상기 시그너춰와 함께 상기 사전정보를 이용하여 상기 시그너춰의 바이트를 담고 있는 원소 및 바이트 단위 길이를 시그너춰 레코드 형태로 변환하여 저장하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.The signature record storing step may include generating an signature by inspecting the payload, and when the signature is a new signature, an element containing a byte of the signature using the dictionary information together with the signature; and A method of extracting a specific Internet application signature from Internet traffic, comprising converting and storing a byte length into a signature record format. 제 9 항에 있어서,The method of claim 9, 상기 시그너춰 레코드 저장단계는 상기 시그너춰 레코드가 저장된 시그너춰 리스트를 생성하여 상기 개별 플로우를 순회하면서 생성한 시그너춰가 상기 시그너춰 리스트에 존재하는 경우에는 해당되는 시그너춰 레코드를 갱신하고, 상기 시그너춰 리스트에 존재하지 않는 경우에는 상기 시그너춰 리스트에 새로운 시그너춰 레코드를 생성하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.The signature record storing step generates a signature list in which the signature record is stored and updates the corresponding signature record when the signature generated while traversing the individual flow exists in the signature list, and updates the signature. Creating a new signature record in the signature list if it does not exist in the signature list. 제 9 항에 있어서,The method of claim 9, 상기 추출되는 개별 플로우가 존재하지 않는 경우에는 상기 시그너춰 레코드 저장단계에서 생성된 시그너춰 레코드를 임의의 형식의 보고서 형태로 변환하는 시그너춰 레코드 변환단계;를 더 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.A signature record converting step of converting the signature record generated in the signature record storing step into a report form of any format when the extracted individual flow does not exist. How to extract specific internet application signatures. 삭제delete 제 9 항에 있어서, 상기 사전정보를 수집하는 단계는10. The method of claim 9, wherein collecting the dictionary information 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수와 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량을 저장하는 64×256 크기를 갖는 2차원 배열변수, 상기 트래픽 파일에 속한 모든 플로우의 총량을 저장하는 제1일반변수 및 상기 개별 플로우에 속한 모든 패킷의 갯수를 저장하는 제2일반변수의 값을 초기화하는 단계;A two-dimensional array variable having a size of 64 × 256 that stores the number of times a specific value appears in a specific byte of the payload, and the total amount of all flows belonging to a packet having a specific value in a specific position of the payload, and belongs to the traffic file Initializing the values of the first general variable storing the total amount of all flows and the second general variable storing the number of all packets belonging to the individual flows; 상기 개별 플로우가 전달된 경우 64×256 크기를 갖는 데이터를 임시 저장하는 2차원 배열변수를 초기화하고, 상기 초기화된 제2일반변수에 상기 개별 플로우에 담긴 패킷의 총 갯수를 더하고, 상기 제1일반변수에 상기 전달된 개별 플로우의 크기를 더하는 단계;When the individual flow is delivered, initializes a two-dimensional array variable for temporarily storing data having a size of 64 × 256, adds the total number of packets included in the individual flow to the initialized second general variable, and adds the first general variable. Adding a size of the delivered individual flow to a variable; 상기 개별 플로우가 데이터 플로우인지 검사하여 데이터 플로우인 경우에는 상기 개별 플로우의 첫 10개의 패킷과 각각의 패킷에 속한 페이로드를 순차적으로 검사하여 상기 페이로드가 특정 바이트에 특정값이 나타나면 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수 및 상기 데이터를 임시 저장하는 배열변수의 값을 증가시키는 단계; 및In the case of the data flow by checking whether the individual flow is a data flow, the first 10 packets of the individual flow and the payload belonging to each packet are sequentially examined. Increasing the number of times a particular value appears in a particular byte and the value of an array variable that temporarily stores the data; And 상기 전달된 개별 플로우내의 모든 패킷에 대한 검사가 끝나고 나면 상기 데이터를 임시 저장하는 배열변수의 값이 '0'이 아닌 모든 원소에 대해서 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량을 상기 개별 플로우의 크기만큼 증가시키는 단계;를 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.After the inspection of all the packets in the delivered individual flow is finished, all the flows belonging to a packet having a specific value at a specific position of the payload for all elements whose value of the array variable for temporarily storing the data is not '0'. Increasing the total amount of P by the size of the individual flow; and extracting a particular Internet application signature from the Internet traffic. 제 9 항에 있어서,The method of claim 9, (a) 상기 사전정보를 수집하는 단계에서 생성된 상기 페이로드의 특정 바이트에 특정값이 나타나는 횟수가 저장된 64×256 크기를 갖는 2차원 배열변수의 값이 '10'보다 크고 상기 페이로드의 특정 위치에 특정값을 갖는 패킷이 속한 모든 플로우의 총량이 저장된 64×256 크기를 갖는 2차원 배열변수의 값이 '0.9'와 상기 트래픽 파일에 속한 모든 플로우의 총량이 저장된 일반변수를 곱해서 얻어지는 값보다 같거나 클 경우에는 '1'을 그렇지 않은 경우에는 '0'을 저장하는 2차원 배열변수를 생성하는 단계;(a) the value of the two-dimensional array variable having a size of 64 × 256, in which the number of times a specific value appears in a specific byte of the payload generated in collecting the dictionary information is greater than '10' and the payload is specified. The value of a two-dimensional array variable having a size of 64 × 256 stored in the total amount of all flows belonging to a packet having a specific value at a position is greater than the value obtained by multiplying '0.9' by the total amount of all flows belonging to the traffic file. Generating a two-dimensional array variable storing '1' if it is equal to or greater than '0' otherwise; (b) 상기 개별 플로우내에 각각의 패킷에 대해서 생성될 시그너춰를 저장하는 제1배열변수와 상기 배열변수에 저장된 시그너춰의 각 원소중 실제로 시그너춰 바이트를 담고 있는 원소를 표기하는 제2배열변수 및 상기 시그너춰의 바이트 단위 길이를 저장하는 제3변수를 초기화하는 단계;(b) a first array variable for storing a signature to be generated for each packet in the respective flow and a second array variable for indicating an element containing a signature byte of each element of the signature stored in the array variable; And initializing a third variable that stores the length in bytes of the signature. (c) 상기 패킷의 페이로드 내의 모든 바이트 위치에 대해서 특정한 바이트 값을 가질 경우에 상기 제1배열변수의 값이 '0'이 아니면 상기 제1배열변수의 해당 원소에 상기 특정한 바이트 값을 저장하고 상기 제2배열변수의 해당 원소에 '0xFF'를 저장하고 상기 제3변수를 증가시키고, 그 이외의 경우에는 상기 제1배열변수의 해당 원소 및 상기 제2배열변수의 해당원소는 '0'을 저장하는 단계; 및(c) if the value of the first array variable is not '0' when all byte positions in the payload of the packet have a specific byte value, store the specific byte value in a corresponding element of the first array variable; Store '0xFF' in the corresponding element of the second array variable and increase the third variable; otherwise, the corresponding element of the first array variable and the corresponding element of the second array variable are '0' Storing; And (d) 상기 시그너춰가 새로운 시그너춰에 해당하는 경우에는 해당 시그너춰를 시그너춰 레코드 형태로 변환하여 시그너춰 리스트에 삽입하고, 새로운 시그너춰가 아닌 경우에는 해당 시그너춰 리스트에 저장된 통계량을 갱신하는 단계;를 더 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.(d) If the signature corresponds to a new signature, convert the signature into a signature record form and insert the signature into the signature list.If the signature is not a new signature, the statistics stored in the signature list are updated. And further extracting a specific internet application signature from the internet traffic. 제 17 항에 있어서, 상기 (d)단계는18. The method of claim 17, wherein step (d) 상기 시그너춰 리스트 안에 해당 시그너춰와 동일한 시그너춰 문자열 및 프로토콜을 갖는 시그너춰 레코드가 없는 경우에는 상기 시그너춰 리스트에 해당 시그너춰의 플로우내 위치에 대한 히스토그램, 패킷내 위치에 대한 히스토그램, 문자열, 시그너춰 문자열 마스크, 프로토콜, 시그너춰를 갖는 패킷을 포함하는 플로우 갯수, 시그너춰를 갖는 패킷의 갯수 및 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합이 기록된 상기 시그너춰 레코드를 생성하는 단계; 및If there is no signature record having the same signature string and protocol as the signature in the signature list, the signature list has a histogram for the location in the flow of the signature, a histogram for the location in the packet, a string, and a signature. Generating the signature record in which a sum of a string string mask, a protocol, a number of flows including a packet with a signature, a number of packets with a signature and a size of flows including a packet with a signature is recorded; And 상기 시그너춰 리스트 안에 해당 시그너춰와 동일한 시그너춰 문자열 및 프로토콜을 갖는 시그너춰 레코드가 존재하는 경우에는 해당 시그너춰 레코드내의 시그너춰의 플로우내 위치에 대한 히스토그램에 대한 순서쌍이 존재하는지 검색하여 존재하는 경우에는 다음 순서쌍으로 갱신하고, 존재하지 않는 경우에는 처음 순서쌍을 생성하며,When a signature record having the same signature string and protocol as the signature exists in the signature list, a sequence pair for the histogram for the position in the flow of the signature in the signature record exists. Update to the next ordered pair, create the first ordered pair if none exists, 해당 시그너춰 레코드내의 시그너춰의 패킷내 위치에 대한 히스토그램에 대한 순서쌍이 존재하는 검색하여 존재하는 경우 다음 순서쌍으로 갱신하고, 존재하지 않는 경우에는 처음 순서쌍을 생성하며,If there is an ordered pair for the histogram of the location in the packet of the signature in the signature record, the existing ordered pair is updated. 해당 시그너춰 레코드내의 시그너춰를 갖는 패킷을 포함하는 플로우 갯수는 해당 시그너춰 레코드가 상기 개별 플로우의 패킷을 처리하는 과정에서 한번도 방문된 적이 없는 경우에만 증가시키며,The number of flows that contain packets with signatures in the signature record is increased only if the signature record has never been visited in the course of processing the packets of the individual flows. 해당 시그너춰 레코드내의 시그너춰를 갖는 패킷의 갯수를 증가시키며,Increase the number of packets with signatures in the signature record, 해당 시그너춰 레코드내의 시그너춰를 갖는 패킷을 포함하는 플로우들의 크기의 합에 대해서는 해당 시그너춰 레코드가 상기 개별 플로우의 패킷을 처리하는 과정에서 한번도 방문된 적이 없는 경우에만 상기 개별 플로우의 크기만큼 증가시키는 단계;를 포함하는 것을 특징으로 하는 인터넷 트래픽으로부터 특정 인터넷 응용 프로그램 시그너춰를 추출하는 방법.The sum of the sizes of flows containing packets with signatures in the signature record is increased by the size of the individual flows only if the signature record has never been visited in the course of processing the packets of the individual flows. Step; extracting a particular internet application signature from the internet traffic.
KR1020060124122A 2006-12-07 2006-12-07 Automatic Signature Extraction System and Method for Internet traffic KR100912806B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060124122A KR100912806B1 (en) 2006-12-07 2006-12-07 Automatic Signature Extraction System and Method for Internet traffic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060124122A KR100912806B1 (en) 2006-12-07 2006-12-07 Automatic Signature Extraction System and Method for Internet traffic

Publications (2)

Publication Number Publication Date
KR20080052086A KR20080052086A (en) 2008-06-11
KR100912806B1 true KR100912806B1 (en) 2009-08-18

Family

ID=39806955

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060124122A KR100912806B1 (en) 2006-12-07 2006-12-07 Automatic Signature Extraction System and Method for Internet traffic

Country Status (1)

Country Link
KR (1) KR100912806B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101148705B1 (en) * 2009-05-26 2012-05-23 포항공과대학교 산학협력단 Signature generation apparatus for network behavior of applications, collection server, detection system for network behavior, and signature generation method for network behavior
KR101223597B1 (en) * 2011-04-20 2013-01-17 고려대학교 산학협력단 Apparatus and method for generating signature of operating system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030028013A (en) * 2001-09-27 2003-04-08 주식회사 케이티 Analysis Apparatus and Method for Traffic Information of IP Network based on Passive Measurement
KR20030034533A (en) * 2001-10-26 2003-05-09 주식회사 케이티 Method for traffic sampling based flow on the Internet Protocol Network
KR20060060845A (en) * 2004-12-01 2006-06-07 한국전자통신연구원 Internet traffic analysis system and method, and dbms schema evolution method in the system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030028013A (en) * 2001-09-27 2003-04-08 주식회사 케이티 Analysis Apparatus and Method for Traffic Information of IP Network based on Passive Measurement
KR20030034533A (en) * 2001-10-26 2003-05-09 주식회사 케이티 Method for traffic sampling based flow on the Internet Protocol Network
KR20060060845A (en) * 2004-12-01 2006-06-07 한국전자통신연구원 Internet traffic analysis system and method, and dbms schema evolution method in the system

Also Published As

Publication number Publication date
KR20080052086A (en) 2008-06-11

Similar Documents

Publication Publication Date Title
US9264378B2 (en) Network monitoring by using packet header analysis
KR101391781B1 (en) Apparatus and Method for Detecting HTTP Botnet based on the Density of Web Transaction
JP4547342B2 (en) Network control apparatus, control system, and control method
CN106534146B (en) A kind of safety monitoring system and method
JP5961354B2 (en) Method and apparatus for efficient netflow data analysis
CN112039904A (en) Network traffic analysis and file extraction system and method
KR100895102B1 (en) System and method detection of a file
CN111030941A (en) Decision tree-based HTTPS encrypted flow classification method
CN104468554A (en) Attack detection method and device based on IP and HOST
CN110245273B (en) Method for acquiring APP service feature library and corresponding device
CN105407096A (en) Message data detection method based on stream management
CN106452955A (en) Abnormal network connection detection method and system
CN112688932A (en) Honeypot generation method, honeypot generation device, honeypot generation equipment and computer readable storage medium
KR100912806B1 (en) Automatic Signature Extraction System and Method for Internet traffic
CN114785567A (en) Traffic identification method, device, equipment and medium
CN108199878A (en) Identification information identifying system and method in High Performance IP network
KR101712462B1 (en) System for monitoring dangerous ip
CN111447169A (en) Method and system for identifying malicious webpage in real time on gateway
CN115314271A (en) Access request detection method, system and computer storage medium
CN114153807A (en) Message processing method and device, electronic equipment and computer readable storage medium
KR101650316B1 (en) Apparatus and method for collecting and analysing HTML5 documents based a distributed parallel processing
Garfinkel et al. Passive TCP reconstruction and forensic analysis with tcpflow
CN111541675A (en) Network security protection method, device and equipment based on white list
CN111756679A (en) Log analysis method and device, storage medium and computer equipment
CN113364808B (en) Industrial control firewall testing method, device, equipment and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E601 Decision to refuse application
E801 Decision on dismissal of amendment
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee