KR101683781B1 - 플로우 기반 디도스 탐지 및 방어 장치 및 방법 - Google Patents

플로우 기반 디도스 탐지 및 방어 장치 및 방법 Download PDF

Info

Publication number
KR101683781B1
KR101683781B1 KR1020150040252A KR20150040252A KR101683781B1 KR 101683781 B1 KR101683781 B1 KR 101683781B1 KR 1020150040252 A KR1020150040252 A KR 1020150040252A KR 20150040252 A KR20150040252 A KR 20150040252A KR 101683781 B1 KR101683781 B1 KR 101683781B1
Authority
KR
South Korea
Prior art keywords
packet
destination
flow
attack
ddos
Prior art date
Application number
KR1020150040252A
Other languages
English (en)
Other versions
KR20160113911A (ko
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 KR1020150040252A priority Critical patent/KR101683781B1/ko
Publication of KR20160113911A publication Critical patent/KR20160113911A/ko
Application granted granted Critical
Publication of KR101683781B1 publication Critical patent/KR101683781B1/ko

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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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
    • 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/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/143Denial of service attacks involving systematic or selective dropping of packets

Landscapes

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

Abstract

본 발명은 플로우 기반 디도스 탐지 및 방어 방법으로, 입력 패킷 각각에 대한 디도스 공격 속성 존재 여부를 확인하고, 디도스 공격 속성 존재 여부를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 생성하는 단계와, 상기 플로우 정보에 포함된 디도스 카운터를 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지하는 단계와, 상기 탐지 결과, 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는지에 따라 선택적으로 대역폭을 제한을 생략하고 송신하는 단계를 포함한다.

Description

플로우 기반 디도스 탐지 및 방어 장치 및 방법{Apparatus and Method for Detecting and Protecting DDos based on Flow}
본 발명은 디도스 탐지 및 방어 기술에 관한 것으로, 특히 플로우 기반 트래픽 속성 분석을 통해 디도스 공격을 탐지하고 방어하는 장치 및 방법에 관한 것이다.
서비스 거부 공격(Denial of Service Attack : DoS)은 다양한 방법으로 시스템 자원을 고갈시켜서 합법적인 사용자들이 서비스를 받지 못하도록 하는 공격이다.
특히, 네트워크 상의 수많은 컴퓨터들을 좀비 PC로 만들어 일시에 대상 서버를 공격하므로써, 막대한 피해를 입히는 공격을 분산 서비스 거부 공격(Distributed Denial of Service Attack : DDoS)이라 한다.
DDoS 공격은 공격 대상에 따라, 대역폭을 고갈시키는 방법을 통해 공격 대상 네트워크를 마비시키는 공격, 대상 시스템의 자원을 고갈시켜서 서버를 마비시키는 공격 및 해당 서비스의 취약점을 공격하여 대상 서비스만을 마비시키는 공격 등으로 나눌 수 있다.
또한, 공격유형에 따라, 송신자 IP를 변조하여 대량의 패킷을 송신함으로써 대상 네트워크의 과부하를 일으키거나 대역폭을 모두 점유하여 정상 사용자가 서비스를 받지 못하도록 하는 비연결형 플루딩 공격, 정상 사용자처럼 서버에 접속하지만 대량의 연결접속으로 일반사용자의 서비스를 방해하는 연결형 공격이 있다.
대표적인 비연결형 플루딩 공격에는 TCP SYN 플루딩, ICMP 플루딩, UDP 플루딩등이 있다. 또한 연결형 접속 소진 공격은 HTTP Get 플루딩, SMTP 플루딩, SIP 플루딩 등이 있다.
DDoS 방어장비는 공격유형의 특성에 따라 패킷을 분류하여 초당 패킷 카운터가 미리 정해놓은 임계치를 초과하면 공격으로 인정하는 임계치 기반의 탐지 방법이 주를 이루고 있다. 또한, 탐지된 공격의 방어를 위하여 의심 패킷을 차단하거나 공격 의심 IP 또는 피해자 IP에 대하여 대역폭을 제한함으로써 방어를 하고 있다.
기존의 PPS(Packet Per Second) 임계치 탐지 방법은 DDoS가 발생하여 트래픽이 급속히 증가하면, 장비 내부의 처리부하가 폭발적으로 증가하여 DDoS 방어 장비가 다운되거나 오버플로우 패킷을 내부 네트워크로 통과시킴으로써 공격을 허용하는 결과를 초래한다. 또한, 탐지된 공격에 대하여 IP를 기준으로 대역폭을 제한하는 방어 방법은 합법적인 사용자들에 대한 서비스 품질을 현저히 저하시킨다. 또한, 감염된 좀비 PC인 경우 합법적인 서비스와 공격의 구분없이 IP를 기준으로 접속이 차단된다.
본 발명에서는 비연결형 IP 변조 공격인 경우 5-tuple 플로우 수가 급격히 증가하는 특성을 이용하여 플로우/임계치 기반 DDoS 탐지를 수행하는 플로우 기반 디도스 탐지 및 방어 장치 및 방법을 제공한다.
본 발명은 탐지된 공격에 대하여 IP가 아닌 플로우를 구분하여 제한하는 방식으로 DDoS 공격을 방어한다.
본 발명은 플로우 기반 디도스 탐지 및 방어 방법으로, 입력 패킷 각각에 대한 디도스 공격 속성 존재 여부를 확인하고, 디도스 공격 속성 존재 여부를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 생성하는 단계와, 상기 플로우 정보에 포함된 디도스 카운터를 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지하는 단계와, 상기 탐지 결과, 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신하는 단계를 포함한다.
본 발명은 플로우 기반 디도스 탐지 및 방어 장치로, 플로우 정보에 포함된 디도스 카운터를 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지하는 디도스 탐지부와, 입력 패킷 각각에 대한 디도스 공격 속성 존재 여부를 확인하고, 디도스 공격 속성 존재 여부를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 상기 디도스 탐지부에 보고하고, 상기 디도스 탐지부에 의해 탐지된 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신하는 트래픽 처리부를 포함한다.
본 발명에 따라, 탐지 모듈의 처리 데이터량을 줄임으로써, 트래픽이 증가하더라도 오버플로우가 발생하지 않도록 한다.
또한, 5-tuple 플로우를 기반으로 DDoS를 방어하므로써, 기존의 합법적인 사용자의 서비스 질을 떨어뜨리지 않도록 한다.
또한, 감염된 좀비 PC이더라도 공격 개시 중이 아니거나 사용자의 합법적인 서비스는 보장받을 수 있다.
도 1은 본 발명의 일 실시 예에 따른 플로우 기반 디도스 탐지 및 방어 장치의 블록 구성도이다.
도 2는 본 발명의 일 실시 예에 따른 트래픽 처리부의 블록 구성도이다.
도 3은 본 발명의 일 실시 예에 따른 디도스 탐지부의 블록 구성도이다.
도 4는 본 발명의 일 실시 예에 따른 일 실시 예에 따른 플로우 기반 디도스 탐지 및 방어 방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 일 실시 예에 따른 에러 패킷 차단 단계를 설명하기 위한 순서도이다.
도 6은 본 발명의 일 실시 예에 따른 IP 기반 디도스 속성 카운팅 단계를 설명하기 위한 순서도이다.
도 7a는 본 발명의 일 실시 예에 따른 IP 기반 디도스 공격 여부 탐지 단계를 설명하기 위한 순서도이다.
도 7b는 본 발명의 일 실시 예에 따른 디도스 레벨 결정 단계를 설명하기 위한 순서도이다.
도 8은 본 발명의 일 실시 예에 따른 디도스 공격 여부에 따라 플로우 기반 대역폭 제한 단계를 설명하기 위한 순서도이다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시 예에 따른 플로우 기반 디도스 탐지 및 방어 장치의 블록 구성도이다.
도 1을 참조하면, 플로우 기반 디도스 탐지 및 방어 장치(이하 '장치'로 기재함)는 크게 트래픽 처리부(100) 및 디도스 탐지부(200)를 포함한다.
트래픽 처리부(100)는 네트워크 카드를 통해 입력받은 패킷 각각에 대한 디도스 공격 속성 존재 여부를 확인하고, 디도스 공격 속성 존재 여부를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 디도스 탐지부(200)에 보고하고, 디도스 탐지부(200)에 의해 탐지된 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신한다. 이에 대해서는 하기의 도 2를 참조하여 상세히 살펴보기로 한다.
디도스 탐지부(200)는 트래픽 처리부(100)가 보고한 플로우 정보에 포함된 디도스 카운터를 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지한다. 이에 대해서는 하기의 도 3을 참조하여 상세히 살펴보기로 한다.
도 2는 본 발명의 일 실시 예에 따른 트래픽 처리부의 블록 구성도이다.
도 2를 참조하면, 트래픽 처리부(100)는 에러패킷 차단모듈(110), 트래픽 처리 모듈(120) 및 패킷 송신 모듈(130)을 포함한다.
에러 패킷 차단 모듈(110)은 인바운드 패킷을 수신함에 따라, 네트워크 L3, L4 상에서의 CRC 검사와 헤더 검사를 통해 패킷 에러 여부를 판단하고, 에러 패킷은 드롭시킨다. 일 실시 예에 따라, 에러 패킷 차단 모듈(110)은 디도스 탐지부(200)에 의해 전달된 차단 정책을 확인하여, 차단 정책이 활성화(on) 상태일 경우, 차단 통계를 증가시킨 후, 패킷을 드롭(drop)시킨다. 반면, 에러 패킷 차단 모듈(110)은 패킷 에러가 아닐 경우나 차단 정책이 비활성화되어 있을 경우, 패킷을 플로우 처리 모듈(120)로 포워딩한다.
트래픽 처리 모듈(120)은 에러패킷 차단모듈(110)로부터 패킷을 수신함에 따라, 미리 수집되어 있는 디도스 공격 유형별 속성들을 검사하여, 패킷이 비연결형 플루딩 공격 속성들 중 하나 이상과 조건 일치할 경우, 패킷의 해당 디도스 속성 존재를 표시하는 플래그를 설정하고, 연결형 공격 속성들 중 조건과 일치할 경우 디도스 카운터를 증가시키고, 플로우를 식별하기 위한 5-Tuple과 디도스 공격 유형별 속성 존재를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 디도스 탐지부(200)에 보고한다.
반면, 트래픽 처리 모듈(120)은 조건이 일치하지 않거나, DPI를 수행하여 패킷이 주지된(Well-Known) 서비스의 플로우의 플로우일 경우, 패킷에 화이트 리스트 플래그(White List flag)를 설정한 후, 해당 패킷을 패킷 송신 모듈(130)로 포워딩한다.
패킷 송신 모듈(130)은 플로우 처리 모듈(120)로부터 패킷을 수신함에 따라, 디도스 탐지부(100)로부터 전달된 탐지 결과 정보에 따라, 해당 패킷이 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신한다. 즉, 패킷 송신 모듈(130)은 디도스 공격 상태인 목적지 IP를 가진 패킷에 대해서 대역폭을 제한하되, 패킷에 화이트 리스트 플래그가 포함되어 있을 경우, 해당 패킷을 대역폭 제한없이 송신한다.
도 3은 본 발명의 일 실시 예에 따른 디도스 탐지부의 블록 구성도이다.
도 3을 참조하면, 디도스 탐지부(200)는 플로우 계측 모듈(210), 임계치 추천 모듈(220) 및 디도스 탐지 모듈(230)을 포함한다.
플로우 계측 모듈(210)은 트래픽 처리부(100)로부터 플로우 정보를 수신함에 따라, 플로우 정보에 포함된 디도스 카운터를 DIP(Destination IP) 별로 취합하여, 임계치 추천 모듈(220) 및 탐지 모듈(230)에 보고한다.
그러면, 임계치 추천 모듈(220)은 DIP 별로 디도스 공격 상태를 결정하는 임계치들을 추출하여, 그 값을 탐지 모듈(230)에 추천한다.
탐지 모듈(230)은 플로우 계측 모듈(220)에 의해 보고된 DIP별 디도스 카운터값과 임계치 추천 모듈(220)로부터 추천된 임계치들을 비교하여 DIP별 디도스 공격 여부를 탐지한다. 상세하게는, 탐지 모듈(230)은 플로우 정보에 포함된 디도스 카운터를 DIP별로 취합한 값이 소정 임계치를 초과하는 DIP를 검출하고, 검출된 DIP에 대해 디도스 요소별 측정값이 포함되는 범위에 따라, 디도스 탐지 결과로 디도스 비공격 상태인 클리어 레벨(Clear Level)과 디도스 공격 상태인 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나로 결정한다.
도 4는 본 발명의 일 실시 예에 따른 일 실시 예에 따른 플로우 기반 디도스 탐지 및 방어 방법을 설명하기 위한 순서도이다.
도 4를 참조하면, 플로우 기반 디도스 탐지 및 방어 방법은 입력 패킷 각각에 대한 디도스 공격 속성 존재 여부를 확인하고, 디도스 공격 속성 존재 여부를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 생성하는 단계(S420, 도 6)와, 플로우 정보에 포함된 디도스 카운터를 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지하는 단계(S430, 도 7a 및 도 7b)와, 탐지 결과, 디도스 공격 상태인 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신하는 단계(S440, 도 8)를 포함한다. 부가적으로, S420 이전에 입력 패킷의 에러 여부를 검사하고, 에러 패킷을 차단하는 단계(S410, 도 5)를 더 포함한다. 그러면, 각 단계들에 대해 하기의 도 5 내지 도 8을 참조하여 상세히 살펴보기로 한다.
도 5는 본 발명의 일 실시 예에 따른 에러 패킷 차단 단계를 설명하기 위한 순서도이다. 여기서, 에러 패킷 차단 단계는 도 2에 도시된 에러 패킷 차단 모듈(110)에 의해 수행된다.
도 5를 참조하면, 에러패킷 차단모듈(110)은 인바운드 패킷을 수신(S510)함에 따라, 인바운드 패킷의 CRC 체크 및 헤더 검사(S520)를 통해 패킷 에러 여부를 판단한다(S530).
S530의 판단 결과 패킷 에러일 경우, 에러패킷 차단모듈(110)은 디도스 탐지부(200)에 의해 전달된 차단 정책을 확인(S540)하여, 차단 정책이 활성화(on) 상태인지를 판단한다(S550). S550의 판단 결과 차단 정책이 활성화(on)되어 있을 경우, 에러패킷 차단모듈(110)는 차단 통계를 증가시킨(S560) 후, 패킷을 드롭(drop)시킨다(S570).
반면, S530의 판단 결과 패킷 에러가 아닐 경우나 S550의 판단 결과 차단 정책이 비활성화되어 있을 경우, 에러패킷 차단모듈(110)은 패킷을 플로우 처리 모듈(120)로 포워딩한다(S580).
도 6은 본 발명의 일 실시 예에 따른 플로우 기반 디도스 속성 카운팅 단계를 설명하기 위한 순서도이다. 여기서, 디도스 속성 카운팅 단계는 도 2에 도시된 플로우 처리 모듈(120)에 의해 수행된다.
도 6을 참조하면, 플로우 처리 모듈(120)은 에러패킷 차단모듈(110)로부터 패킷을 수신(S610)함에 따라, 미리 수집되어 있는 디도스 공격 유형별 속성들을 검사(S620)하여, 패킷이 디도스 공격 유형별 속성들 중 하나 이상과 조건 일치하는지 판단한다(S630).
S630의 판단 결과 일치할 경우, 플로우 처리 모듈(120)은 패킷의 해당 디도스 속성 존재를 표시하는 플래그를 설정하고, 횟수를 표시하는 디도스 카운터를 증가시킨다(S640).
반면, S630의 판단 결과 조건이 일치하지 않거나, S640 단계 수행 후, 플로우 처리 모듈(120)은 DPI를 수행하여 패킷이 주지된(Well-Known) 서비스의 플로우인지를 판단한다(S650). S650의 판단 결과 주지된(Well-Known) 서비스의 플로우일 경우, 플로우 처리 모듈(120)은 패킷에 화이트 리스트 플래그(White List flag)를 설정(S660)한 후, 해당 패킷을 포워딩(S670)한다. 또한, 플로우 처리 모듈(120)은 플로우 정보를 디도스 탐지부(200)에 보고(S680)하는데, 플로우 정보에는 플로우를 식별하기 위한 5-Tuple과 디도스 공격 유형별 속성 존재를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함할 수 있다.
도 7a는 본 발명의 일 실시 예에 따른 IP별 디도스 공격 여부 탐지 단계를 설명하기 위한 순서도이다. 여기서, IP별 디도스 공격 여부 탐지 단계는 도 3에 도시된 디도스 탐지부(200)에 의해 수행된다.
도 7a을 참조하면, 디도스 탐지부(200)는 트래픽 처리부(100)로부터 플로우 정보를 수신(S710)함에 따라, 플로우 정보에 포함된 디도스 카운터를 DIP(Destination IP) 별로 취합한다(S720).
그런 후, 디도스 탐지부(200)은 취합된 DIP별 디도스 카운터값이 디도스 속성별 임계치를 초과하는지를 판단한다(S730).
S730의 판단 결과 디도스 속성별 임계치를 초과하지 않을 경우에는 디도스 탐지가 필요하지 않은 것으로 판단하여 S720 단계로 되돌아간다. 반면, S730의 판단 결과 디도스 속성별 임계치를 초과할 경우, 디도스 탐지부(200)는 디도스 탐지를 해야 할 필요가 있으므로 디도스 탐지 현황에 등록한다(S740).
그런 후, 디도스 탐지부(200)은 디도스 현황 유지 시간을 초과하는지를 판단한다(S750). S750의 판단 결과 디도스 현황 유지 시간을 초과할 경우, 디도스 탐지부(200)은 디도스 탐지 현황에서 제거하고(S760), 디도스 이력을 등록한다(S765).
반면, S750의 판단 결과 디도스 현황 유지 시간을 초과하지 않은 경우, 디도스 탐지부(200)는 디도스 탐지를 수행한다(S770). 이에 대해서는 도 7b를 참조하여 하기에서 상세히 살펴보기로 한다. 여기서, 디도스 탐지 결과는 클리어 레벨(Clear Level), 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나일 수 있다. 여기서, 클리어 레벨(Clear Level)은 디도스가 발생하지 않은 것으로 탐지된 것이고, 주의 레벨(Attention Level) 및 위험 레벨(Critical Level)은 디도스가 발생된 것으로 탐지된 것을 의미한다.
따라서, 디도스 탐지부(200)는 디도스 클리어 레벨일 경우(S785), S760 단계로 진행하여 디도스 탐지 현황에서 제거한다.
반면, 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나일 경우(S790), 디도스 탐지부(200)는 디도스 위협 레벨을 상승시킨다(S795). 반면, 디도스 탐지 결과로 클리어 레벨(Clear Level), 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나도 아닌 것으로 판명될 경우, S750 단계로 진행하여 디도스 탐지를 다시 수행한다(S750).
도 7b는 본 발명의 일 실시 예에 따른 디도스 레벨 결정 단계를 설명하기 위한 순서도이다.
도 7b를 참조하면, 디도스 탐지부(200)는 디도스 요소별 측정(S771)을 통해 측정값이 경고 인정횟수(Warning Rate)를 초과하는지 판단한다(S772).
S772의 판단 결과 측정값이 경고 인정횟수를 초과할 경우, 디도스 탐지부(200)는 측정값이 주의 인정횟수(Attention Rate)를 초과하는지를 판단한다(S773).
S773의 판단 결과 측정값이 주의 인정횟수를 초과하지 않을 경우, 디도스 탐지부(200)는 이와 같이 측정값이 경고 인정횟수(Warning Rate)를 초과하나, 주의 인정횟수(Attention Rate) 이하인 상태가 발생된 횟수가 클리어 인정 횟수를 초과하는지를 판단한다(S774). S774의 판단 결과 클리어 인정 횟수를 초과하지 않을 경우, 디도스 탐지부(200)는 발생 횟수를 증가시킨다(S775). 반면, S774의 판단 결과 클리어 인정 횟수를 초과할 경우, 디도스 탐지부(200)는 클리어 레벨(Clear Level)이라는 탐지 결과를 출력한다(S776).
반면, S773의 판단 결과 측정값이 주의 인정횟수를 초과할 경우, 디도스 탐지부(200)는 측정값이 위험 인정횟수(Critical Rate)를 초과하는지를 판단한다(S777).
S777의 판단 결과 측정값이 위험 인정횟수(Critical Rate)를 초과하지 않을 경우, 디도스 탐지부(200)는 이와 같이 측정값이 주의 인정횟수(Attention Rate)를 초과하나, 위험 인정횟수(Critical Rate) 이하인 상태가 발생된 횟수가 주의 인정 횟수를 초과하는지를 판단한다(S778). S778의 판단 결과 주의 인정 횟수를 초과하지 않을 경우, 디도스 탐지부(200)는 발생 횟수를 증가시킨다(S779). 반면, S778의 판단 결과 주의 인정 횟수를 초과할 경우, 디도스 탐지부(200)는 주의 레벨(Attention Level)이라는 탐지 결과를 출력한다(S779).
반면, S777의 판단 결과 측정값이 위험 인정횟수(Critical Rate)를 초과할 경우, 디도스 탐지부(200)는 이와 같이 측정값이 위험 인정횟수(Critical Rate)를 초과하는 상태가 발생된 횟수가 위험 인정 횟수를 초과하는지를 판단한다(S781). S781의 판단 결과 위험 인정 횟수를 초과하지 않을 경우, 디도스 탐지부(200)는 발생 횟수를 증가시킨다(S782). 반면, S781의 판단 결과 위험 인정 횟수를 초과할 경우, 디도스 탐지부(200)는 위험 레벨(Critical Level)이라는 탐지 결과를 출력한다(S783). 전술한 바와 같은 디도스 탐지를 통해, 디도스 공격 상태인 플로우 및 목적지 IP 정보가 검출될 수 있다.
도 8은 본 발명의 일 실시 예에 따른 디도스 공격 여부에 따라 플로우 기반 대역폭 제한 단계를 설명하기 위한 순서도이다. 여기서, 디도스 공격 여부에 따라 플로우 기반 대역폭 제한 단계는 도 2에 도시된 패킷 송신 모듈(130)에 의해 수행된다.
도 8을 참조하면, 패킷 송신 모듈(130)은 플로우 처리 모듈(120)로부터 패킷을 수신(S810)함에 따라, 디도스 모드인 지를 판단한다(S820). 여기서, 디도스 모드는 디도스 탐지부(100)로부터 전달된 디도스 공격 상태인 IP가 있는 상태를 의미한다.
S820의 판단 결과 디도스 모드일 경우, 패킷 송신 모듈(130)은 송신하려는 패킷이 화이트 리스트 플래그(White List Flag)가 설정되어 있는지를 판단한다(S830). 즉, 패킷이 이전에 서비스가 분석된 플로우에 해당하는지를 판단한다.
S830의 판단 결과 송신하려는 패킷이 화이트 리스트 플래그가 설정되어 있는 패킷인 경우, 즉, 이전에 서비스가 분석된 플로우에 해당하는 패킷인 경우, 패킷 송신 모듈(130)은 대역폭 제한을 생략하고 S860으로 진행하게 된다.
반면, S830의 판단 결과 송신하려는 패킷이 화이트 리스트 플래그가 설정되어 있지 않은 경우, 패킷 송신 모듈(130)은 목적지 IP가 디도스 탐지부(100)로부터 전달된 디도스 공격 상태인 IP, 즉 피해자 IP인지를 판단한다(S840).S840의 판단 결과 목적지 IP가 피해자 IP일 경우, 패킷 송신 모듈(130)은 대역폭을 제한한다(S850). 반면, S840의 판단 결과 목적지 IP가 피해자 IP가 아닐 경우, 패킷 송신 모듈(130)은 S860 단계로 진행한다.
그런 후, 패킷 송신 모듈(130)은 대역폭 제한되지 않은 패킷 또는 대역폭 제한된 패킷을 외부로 송신한다(S860).

Claims (10)

  1. 입력 패킷 각각에 대해 미리 수집되어 있는 디도스 공격 유형별 속성들을 검사하여, 패킷이 비연결형 플루딩 공격 속성들 중 하나 이상의 속성에 대한 조건과 일치할 경우, 패킷의 해당 디도스 속성 존재를 표시하는 플래그를 설정하고, 연결형 공격 속성들 중 하나의 속성에 대한 조건과 일치할 경우 디도스 카운터를 증가시키고, 플로우를 식별하기 위한 5-튜플(Tuple)과 디도스 공격 유형별 속성 존재를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 생성하는 단계와,
    상기 플로우 정보에 포함된 디도스 카운터를 목적지 IP별로 취합한 값을 이용하여 목적지 IP별 디도스 공격 여부를 탐지하는 단계와,
    상기 탐지 결과, 디도스 공격 상태인 목적지 IP로 송신되는 패킷이 심층 패킷 분석결과, 이전에 서비스가 분석된 주지된(Well-Known) 서비스의 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신하는 단계를 포함하되,
    상기 탐지하는 단계는
    상기 플로우 정보에 포함된 디도스 카운터를 목적지 IP별로 취합한 값이 소정 임계치를 초과하는 목적지 IP를 검출하는 단계와,
    상기 검출된 목적지 IP에 대해 디도스 요소별 측정값이 포함되는 범위에 따라, 디도스 탐지 결과로 디도스 비공격 상태인 클리어 레벨(Clear Level)과 디도스 공격 상태인 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나로 결정하는 단계를 포함함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 방법.
  2. 제 1항에 있어서,
    상기 생성하는 단계 이전에
    상기 입력 패킷의 에러 여부를 검사하고, 에러 패킷을 차단하는 단계를 더 포함함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 방법.
  3. 제 1항에 있어서, 상기 송신하는 단계는
    디도스 공격 상태인 목적지 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 경우, 대역폭을 제한없이 송신함을 포함함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 방법.
  4. 제 1항에 있어서,
    상기 입력 패킷이 주지된(Well-Known) 서비스의 플로우에 해당하는 경우, 해당 패킷에 화이트 리스트 플래그를 설정하는 단계와,
    상기 송신하는 단계는
    상기 탐지하는 단계에서 디도스 공격 상태인 것으로 판단된 목적지 IP에 해당하는 패킷에 상기 화이트 리스트 플래그가 설정되어 있는지에 따라, 대역폭 제한 여부를 결정하는 단계를 더 포함함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 방법.
  5. 삭제
  6. 플로우 정보에 포함된 디도스 카운터를 목적지 IP별로 취합한 값을 이용하여 IP별 디도스 공격 여부를 탐지하는 디도스 탐지부와,
    입력 패킷 각각에 대해 미리 수집되어 있는 디도스 공격 유형별 속성들을 검사하여, 패킷이 비연결형 플루딩 공격 속성들 중 하나 이상의 속성에 대한 조건과 일치할 경우, 패킷의 해당 디도스 속성 존재를 표시하는 플래그를 설정하고, 연결형 공격 속성들 중 하나 이상의 속성에 대한 조건과 일치할 경우 디도스 카운터를 증가시키고, 플로우를 식별하기 위한 5-튜플(Tuple)과 디도스 공격 유형별 속성 존재를 표시하는 플래그 및 횟수를 표시하는 디도스 카운터를 포함하는 플로우 정보를 상기 디도스 탐지부에 보고하고, 상기 디도스 탐지부에 의해 탐지된 디도스 공격 상태인 목적지 IP로 송신되는 패킷이 심층 패킷 분석 결과, 이전에 서비스가 분석된 주지된(Well-Known) 서비스의 플로우에 해당하는 패킷인 경우를 제외하고, 대역폭을 제한하여 송신하는 트래픽 처리부를 포함하되,
    상기 디도스 탐지부는
    상기 플로우 정보에 포함된 디도스 카운터를 목적지 IP별로 취합한 값이 소정 임계치를 초과하는 목적지 IP를 검출하고, 상기 검출된 목적지 IP에 대해 디도스 요소별 측정값이 포함되는 범위에 따라, 디도스 탐지 결과로 디도스 비공격 상태인 클리어 레벨(Clear Level)과 디도스 공격 상태인 주의 레벨(Attention Level) 및 위험 레벨(Critical Level) 중 하나로 결정함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 장치.
  7. 제 6항에 있어서, 상기 트래픽 처리부는
    상기 입력 패킷의 에러 여부를 검사하고, 에러 패킷을 차단함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 장치.
  8. 제 6항에 있어서, 상기 트래픽 처리부는
    디도스 공격 상태인 목적지 IP로 송신되는 패킷이 이전에 서비스가 분석된 플로우에 해당하는 경우, 대역폭을 제한없이 송신함을 특징으로 하는 플로우 기반 디도스 탐지 및 방어 장치.
  9. 제 6항에 있어서, 상기 트래픽 처리부는
    상기 입력 패킷이 주지된(Well-Known) 서비스의 플로우에 해당하는 경우, 해당 패킷에 화이트 리스트 플래그를 설정하고, 상기 디도스 탐지부에 의해 디도스 공격 상태인 것으로 판단된 목적지 IP에 해당하는 패킷에 상기 화이트 리스트 플래그가 설정되어 있는지에 따라, 대역폭 제한 여부를 결정함를 특징으로 하는 플로우 기반 디도스 탐지 및 방어 장치.
  10. 삭제
KR1020150040252A 2015-03-23 2015-03-23 플로우 기반 디도스 탐지 및 방어 장치 및 방법 KR101683781B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150040252A KR101683781B1 (ko) 2015-03-23 2015-03-23 플로우 기반 디도스 탐지 및 방어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150040252A KR101683781B1 (ko) 2015-03-23 2015-03-23 플로우 기반 디도스 탐지 및 방어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160113911A KR20160113911A (ko) 2016-10-04
KR101683781B1 true KR101683781B1 (ko) 2016-12-08

Family

ID=57165454

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150040252A KR101683781B1 (ko) 2015-03-23 2015-03-23 플로우 기반 디도스 탐지 및 방어 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101683781B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102020488B1 (ko) * 2019-03-21 2019-09-11 주식회사그린존시큐리티 IoT 디바이스의 인터넷 접근 제어를 위한 장치 및 이를 위한 방법
KR20240059276A (ko) 2022-10-27 2024-05-07 (주)하몬소프트 플로우 데이터를 활용한 머신러닝 기반 DDos 이상 트래픽 탐지 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100803029B1 (ko) 2006-12-01 2008-02-18 경희대학교 산학협력단 협력적인 통계기반 탐지기법을 이용한 분산서비스거부공격의 방어 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101219796B1 (ko) * 2009-10-07 2013-01-09 한국전자통신연구원 분산 서비스 거부 방어 장치 및 그 방법
KR20110061217A (ko) * 2009-12-01 2011-06-09 주식회사 케이티 플로우 패턴 정보를 이용한 분산 서비스 거부 공격 검출 시스템 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100803029B1 (ko) 2006-12-01 2008-02-18 경희대학교 산학협력단 협력적인 통계기반 탐지기법을 이용한 분산서비스거부공격의 방어 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102020488B1 (ko) * 2019-03-21 2019-09-11 주식회사그린존시큐리티 IoT 디바이스의 인터넷 접근 제어를 위한 장치 및 이를 위한 방법
WO2020189871A1 (ko) * 2019-03-21 2020-09-24 주식회사그린존시큐리티 Iot 디바이스의 인터넷 접근 제어를 위한 장치 및 이를 위한 방법
KR20240059276A (ko) 2022-10-27 2024-05-07 (주)하몬소프트 플로우 데이터를 활용한 머신러닝 기반 DDos 이상 트래픽 탐지 시스템

Also Published As

Publication number Publication date
KR20160113911A (ko) 2016-10-04

Similar Documents

Publication Publication Date Title
KR101424490B1 (ko) 지연시간 기반 역 접속 탐지 시스템 및 그 탐지 방법
US7607170B2 (en) Stateful attack protection
KR101231975B1 (ko) 차단서버를 이용한 스푸핑 공격 방어방법
EP1558937B1 (en) Active network defense system and method
EP2289221B1 (en) Network intrusion protection
US8966627B2 (en) Method and apparatus for defending distributed denial-of-service (DDoS) attack through abnormally terminated session
US8356349B2 (en) Method and system for intrusion prevention and deflection
US20060075084A1 (en) Voice over internet protocol data overload detection and mitigation system and method
CN110198293B (zh) 服务器的攻击防护方法、装置、存储介质和电子装置
US20110072515A1 (en) Method and apparatus for collaboratively protecting against distributed denial of service attack
KR101219796B1 (ko) 분산 서비스 거부 방어 장치 및 그 방법
US20170353478A1 (en) Packet relay apparatus
US8006303B1 (en) System, method and program product for intrusion protection of a network
JP2004140524A (ja) DoS攻撃検知方法、DoS攻撃検知装置及びプログラム
KR101380015B1 (ko) 분산서비스거부 공격에 대한 협업형 방어 방법 및 그 장치
KR101683781B1 (ko) 플로우 기반 디도스 탐지 및 방어 장치 및 방법
JP2006100874A (ja) アプリケーション型サービス不能攻撃に対する防御方法およびエッジ・ルータ
JP4014599B2 (ja) 送信元アドレス偽装パケット検出装置、送信元アドレス偽装パケット検出方法、送信元アドレス偽装パケット検出プログラム
KR20110027386A (ko) 사용자 단말로부터 외부로 나가는 유해 패킷을 차단하는 장치, 시스템 및 방법
KR20100048105A (ko) 네트워크 관리 장치 및 그 방법과 이를 위한 사용자 단말기및 그의 기록 매체
RU183015U1 (ru) Средство обнаружения вторжений
Tsunoda et al. Security by simple network traffic monitoring
KR20110116962A (ko) 장애 방지 서버 및 방법
JP5009200B2 (ja) ネットワーク攻撃検出装置及び防御装置
JP2005130190A (ja) 攻撃パケット防御システム

Legal Events

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

Payment date: 20191202

Year of fee payment: 4