KR100882809B1 - DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM - Google Patents

DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM Download PDF

Info

Publication number
KR100882809B1
KR100882809B1 KR1020070070788A KR20070070788A KR100882809B1 KR 100882809 B1 KR100882809 B1 KR 100882809B1 KR 1020070070788 A KR1020070070788 A KR 1020070070788A KR 20070070788 A KR20070070788 A KR 20070070788A KR 100882809 B1 KR100882809 B1 KR 100882809B1
Authority
KR
South Korea
Prior art keywords
flow
packets
packet
malicious
network
Prior art date
Application number
KR1020070070788A
Other languages
Korean (ko)
Other versions
KR20080021492A (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 영남대학교 산학협력단
Publication of KR20080021492A publication Critical patent/KR20080021492A/en
Application granted granted Critical
Publication of KR100882809B1 publication Critical patent/KR100882809B1/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/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • 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

Abstract

본 발명은 고속 트래픽(1Gbps)을 위한 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격(DDoS) 방어 시스템 및 방법을 개시한다.

본 발명의 시스템은, 노드장치를 지나는 패킷을 플로우별로 모니터링하여 악의적인 패킷을 검출하여 망으로 전파되는 것을 차단하기 위한 시스템에 있어서, 차단을 위한 악의적인 플로우의 정보를 유지하는 필터 룰 벡터 리스트; 플로우별로 정보를 저장하고 있는 플로우 정보 테이블; 상기 노드 장치들에 실장되어 상기 노드를 통과하는 패킷들을 추출하고, 상기 필터 룰 벡터 리스트에 설정된 룰에 따라 악의적인 패킷을 차단하는 네트워크 모니터링 카드; 상기 네트워크 모니터링 카드로부터 추출된 패킷을 분석하여 플로우별로 정보를 추출하여 상기 플로우 정보 테이블을 갱신하는 트래픽 모니터링 컴포넌트부; 및 상기 플로우 정보 테이블을 분석하여 해당 플로우가 악의적인 플로우인지를 판단하고, 악의적인 플로우가 검출되면 상기 필터 룰 벡터 리스트에 등록하여 포워딩 정책을 정의하는 디디오에스(DDoS) 방어 컴포넌트부로 구성된다. 본 발명은 DAG 4.3 GE 카드를 이용하여 1Gbps 급의 초고속 네트워크에서도 효율적으로 DDoS 공격을 차단할 수 있다.

Figure R1020070070788

DDoS, 패킷, 플로우, 플로우 정보 테이블, 공격, 방어, 네트워크 모니터링

The present invention discloses a distributed denial of service (DDoS) defense system and method for flow-based packet processing for high speed traffic (1 Gbps).

A system for monitoring a packet passing through a node device on a flow-by-flow basis to detect malicious packets and block them from propagating to a network, the system comprising: a filter rule vector list for maintaining information of malicious flows for blocking; A flow information table storing information for each flow; A network monitoring card mounted on the node devices to extract packets passing through the node and block malicious packets according to a rule set in the filter rule vector list; A traffic monitoring component unit for analyzing the packets extracted from the network monitoring card and extracting information for each flow to update the flow information table; And analyzing the flow information table to determine whether the flow is a malicious flow, and if a malicious flow is detected, registers in the filter rule vector list to define a forwarding policy. The present invention can effectively block DDoS attacks even in a 1Gbps high-speed network using the DAG 4.3 GE card.

Figure R1020070070788

DDoS, Packet, Flow, Flow Information Table, Attack, Defense, Network Monitoring

Description

플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어 시스템 및 방법{ DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM }DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM}

도 1은 분산 서비스 거부 공격(DDoS) 공격의 일반적인 구조를 도시한 개략도,1 is a schematic diagram illustrating a general structure of a distributed denial of service attack (DDoS) attack;

도 2는 일반적인 D-WARD의 구조를 도시한 개략도,2 is a schematic diagram showing the structure of a typical D-WARD;

도 3은 본 발명에 따라 분산 서비스 거부 공격을 방어하기 위한 전체 구조를 도시한 도면,3 is a diagram showing the overall structure for defending a distributed denial of service attack according to the present invention;

도 4는 본 발명에 사용되는 네트워크 모니터링 카드의 구성 블럭도.4 is a block diagram of a network monitoring card used in the present invention.

도 5는 도 4에 도시된 네트워크 모니터링 카드의 외형도,5 is an external view of the network monitoring card shown in FIG. 4;

도 6은 본 발명에 따른 네트워크 모니터링 카드의 프로그램 구조도.6 is a program structure diagram of a network monitoring card according to the present invention.

도 7은 본 발명에 따라 분산 서비스 거부 공격을 방어하기 위한 절차를 도시한 순서도.7 is a flow chart illustrating a procedure for defending a distributed denial of service attack in accordance with the present invention.

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

301: 네트워크 모니터링 카드 302,303: 포트301: network monitoring card 302,303: port

304: DAG 스니퍼 305: 드롭퍼304: DAG Sniffer 305: Dropper

306: 트래픽 모니터링 컴포넌트 307: DDoS 방어 컴포넌트306: Traffic monitoring component 307: DDoS defense component

308: 필터 룰 벡터 309: 플로우 정보 테이블308: filter rule vector 309: flow information table

310: 악의적인 패킷 마킹부 310: malicious packet marking unit

본 발명은 네트워크 자원을 보호하기 위한 보안기술에 관한 것으로, 더욱 상세하게는 고속 트래픽(1Gbps)을 위한 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격(DDoS) 방어 시스템 및 방법에 관한 것이다.The present invention relates to a security technique for protecting network resources, and more particularly, to a distributed denial of service (DDoS) defense system and method for flow-based packet processing for high-speed traffic (1Gbps).

일반적으로, 분산 서비스 거부 공격(DDoS: Distributed Denial-of_service)이란 인터넷 상의 특정 웹 서버와 같은 목표 시스템 및 네트워크로 순간적으로 다량의 데이터를 보냄으로써 해당 시스템 및 네트워크가 정상적으로 동작하지 못하게 방해하는 것을 말한다.In general, a distributed denial-of-service attack (DDoS) refers to interrupting a system and a network from operating normally by instantaneously sending a large amount of data to a target system and a network such as a specific web server on the Internet.

도 1은 DDoS 공격의 일반적인 구조를 보여준다. 공격자(101)는 네트워크상의 보안이 허술한 시스템들(102, 103)을 이용하여 동시에 여러 곳에서 많은 양의 공격 트래픽(104)을 발생시켜 목표 희생자(105)에게 보낸다. 공격 트래픽(104)의 종류로는 TCP SYN 플로딩(flooding), ICMP 플로딩(flooding), UDP 플로딩(flooding)이 있다. 특히, TCP SYN 플로딩(flooding) 같은 경우 서버에게 지속적으로 SYN 패킷만을 보냄으로서, 많은 TCP 연결로 인해 서버의 자원을 고갈시키게 된다. 분산 서비스 거부 공격(DDos)에 따른 피해로는 네트워크를 통한 서비스의 거부(Denial of Service)와 함께 네트워크에 큰 부하를 주게 된다. 이러한 공격 흐름은 겉으로는 정상적으로 보이기 때문에 이런 공격을 감지하는 기술이 핵심이다. 공격 트래픽의 흐름 중 공격을 감지하는 방법으로 공격자(source/attacker)측면에서 감지하는 방법, 목적지(destination/victim)측면에서 감지하는 방법, 및 코어 네트워크에서 감지하는 방법이 있다. 그리고 그 대표적인 기술로 푸시백(Pushback) 기법과 역추적(Traceback) 기법이 있다.1 shows the general structure of a DDoS attack. The attacker 101 generates large amounts of attack traffic 104 at various locations simultaneously and sends them to the target victim 105 by using the insecure systems 102 and 103 on the network. Types of attack traffic 104 include TCP SYN floating, ICMP floating, and UDP floating. In particular, in the case of TCP SYN floating, by sending only SYN packets continuously to the server, many TCP connections consume server resources. The damages caused by Distributed Denial of Service (DDos) attacks place a heavy load on the network along with Denial of Service over the network. This attack flow looks normal on the outside, so the technology to detect such attacks is key. As a method of detecting an attack in the flow of attack traffic, there is a method of detecting on the source / attacker side, a method of detecting on the destination / victim side, and a method of detecting on the core network. Representative technologies include pushback and traceback techniques.

푸시백(Pushback) 기법은 네트워크상의 개별 라우터의 패킷 차단(packet drop) 통계를 관찰하면서 이루어진다. 분산된 곳에서 발생된 DDoS 공격 패킷은 여러 경로를 통해 목적지로 도착하게 되고, 공격 패킷이 몰리게 된 목적지에 가까운 라우터에서는 처리할 수 있는 드롭테일(Droptail) 혹은 RED에 의해 많은 패킷을 차단하게 된다. 이렇게 순간적으로 패킷 차단이 증가한 경우 패킷을 보낸 경로로 푸시백(Pushback) 메시지를 전달하게 된다. 메시지를 전달받은 라우터는 해당 플로우에 대한 패킷의 전달을 차단하고, 계속해서 패킷이 온 경로를 향해 푸시백(Pushback) 메시지를 전달함으로써 전체적으로 공격 패킷의 전달을 막을 수 있게 된다.Pushback is accomplished by observing packet drop statistics for individual routers on the network. DDoS attack packets generated from distributed places arrive at the destination through various paths, and many packets are blocked by Droptail or RED that can be processed by the router close to the destination where the attack packet was collected. When packet blocking increases in this moment, a pushback message is transmitted to a path from which a packet is sent. The router receiving the message blocks the delivery of the packet to the flow and continues to deliver the attack packet by forwarding the pushback message toward the on-path of the packet.

IP 역추적(IP traceback) 기법은 공격 피해 시스템 관리자에게 DDoS 공격의 실제적인 공격 근원지 IP 주소를 알려주는 기능을 제공한다. IP 역추적 기법은 대응 방식에 따라 전향적 역추적 기술(proactive IP traceback)과 대응적 역추적 기 술(reactive IP traceback)로 나눌 수 있다. 첫번째, 전향적 역추적 기술은 네트워크상에 패킷이 전송되는 과정에서 사전에 역추적 경로 정보를 생성하여 패킷에 삽입하거나 목적지로 전달하여 주기적으로 관리하면서 만일 해킹 공격이 발생하면 이미 생성, 수집된 정보를 이용하여 해킹 공격 근원지를 판별하는 기법이다. 링크 검사법(link testing), 로깅 기법(logging) 등의 초기 대응 기법과 능동적인 IP 역추적 기법으로 패킷에 대한 확률적 마킹(probabilistic packet marking) 기법과 전통적인 ICMP 메시지를 변형한 iTrace(ICMP traceback) 기법 등이 있다. 두번째, 대응적 역추적 기술은 해킹 공격이 발생하였을 경우 피해 시스템에서 해킹 트래픽 연결에 대한 경로를 홉 단계로 추적해 가는 방식이다. 구체적인 기법은 오버레이(overlay) 네트워크 방식, 해쉬 기반 역추적 기술, 및 IPSec 기반의 역추적 기법 등으로 나눌 수 있다. The IP traceback technique provides the attack victim system administrator with the IP address of the actual attack source of the DDoS attack. IP traceback techniques can be divided into proactive IP traceback and reactive IP traceback, depending on the countermeasure. First, the proactive traceback technology generates the traceback path information in advance during packet transmission on the network and inserts it into the packet or forwards it to the destination to manage it periodically. If a hacking attack occurs, the information already generated and collected This is a technique to determine the origin of hacking attack using. Probabilistic packet marking and iTrace (ICMP traceback), a variation of traditional ICMP messages, with initial countermeasures such as link testing and logging, and active IP traceback. Etc. Second, in response to a hacking attack, the counter traceback technique tracks the path to the hacked traffic connection in a hop phase in the victim system. Specific techniques may be divided into an overlay network scheme, a hash-based traceback technique, and an IPSec-based traceback technique.

D-WARD (DDoS Attack Recognition and Defence)는 공격 송신단 라우터에서 이러한 기능을 수행할 수 있도록 하는 것으로서, 네트워크 혼잡을 최소화할 수 있다. 라우터의 이그레스(egress) 노드를 지나는 모든 플로우를 구분하여, 이 플로우에서 송신(send) 패킷과 수신(receive) 패킷의 수를 셈한다. 정상적인 플로우라면 송신(send) 패킷과 수신(receive) 패킷 사이에는 일정 수를 넘지 않는 비율이 존재하게 된다. 따라서 어떤 플로우가 이 일정비율을 초과하게 될 때 이상 플로우로 인식하고 차단을 시도하게 된다. 도 2는 D-WARD의 구조를 나타내고 있다.DoS Attack Recognition and Defense (D-WARD) enables the attack originating router to perform this function, thereby minimizing network congestion. All flows passing through the egress node of the router are distinguished and the number of send and receive packets is counted in this flow. In the normal flow, there is a ratio not exceeding a certain number between the send packet and the receive packet. Therefore, when a flow exceeds this certain ratio, it is recognized as an abnormal flow and tries to block. 2 shows the structure of the D-WARD.

한편, 현재 일반적으로 종단급에 제공되고 있는 네트워크 속도는 이제 100Mbps에서 1Gbps 급으로 빨라지고 있다. 네트워크 속도가 빨라지고 있는 만큼 DDoS 공격의 위력은 더욱 커지게 된다. 따라서 DDoS 공격을 감지하고 막아줄 수 있는 능력도 1Gbps급을 처리할 수 있어야 한다. On the other hand, the network speeds that are currently offered at the end-level are now increasing from 100 Mbps to 1 Gbps. As the network speeds up, the power of DDoS attacks increases. Therefore, the ability to detect and stop DDoS attacks should also be able to handle 1Gbps.

그런데 기존의 기술들은 이미 네트워크에 많은 부하가 걸리고 나서야 DDoS 공격을 감지하고 공격 근원지를 찾아 네트워크상의 장비들(라우터)로 하여금 패킷의 전송을 막게 한다. 하지만 Gbps급 이상의 초고속 네트워크 환경에서는 종래기술의 대처로는 이미 많은 피해를 입고 난 후가 된다. 따라서 보다 빠르게 DDoS 공격을 감지할 수 있도록 해야 한다.Existing technologies, however, have already put a lot of load on the network to detect DDoS attacks and find the source of the attack so that devices (routers) on the network can block the transmission of packets. However, in the high-speed network environment above the Gbps level, the prior art measures have already suffered a lot of damage. Therefore, the DDoS attack should be detected more quickly.

본 발명은 상기와 같은 필요성을 충족시키기 위하여 제안된 것으로, 본 발명의 목적은 인터넷의 악성 DDoS 공격(특히 SYN Flooding, ICMP Flooding) 패킷을 공격자(Source-End) 네트워크에서 감지하고 그 전달을 막음으로써 네트워크 및 서비스를 보호하기 위한 고속 트래픽을 위한 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어 시스템 및 방법을 제공하는 것이다.The present invention has been proposed to meet the above necessity, and an object of the present invention is to detect malicious DDoS attacks (especially SYN Flooding, ICMP Flooding) packets in the source network and prevent their transmission. It is to provide a distributed denial of service attack defense system and method of flow-based packet processing for high-speed traffic to protect the network and services.

상기와 같은 목적을 달성하기 위하여 본 발명의 시스템은, 노드장치를 지나는 패킷을 플로우별로 모니터링하여 악의적인 패킷을 검출하여 망으로 전파되는 것을 차단하기 위한 시스템에 있어서, 차단을 위한 악의적인 플로우의 정보를 유지하는 필터 룰 벡터 리스트; 플로우별로 정보를 저장하고 있는 플로우 정보 테이 블; 상기 노드 장치들에 실장되어 상기 노드를 통과하는 패킷들을 추출하고, 상기 필터 룰 벡터 리스트에 설정된 룰에 따라 악의적인 패킷을 차단하는 네트워크 모니터링 카드; 상기 네트워크 모니터링 카드로부터 추출된 패킷을 분석하여 플로우별로 정보를 추출하여 상기 플로우 정보 테이블을 갱신하는 트래픽 모니터링 컴포넌트부; 및 상기 플로우 정보 테이블을 분석하여 해당 플로우가 악의적인 플로우인지를 판단하고, 악의적인 플로우가 검출되면 상기 필터 룰 벡터 리스트에 등록하여 포워딩 정책을 정의하는 디디오에스(DDoS) 방어 컴포넌트부를 구비한 것을 특징으로 한다.In order to achieve the above object, the system of the present invention is a system for monitoring a packet passing through a node device for each flow to block malicious packets from being transmitted to the network, and the information of malicious flow for blocking A filter rule vector list that maintains; A flow information table storing information for each flow; A network monitoring card mounted on the node devices to extract packets passing through the node and block malicious packets according to a rule set in the filter rule vector list; A traffic monitoring component unit for analyzing the packets extracted from the network monitoring card and extracting information for each flow to update the flow information table; And analyzing the flow information table to determine whether the corresponding flow is a malicious flow, and if a malicious flow is detected, registers in the filter rule vector list to define a forwarding policy. It is done.

상기 트래픽 모니터링 컴포넌트부는 추출된 패킷의 발신지 IP 주소, 목적지 IP 주소, 발신지 포트번호, 목적지 포트번호, 프로토콜 타입을 키 값으로 하여 해쉬함수를 통해 플로우를 구분하고, 상기 디디오에스(DDoS) 방어 컴포넌트부는 상기 플로우 정보 테이블을 관찰하면서 악의적인 플로우를 찾아내고, 소정의 타이머를 두어 일정 시간동안 악의적인 플로우의 공격이 지속되지 않으면 공격이 멈춘 것으로 판단하여 해당 플로우를 상기 필터 룰 벡터 리스트에서 제거한다.The traffic monitoring component unit classifies the flow through a hash function using the source IP address, the destination IP address, the source port number, the destination port number, and the protocol type of the extracted packet as key values, and the DDS defense component unit By observing the flow information table, the malicious flow is found, and a predetermined timer is set, and if the attack of the malicious flow does not continue for a predetermined time, the attack is stopped and the flow is removed from the filter rule vector list.

또한 상기와 같은 목적을 달성하기 위하여 본 발명의 방법은, 네트워크 모니터링 카드에서 패킷을 추출하는 단계; 상기 추출된 패킷을 발신지 IP 주소, 목적지 IP 주소, 발신지 포트번호, 목적지 포트번호, 프로토콜 타입 데이터를 키 값으로 하여 해쉬함수를 통해 플로우를 구분하고, 각 플로우별로 정보를 추출하여 플로우 정보 테이블을 갱신하는 단계; 상기 플로우 정보 테이블을 분석하여 악의적인 플로우를 검출하면 필터 룰 벡터 리스트에 악의적인 플로우를 등록하는 단계; 및 상기 필터 룰 벡터 리스트에 등록된 패킷을 차단하여 악의적인 플로우가 네트워크로 전파되는 것을 방지하는 단계를 구비한다. 상기 분산 서비스 거부 공격 방어 방법은 소정의 타이머를 이용하여 일정 시간동안 유해한 플로우의 공격이 지속되지 않으면 공격이 멈춘 것으로 판단하여 해당 플로우를 상기 필터 룰 벡터 리스트에서 제거하는 단계를 더 구비한다.In addition, to achieve the above object, the method of the present invention comprises the steps of: extracting a packet from the network monitoring card; Using the extracted packet as a source value, source IP address, destination IP address, source port number, destination port number, and protocol type data, the flow is classified through a hash function, and information is extracted for each flow to update the flow information table. Doing; Analyzing the flow information table to detect a malicious flow and registering the malicious flow in a filter rule vector list; And blocking the packet registered in the filter rule vector list to prevent malicious flow from propagating to the network. The distributed denial of service attack defense method further includes the step of removing the flow from the filter rule vector list by determining that the attack is stopped if the attack of the harmful flow does not continue for a predetermined time using a predetermined timer.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 실시예에서는 DAG 4.3GE 기가비트 네트워크 모니터링 카드의 최대 2.4Gbps 속도로 패킷을 캡처할 수 있는 능력을 사용하여 기본적인 패킷 전달 기능에 DDoS 공격 방어 기능을 추가한 것이다. 즉, 본 발명은 패킷을 캡쳐하고 포워딩(forwarding) 정책을 수행하는 트래픽 폴리싱 컴포넌트(Traffic-policing Component)와, 패킷의 플로우(flow)를 구분하는 트래픽 모니터링 컴포넌트(Traffic Monitoring Component)와, 악의적인 플로우(flow)인지를 판단하고 포워딩(forwarding) 정책을 정의하는 디디오에스 방어 컴포넌트(DDoS Protection Component)로 구성된다.In the embodiment of the present invention, the DDoS attack defense function is added to the basic packet forwarding function by using the ability of the DAG 4.3GE gigabit network monitoring card to capture packets at a maximum speed of 2.4 Gbps. In other words, the present invention is a traffic-policing component for capturing a packet and performing a forwarding policy, a traffic monitoring component for distinguishing a flow of a packet, and a malicious flow. It consists of a DDoS Protection Component that determines whether it is a flow and defines a forwarding policy.

첫번째, 트래픽 폴리싱 컴포넌트(Traffic-policing Component)는 DAG 카드에서 제공하는 라이브러리를 사용한다. DAG 카드는 두 개의 광 포트를 가지고 있으며 트래픽은 이 두 포트를 통해 지나가게 된다. 제공되는 유틸리티에는 DAG 카드에서 패킷을 캡쳐하고 필터링하는 API가 포함되어 있다.First, the traffic-policing component uses a library provided by the DAG card. The DAG card has two optical ports and traffic flows through these two ports. The provided utility includes an API to capture and filter packets on the DAG card.

두번째, 트래픽 모니터링 컴포넌트(Traffic Monitoring Component)는 DAG 카드에서 캡쳐된 패킷들을 구분하고, 이것을 플로우별로 구분하여 플로우 정보 테이블(FlowInfoTable)에 저장하게 된다. 기본적으로 5-tuples (source/destination IP, source/destination port numbers, type of protocol)과 함께 송신 패킷과 수신 패킷의 수를 저장한다. 여기서, 플로우의 구분은 위의 5-tuples을 통해 ELF 해쉬(hash) 함수를 통해 구분되며, 키 큐(KeyQueue)에 플로우 정보 테이블(FlowInfoTable)의 키(Key)값을 저장하게 된다.Second, the traffic monitoring component classifies the packets captured by the DAG card, and classifies the packets by flow and stores them in a flow information table. Basically, it stores the number of transmitted and received packets with 5-tuples (source / destination IP, source / destination port numbers, type of protocol). Here, the flow is classified through the ELF hash function through the above 5-tuples, and stores the key value of the flow information table (FlowInfoTable) in the key queue.

세번째, 디디오에스 방어 컴포넌트(DDoS Protection Component)에서는 플로우 정보 테이블(FlowInfoTable)에 저장된 정보들을 감시하며, 각 플로우의 유해성 여부를 판단한다. 플로우 정보 테이블(FlowInfoTable)에서 각 플로우의 송신 패킷과 수신 패킷의 비율을 계산하는 과정을 가진다. TCP 플로우의 경우 받은 패킷의 수(Prcv)에 대한 보낸 패킷의 수(Psent)가 TCPrto(set to 3)을 초과하거나 ICMP 플로우의 경우 ICMPrto(set to 1.1)을 넘게 되었을 때 유해한 플로우로 판단하고, DAG 카드의 필터 규칙(filter rule)에 해당 플로우를 가지는 패킷이 드롭(drop)될 수 있도록 적용시킨다. 이러한 규칙(rule)의 적용은 일정시간 (대략, 30초 ~ 1분) 정도만 유지하도록 한다. 일반적으로 DDoS 공격은 1분 이내에 폭발적으로 작용하기 때문이다. 따라서 빠른 플로우의 분류를 통한 DDoS 공격의 감지가 필요한 것이다. 또한 요즘은 주로 TCP 플로드(flood)를 통한 DDoS 공격이 많이 이루어진다. 따라서 이러한 패턴의 공격을 감지하기 위해 TCP 연결 수립과정의 SYN 패킷과 SYN+ACK 패킷의 비율을 비교하여 DDoS 공격을 감지하고 막을 수 있다. 또한 플로우 정보 테이 블(FlowInfoTable)은 65536개의 엔트리로 링크드 리스트(linked-list) 구조로 이루어져 있다.Third, the DOSS Protection Component monitors the information stored in the FlowInfoTable and determines whether each flow is harmful. A flow information table (FlowInfoTable) has a process of calculating the ratio of the transmission packet and the reception packet of each flow. In case of TCP flow, the number of sent packets (Psent) for received packets (Prcv) exceeds TCPrto (set to 3) or ICMPrto (set to 1.1) for ICMP flows. The filter rule of the DAG card is applied to allow the packet having the flow to be dropped. The application of these rules should only be maintained for a certain amount of time (approximately 30 seconds to 1 minute). This is because DDoS attacks typically explode within one minute. Therefore, it is necessary to detect DDoS attack through fast flow classification. Also these days, many DDoS attacks occur mainly through TCP flood. Therefore, in order to detect such a pattern attack, the DDoS attack can be detected and prevented by comparing the ratio of SYN packets and SYN + ACK packets in the TCP connection establishment process. In addition, the FlowInfoTable is composed of a linked-list structure with 65536 entries.

도 3은 본 발명에 따라 분산 서비스 거부 공격(DDoS)을 방어하기 위한 전체 구조를 도시한 도면이고, 도 4는 본 발명에 사용되는 네트워크 모니터링 카드의 구성 블럭도이며, 도 5는 도 4에 도시된 네트워크 모니터링 카드의 외형도이고, 도 6은 본 발명에 따른 네트워크 모니터링 카드의 프로그램 구조도이다.3 is a diagram showing the overall structure for defending a distributed denial of service attack (DDoS) according to the present invention, Figure 4 is a block diagram of a network monitoring card used in the present invention, Figure 5 is shown in Figure 4 6 is an external view of the network monitoring card, and FIG. 6 is a program structure diagram of the network monitoring card according to the present invention.

도 3을 참조하면, 본 발명은 라우터와 같은 노드 장치들에 실장되는 네트워크 모니터링 카드(301)와, 네트워크 모니터링 카드(301)를 동작시키기 위한 소프트웨어 모듈인 트래픽 모니터링 컴포넌트(306), 악의적인 플로우(flow)인지를 판단하고 포워딩(forwarding) 정책을 정의하는 DDoS 방어 컴포넌트(307)로 구성된다. Referring to FIG. 3, the present invention provides a network monitoring card 301 mounted on node devices such as a router, a traffic monitoring component 306 which is a software module for operating the network monitoring card 301, and a malicious flow ( flow, and a DDoS defense component 307 that defines a forwarding policy.

본 발명의 실시예에서 네트워크 모니터링 카드(301)는 도 4에 도시된 바와 같이 구성되는 DAG 4.3 GE 카드로서, 2개의 광 포트(302,303)와 DAG 스니퍼 (304)및 드롭퍼(305)를 포함하고, 두 노드 사이의 풀 듀플렉스(full-duplex) 링크 사이에 연결되어 데이터를 주고받는다. DAG 카드 내부에서 DAG 스니퍼(304)는 지나가는 패킷을 읽고 수정하는 역할을 하고, 드롭퍼(305)는 미리 정의된 정책에 의해서 패킷을 차단하는 역할을 한다. 본 발명은 이러한 네트워크 모니터링 카드(301)상에 트래픽 모니터링 컴포넌트(306)와 DDoS 방어 컴포넌트(307)를 추가하여 읽어 들인 패킷의 정보로 플로우 정보 테이블(FlowInfoTable: 309)로 만들고 유지하면서 DDoS 공격을 감지한다.In the embodiment of the present invention, the network monitoring card 301 is a DAG 4.3 GE card configured as shown in FIG. 4, and includes two optical ports 302 and 303, a DAG sniffer 304 and a dropper 305, It is connected between full-duplex links between two nodes to exchange data. Inside the DAG card, the DAG sniffer 304 reads and modifies the passing packets, and the dropper 305 blocks the packets by a predefined policy. The present invention adds a traffic monitoring component 306 and a DDoS defense component 307 on the network monitoring card 301 to detect a DDoS attack while creating and maintaining a flow information table (FlowInfoTable) 309 with information of packets read. do.

본 발명의 실싱에서 네트워크 모니터링 카드(301)로 사용되는 DAG 4.3 GE는 도 4에 도시된 바와 같이, 2개의 광학 모듈, 프레이머(Framer), DAG 4.3 FPGA, FIFO, 코프로세서 커넥터(Coprocessor connector), 플래시 메모리, CPLD, LED들, 동기입출력, 타이밍 스탬프 클럭으로 구성되어 10/100 및 기가비트 이더넷(Gigabit Ethernet Networks) 상의 응용(Application)에서 헤더 온리(Header only) 또는 가변길이(Variable Length)로 패킷을 캡춰(Packet Capture)할 수 있다. 2개의 포트는 독립적으로 2채널 상에서 동시에 풀 라인 속도(Full Line Rate)로 전송 및 수신이 가능하다. 또한 1개의 카드로 풀 듀플렉스 링크(Full Duplex Link) 상의 양방향 모니터링 및 전송이 가능하며, 인라인(Inline)으로 동작할 수 있다.DAG 4.3 GE used as a network monitoring card 301 in the sinking of the present invention, as shown in Figure 4, two optical modules, a framer (Framer), DAG 4.3 FPGA, FIFO, coprocessor connector (Coprocessor connector), It consists of flash memory, CPLD, LEDs, synchronous I / O, and timing stamp clocks, allowing packets to be header-only or variable-length in applications on 10/100 and Gigabit Ethernet Networks. You can capture it. The two ports can independently transmit and receive at full line rate on two channels simultaneously. One card also allows bidirectional monitoring and transmission over a full duplex link and can operate inline.

이러한 DAG 4.3 GE 카드는 도 5에 도시된 바와 같이, 1번 LED가 파란색으로 점등되면 FPGA 이미지가 DAG Card 칩셋에 성공적으로 구성(configuration)이 되었다는 것을 나타낸다. 3번과 5번 LED가 녹색으로 점등되면 Port A, B의 링크(Link)가 정상적으로 작동되고 있음을 의미하고, 4번과 6번 LED가 점등되면 Port A, B의 링크(Link)에 에러(error)가 발생했음을 의미한다. 2번 LED는 데이터 캡춰(Data capture)가 진행되고 있음을 나타낸다.This DAG 4.3 GE card, as shown in FIG. 5, indicates that the FPGA image has been successfully configured in the DAG Card chipset when LED 1 lights blue. If LEDs 3 and 5 light green, the link of Port A, B is working normally.If LEDs 4 and 6 light, the link A, B link error ( error) has occurred. LED 2 indicates that data capture is in progress.

이러한 DAG 4.3 GE 카드(301)가 정상적으로 설치되고 링크가 포트 A(302)와 포트 B(303)에 성공적으로 연결되면, 1 번 LED에 파란색이 나타나고 3번 5번 LED가 녹색을 나타내게 된다. If this DAG 4.3 GE card 301 is properly installed and the link is successfully connected to port A 302 and port B 303, LED 1 will appear blue and LED 3 will show green.

DAG 4.3 GE 카드(301)는 nic와 nonic 두 가지 모드를 선택하여 운영할 수 있다. 먼저, nic 모드는 DAG 카드(301)가 기가비트 이더넷 스위치(Gigabit Ethernet switch)나 카드(card)와 풀 듀플렉스 케이블(full-duplex cable)로 직접 연결되어 있다고 가정하고, 기가비트 이더넷 자동협상(Gigabit Ethernet auto-negotiation)을 수행한다. nonic 모드의 경우 광 화이버분리기(optical fibre splitters)와 사용할 경우에 설정 가능하다. 포트A,B의 수신 소켓(receive socket)은 두 디바이스간의 네트워크 링크 사이의 설치된 광 스프리터(optical splitter)의 출력과 연결되고, 송신 패킷은 차단(unconnected)된다. The DAG 4.3 GE card 301 can operate in two modes, nic and nonic. First, nic mode assumes that the DAG card 301 is directly connected to a Gigabit Ethernet switch or a card by using a full-duplex cable, and Gigabit Ethernet auto-negotiation. -negotiation). The nonic mode can be set when used with optical fiber splitters. Receive sockets of ports A and B are connected to the outputs of the installed optical splitters between the network links between the two devices, and the transmit packets are disconnected.

DAG 4.3 GE 카드(301)에는 싱글 메모리 버퍼(single memory buffer)를 사용하여 패킷을 수신받고 바로 송신시키는 기능이 포함되어 있다. "dagfwddemo" 라는 인라인 포워딩(inline forwarding) 기능을 테스트할 수 있는 샘플 프로그램이 제공되는데, "dagfwddemo" 프로그램의 구조는 도 6과 같다. 이러한 DAG 4.3 GE 카드(301)는 알려져 있으므로 더 이상의 설명은 생략하기로 한다.The DAG 4.3 GE card 301 includes a function of receiving and immediately sending a packet using a single memory buffer. A sample program for testing an inline forwarding function called "dagfwddemo" is provided. The structure of the "dagfwddemo" program is shown in FIG. Since the DAG 4.3 GE card 301 is known, further description thereof will be omitted.

다시 도 3을 참조하면, 본 발명에 따라 추가된 트래픽 모니터링 컴포넌트 (306)와 DDoS 방어 컴포넌트(307)는 각각 독립적인 스레드로 동작을 한다. 구체적으로 트래픽 모니터링 컴포넌트(306)의 스레드에서는 DAG 스니퍼(304)로부터 읽어 들인 패킷에 대한 분석을 한다. 트래픽 모니터링 컴포넌트(306) 스레드에서는 대부분의 처리시간을 악의적인 패킷들의 표시(310)를 처리하는데 소비한다. 악의적인 패킷들의 표시(310)에서는 패킷의 5-tuple를 키 값으로 하여 해쉬함수를 통해 플로우를 구분한다. 여기서, 해쉬함수는 32bit ELF 해쉬함수를 사용하는데, ELF 해쉬함수는 O(1)의 처리 능력을 가지고 있다. 플로우별로 구분된 패킷의 정보는 플로우 정보 테이블(309)에 기록된다. Referring again to FIG. 3, the traffic monitoring component 306 and the DDoS defense component 307 added in accordance with the present invention each operate as independent threads. Specifically, the thread of the traffic monitoring component 306 performs analysis on packets read from the DAG sniffer 304. The traffic monitoring component 306 thread spends most of its processing time processing the indication 310 of malicious packets. In the indication 310 of malicious packets, flow is distinguished through a hash function by using 5-tuple of the packet as a key value. Here, the hash function uses a 32-bit ELF hash function, which has a processing capability of O (1). The information of packets divided by flows is recorded in the flow information table 309.

플로우 정보 테이블(309)은 65536개의 엔트리가 링크드 리스트(Linked-List) 형태로 구성되어 플로우의 전송속도, SYN 패킷 수, SYN_ACK 패킷 수, 전체 전달 패킷 수 등이 기록된다.In the flow information table 309, 65536 entries are configured in the form of a linked list, and the flow rate of the flow, the number of SYN packets, the number of SYN_ACK packets, and the total number of forwarded packets are recorded.

그리고 만약 이미 해당 플로우가 유해한 것으로 판단되어 있을 경우 패킷에 차단을 위한 표시를 한다. 필터 룰 벡터(308)는 이렇게 차단을 위한 유해한 플로우의 정보를 유지한다. 필터 룰 벡터(308)와 플로우 정보 테이블(309)은 트래픽 모니터링 컴포넌트(306) 스레드와 DDoS 방어 컴포넌트(307) 스레드에 의해 그 정보가 공유된다. If the flow is already determined to be harmful, the packet is marked for blocking. The filter rule vector 308 thus maintains information of harmful flows for blocking. The filter rule vector 308 and the flow information table 309 are shared by the traffic monitoring component 306 thread and the DDoS defense component 307 thread.

DDoS 방어 컴포넌트(307) 스레드에서는 계속해서 플로우 정보 테이블(309)을 관찰하면서 유해한 플로우를 찾아낸다. 또한 유해한 플로우에 대한 차단 정보를 무한정 유지할 수 없기 때문에 소정 타이머를 두고 일정 시간동안 유해한 플로우의 공격이 지속되지 않으면 공격이 멈춘 것으로 판단하고 필터 룰 벡터(308)의 리스트에서 제거한다.The DDoS defense component 307 thread continues to observe the flow information table 309 to find harmful flows. In addition, since the blocking information on the harmful flow cannot be maintained indefinitely, if the attack of the harmful flow does not continue for a predetermined time with a predetermined timer, the attack is determined to be stopped and removed from the list of the filter rule vector 308.

도 7은 본 발명에 따라 분산 서비스 거부 공격을 방어하기 위한 절차를 도시한 순서도로서, 본 발명에서 가장 핵심이 되는 부분인 트래픽 모니터링 컴포넌트(306) 모듈에서 패킷처리에 대한 과정을 보여준다. 7 is a flow chart illustrating a procedure for defending a distributed denial of service attack in accordance with the present invention, showing the process for packet processing in the traffic monitoring component 306 module, which is the core of the present invention.

도 7을 참조하면, 단계 401에서 DAG 카드의 캡처기능 모듈(DAG 스니퍼)을 이용해 프레임을 받아온다. 본 발명의 실시예에서는 DDoS 공격 중 TCP SYN 플로딩(Flooding), ICMP SYN 플로딩(Flooding) 공격을 대비한 방어에 초점을 두었다. 따라서 단계 402에서는 받아온 프레임이 IP 패킷인지를 확인한다. 만약, 받아온 프레임이 IP 패킷이 아니면 아무런 처리 없이 프레임을 흘려보내게 된다. 단계 403에 서는 패킷이 TCP 패킷인지를 확인하고, TCP 패킷이 아니면 한 번 더 단계 410에서 ICMP 패킷인지를 확인한다. 받아온 프레임이 TCP 패킷이나 ICMP 패킷이 아니면 다른 처리 없이 통과시킨다.Referring to FIG. 7, in step 401, a frame is received using a capture function module (DAG sniffer) of a DAG card. The embodiment of the present invention focuses on defense against TCP SYN Floating and ICMP SYN Floating attacks during DDoS attacks. Therefore, in step 402, it is checked whether the received frame is an IP packet. If the received frame is not an IP packet, the frame is sent without any processing. In step 403, it is checked whether the packet is a TCP packet. If it is not a TCP packet, it is checked once again in step 410 whether it is an ICMP packet. If the received frame is not a TCP packet or an ICMP packet, it passes without any processing.

단계 403에서 TCP 패킷이라고 판단되면, 단계 404부터는 좀 더 구체적으로 TCP 헤더의 값을 살펴보게 된다. 단계 404에서 TCP_SYN 패킷인지를 확인하여 단계 405에서 ELF 해쉬함수를 통해 패킷의 플로우 ID 값을 찾아낸다. 단계 406에서 이미 찾아낸 플로우 ID가 존재하는지를 확인하고, 그렇지 않다면 새로운 플로우 정보 엔트리를 만들어 플로우 정보 테이블(309)에 등록한다. 플로우 ID가 이미 존재하는 경우라면, 플로우 정보 테이블(309)에서 플로우 정보를 갱신한다. 여기서는 SYN 패킷의 수를 증가시키는 것을 의미한다. 이후 패킷은 필터링과 전달과정(413)으로 보내진다.If it is determined in step 403 that the packet is a TCP packet, the value of the TCP header is examined in more detail from step 404. In step 404, it is checked whether the packet is a TCP_SYN packet, and in step 405, the flow ID value of the packet is found through the ELF hash function. In step 406, a check is made to see if there is a flow ID already found, otherwise a new flow information entry is created and registered in the flow information table 309. If the flow ID already exists, the flow information is updated in the flow information table 309. This means increasing the number of SYN packets. The packet is then sent to filtering and forwarding process 413.

단계 404에서 SYN 패킷이 아니라고 판단되면 한 번 더 SYN+ACK 패킷인지를 확인하게 된다. SYN+ACK 패킷으로 확인이 되면, SYN 패킷일 때와 마찬가지로 해쉬함수를 이용한 과정을 가지게 된다. 단 여기서 SYN+ACK에 대응하는 SYN 패킷의 플로우에 대한 정보가 없을 경우 무시한다. In step 404, if it is determined that the packet is not a SYN packet, it is checked once again whether it is a SYN + ACK packet. If it is confirmed as a SYN + ACK packet, it has a process using a hash function as in the case of a SYN packet. However, if there is no information on the flow of the SYN packet corresponding to the SYN + ACK is ignored.

그리고 단계 410에서 ICMP 패킷으로 확인이 되면, 그 패킷이 에코(Echo) 요청 패킷인지(411) 혹은 에코(Echo) 응답 패킷인지(412)를 확인한다. 이렇게 확인된 결과에 따라 마찬가지로 해쉬함수를 이용해 플로우 ID를 구별하고, 플로우 정보 테이블(309)의 정보를 갱신한다.If it is confirmed as an ICMP packet in step 410, it is checked whether the packet is an echo request packet (411) or an echo response packet (412). According to the result confirmed in this way, the flow ID is distinguished using a hash function, and the information of the flow information table 309 is updated.

이상에서 본 발명을 구체적인 실시예를 통하여 상세히 설명하였으나, 본 발 명은 상술한 실시예에 한정되지 않고 기술적 사상이 허용되는 범위 내에서 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의하여 다양하게 변경되어 실시될 수 있다.Although the present invention has been described in detail through specific embodiments, the present invention is not limited to the above-described embodiments, and various changes may be made by those skilled in the art to which the present invention pertains without departing from the scope of the technical idea. It may be changed and implemented.

이상에서 설명한 바와 같이, 본 발명에 따른 DDoS 방어 방법은 네트워크 모니터링 카드상에 패킷의 플로우(flow)를 구분하는 트래픽 모니터링 컴포넌트(Traffic Monitoring Component)와, 악의적인 플로우(flow)인지를 판단하고 포워딩(forwarding) 정책을 정의하는 디디오에스 방어 컴포넌트(DDoS Protection Component)를 부가하여 공격자 네트워크에서 악의적인 DDoS 공격을 탐지함으로써 악의적인 트래픽이 네트워크로 전달되는 것을 차단하여 네트워크를 조기에 보호할 수 있다. 특히, 본 발명은 DAG 4.3 GE 카드를 이용하여 1Gbps 급의 초고속 네트워크에서도 효율적으로 DDoS 공격을 차단할 수 있다.As described above, the DDoS defense method according to the present invention is a traffic monitoring component that distinguishes the flow of packets on the network monitoring card, and determines whether it is a malicious flow and forwarding ( By adding a DDoS Protection Component that defines a forwarding policy, it can detect malicious DDoS attacks in the attacker network to protect the network early by preventing malicious traffic from being delivered to the network. In particular, the present invention can effectively block DDoS attacks even in a high-speed network of 1Gbps using the DAG 4.3 GE card.

Claims (7)

노드장치를 지나는 패킷을 플로우별로 모니터링하여 악의적인 패킷을 검출하여 망으로 전파되는 것을 차단하기 위한 시스템에 있어서,In the system for monitoring the packets passing through the node device for each flow to detect malicious packets and to prevent them from propagating to the network, 차단을 위한 악의적인 플로우의 정보를 유지하는 필터 룰 벡터 리스트;A filter rule vector list that maintains information of malicious flow for blocking; 링크드 리스트(Linked-List) 형태로 구성되며, 플로우별로 플로우의 전송속도, 송신 패킷(SYN 패킷) 수, 수신 패킷(SYN_ACK 패킷) 수, 전체 전달 패킷 수를 포함하는 플로우 정보를 저장하고 있는 플로우 정보 테이블;Flow information, which is configured in the form of a linked list, stores flow information including the transmission speed of the flow, the number of transmission packets (SYN packets), the number of received packets (SYN_ACK packets), and the total number of forwarded packets for each flow. table; 상기 노드 장치들에 실장되어 상기 노드를 통과하는 패킷들을 추출하고, 상기 필터 룰 벡터 리스트에 설정된 룰에 따라 악의적인 패킷을 차단하는 네트워크 모니터링 카드;A network monitoring card mounted on the node devices to extract packets passing through the node and block malicious packets according to a rule set in the filter rule vector list; 상기 네트워크 모니터링 카드로부터 추출된 패킷의 5-tuples (source/destination IP, source/destination port numbers, type of protocol), 즉 발신지 IP 주소, 목적지 IP 주소, 발신지 포트번호, 목적지 포트번호, 프로토콜 타입을 키 값으로 하여 ELF 해쉬함수를 통해 플로우를 구분하고, 플로우별로 5-tuples과 함께 송신 패킷과 수신 패킷의 수를 포함하는 플로우 정보를 추출하여 상기 플로우 정보 테이블에 저장함으로써 상기 플로우 정보 테이블을 갱신하는 트래픽 모니터링 컴포넌트부; 및Key 5-tuples (source / destination IP, source / destination port numbers, type of protocol) of the packet extracted from the network monitoring card, that is, source IP address, destination IP address, source port number, destination port number, protocol type Traffic that updates the flow information table by classifying flows through the ELF hash function, extracting flow information including the number of transmission packets and received packets with 5-tuples for each flow, and storing the flow information in the flow information table. A monitoring component unit; And 상기 플로우 정보 테이블을 분석하여 각 플로우의 송신 패킷과 수신 패킷의 비율을 계산하여 TCP 플로우의 경우 받은 패킷의 수(Prcv)에 대한 보낸 패킷의 수(Psent)가 TCPrto(set to 3)을 초과하거나 ICMP 플로우의 경우 ICMPrto(set to 1.1)을 넘게 되었을 때 악의적인 플로우로 판단하고, 악의적인 플로우가 검출되면 상기 필터 룰 벡터 리스트에 등록하여 포워딩 정책을 정의하며, 소정의 타이머를 두어 일정 시간동안 악의적인 플로우의 공격이 지속되지 않으면 공격이 멈춘 것으로 판단하여 해당 플로우를 상기 필터 룰 벡터 리스트에서 제거하는 디디오에스(DDoS) 방어 컴포넌트부;The flow information table is analyzed to calculate the ratio of the transmission packet and the reception packet of each flow, and in the case of the TCP flow, the number of sent packets Psent to the number of received packets Prcv exceeds TCPrto (set to 3) or In case of ICMP flow, ICMPrto (set to 1.1) is determined as malicious flow.If malicious flow is detected, it is registered in the filter rule vector list to define a forwarding policy. A defense component unit (DDoS) for removing the flow from the filter rule vector list by determining that the attack is stopped if the attack of the in-flow does not continue; 를 구비한 것을 특징으로 하는 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어 시스템.Distributed denial of service attack defense system of a flow-based packet processing method comprising the. 삭제delete 삭제delete 삭제delete 네트워크 모니터링 카드에서 패킷을 추출하는 단계;Extracting a packet from the network monitoring card; 상기 추출된 패킷의 5-tuples (source/destination IP, source/destination port numbers, type of protocol), 즉 발신지 IP 주소, 목적지 IP 주소, 발신지 포트번호, 목적지 포트번호, 프로토콜 타입을 키 값으로 하여 ELF 해쉬함수를 통해 플로우를 구분하고, 플로우별로 5-tuples과 함께 송신 패킷과 수신 패킷의 수를 포함하는 플로우 정보를 추출하여 플로우 정보 테이블에 저장함으로써 상기 플로우 정보 테이블을 갱신하는 단계;5-tuples (source / destination IP, source / destination port numbers, type of protocol) of the extracted packet, that is, source IP address, destination IP address, source port number, destination port number, protocol type as ELF Classifying the flow through a hash function, updating the flow information table by extracting flow information including the number of transmission packets and received packets with 5-tuples for each flow and storing the flow information in a flow information table; 상기 플로우 정보 테이블을 분석하여 각 플로우의 송신 패킷과 수신 패킷의 비율을 계산하여 TCP 플로우의 경우 받은 패킷의 수(Prcv)에 대한 보낸 패킷의 수(Psent)가 TCPrto(set to 3)을 초과하거나 ICMP 플로우의 경우 ICMPrto(set to 1.1)을 넘게 되었을 때 악의적인 플로우로 판단하고, 악의적인 플로우가 검출되면 상기 필터 룰 벡터 리스트에 등록하여 포워딩 정책을 정의하는 단계;The flow information table is analyzed to calculate the ratio of the transmission packet and the reception packet of each flow, and in the case of the TCP flow, the number of sent packets Psent to the number of received packets Prcv exceeds TCPrto (set to 3) or In the case of an ICMP flow, determining a malicious flow when the ICMPrto (set to 1.1) is exceeded, and if a malicious flow is detected, registering a filter rule vector list to define a forwarding policy; 상기 필터 룰 벡터 리스트에 등록된 패킷을 차단하여 악의적인 플로우가 네트워크로 전파되는 것을 방지하는 단계; 및Blocking a packet registered in the filter rule vector list to prevent malicious flow from propagating to a network; And 소정의 타이머를 두어 일정 시간동안 악의적인 플로우의 공격이 지속되지 않으면 공격이 멈춘 것으로 판단하여 해당 플로우를 상기 필터 룰 벡터 리스트에서 제거하는 단계;Placing a predetermined timer and determining that the attack is stopped if the attack of the malicious flow does not continue for a predetermined time and removing the flow from the filter rule vector list; 를 구비한 것을 특징으로 하는 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어 방법.Distributed denial of service attack defense method of a flow-based packet processing method comprising the. 삭제delete 삭제delete
KR1020070070788A 2006-08-31 2007-07-13 DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM KR100882809B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060083484 2006-08-31
KR20060083484 2006-08-31

Publications (2)

Publication Number Publication Date
KR20080021492A KR20080021492A (en) 2008-03-07
KR100882809B1 true KR100882809B1 (en) 2009-02-10

Family

ID=39395973

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070070788A KR100882809B1 (en) 2006-08-31 2007-07-13 DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM

Country Status (1)

Country Link
KR (1) KR100882809B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101380292B1 (en) * 2011-04-08 2014-04-14 주식회사 케이티 Method and System for Utility Saving Time-Division DDoS Detection using Link Switch
KR102046612B1 (en) 2018-08-22 2019-11-19 숭실대학교산학협력단 The system for defending dns amplification attacks in software-defined networks and the method thereof
US10805319B2 (en) 2017-02-14 2020-10-13 Electronics And Telecommunications Research Institute Stepping-stone detection apparatus and method

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402538B2 (en) 2008-12-03 2013-03-19 Electronics And Telecommunications Research Institute Method and system for detecting and responding to harmful traffic
KR101525623B1 (en) * 2008-12-18 2015-06-03 삼성전자주식회사 Network traffic filtering method and apparatus
KR101028101B1 (en) * 2009-03-03 2011-04-08 시큐아이닷컴 주식회사 System and Method for Defending against Distributed Denial of Service Attack
US20110072515A1 (en) * 2009-09-22 2011-03-24 Electronics And Telecommunications Research Institute Method and apparatus for collaboratively protecting against distributed denial of service attack
KR20110116562A (en) 2010-04-19 2011-10-26 서울대학교산학협력단 Method and system for detecting bot scum in massive multiplayer online role playing game
KR101442020B1 (en) 2010-11-04 2014-09-24 한국전자통신연구원 Method and apparatus for preventing transmission control protocol flooding attacks
KR101295299B1 (en) * 2012-01-26 2013-08-08 주식회사 시큐아이 Method and Apparatus For Defending Against Denial Of Service Attack
KR102216976B1 (en) 2019-11-29 2021-02-18 주식회사 에프아이시스 low latency high-speed flow analysis and processing method
CN117278262B (en) * 2023-09-13 2024-03-22 武汉卓讯互动信息科技有限公司 DDOS safety defense system based on deep neural network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010079361A (en) * 2001-07-09 2001-08-22 김상욱 Apparatus for firewall of network status based Method thereof
KR20030059204A (en) * 2000-10-17 2003-07-07 왠월 인코포레이티드 Methods and apparatus for protecting against overload conditions on nodes of a distributed network
KR20040105355A (en) * 2003-06-07 2004-12-16 주식회사 디지털파루스 Network interface card with function for protecting denial of service attack and distributed denial of service attack and method for protecting denial of service attack and distributed denial of service attack using thereof
KR100468374B1 (en) 2004-07-06 2005-01-31 주식회사 잉카인터넷 Device and method for controlling network harmful traffic
KR20050066049A (en) * 2003-12-26 2005-06-30 한국전자통신연구원 Apparatus for protecting dos and method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030059204A (en) * 2000-10-17 2003-07-07 왠월 인코포레이티드 Methods and apparatus for protecting against overload conditions on nodes of a distributed network
KR20010079361A (en) * 2001-07-09 2001-08-22 김상욱 Apparatus for firewall of network status based Method thereof
KR20040105355A (en) * 2003-06-07 2004-12-16 주식회사 디지털파루스 Network interface card with function for protecting denial of service attack and distributed denial of service attack and method for protecting denial of service attack and distributed denial of service attack using thereof
KR20050066049A (en) * 2003-12-26 2005-06-30 한국전자통신연구원 Apparatus for protecting dos and method thereof
KR100468374B1 (en) 2004-07-06 2005-01-31 주식회사 잉카인터넷 Device and method for controlling network harmful traffic

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101380292B1 (en) * 2011-04-08 2014-04-14 주식회사 케이티 Method and System for Utility Saving Time-Division DDoS Detection using Link Switch
US10805319B2 (en) 2017-02-14 2020-10-13 Electronics And Telecommunications Research Institute Stepping-stone detection apparatus and method
KR102046612B1 (en) 2018-08-22 2019-11-19 숭실대학교산학협력단 The system for defending dns amplification attacks in software-defined networks and the method thereof

Also Published As

Publication number Publication date
KR20080021492A (en) 2008-03-07

Similar Documents

Publication Publication Date Title
KR100882809B1 (en) DDoS PROTECTION SYSTEM AND METHOD IN PER-FLOW BASED PACKET PROCESSING SYSTEM
CN108040057B (en) Working method of SDN system suitable for guaranteeing network security and network communication quality
Giotis et al. Leveraging SDN for efficient anomaly detection and mitigation on legacy networks
US7836498B2 (en) Device to protect victim sites during denial of service attacks
US7043759B2 (en) Architecture to thwart denial of service attacks
US7278159B2 (en) Coordinated thwarting of denial of service attacks
US7398317B2 (en) Thwarting connection-based denial of service attacks
US7743134B2 (en) Thwarting source address spoofing-based denial of service attacks
US7124440B2 (en) Monitoring network traffic denial of service attacks
KR101231975B1 (en) Method of defending a spoofing attack using a blocking server
US20020035628A1 (en) Statistics collection for network traffic
US9166990B2 (en) Distributed denial-of-service signature transmission
CN104539625A (en) Network security defense system based on software-defined network and working method of network security defense system
KR101219796B1 (en) Apparatus and Method for protecting DDoS
CN104378380A (en) System and method for identifying and preventing DDoS attacks on basis of SDN framework
TWI492090B (en) System and method for guarding against dispersive blocking attacks
CN107888618A (en) The DDoS for solving network security threatens the method for work of filtering SDN systems
KR101352553B1 (en) Method and System for DDoS Traffic Detection and Traffic Mitigation using Flow Statistic
Huang et al. FSDM: Fast recovery saturation attack detection and mitigation framework in SDN
Mopari et al. Detection and defense against DDoS attack with IP spoofing
CN108833430A (en) A kind of topological guard method of software defined network
Lim et al. Statistical-based SYN-flooding detection using programmable network processor
KR100733830B1 (en) DDoS Detection and Packet Filtering Scheme
JP2004140618A (en) Packet filter device and illegal access detection device
Baiju Ddos attack detection using SDN techniques

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: 20130107

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140106

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150120

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160113

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170201

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee