KR101498696B1 - System and method for detecting harmful traffic - Google Patents

System and method for detecting harmful traffic Download PDF

Info

Publication number
KR101498696B1
KR101498696B1 KR1020130046975A KR20130046975A KR101498696B1 KR 101498696 B1 KR101498696 B1 KR 101498696B1 KR 1020130046975 A KR1020130046975 A KR 1020130046975A KR 20130046975 A KR20130046975 A KR 20130046975A KR 101498696 B1 KR101498696 B1 KR 101498696B1
Authority
KR
South Korea
Prior art keywords
packet
unit
hardware
pattern matching
rule set
Prior art date
Application number
KR1020130046975A
Other languages
Korean (ko)
Other versions
KR20140128554A (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 KR1020130046975A priority Critical patent/KR101498696B1/en
Publication of KR20140128554A publication Critical patent/KR20140128554A/en
Application granted granted Critical
Publication of KR101498696B1 publication Critical patent/KR101498696B1/en

Links

Images

Classifications

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

Landscapes

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

Abstract

본 발명은 유해 트래픽 탐지 시스템으로, 모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하고, 상기 패킷의 임의의 위치의 패턴 매칭 검사를 수행한 후, 해시키를 부가하여 플로우별로 출력시키는 하드웨어 기반 패킷 수집 장치와, 상기 하드웨어 기반 패킷 수집 장치에 의해 출력되는 플로우별 패킷 내의 특정 위치의 패턴 매칭 검사를 수행하여 네트워크 플로우(Netflow)로 출력시키는 소프트웨어 기반 패킷 수집 장치를 포함한다.The present invention is a harmful traffic detection system that captures a packet transmitted through a monitoring target network, performs pattern matching inspection of an arbitrary position of the packet, adds a hash key, and outputs the packet- And a software-based packet collecting device for performing a pattern matching check of a specific location in a packet for each flow outputted by the hardware-based packet collecting device and outputting it to a network flow (Netflow).

Description

유해 트래픽 탐지 시스템 및 방법{SYSTEM AND METHOD FOR DETECTING HARMFUL TRAFFIC}TECHNICAL FIELD [0001] The present invention relates to a system and a method for detecting harmful traffic,

본 발명은 유해 트래픽을 탐지하는 시스템 및 방법에 관한 것으로, 보다 구체적으로는 네트워크 카드를 이용하여 의심되는 유해 트래픽의 패턴을 예비적으로 매칭하고 매칭 결과에 따라, 소프트웨어 기반으로 재차 패턴 매칭을 하여 유해 트래픽을 탐지하는 것이다.
The present invention relates to a system and method for detecting harmful traffic, and more particularly, to a system and method for detecting harmful traffic, more specifically, a method of preliminarily matching suspicious traffic patterns using a network card, pattern- To detect traffic.

오늘날 네트워크의 기술의 발전과 사용자의 증가로 정보화 사회로 발전하고 있는 반면, 네트워크를 통해 다른 사용자들에 게 바이러스를 유포하거나, 공격하는 유해 트래픽에 따른 부정적인 측면도 증가하고 있다. Today, with the advancement of network technology and the increasing number of users, the information society is evolving, while the negative side is increasing due to harmful traffic that spreads or attacks viruses to other users through the network.

유해 트래픽이라 함은 수신자 측에서 해당 트래픽을 수신할 경우 시스템이 이상 작동하게 되는 공격적 트래픽, 혹은 공격 정보나 정상적인 네트워크 흐름에 있어서 필요치 않은 트래픽, 혹은 데이터 흐름 또는 정상 패킷이지만 해당 패킷을 과도하게 발생하여 수신자의 정상적인 네트워크 소통의 흐름을 방해하거나 네트워크 연결을 중단시키는 행위를 하기 위한 트래픽을 말한다. 유해 트래픽이 네트워크 망을 통해 사용자의 컴퓨터로 유입될 경우 컴퓨터 성능 저하 등의 문제점이 발생하게 된다. 따라서 유해 트래픽을 차단하기 위한 시도가 계속되어왔다.Harmful traffic refers to aggressive traffic that the system will operate abnormally when the corresponding traffic is received at the receiver side, or unnecessary traffic or data flow or normal packet in attack information or normal network flow, but the packet is excessively generated Traffic that interrupts the normal network communication flow of the receiver or interrupts the network connection. When the harmful traffic flows into the user's computer through the network, problems such as deterioration of the computer performance occur. Therefore, attempts have been made to block harmful traffic.

일반적으로 유해 트래픽을 탐지하기 위해서는 시그니처 탐지 엔진 즉, 소프트웨어만을 사용하였다. 네트워크를 지나는 모든 패킷에 대하여 시그니처와 매칭을 하는 경우 시그니처의 개수가 증가하게 되면 유해 트래픽 탐지에 소요되는 시간이 증가하고 탐지 성능이 저하되며, CPU 사용율의 증가로 시스템 전체의 성능이 떨어지는 문제점이 있다.
Generally, only the signature detection engine or software is used to detect harmful traffic. If the number of signatures increases when all the packets passing through the network are matched with the signatures, the time required for detection of harmful traffic increases, the detection performance decreases, and the performance of the entire system deteriorates due to an increase in the CPU usage rate .

본 발명은 네트워크 상의 유해 트래픽을 탐지하기 위하여 소프트웨어만을 이용했을 때의 문제점을 해결하기 위한 것으로, 시그니처의 개수가 증가해도 시그니처 매칭 시간이 지연되지 않으며, 시스템 전체의 성능이 저하되지 않고 일정하게 유지함으로써 안정적인 시스템의 운영을 보장하면서 유해 트래픽 탐지의 성능은 높일 수 있는 방법 및 시스템을 제공하는 것이다.
The present invention solves the problem of using only software to detect harmful traffic on a network. Even if the number of signatures increases, the signature matching time is not delayed, and the performance of the entire system is kept constant without deteriorating And to provide a method and system that can enhance the performance of harmful traffic detection while ensuring stable operation of the system.

본 발명은 유해 트래픽 탐지 시스템으로, 모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하고, 상기 패킷의 임의의 위치의 패턴 매칭 검사를 수행한 후, 해시키를 부가하여 플로우별로 출력시키는 하드웨어 기반 패킷 수집 장치와, 상기 하드웨어 기반 패킷 수집 장치에 의해 출력되는 플로우별 패킷 내의 특정 위치의 패턴 매칭 검사를 수행하여 네트워크 플로우(Netflow)로 출력시키는 소프트웨어 기반 패킷 수집 장치를 포함한다.The present invention is a harmful traffic detection system that captures a packet transmitted through a monitoring target network, performs pattern matching inspection of an arbitrary position of the packet, adds a hash key, and outputs the packet- And a software-based packet collecting device for performing a pattern matching check of a specific location in a packet for each flow outputted by the hardware-based packet collecting device and outputting it to a network flow (Netflow).

본 발명은 유해 트래픽 탐지 방법으로, 모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하는 단계와, 하드웨어 기반으로 상기 패킷의 임의의 위치의 패턴 매칭 검사를 수행한 후, 해시키를 부가하여 플로우별 분리하는 단계와, 소프트웨어 기반으로 상기 플로우별 패킷 내의 특정 위치의 패턴 매칭 검사를 수행하여 네트워크 플로우(Netflow)로 출력시키는 단계를 포함한다.
The present invention is a harmful traffic detection method comprising the steps of capturing a packet transmitted through a network to be monitored, pattern matching inspection of an arbitrary position of the packet based on hardware, adding a hash key, And performing a pattern matching check of a specific location in the packet for each flow based on software and outputting it to a network flow (Netflow).

본 발명은 하드웨어 및 소프트웨어를 연동하여 유해 트래픽을 탐지하므로, 시그니처의 개수가 증가해도 시그니처 매칭 시간이 지연되지 않으며, 시스템 전체의 성능이 저하되지 않고 일정하게 유지함으로써 안정적인 시스템의 운영을 보장하면서 유해 트래픽 탐지의 성능은 높일 수 있다.
Since hardware and software are interlocked to detect harmful traffic, even if the number of signatures increases, the signature matching time is not delayed, and the performance of the entire system is maintained without being deteriorated, Detection performance can be improved.

도 1은 본 발명의 일 실시 예에 따른 유해 트래픽 탐지 시스템의 구성도이다.
도 2는 본 발명의 일 실시 예에 따른 하드웨어 기반 패킷 수집 장치의 구성도이다.
도 3은 본 발명의 일 실시 예에 따른 패킷 분석부의 구성도이다.
도 4는 본 발명의 일 실시 예에 따른 룰셋 매칭부에 구현된 다중 레지스터를 이용한 룰셋 매칭 동작을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시 예에 따른 다중 메모리를 통해 다중 쓰레드 구현을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시 예에 따른 소프트웨어 기반 패킷 수집 장치의 구성도이다.
도 7은 본 발명의 일 실시 예에 따른 유해 트래픽 탐지 방법을 설명하기 위한 순서도이다.
1 is a block diagram of a harmful traffic detection system according to an embodiment of the present invention.
2 is a configuration diagram of a hardware-based packet collecting apparatus according to an embodiment of the present invention.
3 is a configuration diagram of a packet analyzing unit according to an embodiment of the present invention.
4 is a diagram for explaining a ruleset matching operation using multiple registers implemented in a ruleset matching unit according to an embodiment of the present invention.
5 is a diagram illustrating a multi-thread implementation through multiple memories according to an embodiment of the present invention.
6 is a configuration diagram of a software-based packet collecting apparatus according to an embodiment of the present invention.
FIG. 7 is a flow chart for explaining a harmful traffic detection method according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout.

본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
The terms used throughout the specification are defined in consideration of the functions in the embodiments of the present invention and can be sufficiently modified according to the intentions and customs of the user or the operator. It should be based on the contents of.

도 1은 본 발명의 일 실시 예에 따른 유해 트래픽 탐지 시스템의 구성도이다.1 is a block diagram of a harmful traffic detection system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 유해 트래픽 탐지 시스템은 백본망(10)과 가입자망(20)과 같은 모니터링 대상 네트워크에서 발생되는 트래픽을 캡쳐하여, 트래픽 유해 여부를 탐지한다. 본 발명의 실시 예에 따라, 모니터링 대상 네트워크를 통해 추출된 10G 실시간 패킷 수집/분석 및 고속 트래픽 유해 탐지 처리를 위해, 하드웨어 기반 패킷 수집 장치(100) 및 소프트웨어 기반 패킷 수집 장치(200)가 연동하여 트래픽 유해 탐지가 이루어질 수 있다.As shown in FIG. 1, the harmful traffic detection system captures traffic generated in a monitoring target network, such as the backbone network 10 and the subscriber network 20, and detects whether the traffic is harmful. According to the embodiment of the present invention, the hardware-based packet collecting apparatus 100 and the software-based packet collecting apparatus 200 interwork with each other for 10G real-time packet collection / analysis and high- Traffic harmful detection can be performed.

하드웨어 기반 패킷 수집 장치(100)는 네트워크 카드 형태로 제작되어, 소프트웨어 기반 패킷 수집 장치(200)에 플러그 인 형태로 결합된다. The hardware-based packet capture device 100 is fabricated in the form of a network card and is plugged into the software-based packet capture device 200.

하드웨어 기반 패킷 수집 장치(100)는 모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하고, 캡쳐된 패킷의 유해 검사 여부를 위한 패턴 매칭 검사 및 플로우 식별을 위한 해시키 생성 프로세싱을 수행한다. The hardware-based packet capturing apparatus 100 captures a packet transmitted through a network to be monitored, performs a pattern matching check to determine whether the captured packet is harmful, and performs a hash key generation processing for flow identification.

본 발명의 실시 예에 따라, 하드웨어 기반 패킷 수집 장치(100)는 오프셋(Offset)이 없는 패턴 매칭을 수행한다. 여기서, 오프셋(Offset)이 없는 패턴 매칭은 패킷의 임의의 위치에 존재하는 룰셋(Rule set)을 검출하는 하는 것으로, 이는 소프트웨어에서 검출하는데 많은 시간이 소요되므로, 실시간 고속 탐지를 위해 하드웨어 기반으로 처리되도록 한다. 또한, 고속 처리를 위해 다중 플로우 관리를 수행한다. According to an embodiment of the present invention, the hardware-based packet collecting apparatus 100 performs pattern matching with no offset. Pattern matching without an offset is to detect a rule set existing at an arbitrary position of a packet. Since it takes much time to detect by a software, it is possible to perform hardware-based processing . Also, multi-flow management is performed for high-speed processing.

소프트웨어 기반 패킷 수집 장치(200)는 하드웨어 기반 패킷 수집 장치(100)에 의해 처리된 데이터를 다중 쓰레드 프로세싱 처리하여 트래픽의 비정상 여부를 검사하고, 검사된 결과를 네트워크 플로우(Netflow)로 출력시킨다. 본 발명의 실시 예에 따라, 소프트웨어 기반 패킷 수집 장치(200)는 오프셋(Offset)이 있는 패턴 매칭을 수행한다. 여기서, 오프셋(Offset)이 있는 패턴 매칭은 패킷의 특정 위치에 존재하는 룰셋을 검출하는 것으로, 이는 소프트웨어에서도 용이하게 검출될 수 있으므로, 실시간 고속 탐지를 위해 소프트웨어 기반으로 처리되도록 한다. The software-based packet collecting apparatus 200 processes the data processed by the hardware-based packet collecting apparatus 100 by multi-thread processing to check whether the traffic is abnormal, and outputs the checked result to the network flow (Netflow). In accordance with an embodiment of the present invention, the software-based packet capture device 200 performs pattern matching with offsets. Here, pattern matching with an offset is to detect a rule set existing at a specific position of a packet, which can be easily detected in software, so that it is processed in a software basis for real-time high-speed detection.

소프트웨어 기반 패킷 수집 장치(200)는 네트워크 플로우(Netflow)를 서버(40)에 제공하게 되고, 서버(40)는 이를 DB(50)에 저장하거나, 사용자 컴퓨터(60)를 통해 GUI 형태로 출력시켜 사용자가 직접 분석할 수 있도록 한다. 그런 후, 서버(40)는 분석 결과에 따른 유해 탐지 정책을 소프트웨어 기반 패킷 수집 장치(200)에 피드백할 수 있다.The software-based packet collecting apparatus 200 provides a network flow (Netflow) to the server 40 and the server 40 stores it in the DB 50 or outputs it in GUI form via the user computer 60 Allow users to analyze directly. Then, the server 40 may feed back the harmful detection policy according to the analysis result to the software-based packet collecting apparatus 200.

도 2는 본 발명의 일 실시 예에 따른 하드웨어 기반 패킷 수집 장치의 구성도이다.2 is a configuration diagram of a hardware-based packet collecting apparatus according to an embodiment of the present invention.

도 2를 참조하면, 전술한 바와 같이 하드웨어 기반 패킷 수집 장치(100)는 네트워크 카드 형태로 제작되어, 소프트웨어 기반 패킷 수집 장치(200)에 플러그인 형태로 접속될 수 있다.Referring to FIG. 2, the hardware-based packet collecting apparatus 100 may be fabricated in the form of a network card and connected to the software-based packet collecting apparatus 200 in a plug-in manner as described above.

하드웨어 기반 패킷 수집 장치(100)는 광모듈(110), 입력 인터페이스부(120), EMAC(130), 패킷 분석부(140), 다중 메모리부(150) 및 컴퓨터 인터페이스부(PCIe IP)(160)를 포함할 수 있다. 여기서, 본 발명에 따라, 입력 인터페이스부(120), EMAC(130), 패킷 분석부(140), 다중 메모리부(150) 및 출력 인터페이스부(160)는 FPGA(170)로 구현되어 고속 처리될 수 있다. The hardware-based packet collecting apparatus 100 includes an optical module 110, an input interface unit 120, an EMAC 130, a packet analyzing unit 140, a multiple memory unit 150, and a computer interface unit (PCIe IP) 160 ). The input interface unit 120, the EMAC 130, the packet analysis unit 140, the multiple memory unit 150, and the output interface unit 160 may be implemented as the FPGA 170, .

광모듈(110)은 모니터링 대상 네트워크 망을 통해 전송되는 패킷을 수집한다. 본 발명의 일 실시 예에 따라, 두 개의 포트(Port)를 통해 광 파이버(Optical Fiber)로부터 패킷을 수집하는 광 모듈일 수 있다. 본 발명에 따라, 광 모듈(110)은 10G 광 파이버(Optical Fiber)(30)를 통해 입력되는 패킷을 4개의 3.125G 패킷으로 분할하고, 분할된 3.125G 패킷을 4개의 파이프 라인(Pipeline)들을 통해 FPGA(170)에 출력한다. 이를 통해, 10G 이상의 패킷들을 실시간으로 빠르게 처리해줄 수 있다는 이점이 있다.The optical module 110 collects packets transmitted through the network to be monitored. According to an embodiment of the present invention, it may be an optical module that collects packets from an optical fiber through two ports. According to the present invention, the optical module 110 divides a packet input through a 10G optical fiber 30 into four 3.125G packets, and divides the divided 3.125G packets into four pipelines And outputs it to the FPGA 170. This makes it possible to process 10G or more packets in real time.

입력 인터페이스부(120)는 광모듈(110)에서 분할된 패킷들을 순차로 저장되고, EMAC에 입력 가능한 형태로 변환하여 출력된다. 본 발명의 일 실시 예에 따라, 3.125G의 데이터를 64bit로 변환하여 출력해준다. The input interface unit 120 sequentially stores the packets divided by the optical module 110, converts the packet into a form that can be input to the EMAC, and outputs the packet. According to one embodiment of the present invention, data of 3.125 G is converted into 64 bits and output.

EMAC(130)은 하나의 완전한 온칩 서브시스템을 제공하여 코어 프로세서와 외부 이더넷 네트워크 사이의 인터페이스를 구현하는 것으로, 인터페이스부(120)와 패킷 분석부(140) 사이를 인터페이스한다. The EMAC 130 implements an interface between the core processor and the external Ethernet network by providing one complete on-chip subsystem and interfaces between the interface unit 120 and the packet analysis unit 140.

패킷 분석부(140)는 입력되는 패킷의 패턴 매칭을 수행하여 유해 여부를 1차적으로 판별하고, 패킷을 분석하여 플로우 종류별로 분리하여 출력한다. 이에 대해서는 하기의 도 3을 참조하여 상세히 설명하기로 한다. The packet analyzing unit 140 performs pattern matching of input packets to primarily discriminate whether or not a harmful item is present, analyzes the packet, and outputs the separated flow type information. This will be described in detail with reference to FIG.

다중 메모리(150)는 본 발명의 다중 플로우 처리를 위해 패킷 분석부(140)로부터 출력되는 패킷을 플로우 종류별로 저장하여, 하드웨어 기반 패킷 수집 장치(100)와 연동하여 소프트웨어 기반 패킷 수집 장치(200)에서 다중 쓰레드 프로세싱 처리를 하도록 하기 위한 것으로, 이에 대해서는 하기의 도 4를 참조하여 상세히 설명하기로 한다. 본 발명의 일 실시 예에 따라, DMA(Direct memory access) 메모리가 사용될 수 있는데, 이는 입출력 장치 제어기(IO device controller)가 CPU에 의한 프로그램의 실행없이 자료의 이동을 할 수 있도록 하는 것이다. 이로 인해, 입출력의 속도를 향상할 수 있으며, CPU와 주변 장치 간의 속도차를 줄일 수 있다. The multiple memory 150 stores the packets output from the packet analyzing unit 140 for each flow type for the multi-flow process of the present invention and transmits the packets to the software-based packet collecting apparatus 200 in cooperation with the hardware- Which will be described later in detail with reference to FIG. According to one embodiment of the present invention, a DMA (Direct Memory Access) memory can be used, which allows an IO device controller to move data without executing a program by the CPU. As a result, the speed of the input / output can be improved and the speed difference between the CPU and the peripheral device can be reduced.

접속 처리부(160)는 PCIe IP 코어로, PC와 서버 등 컴퓨터 주변기기에서 PCIe 호환성 장치나 주변기기를 개발할 때 필수적으로 사용되는 IP 핵심 기술이다. The connection processing unit 160 is a PCIe IP core and is an essential IP technology used when developing a PCIe compatible device or a peripheral device in a computer peripheral such as a PC and a server.

도 3은 본 발명의 일 실시 예에 따른 패킷 분석부의 구성도이다. 3 is a configuration diagram of a packet analyzing unit according to an embodiment of the present invention.

도 3을 참조하면, 패킷 분석부(140)는 상세하게는 네트워크 모듈(141), 패턴 매칭부(142), 해시키 생성부(143), 패킷 생성부(144) 및 제어 레지스터(145)를 포함한다. 3, the packet analyzing unit 140 includes a network module 141, a pattern matching unit 142, a hash key generating unit 143, a packet generating unit 144, and a control register 145 .

네트워크 모듈(141)은 EMAC(130)에서 전달된 64 bit의 패킷을 소정 프레임 링크 포맷(Frame Link Format)으로 변환하여 패턴 매칭부(142)로 전달한다. 일 예로, netcope platform에서 정해진 바에 따라 변환된 프레임 링크 포맷(FrameLink Format)은 하기의 <표 1>과 같다.The network module 141 converts the 64-bit packet transmitted from the EMAC 130 into a frame link format and transmits the packet to the pattern matching unit 142. For example, the frame link format (frame link format) converted according to the netcope platform is shown in Table 1 below.

FrameLink HeaderFrameLink Header FrameLink PayloadFrameLink Payload FieldField Dst MACDst MAC Src MACSrc MAC Type/
Length
Type /
Length
DataData FCSFCS
BytesBytes 1616 22 66 22 46-150046-1500 44

패턴 매칭부(142)는 프레임 링크 포맷(Frame Link Format)으로 변환된 패킷의 패턴 매칭 검사를 수행하는데, 본 발명의 실시 예에 따라 1차적으로 패킷 내의 임의의 위치에 존재하는 룰셋(Rule Set)을 검출해낸다. 이러한 패턴 매칭부(142)는 상세하게는 룰셋 저장부(142a) 및 룰셋 매칭부(142b)을 포함한다. The pattern matching unit 142 performs a pattern matching check on a packet converted into a frame link format. In accordance with an embodiment of the present invention, a pattern matching unit 142 performs a pattern matching check on a rule set existing in an arbitrary position in a packet. . The pattern matching unit 142 includes a rule set storage unit 142a and a rule set matching unit 142b in detail.

룰셋 저장부(142a)에는 유해 트래픽을 탐지하기 위한 수 개의 룰셋(Rule Set)이 저장되는데, 전술한 바와 같이 임의의 위치에 존재하는 룰셋이 저장되고, 이러한 룰셋은 소프트웨어로부터 다운로드될 수 있다. Several rule sets for detecting harmful traffic are stored in the rule set storage unit 142a. As described above, a ruleset existing at an arbitrary position is stored, and such rule sets can be downloaded from software.

룰셋 매칭부(142b)은 전달된 패킷과 룰셋 저장부(142a)에 저장된 룰셋 패턴을 매칭하여 일치 여부를 판단한다. 룰셋 매칭부(142b)은 하나의 룰셋 매칭을 담당해서 프레임(frame) 단위로, 룰셋 매칭 여부를 한 비트의 매칭 플래그로 출력해 준다. 즉, 입력되는 프레임 데이터를 한 바이트씩 쉬프트(shift)시키면서, 룰셋과 일치하는 부분이 있는지를 판단해준다. 본 발명의 일 실시 예에 따라, 룰셋의 길이는 1 바이트 내지 16 바이트일 수 있으며, 소프트웨어 기반 패킷 수집 장치(200)에 의해 미리 설정될 수 있다. 이를 위해 룰셋 매칭부(142b)은 1byte 내지 16byte 용 다중 레지스터들로 구성되어 구현될 수 있다. The rule set matching unit 142b matches the transmitted packet with the ruleset pattern stored in the ruleset storage unit 142a to determine whether they match or not. The rule set matching unit 142b takes charge of one rule set and outputs the ruleset matching flag as a one-bit matching flag on a frame basis. That is, the input frame data is shifted by one byte, and it is determined whether there is a portion coinciding with the rule set. In accordance with one embodiment of the present invention, the length of the ruleset may be 1 byte to 16 bytes and may be preset by the software-based packet capture device 200. To this end, the rule set matching unit 142b may be implemented with multiple registers for 1 byte to 16 bytes.

도 4는 본 발명의 일 실시 예에 따른 룰셋 매칭부에 구현된 다중 레지스터를 이용한 룰셋 매칭 동작을 설명하기 위한 도면이다. 4 is a diagram for explaining a ruleset matching operation using multiple registers implemented in a ruleset matching unit according to an embodiment of the present invention.

도 4를 참조하면, 각 룰셋 레지스터는 룰셋 저장 레지스터(410), 경우의 수 저장 레지스터(420) 및 임시 저장 레지스터(430)로 구성된다. 그리고, 여기서는 레지스터를 이용하여 입력된 페이로드 스트림 중 8byte 내에서 3byte의 룰셋을 매칭하는 경우를 예를 들어 설명하기로 한다. Referring to FIG. 4, each rule set register includes a ruleset storage register 410, a case number storage register 420, and a temporary storage register 430. Here, a case of matching a 3-byte rule set within 8 bytes of a payload stream input by using a register will be described as an example.

페이로드(Payload)는 연속해서 입력되어 스트림(stream)을 이루고, 룰셋 매칭부(142b)는 이중에 8byte을 임시 저장 레지스터(430)에 1 클럭(clock)에서 입력시킨다. 그리고, 다음 클럭(clock)에 임시 저장 레지스터(430)에 저장된 8byte의 데이터를 3byte씩 분리시켜 8개의 경우의 수 레지스터(420)에 저장시킨다. 그런 후, 8개의 경우의 수 레지스터들(420)에 저장된 값들과 3byte의 룰셋 레지스터(410) 내에 저장된 값을 비교하여 동일한 것이 하나라도 있으면, 매치 플래그(match flag)를 구동한다. The payload is inputted continuously to form a stream, and the rule set matching unit 142b inputs 8 bytes to the temporary storage register 430 in one clock. 8 bytes of data stored in the temporary storage register 430 are separated by 3 bytes in the next clock and stored in the number register 420 of eight cases. Then, the value stored in the 8-case number registers 420 is compared with the value stored in the 3-byte rule set register 410, and if there is at least one identical value, a match flag is driven.

해시키 생성부(143)는 패턴 매칭에 의해 매치 플래그가 구동된 패킷을 분석하여 플로우를 구별하고, 그 구별에 상응하는 해시키(Hash key)를 생성한다. The hash key generation unit 143 analyzes the packet in which the match flag is driven by pattern matching, distinguishes the flow, and generates a hash key corresponding to the distinction.

여기서, 플로우라는 용어는 특정 통신 어플리케이션의 사용에 따라 발생되는 TCP 또는 UDP 패킷 플로우를 의미한다. 각각의 패킷 플로우는 L3(IP Packet)의 Source IP, Destination IP, Protocol 및 L4(TCP Packet)의 Source Port, Destination Port를 포함하는 5 투플(tuple)로 구별이 가능하다. 그러나, 이는 일 실시 예일 뿐, 플로우 구별 방법은 이에 한정되지 않는다. Here, the term flow refers to a TCP or UDP packet flow that is generated according to the use of a specific communication application. Each packet flow can be distinguished by a 5-tuple including Source IP, Destination IP, Protocol of L3 (IP Packet), and Source Port and Destination Port of L4 (TCP Packet). However, this is only an embodiment, and the flow distinguishing method is not limited thereto.

그런데, 패턴 매칭(Pattern matching)과 해시키(Hash key)를 패킷 헤더(Packet header)로 생성하여 전송하는 경우, 이들 헤더값이 커지면 오버헤드가 되므로 패킷 중 일부 손실이 발생할 수 있으므로 가능한 해시키(hash key)를 작게 하는 것이 바람직하다.However, when pattern matching and a hash key are generated as a packet header and transmitted, overhead is generated when the header value is increased, so that some loss of the packet may occur. Therefore, a hash key it is preferable to reduce the hash key.

패킷 생성부(144)는 패턴 매칭부(142) 및 해시키 생성부(143)에서 출력된 결과값으로 헤더(Header)로 생성하고, 이값을 페이로드(Payload)에 붙여서 다중 메모리(150)에 전송한다. 즉, 프레임 링크 포맷(Frame Link Format)으로 전달되는 데이터를 수신하여 source MAC, Destination MAC은 제거하고, 매치 플래그(Match flag)와 해시키(Hash Key)를 부가한다. The packet generating unit 144 generates a header as a result value output from the pattern matching unit 142 and the hash key generating unit 143 and attaches the resultant value to a payload to be transmitted to the multiple memory 150 send. That is, it receives the data transmitted in the frame link format, removes the source MAC and the destination MAC, and adds a match flag and a hash key.

패킷 생성부(144)에 의해 재생성된 패킷 포맷(Packet format)의 일 예는 하기의 <표 2>와 같다.An example of a packet format regenerated by the packet generator 144 is shown in Table 2 below.

FrameLink HeaderFrameLink Header FrameLink PayloadFrameLink Payload FieldField Type/
Length
Type /
Length
DataData FCSFCS MatchMatch
FlagFlag
HashHash
KeyKey
BytesBytes 1616 22 46-150046-1500 44 44 44

상기 <표 2>를 <표 1>에서의 프레임 링크 포맷과 비교하면, source MAC, Destination MAC는 제거되고, Match Flag와 Hash Key를 부가되었음을 알 수 있다.Comparing Table 2 with the frame link format in Table 1, it can be seen that the source MAC and the destination MAC are removed and a match flag and a hash key are added.

제어 레지스터(145)는 소프트웨어 기반 패킷 수집 장치(200)로부터 전달된 값을 룰셋 정보 및 룰셋 매칭을 위한 제어 정보, 해시키 생성 제어 정보 및 패킷 제어 정보를 저장하고, 이를 패턴 매칭부(142), 해시키 생성부(143) 및 패킷 생성부(144)에 입력한다.The control register 145 stores the value transmitted from the software-based packet collecting apparatus 200 as control information for rule set information and ruleset matching, hash key generation control information, and packet control information, and transmits the control information, hash key generation control information and packet control information to the pattern matching unit 142, Key generation unit 143 and the packet generation unit 144, as shown in FIG.

도 5는 본 발명의 일 실시 예에 따른 다중 메모리를 통해 다중 쓰레드 구현을 설명하기 위한 도면이다. 5 is a diagram illustrating a multi-thread implementation through multiple memories according to an embodiment of the present invention.

도 5를 참조하면, 다중 메모리는 하드웨어 처리된 패킷을 해시 키(Hash Key) 별로 분리하여 저장하고, 이를 다중 쓰레드 소프트웨어 처리되도록 출력시켜 준다. 본 발명의 일 실시 예에 따라, 다중 메모리는 8개의 채널로 구성될 수 있다. Referring to FIG. 5, the multiple memory stores hardware-processed packets separately for each hash key, and outputs the processed data to be processed by the multithreaded software. According to an embodiment of the present invention, the multiple memories can be composed of eight channels.

도 6은 본 발명의 일 실시 예에 따른 소프트웨어 기반 패킷 수집 장치의 구성도이다.6 is a configuration diagram of a software-based packet collecting apparatus according to an embodiment of the present invention.

도 6을 참조하면, 소프트웨어 기반 패킷 수집 장치(200)는 패킷 수집부(210), 비정상 트래픽 검출부(220), 네트워크 플로우 생성부(230), 시스템 관리 부(240), 환경 설정부(250) 및 플로우 출력부(260)를 포함한다. 6, the software-based packet collecting apparatus 200 includes a packet collecting unit 210, an abnormal traffic detecting unit 220, a network flow generating unit 230, a system managing unit 240, an environment setting unit 250, And a flow output unit 260.

패킷 수집부(210)는 다중 메모리(150)에 플로우별로 저장되어 있는 패킷을 다중 쓰레드 처리를 통해 수집한다. The packet collecting unit 210 collects packets stored in the multiple memory 150 for each flow through a multi-thread process.

비정상 트래픽 검출부(220)는 패킷 수집부(210)에 의해 수집된 패킷의 패턴 매칭을 수행하여 그 유해 여부를 판별한다. 이때, 환경 설정부(250)에 의해 설정된 룰 추가/삭제/변경 정보를 참조하여 패턴 매칭을 수행한다. 플로우별로 패킷의 특정 위치에 존재하는 룰셋 패턴의 매칭을 수행하므로, 속도가 향상될 수 있다. 이와 같이 비정상 트래픽 검출부(220)에 의해 패턴 매칭된 결과는 플로우별로 해시 테이블(미도시)에 저장된다. The abnormal traffic detection unit 220 performs pattern matching of the packets collected by the packet collection unit 210 to determine whether the packets are harmful or not. At this time, pattern matching is performed with reference to the rule addition / deletion / change information set by the environment setting unit 250. The matching of the ruleset pattern existing at a specific position of the packet is performed for each flow, so that the speed can be improved. The pattern-matched result by the abnormal traffic detector 220 is stored in a hash table (not shown) for each flow.

네트워크 플로우 생성부(230)는 플로우들을 네트워크 전송 가능한 네트워크 플로우(Netflow)로 변환한다. 이때, 환경 설정부(250)로부터 입력된 Netflow 템플릿을 참조하여 변환한다.The network flow generating unit 230 converts the flows into network flow capable (Netflow). At this time, the Netflow template input from the environment setting unit 250 is referenced and converted.

플로우 출력부(260)는 네트워크 플로우 생성부(230)에 의해 생성된 네트워크 플로우들을 여러개 묶어서 외부로 전송한다. The flow output unit 260 bundles network flows generated by the network flow generation unit 230 and transmits them to the outside.

시스템 관리부(240)는 시스템 관리 정보를 주기적으로 분석자에게 전달하고, 그에 상응하는 피드백 정보를 수신하여 전체 시스템을 관리하기 위한, 분석자 인터페이스를 수행한다. 여기서, 시스템 관리 정보는 CPU 사용량, 메모리 사용량, 디스크 사용량이나, 룰셋 정보, 하드웨어 기반 또는 소프트웨어 기반으로 처리할 룰셋 매칭 위치 정보 등을 포함하는 config 정보 또는 비정상 트래픽 검출에 따른 로그 정보 등이 포함될 수 있다. The system management unit 240 periodically transmits the system management information to the analyst, receives the feedback information corresponding thereto, and performs an analyzer interface for managing the entire system. Here, the system management information may include config information including CPU usage, memory usage, disk usage, rule set information, hardware based or rule set matching location information to be processed based on software, or log information according to abnormal traffic detection .

환경 설정부(250)는 시스템 관리부(240)에 의해 피드백된 정보에 따라, 패턴 매칭을 처리하는 비정상 트래픽 검출부로 룰셋의 추가/삭제/변경을 수행하고, 하드웨어 기반 패턴 매칭을 위해 룰셋 매칭에 관련된 정보를 다운로드해줄 수 있다. The environment setting unit 250 performs addition / deletion / modification of a rule set to an abnormal traffic detection unit that processes pattern matching according to the information fed back by the system management unit 240, You can download the information.

도 7은 본 발명의 일 실시 예에 따른 유해 트래픽 탐지 방법을 설명하기 위한 순서도이다.FIG. 7 is a flow chart for explaining a harmful traffic detection method according to an embodiment of the present invention.

도 7을 참조하면, 유해 트래픽 탐지 방법은 모니터링 대상 네트워크를 통해 추출된 10G 실시간 패킷 수집/분석 및 고속 트래픽 유해 탐지 처리를 위해, 하드웨어 기반 프로세스 및 소프트웨어 기반 프로세스를 연동하여 트래픽 유해 탐지가 이루어질 수 있다.Referring to FIG. 7, the harmful traffic detection method can perform a traffic harm detection by interlocking a hardware-based process and a software-based process for 10G real-time packet collection / analysis and high-speed traffic hazard detection process extracted through a monitoring target network .

하드웨어 기반 패킷 수집 장치(100)는 모니터링 대상 네트워크 망을 통해 전송되는 패킷을 캡쳐한다(S710). 본 발명의 일 실시 예에 따라, 두 개의 포트(Port)를 통해 광 파이버(Optical Fiber)로부터 패킷이 수집될 수 있다. 본 발명에 따라, 10G 광 파이버(Optical Fiber)(30)를 통해 입력되는 패킷을 4개의 3.125G 패킷으로 분할하고, 분할된 3.125G 패킷을 4개의 파이프 라인(Pipeline)들을 통해 출력될 수 있다. 이를 통해, 10G 이상의 패킷들을 실시간으로 빠르게 처리해줄 수 있다는 이점이 있다.The hardware-based packet capturing apparatus 100 captures packets transmitted through the network to be monitored (S710). According to one embodiment of the present invention, packets can be collected from an optical fiber through two ports. According to the present invention, a packet input through a 10G optical fiber 30 can be divided into four 3.125G packets, and a divided 3.125G packet can be output through four pipelines. This makes it possible to process 10G or more packets in real time.

하드웨어 기반 패킷 수집 장치(100)는 캡쳐된 패킷의 임의의 위치의 패턴 매칭을 수행한다(S720). 입력되는 프레임 데이터를 한 바이트씩 쉬프트(shift)시키면서, 룰셋과 일치하는 부분이 있는지를 판단하고, 하나라도 일치하는 부분이 있으면 매치 플래그를 구동시킨다. 본 발명의 일 실시 예에 따라, 룰셋의 길이는 1 바이트 내지 16 바이트일 수 있으며, 소프트웨어 기반 패킷 수집 장치(200)에 의해 미리 설정될 수 있다. 또한, 임의의 위치에서의 패턴 매칭을 위해 다중 레지스터가 이용될 수 있다. The hardware-based packet collecting apparatus 100 performs pattern matching of an arbitrary position of the captured packet (S720). The input frame data is shifted by one byte, and it is determined whether there is a portion coinciding with the rule set. If there is a matching portion, a match flag is driven. In accordance with one embodiment of the present invention, the length of the ruleset may be 1 byte to 16 bytes and may be preset by the software-based packet capture device 200. Further, multiple registers can be used for pattern matching at arbitrary positions.

하드웨어 기반 패킷 수집 장치(100)는 패턴 매칭에 의해 매치 플래그가 구동된 패킷을 분석하여 플로우를 구별하고, 그 구별에 상응하는 해시키(Hash key)를 생성한다(S730). The hardware-based packet collecting apparatus 100 analyzes the packet in which the match flag is driven by pattern matching, distinguishes the flow, and generates a hash key corresponding to the distinction (S730).

하드웨어 기반 패킷 수집 장치(100)는 매치 플래그 및 해시키가 부가된 패킷을 플로우별로 저장한다(S740). 이는, 다중 플로우 처리를 위해 패킷을 플로우 종류별로 저장하여, 하드웨어 기반 패킷 수집 장치(100)와 연동하여 소프트웨어 기반 패킷 수집 장치(200)에서 다중 쓰레드 프로세싱 처리를 하도록 하기 위함이다. The hardware-based packet collecting apparatus 100 stores the packet to which the match flag and the hash key are added for each flow (S740). This is for storing the packets for each flow type for the multi-flow processing and interworking with the hardware-based packet collecting apparatus 100 to allow the software-based packet collecting apparatus 200 to perform multi-thread processing.

소프트웨어 기반 패킷 수집 장치(200)는 플로우별로 저장되어 있는 패킷을 다중 쓰레드 처리를 통해 수집한다(S750). The software-based packet collecting apparatus 200 collects the packets stored for each flow through the multithread processing (S750).

소프트웨어 기반 패킷 수집 장치(200)는 수집된 패킷의 특정 위치의 패턴 매칭을 수행하여 그 유해 여부를 판별한다(S760). 즉, 플로우별로 패킷의 특정 위치에 존재하는 룰셋 패턴의 매칭을 수행하므로, 속도가 향상될 수 있다. 이와 같이 패턴 매칭된 결과는 플로우별로 해시 테이블(미도시)에 저장된다(S770). The software-based packet collecting apparatus 200 performs pattern matching of a specific position of the collected packet to determine whether the packet is harmful (S760). That is, the matching of the ruleset pattern existing at a specific position of the packet is performed for each flow, so that the speed can be improved. The pattern-matched result is stored in a hash table (not shown) for each flow (S770).

소프트웨어 기반 패킷 수집 장치(200)는 플로우들을 네트워크 전송 가능한 네트워크 플로우(Netflow)로 변환한다(S780). 이때, 입력된 Netflow 템플릿을 참조하여 변환한다. 소프트웨어 기반 패킷 수집 장치(200)는 네트워크 플로우들을 여러개 묶어서 외부로 전송한다(S790). The software-based packet collecting apparatus 200 converts the flows into a network transferable network flow (Netflow) (S780). At this time, the input Netflow template is referenced and converted. The software-based packet collecting apparatus 200 bundles network flows and transmits them to the outside (S790).

Claims (19)

모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하고, 상기 패킷의 임의의 위치의 패턴 매칭 검사를 수행한 후, 매칭된 패킷들만을 출력시키는 하드웨어 기반 패킷 수집 장치와,
상기 하드웨어 기반 패킷 수집 장치에 의해 출력되는 패킷 내의 특정 위치의 패턴 매칭 검사를 수행하여 네트워크 플로우(Netflow)로 출력시키는 소프트웨어 기반 패킷 수집 장치를 포함하되,
상기 하드웨어 기반 패킷 수집 장치는
패킷의 패턴 매칭을 수행하여 유해 여부를 1차적으로 판별하고, 유해 여부가 판별된 패킷을 분석하여 플로우 종류별로 분리하여 출력하는 패킷 분석부를 포함하고,
상기 패킷 분석부는
상기 패킷 내의 임의의 위치에 존재하는 룰셋(Rule Set)을 검출하는 패턴 매칭부와,
패턴 매칭에 의해 매치 플래그(Match Flag)가 구동된 패킷을 분석하여 플로우를 구별하고, 그 구별에 상응하는 해시키(Hash key)를 생성하는 해시키 생성부와,
상기 패턴 매칭부 및 해시키 생성부에서 출력된 결과값으로 헤더(Header)로 생성하고, 이값을 페이로드(Payload)에 부착하는 패킷 생성부를 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
A hardware-based packet collecting device for capturing a packet transmitted through a monitoring target network, performing a pattern matching check on an arbitrary position of the packet, and outputting only matched packets;
Based packet collecting device for performing a pattern matching check of a specific location in a packet output by the hardware-based packet collecting device and outputting it to a network flow (Netflow)
The hardware-based packet collecting device
And a packet analyzer for analyzing the packet to determine whether the packet is malicious or not, and analyzing the packet to determine whether the packet is harmful,
The packet analyzer
A pattern matching unit for detecting a rule set existing at an arbitrary position in the packet,
A hash key generation unit for analyzing a packet in which a match flag is driven by pattern matching to discriminate a flow and generating a hash key corresponding to the distinction;
And a packet generating unit for generating a header as a result value output from the pattern matching unit and the hash key generating unit, and attaching the resultant value to a payload.
제 1항에 있어서, 상기 하드웨어 기반 패킷 수집 장치는
컴퓨터 카드 형태로 제작되어, 소프트웨어 기반 패킷 수집 장치에 플러그 인 형태로 결합됨을 특징으로 하는 유해 트래픽 탐지 시스템.
The apparatus of claim 1, wherein the hardware-based packet collection device
Wherein the computer-readable medium is fabricated in the form of a computer card and is plugged into a software-based packet collection device in a plug-in form.
제 1항에 있어서, 상기 하드웨어 기반 패킷 수집 장치는
모니터링 대상 네트워크 망을 통해 전송되는 패킷을 캡쳐하는 광모듈을 포함하되,
상기 패킷 분석부로부터 출력되는 패킷을 플로우 종류별로 저장하여, 하드웨어 기반 패킷 수집 장치와 연동하여 소프트웨어 기반 패킷 수집 장치에서 다중 쓰레드 프로세싱 처리를 위한 다중 메모리를 더 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
The apparatus of claim 1, wherein the hardware-based packet collection device
And an optical module for capturing a packet transmitted through a monitoring target network,
Further comprising a plurality of memories for storing a plurality of packets output from the packet analyzing unit for each flow type and for interworking with a hardware-based packet collecting apparatus and for performing a multithread processing in a software-based packet collecting apparatus.
제 3항에 있어서, 상기 패킷 분석부 및 다중 메모리는
FPGA로 구현됨을 특징으로 하는 유해 트래픽 탐지 시스템.
4. The apparatus of claim 3, wherein the packet analyzer and the multiple memory
And the FPGA is implemented as a harmful traffic detection system.
제 3항에 있어서, 상기 광모듈은
10G 광 파이버를 통해 입력되는 패킷을 4개의 3.125G 패킷으로 분할하고, 분할된 3.125G 패킷을 4개의 파이프 라인(Pipeline)들을 통해 출력함을 특징으로 하는 유해 트래픽 탐지 시스템.
The optical module according to claim 3,
Wherein the packet input through the 10G optical fiber is divided into four 3.125G packets and the divided 3.125G packets are output through four pipelines.
삭제delete 제 3항에 있어서, 상기 패킷 분석부는
상기 광모듈에 의해 캡쳐된 패킷을 소정 프레임 링크 포맷(Frame Link Format)으로 변환하여 상기 패턴 매칭부에 출력하는 네트워크 모듈을 더 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
4. The apparatus of claim 3, wherein the packet analyzer
Further comprising a network module for converting a packet captured by the optical module into a frame link format and outputting the packet to the pattern matching unit.
제 3항에 있어서, 상기 패턴 매칭부는
유해 트래픽을 탐지하기 위한 수 개의 룰셋(Rule Set)을 저장하는 룰셋 저장부와,
전달된 패킷의 입력되는 프레임 데이터를 한 바이트씩 쉬프트(shift)시키면서, 상기 룰셋 저장부에 저장된 룰셋과 일치하는 부분이 있는지를 검사하고, 그 검사 결과를 매치 플래그로 출력하는 룰셋 매칭부을 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
The apparatus of claim 3, wherein the pattern matching unit
A rule set storage unit for storing a number of rule sets for detecting harmful traffic,
And a rule set matching unit for shifting input frame data of the transmitted packet by one byte to check whether there is a portion coinciding with the rule set stored in the rule set storage unit and outputting the check result as a match flag Features harmful traffic detection system.
제 8항에 있어서, 상기 룰셋의 길이는
1 바이트 내지 16 바이트일 수 있음을 특징으로 하는 유해 트래픽 탐지 시스템.
The method of claim 8, wherein the length of the ruleset is
1 byte to 16 bytes.
제 8항에 있어서, 상기 룰셋 매칭부는
상기 룰셋을 저장하는 룰셋 레지스터와,
입력되는 패킷 중 검사 대상이 되는 소정 길이의 데이터를 저장하는 임시 저장 레지스터와,
상기 임시 저장 레지스터에 저장된 소정 길이의 데이터를 룰셋 길이로 분리시켜 저장하는 경우의 수 레지스터들을 포함하되,
상기 경우의 수 레지스터들에 저장된 값들과 룰셋 레지스터 내에 저장된 값을 비교하여 동일한 것이 하나라도 있으면 매치 플래그(match flag)를 구동함을 특징으로 하는 유해 트래픽 탐지 시스템.
9. The apparatus of claim 8, wherein the ruleset matching unit
A rule set register for storing the ruleset,
A temporary storage register for storing data of a predetermined length to be inspected among packets to be inputted;
And a number register for storing data of a predetermined length stored in the temporary storage register into a rule set length,
And compares the values stored in the number registers in the case with the values stored in the rule set register to drive a match flag if there is at least one of the same values.
제 10항에 있어서, 상기 경우의 수 레지스터의 개수는
상기 임시 저장 레지스터에 저장된 데이터의 바이트 수임을 특징으로 하는 유해 트래픽 탐지 시스템.
11. The method of claim 10, wherein the number of the number registers in the case is
And the number of bytes of data stored in the temporary storage register.
제 3항에 있어서, 상기 해시키 생성부는
각각의 패킷 플로우는 L3(IP Packet)의 Source IP, Destination IP, Protocol 및 L4(TCP Packet)의 Source Port, Destination Port를 포함하는 5 투플(tuple)에 따라 해시키를 생성함을 특징으로 하는 유해 트래픽 탐지 시스템.
The method of claim 3, wherein the hash key generation unit
Each packet flow generates a hash key according to 5 tuple including Source IP of the L3 (IP Packet), Destination IP, Protocol, and Source Port and Destination Port of L4 (TCP Packet) Traffic detection system.
제 1항에 있어서, 상기 소프트웨어 기반 패킷 수집 장치는
상기 하드웨어 기반 패킷 수집 장치에 플로우별로 저장되어 있는 패킷을 다중 쓰레드 처리를 통해 수집하는 패킷 수집부와,
상기 패킷 수집부에 의해 수집된 패킷의 특정 위치에 존재하는 룰셋 매칭을 수행하여 그 유해 여부를 판별하는 비정상 트래픽 검출부를 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
2. The apparatus of claim 1, wherein the software-based packet collection device
A packet collecting unit for collecting packets stored in the hardware-based packet collecting apparatus on a flow-by-multithread basis;
And an unauthorized traffic detection unit for performing ruleset matching at a specific location of the packet collected by the packet collection unit to determine whether the packet is harmful.
제 13항에 있어서, 상기 소프트웨어 기반 패킷 수집 장치는
상기 비정상 트래픽 검출부로 룰셋의 추가/삭제/변경을 수행하고, 하드웨어 기반 패턴 매칭을 위해 룰셋 매칭에 관련된 정보를 상기 하드웨어 기반 패킷 수집 장치에 다운로드하는 환경 설정부를 더 포함함을 특징으로 하는 유해 트래픽 탐지 시스템.
14. The apparatus of claim 13, wherein the software-based packet collection device
Further comprising a configuration unit for performing addition / deletion / modification of a rule set to the abnormal traffic detection unit and for downloading information related to ruleset matching to the hardware-based packet collection apparatus for hardware-based pattern matching, system.
모니터링 대상 네트워크를 통해 전송되는 패킷을 캡쳐하는 단계와,
하드웨어 기반으로 상기 패킷의 임의의 위치의 패턴 매칭 검사를 수행하는 단계와,
상기 하드웨어 기반으로 패턴 매칭된 패킷만을 소프트웨어 기반으로 패킷 내의 특정 위치의 패턴 매칭 검사를 수행하는 단계를 포함하되,
상기 임의의 위치의 패턴 매칭 검사를 수행하는 단계는
소정 프레임 링크 포맷(Frame Link Format)으로 변환된 패킷 내의 임의의 위치에서 룰셋(Rule Set) 매칭을 수행하는 단계와,
상기 룰셋 매칭에 의해 매치 플래그(Match Flag)가 구동된 패킷을 분석하여 플로우를 구별하고, 그 구별에 상응하는 해시키(Hash key)를 생성하는 해시키를 생성하는 단계를 포함함을 특징으로 하는 유해 트래픽 탐지 방법.
Capturing a packet transmitted through a monitoring target network;
Performing a pattern matching check on an arbitrary location of the packet based on hardware;
Performing a pattern matching check of a specific location in a packet based only on the hardware-based pattern-matched packet,
The step of performing the pattern matching check of the arbitrary position
Performing Rule Set matching at an arbitrary position in a packet converted into a frame link format;
Generating a hash key for generating a hash key corresponding to the distinction by analyzing a packet in which the match flag is driven by the ruleset matching to distinguish the flow; Harmful traffic detection method.
삭제delete 제 15항에 잇어서, 상기 패턴 매칭 검사를 수행하는 단계는
룰셋 매칭 이전에 패킷을 소정 프레임 링크 포맷(Frame Link Format)으로 변환하는 단계를 더 포함함을 특징으로 하는 유해 트래픽 탐지 방법.
17. The method of claim 15, wherein performing the pattern matching check comprises:
Further comprising the step of converting the packet into a frame link format before rule set matching.
제 15항에 있어서, 상기 룰셋 매칭을 수행하는 단계는
상기 변환된 패킷의 프레임 데이터를 한 바이트씩 쉬프트(shift)시키면서, 미리 저장된 룰셋과 일치하는 부분이 있는지를 검사하고, 그 검사 결과를 매치 플래그를 구동시킴을 특징으로 하는 유해 트래픽 탐지 방법.
16. The method of claim 15, wherein performing ruleset matching comprises:
The method comprising: shifting frame data of the converted packet one byte at a time, checking whether there is a portion coinciding with a rule set stored in advance, and driving a match flag of the check result.
제 15항에 있어서, 상기 특정 위치의 패턴 매칭을 수행하는 단계는
상기 하드웨어 기반으로 플로우별로 저장되어 있는 패킷을 다중 쓰레드 처리를 통해 수집하는 단계와,
상기 수집된 패킷의 특정 위치에 존재하는 룰셋 매칭을 수행하여 그 유해 여부를 판별하는 단계를 포함함을 특징으로 하는 유해 트래픽 탐지 방법.
16. The method of claim 15, wherein performing pattern matching of the specific location comprises:
Collecting packets stored on a hardware-by-flow basis through multithread processing;
And performing ruleset matching at a specific location of the collected packet to determine whether the packet is harmful.
KR1020130046975A 2013-04-26 2013-04-26 System and method for detecting harmful traffic KR101498696B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130046975A KR101498696B1 (en) 2013-04-26 2013-04-26 System and method for detecting harmful traffic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130046975A KR101498696B1 (en) 2013-04-26 2013-04-26 System and method for detecting harmful traffic

Publications (2)

Publication Number Publication Date
KR20140128554A KR20140128554A (en) 2014-11-06
KR101498696B1 true KR101498696B1 (en) 2015-03-12

Family

ID=52454402

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130046975A KR101498696B1 (en) 2013-04-26 2013-04-26 System and method for detecting harmful traffic

Country Status (1)

Country Link
KR (1) KR101498696B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220167034A (en) * 2021-06-11 2022-12-20 주식회사 시큐다임 Server and method for monitoring loss of data

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101671268B1 (en) * 2015-01-08 2016-11-01 주식회사 윈스 Method and apparatus for profiling service of network security element based signature
KR102059688B1 (en) * 2015-01-13 2019-12-27 한국전자통신연구원 Cyber blackbox system and method thereof
KR101656621B1 (en) * 2015-07-15 2016-09-12 마이크로큐닉스 주식회사 Apparatus and method for monitoring network packet
KR102126185B1 (en) * 2020-03-30 2020-06-24 주식회사 코닉글로리 Detection policy extraction system and method for reducing detection performance when leaking traffic
KR102352187B1 (en) * 2020-09-09 2022-01-19 이경문 Passive fingerprinting method and device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100013815A (en) * 2008-08-01 2010-02-10 주식회사 정보보호기술 The method and system using pattern matching unit for detecting malicious traffic

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100013815A (en) * 2008-08-01 2010-02-10 주식회사 정보보호기술 The method and system using pattern matching unit for detecting malicious traffic

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220167034A (en) * 2021-06-11 2022-12-20 주식회사 시큐다임 Server and method for monitoring loss of data
KR102484886B1 (en) 2021-06-11 2023-01-06 주식회사 시큐다임 Server and method for monitoring loss of data

Also Published As

Publication number Publication date
KR20140128554A (en) 2014-11-06

Similar Documents

Publication Publication Date Title
KR101498696B1 (en) System and method for detecting harmful traffic
US10397260B2 (en) Network system
KR100922579B1 (en) Apparatus and method for detecting network attack
Wang et al. Seeing through network-protocol obfuscation
US9762544B2 (en) Reverse NFA generation and processing
US9191399B2 (en) Detection of infected network devices via analysis of responseless outgoing network traffic
US9860278B2 (en) Log analyzing device, information processing method, and program
KR101295708B1 (en) Apparatus for capturing traffic and apparatus, system and method for analyzing traffic
JP2006211609A (en) Communication state transition monitoring method and communication state transition monitoring apparatus utilizing the same
KR20140106547A (en) A streaming method and system for processing network metadata
JP2016513944A (en) System and method for extracting and maintaining metadata for network communication analysis
KR20140088340A (en) APPARATUS AND METHOD FOR PROCESSING DDoS IN A OPENFLOW SWITCH
US20160006764A1 (en) Distributed network instrumentation system
CN103618720A (en) Method and system for Trojan network communication detecting and evidence obtaining
Hurley et al. ITACA: Flexible, scalable network analysis
CN113347184A (en) Method, device, equipment and medium for testing network flow security detection engine
CN111131180B (en) Distributed deployed HTTP POST (hyper text transport protocol) interception method in large-scale cloud environment
CN113377051B (en) Network safety protection equipment based on FPGA
KR101615587B1 (en) System for implementing Deep Packet Inspection Simulation for detecting and analyzing cyber attack in electronic warfare and Method thereof
CN114117429A (en) Network flow detection method and device
CN106657087B (en) Method for realizing industrial firewall dynamically tracked by Ethernet/Ip protocol
KR102544874B1 (en) Processing Method for security of segmented packet and supporting device using the same
US9742699B2 (en) Network apparatus and selective information monitoring method using the same
Sung et al. Scalable and Efficient Data Streaming Algorithms for Detecting Common Content in Internet Traffic
EP2400424B1 (en) Anti-malware system and operating method thereof

Legal Events

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

Payment date: 20191210

Year of fee payment: 6