KR20110048112A - Uri 타입 기반 디도스 공격 탐지 및 대응 장치 - Google Patents

Uri 타입 기반 디도스 공격 탐지 및 대응 장치 Download PDF

Info

Publication number
KR20110048112A
KR20110048112A KR1020090104781A KR20090104781A KR20110048112A KR 20110048112 A KR20110048112 A KR 20110048112A KR 1020090104781 A KR1020090104781 A KR 1020090104781A KR 20090104781 A KR20090104781 A KR 20090104781A KR 20110048112 A KR20110048112 A KR 20110048112A
Authority
KR
South Korea
Prior art keywords
threshold
ddos attack
ddos
specific
unit
Prior art date
Application number
KR1020090104781A
Other languages
English (en)
Other versions
KR101061375B1 (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 KR1020090104781A priority Critical patent/KR101061375B1/ko
Priority to US12/917,881 priority patent/US20110107412A1/en
Publication of KR20110048112A publication Critical patent/KR20110048112A/ko
Application granted granted Critical
Publication of KR101061375B1 publication Critical patent/KR101061375B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • 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
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation

Landscapes

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

Abstract

URI 타입 기반 디도스 공격 탐지 및 대응 장치가 개시된다. 소정의 IP로 특정되는 클라이언트 단말기로부터 HTTP 요청을 수신하는 수신부, 상기 수신한 HTTP 요청 중 미리 특정된 URI의 개수를 소정의 관측시간동안 상기 IP별로 산출하는 데이터 측정부, 상기 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 상기 특정 URI의 개수가 상기 임계치보다 큰 경우 상기 IP의 클라이언트 단말기의 접속을 디도스 공격으로 탐지하는 디도스 판별부 및 상기 디도스 판별부가 디도스 공격으로 탐지하는 경우 상기 클라이언트 단말기의 접속을 차단하는 차단부를 포함하는 디도스 공격 탐지 및 대응 장치는 URI 타입을 기반으로 연산량을 최소화하면서 디도스 공격에 대응할 수 있는 대응 메커니즘을 수행할 수 있고, 디도스 공격의 주요 대상이 되는 웹 서비스를 대상으로 응용계층 기반 디도스 공격탐지 및 대응 알고리즘을 수행할 수 있는 효과가 있다.
DDoS, HTTP, URI type, 사용자 액션.

Description

URI 타입 기반 디도스 공격 탐지 및 대응 장치{Apparatus for detecting and filtering DDoS attack based on request URI type}
본 발명은 전자 기기에 관한 것으로, 특히 URI 타입 기반 디도스 공격 탐지 및 대응 장치에 관한 것이다.
오래전부터 많은 피해를 발생시켜 온 디도스(DDoS : Distributed Denial of Service) 공격은 최근 Netbot Attacker, Blackenergy, 7.7 DDoS 등 봇넷을 이용한 공격방식을 통해 대응하기 점차 어려워지고 있다. 특히, 기존 DDoS 공격은 SYN, UDP, SYN + ACK, ICMP Flooding 등 네트워크 계층에서의 대역폭(bandwidth) 소모위주의 공격이 발생한 반면, 최근에는 HTTP GET Flooding, CC(Cache Control) Attack 등과 같은 시스템의 CPU, 메모리, DB 서버 자원을 고갈시키는 응용계층 기반 디도스 공격이 발생하고 있다.
그러나 현재 출시된 대부분의 디도스 대응장비는 네트워크 계층에서의 디도스 공격대응 위주의 기능을 제공하고 있어서, 소량의 HTTP 트래픽이 발생하면서 특 정 호스트의 동작을 중지시키는 Netbot Attacker, Blackenergy 등의 응용계층의 디도스 공격에는 대응하지 못하고 있다. 이러한 공격도구는 기존 네트워크 계층에 대한 디도스 공격 뿐 아니라 HTTP GET Flooding, CC Attack 등 다양한 공격이 가능하다.
이러한 응용계층 디도스 공격에 대응하기 위해 최근 몇가지 연구가 진행되고 있다. 웹 서비스 특성상 이용자 IP 리스트는 균일하게 분포하지 않고 기존에 들어왔던 이들이 계속 들어오는 특징을 이용하여, 그 비율을 이용한 디도스 공격 탐지방안, 웹 서비스 이용패턴 정보를 분석하여 공격자로 의심스러운 IP 들을 대상으로 그레이 리스트(Greylist)로 분류하고, 이들에 대해 적은 리소스를 할당하는 방법에 대한 연구, 각 URL 페이지 히트 분포 등을 통계적 방식에 기반하여 분석 후, 일시적인 요청 폭주와 디도스 공격을 구별하는 방법, 웹 서비스 사용자 페이지 이동경로에 따른 분석, 디도스 공격의 원인이 되는 비정상 사용자에 대한 접속 제어(Admission Control)를 통해 대응하는 방법 등이 제안되어 있다.
하지만 종래 기술에 따르면, URL 페이지 히트 분포는 많은 연산량을 필요로 하며, 웹서비스에 올라가는 컨텐츠 및 시기에 따라 크게 변하여 임계치(threshold) 설정이 어려운 단점이 있고, 접속 제어 기법은 아웃 오브 패스(out of path) 방식으로는 동작할 수 없고, 인라인으로 동작해야 하는데 세션관리가 필요한 단점이 있다.
또한, HTTP 요청은 사용자 액션에 의한 요청(direct request)과 이에 따라 수반되는 요청(indirect request)으로 구분되며, 하나의 사용자 액션에 수많은 요 청(indirect request)이 수반하므로, 기존 HTTP PPS에 대한 임계치 기반 대응 방식은 높은 임계치를 갖게 되어 상당한 미탐이 존재한다. 특히, 소량의 HTTP 요청으로 시스템을 마비시키는 최근의 디도스 공격동향을 고려할 때, 종래의 HTTP PPS 기반의 디도스 대응방법은 한계를 지닌다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명은 URI 타입을 기반으로 연산량을 최소화하면서 디도스 공격에 대응할 수 있는 대응 메커니즘을 수행할 수 있는 URI 타입 기반 디도스 공격 탐지 및 대응 장치를 제공하기 위한 것이다.
또한, 본 발명은 디도스 공격의 주요 대상이 되는 웹 서비스를 대상으로 응용계층 기반 디도스 공격탐지 및 대응 알고리즘을 수행할 수 있는 URI 타입 기반 디도스 공격 탐지 및 대응 장치를 제공하기 위한 것이다.
본 발명이 제시하는 이외의 기술적 과제들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.
본 발명의 일 측면에 따르면, 소정의 IP로 특정되는 클라이언트 단말기로부터 HTTP 요청을 수신하는 수신부, 상기 수신한 HTTP 요청 중 미리 특정된 URI의 개수를 소정의 관측시간동안 상기 IP별로 산출하는 데이터 측정부, 상기 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 상기 특정 URI의 개수가 상기 임계치보다 큰 경우 상기 IP의 클라이언트 단말기의 접속을 디도스 공격으로 탐지하는 디도스 판별부 및 상기 디도스 판별부가 디도스 공격으로 탐지하는 경우 상기 클라이언트 단말기의 접속을 차단하는 차단부를 포함하는 디도스 공격 탐지 및 대응 장치가 제공된다.
여기서, 상기 임계치는 다음과 같은 수식으로 설정될 수 있다.
T = R×TU
여기서, T는 상기 임계치, R은 미리 설정된 사용자 액션에 의한 상기 HTTP의 개수 대비 상기 특정 URI 개수 비율, TU는 사용자 액션 임계치이고, 상기 사용자 액션 임계치는 상기 관측시간이 10초인 경우 30 내지 50이 될 수 있다.
또한, 상기 관측시간이 증가하는 경우 상기 관측시간이 증가하는 비율보다 작은 비율로 상기 임계치가 증가할 수 있고, 상기 특정 URI는 웹페이지의 구조 정보에 관한 확장자를 포함하거나 구조 정보에 관한 타입이 될 수 있으며, 상기 특정 URI의 확장자는 html, htm, php, asp 및 jsp 중 어느 하나가 될 수 있다.
또한, 본 실시예는 상기 임계치를 웹서버에 따라 다르게 설정하여 저장한 저장부를 더 포함하되, 상기 디도스 판별부는 상기 저장부로부터 상기 임계치를 추출 할 수 있다.
또한, 본 실시예는 상기 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 상기 특정 URI의 개수가 상기 임계치의 소정 비율보다 큰 경우 상기 디도스 판별부의 작동을 개시하는 판별 개시부를 더 포함할 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명에 따른 URI 타입 기반 디도스 공격 탐지 및 대응 장치는 URI 타입을 기반으로 연산량을 최소화하면서 디도스 공격에 대응할 수 있는 대응 메커니즘을 수행할 수 있고, 디도스 공격의 주요 대상이 되는 웹 서비스를 대상으로 응용계층 기반 디도스 공격탐지 및 대응 알고리즘을 수행할 수 있는 효과가 있다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 본 발명의 실시예에 따른 디도스(DDoS) 공격 탐지 및 대응 장치의 시스템 구성도이다. 도 1을 참조하면, 클라이언트 단말기(110), 웹서버(120), 디도스 공격 탐지 및 대응 장치(130), 네트워크(140)가 도시된다. 디도스 공격탐지 및 대응장치(130)는 네트워크 트래픽 경로 상에 인라인으로 위치하거나, 트래픽 정보를 따로 받는 아웃오프패스 방식으로 동작할 수 있다.
본 발명은 HTTP 요청(request) 중 사용자 액션에 의한 HTTP 요청과 소정의 비율 관계를 가지는 URI 타입을 분류하고, 이들에 대해 임계치를 기반으로 디도스 공격을 탐지하는 특징이 있다. 즉, 본 발명은 각 IP별로 HTTP 요청을 URI 타입별로 분류하여 이를 소정의 임계치와 비교함으로써 디도스 공격을 탐지 및 차단할 수 있는 특징이 있다.
웹 서비스에서의 GET Flooding 공격 유형은 IP별, 단위시간당 대량의 HTTP 요청(request)을 발생시키는 GET Flooding, IP별, 단위시간당 특정 URI에 대해 소정의 임계치를 초과하는 HTTP 요청을 발생시키는 GET Flooding, IP별, 단위시간당 URI당 평균 HTTP 요청이 소정의 임계치를 초과하는 GET Flooding, IP별, 단위시간당 요청된 URI 분포가 비정상적인 GET Flooding, IP별, 단위시간당 다수의 URI를 대상으로 최소한의 HTTP 요청을 발생시키는 GET Flooding 등 다양한 공격 유형을 가진다. 상술한 웹 서비스에서의 GET Flooding 공격 유형은 지금까지 발생한 다수의 디도스 공격도구, 종래의 7.7 디도스 공격 등뿐만 아니라 앞으로 발생가능한 공격 유형을 포함한다.
본 실시예에 따른 디도스 공격 탐지 및 대응 방법은 상술한 공격 유형들에 효과적으로 대처할 수 있는 방법이다. 즉, 본 실시예는 각 IP별로 HTTP 요청을 URI 타입별로 소정의 기준, 예를 들면, 사용자 액션에 의해 발생하는 HTTP 요청과 같은 기준으로 분류하고, 이를 소정의 임계치와 비교함으로써 디도스 공격에 대응할 수 있다.
클라이언트 단말기(110)는 웹서버(120)를 대상으로 디도스 공격을 하는 단말기로서, 소위 좀비 PC로 지칭될 수 있다. 디도스 공격 탐지 및 대응 장치(130)는 클라이언트 단말기(110)의 디도스 공격을 탐지하고 이를 탐지한 경우 클라이언트 단말기(110)가 웹서버(120)에 접속하지 못하도록 차단한다.
디도스 공격 탐지 및 대응 장치(130)는 네트워크(140)의 라우터에 구비되거나 수정 라우터 혹은 디도스 전용장비, 침입방지시스템 등에 위치하거나 또는 각 웹서버(120)의 특정 구성요소 또는 파이어월로 구비됨으로써 디도스 공격을 차단할 수 있다. 또한, 본 발명은 클라이언트 단말기(110)가 웹서버(120)에 디도스 공격을 수행하는 경우를 중심으로 설명하지만, 이에 한정되지 않으며, 예를 들면, 특정 웹사이트, 어플리케이션 서버 등 다양한 주체, 하드웨어 또는 소프트웨어 모듈을 공격하는 경우에도 적용될 수 있음은 물론이다.
디도스 공격 탐지 및 대응 장치(130)는 디도스 공격의 주요 대상이 되는 웹 서비스를 대상으로 응용계층 기반 디도스 공격 탐지 및 대응 알고리즘이 구현된다. 즉, 디도스 공격 탐지 및 대응 장치(130)는 각 IP별 소량의 HTTP 트래픽을 보내는 디도스 공격이 발생했을 때, HTTP 요청을 URI 타입별로 분류하여 이를 기반으로 디도스 공격을 탐지하고 대응하는 메커니즘을 제시한다.
도 2는 본 발명의 일 실시예에 따른 디도스 공격 탐지 및 대응 장치의 블록 구성도이다. 도 2를 참조하면, 수신부(132), 데이터 측정부(134), 디도스 판별부(136), 차단부(138)가 도시된다.
수신부(132)는 소정의 IP로 특정되는 클라이언트 단말기(110)로부터 HTTP 요청을 수신한다. 수신부(132)는 TCP 80 포트에서 수집된 HTTP 패킷을 수신하고, HTTP 헤더를 파싱함으로써 데이터 측정부(134)가 관련 데이터를 측정 및 산출할 수 있도록 한다.
데이터 측정부(134)는 수신한 HTTP 요청의 개수를 소정의 관측시간동안 IP별 로 산출한다. 또한, 데이터 측정부(134)는 IP별로 HTTP 요청을 URI 타입별로 분류한다. 구체적으로 데이터 측정부(134)는 수신한 패킷마다 해당 IP 별로 검색하고 이를 업데이트할 수 있다. 본 실시예는 이러한 IP별, 관측시간당, HTTP 개수, URI 개수 등과 같은 데이터를 저장하기 위한 별도의 저장부를 포함할 수 있다. IP별 및 URI별 관리를 위해서 hash/mod 방식 등이 사용될 수 있으며, 이러한 기술은 본 발명의 당업자가 용이하게 실시할 수 있는 기술이므로 자세한 설명은 생략한다.
본 실시예에 따르면, 디도스 공격 탐지 및 대응 방법은 소정의 관측시간을 기준으로 수행될 수 있다. 관측시간은 디도스 공격을 유효하게 탐지할 수 있으면서도 빠른 시간내에 탐지할 수 있는 시간, 예를 들면, 5초 내지 20초가 될 수 있다. 웹 서비스의 특징상 PPS를 기준으로는 해당 IP의 현재 행위를 판단하기 어렵기 때문에, 소정의 구간인 관측시간을 이용하는 경우 웹 서비스 이용 패턴을 활용할 수 있는 장점이 있다.
일반적으로 특정 사이트에 Get Request 요청 시, 웹 서버는 해당하는 응답(response)을 주며, 이 응답은 image, iframe, html, flash 등 다양한 정보를 포함한다. 클라이언트 단말기(110)의 웹브라우저는 이 다양한 정보들에 대해 각각 Get Request를 발생시켜 데이터를 받아오고, 받아온 결과를 웹 브라우저에 출력한다. 도 3을 참조하면, 사용자 액션에 따른 특정 페이지 요청에 따라 복수의 추가 요청들이 발생한다.
수많은 HTTP 요청(Request)은 사용자가 직접 액션을 취해서 발생한 요청과 해당 요청에 의해 추가로 실행되는 요청으로 구분할 수 있다. 사용자 액션에 의한 요청은, 예를 들면, 웹 브라우저 실행에 의한 요청, F5 누름 등에 의한 웹 페이지 새로고침(refresh)에 의한 요청, 메뉴 또는 링크 등에 대한 사용자의 클릭에 의한 요청 등이 될 수 있다.
사용자 액션에 의한 HTTP 요청은 사용자가 특정 행위, 예를 들면, 메뉴 또는 링크 클릭 등을 했을 때 발생하게 되므로, 아무리 빨리 하더라도 일정 이상의 HTTP 요청을 발생시킬 수 없다. 즉, 사용자 액션에 의한 요청(direct request)은 사용자의 실제 행위에 기반하여 발생하므로, 일정시간 동안 발생하는 사용자의 행위수가 제한을 받듯이 사용자 액션에 의한 요청도 큰 값으로 발생할 수 없다. 관찰결과 사용자 액션에 의해 초당 3번 내지 5번 이상의 HTTP 요청을 발생시키는 것은 극히 드물며, 10초간 30번 내지 50번 이상의 HTTP 요청을 발생시키는 것은 정상적인 사용자에 의한 요청으로 보기 어렵다.
따라서 본 실시예는 HTTP 요청 중 사용자 액션에 의한 HTTP 요청과 관련되어 미리 특정된 URI을 분류하고, 이들에 대한 임계치 기반 디도스 공격을 탐지함으로써 매우 정확한 수준에서 디도스 대응이 가능한 특징이 있다.
디도스 판별부(136)는 특정 IP별로 분류된 트래픽 중 사용자 액션에 의한 HTTP 요청 개수와 소정의 비례 관계를 가지는 특정 타입의 URI 개수를 소정의 임계치와 비교하고, 특정 타입의 URI 개수가 해당 임계치보다 큰 경우 해당 IP의 클라이언트 단말기(110)의 접속을 디도스 공격으로 탐지한다. 예를 들면, 사용자 액션에 의한 HTTP 요청 개수는 각 IP별 HTTP 중 특정 타입의 URI, 예를 들면, html, htm, php, asp 및 jsp 등에 관한 요청의 수와 비례할 수 있으며, 이러한 특정 타입 의 URI 개수가 소정의 관측시간 동안 임계치 이상 발생할 때 디도스 공격으로 판단할 수 있다. 여기서, 특정 URI의 타입은 현재 웹페이지를 출력하기 위한 구조 정보(예를 들면, iframe 등)를 포함하는 파일에 대응되는 타입이지만, 본 발명은 이에 한정되지 않으며, 향후 개발 및 상용화될 수 있는 웹페이지 구조 정보 관련 확장자를 가지는 타입이 될 수도 있다.
예를 들면, 사용자 액션에 의한 HTTP 요청 개수가 1초당 3번 또는 10초당 30번 이상 발생시, 해당 IP의 클라이언트 단말기(110)의 접속을 디도스 공격으로 분류 및 차단할 수 있다. 따라서 본 실시예에 따른 사용자 액션에 의한 HTTP 요청 개수에 관한 사용자 액션 임계치는 관측시간이 10초인 경우 30 내지 50이 될 수 있으며, 특정 타입의 URI 개수에 관한 임계치는 후술할 바와 같이 웹사이트별로 특정되는 비율이 적용된 임계치가 될 수 있다.
이를 수식으로 표현하면 다음과 같다.
T = R×TU (1)
여기서, T는 특정 URI의 개수에 관한 임계치, R은 미리 설정된 사용자 액션에 의한 HTTP의 개수 대비 특정 URI 개수 비율, TU는 사용자 액션 임계치이다. 여기서, R은 정상 사용 상태에서 미리 테스트를 통해 산출된 후 소정의 저장 장치에 저장될 수 있다. 여기서, 사용자 액션 임계치는 초기 설정으로 결정되거나 또는 사용 자에 의해 임의로 변경가능하다.
본 실시예에 따르면, HTTP 요청 중 기본 헤더에 속하는 URI 부분의 끝의 특정 자리수 또는 확장자만 확인하면 되므로 성능상의 문제가 발생하지 않는 장점이 있다.
차단부(138)는 디도스 판별부(136)가 디도스 공격으로 탐지하는 경우 해당 클라이언트 단말기(110)의 접속을 차단한다. 차단부(138)는 이 경우 일정 시간 그 접속을 차단하거나, IP의 패킷을 차단하거나 또는 디도스 공격 경고음을 발생하는 등 다양한 대응 방법을 수행할 수 있다. 차단부(138)는 특정 IP의 클라이언트 단말기(110)가 디도스 공격 단말기로 판단되는 경우 해당 클라이언트 단말기(110)의 접속을 차단함으로써 디도스 공격에 대응할 수 있다.
또한, 본 실시예는 상술한 디도스 판별부(136)와 차단부(138)가 동작하기 전에 예비적으로 이상 증후를 검사하기 위한 구성요소를 더 포함할 수 있다. 즉, 본 실시예에 따르면, 웹서버(120) 접속이 지연되거나 부하가 심해서 느려지는 등의 이상 징후가 발생하는 경우에만 디도스 공격 탐지 및 대응 장치(130)가 가동될 수 있도록 하여 서버의 부하를 줄이고 효율적으로 연산을 수행할 수 있는 특징이 있다. 이를 위하여 본 실시예는 상술한 실시예에서 산출된 사용자 액션에 따른 HTTP(또는 특정 URI) 개수를 소정의 임계치와 비교하고, 사용자 액션에 따른 HTTP 개수(또는 특정 URI)가 이러한 임계치의 소정 비율보다 큰 경우 디도스 판별부(136)의 작동을 개시하는 판별 개시부(미도시)를 더 포함할 수 있다.
여기서, 임계치의 소정 비율은 디폴트로 정해지거나, 네트워크 및/또는 서버 환경 등에 따라 자동 설정되거나 또는 사용자 설정에 의해 임의대로 정해질 수 있다. 자동 설정의 경우 네트워크 및/또는 서버에 부하가 걸리는 빈도, 부하량 등에 따라 임계치의 소정 비율을 조절할 수 있다. 예를 들면, 부하의 빈도가 높은 경우 요주의 상황으로서 소정 비율이 높아질 수 있다. 또한. 사용자 설정의 경우 본 실시예는 이러한 임계치의 소정 비율을 조절하기 위한 사용자 인터페이스를 더 포함할 수 있다. 임계치의 소정 비율은 예를 들면, 상술한 임계치의 50 내지 70%가 될 수 있다.
도 4는 본 발명의 일 실시예에 따른 디도스 공격 탐지 및 대응 방법의 흐름도이다. 도시된 흐름도는 디도스 공격 탐지 및 대응 장치(130)가 수행하는 대응 메커니즘이 될 수 있다.
단계 S410에서, 클라이언트 단말기(110)로부터 패킷이 유입된다. 단계 S420에서, IP를 기반으로 미리 디도스 공격으로 판단된 클라이언트 단말기(110)를 차단한다. 여기서, 만약 클라이언트 단말기(110)의 IP가 신규 IP로 판단되는 경우 클라이언트 단말기(110)의 IP를 신규 IP로 소정의 데이터베이스에 저장할 수 있다.
단계 S430에서, TCP 80 포트 및 HTTP 패킷을 수집하고, 단계 S440에서, HTTP 헤더를 파싱한다. 예를 들면, 본 실시예는 커널 기반 고속의 트래픽 처리 엔진을 구비하여 NDIS intermediate Driver 및 커널 오브젝트인 패킷 풀(packet pool)에서 해당 HTTP를 수집하여 HTTP 헤더를 파싱할 수 있다.
단계 S450에서, IP별로 사용자 액션에 따른 HTTP 개수와 관련되는 특정 URI의 개수를 산출하고, 단계 S460에서, 상술한 바와 같이 관측시간 T동안 IP별 특정 URI 누적 개수를 산출한다.
단계 S470에서, 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 만약 특정 URI의 개수가 해당 임계치보다 큰(같은 경우도 포함될 수 있음) 경우 단계 S420에서 해당 IP에 기반하여 특정 클라이언트 단말기(110)의 접속을 차단하며, 특정 URI의 개수가 해당 임계치보다 크지 않는 경우에는 해당 IP의 접속을 유지한다.
도 5는 본 발명의 다른 실시예에 따른 디도스 공격 탐지 및 대응 장치의 블록 구성도이다. 도 5를 참조하면, 수신부(132), 데이터 측정부(134), 디도스 판별부(136), 차단부(138), 임계치 저장부(152)가 도시된다. 상술한 바와의 차이점을 위주로 설명한다.
본 실시예는 사용자 액션에 의한 HTTP 개수 대비 특정 URI 개수 비율과 연관되는 특정 URI의 개수를 소정의 임계치와 비교하여, 복수의 웹서버의 각 특성에 적합하게 디도스 공격을 탐지할 수 있도록 각 웹서버별로 다른 임계치를 관리하는 특징이 있다. 각 웹사이트는 기본적으로 iframe 등으로 화면이 구분되어 있고, 그 틀 내에서 컨텐츠 배치를 위해 상술한 바와 같은 사용자 액션에 의한 요청과 같은 타입의 URI가 호출된다. 즉, 사용자 액션에 의해 1개의 요청(direct request)이 발생하는 경우 해당 내용을 웹브라우저에 표시하기 위해서 각 웹사이트에 따라 일정범위내에 상술한 타입의 URI에 대한 요청이 발생한다.
따라서 본 실시예에 따르면, 각 웹서버의 특징에 따라, 특정 URI 타입 또는 이에 대한 사용자 액션에 의한 HTTP 비율에 관해 임계치를 설정하고 이를 기준으로 디도스 공격을 탐지하면, 사용자 액션에 의한 요청을 기준으로 더욱 정교하게 디도 스 공격을 탐지할 수 있는 효과가 있다. 이하에서는 복수의 웹서버에 대해서 사용자 액션에 의한 HTTP 개수 대비 특정 URI 개수 비율을 이용하여 디도스 공격을 탐지하는 경우를 중심으로 설명한다.
임계치 저장부(152)는 웹서버별로 정상 사용 상태에서 산출된 사용자 액션에 의한 HTTP 개수 대비 특정 URI 개수 비율을 저장한다. 본 실시예에 따른 디도스 공격 탐지 및 대응 장치는 하나의 웹서버에 구비되어 기능하거나 또는 복수의 웹서버를 관리하는 별도의 서버로서 구현될 수 있다. 이 경우 임계치 저장부(152)는 하나의 웹서버 또는 복수의 웹서버별로 각 임계치를 저장할 수 있다. 여기서, 임계치는 상술한 바와 같이 사용자 액션 수 대비 특정 URI 비율에 대한 임계치 또는 특정 URI 개수에 대한 임계치가 될 수 있다. 전자의 경우 해당 비율에 상술한 사용자 액션 임계치를 곱하면, 특정 URI 개수에 대한 임계치가 될 수 있다.
데이터 측정부(134)는 미리 특정된 타입의 URI 개수를 소정의 관측시간동안 IP별로 측정하고, 측정 결과를 상술한 별도의 데이터베이스에 저장할 수 있다.
디도스 판별부(136)는 상술한 바와 같이 특정 URI 개수를 소정의 임계치와 비교한 후 특정 URI 개수가 비교된 임계치보다 큰 경우 디도스 공격으로 탐지할 수 있다.
도 6a 내지 도 6c를 참조하면, 특정 웹사이트들이 샘플 트래픽이 도시된다. 도 6a 내지 도 6c는 사용자가 총 100번의 액션(direct request)을 취하는 동안 10초 단위로 발생하는 HTTP 개수, HTML 등 특정 URI 개수, IMAGE 개수를 나타낸다. X축은 관측시간 단위(각 단위는 10초로 설정되었음), Y축은 개수를 나타낸다.
도 6a는 www.naver.com, 도 6b는 www.nate.com, 도 6c는 www.auction.com에 대해 테스트한 결과이다. html, htm, php, asp 및 jsp와 같은 특정 URI에 대한 요청 개수가 naver는 727, nate는 326, auction은 854로 측정되었으며, 따라서 이러한 수치를 기준으로 각 웹사이트별 사용자 액션 수 대비 특정 URI 비율은 각각 1:7.2, 1: 3.2, 1:8.5 등으로 설정할 수 있으며, 이러한 비율을 기준으로 임계치를 설정할 수 있다. 만일, 10초당 사용자의 액션을 30번으로 제한(상술한 사용자 액션 임계치가 30인 경우)한다면, naver의 경우, 특정 URI 개수에 대한 임계치를 216(7.2×30)으로 설정할 수 있다. 이러한 비율 및 개수에 대한 임계치는 정상적인 사용 상태에서 많은 테스트를 통해 평균값으로 설정될 수 있다.
그 외 본 발명의 실시예에 따른 디도스 공격 탐지 및 대응 장치에 대한 구체적인 시스템 구성도, O/S 등의 공통 플랫폼 기술과 통신 프로토콜, I/O 인터페이스 등 인터페이스 표준화 기술 등에 대한 구체적인 설명은 본 발명이 속하는 기술 분야의 통상의 지식을 가진자에게 자명한 사항이므로 생략하기로 한다.
상기한 바에서, 본 발명의 실시예에 따른 디도스 공격 탐지 및 대응 장치 및 그 방법은 특정 수식 및 임계치의 수치 등을 일 실시예에 따라 기술하였으나, 반드시 이에 한정될 필요는 없고, 상기 수식 및 수치가 달라지더라도 전체적인 작용 및 효과에는 차이가 없다면 이러한 다른 구성은 본 발명의 권리범위에 포함될 수 있으며, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 디도스 공격 탐지 및 대응 장치의 시스템 구성도.
도 2는 본 발명의 실시예에 따른 디도스 공격 탐지 및 대응 장치의 블록 구성도.
도 3은 사용자 액션 및 이에 따라 추가 발생하는 요청들을 도시한 그래프.
도 4는 본 발명의 실시예에 따른 디도스 공격 탐지 및 대응 방법의 흐름도.
도 5는 본 발명의 다른 실시예에 따른 디도스 공격 탐지 및 대응 장치의 블록 구성도.
도 6a 내지 도 6c는 특정 웹사이트들의 샘플 트래픽을 도시한 도면.
도 7은 본 발명의 다른 실시예에 따른 디도스 공격 탐지 및 대응 방법의 흐름도.
<도면의 주요부분에 대한 부호의 설명>
110 : 클라이언트 단말기 120 : 웹서버
130 : 디도스 공격 탐지 및 대응 장치 140 : 네트워크
132 : 수신부 134 : 데이터 측정부
136 : 디도스 판별부 138 : 차단부

Claims (8)

  1. 소정의 IP로 특정되는 클라이언트 단말기로부터 HTTP 요청을 수신하는 수신부;
    상기 수신한 HTTP 요청 중 미리 특정된 URI의 개수를 소정의 관측시간동안 상기 IP별로 산출하는 데이터 측정부;
    상기 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 상기 특정 URI의 개수가 상기 임계치보다 큰 경우 상기 IP의 클라이언트 단말기의 접속을 디도스 공격으로 탐지하는 디도스 판별부; 및
    상기 디도스 판별부가 디도스 공격으로 탐지하는 경우 상기 클라이언트 단말기의 접속을 차단하는 차단부를 포함하는 디도스 공격 탐지 및 대응 장치.
  2. 제1항에 있어서,
    상기 임계치는 다음과 같은 수식으로 설정되는 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
    T = R×TU
    여기서, T는 상기 임계치, R은 미리 설정된 사용자 액션에 의한 상기 HTTP의 개수 대비 상기 특정 URI 개수 비율, TU는 사용자 액션 임계치임.
  3. 제2항에 있어서,
    상기 사용자 액션 임계치는 상기 관측시간이 10초인 경우 30 내지 50인 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
  4. 제3항에 있어서,
    상기 관측시간이 증가하는 경우 상기 관측시간이 증가하는 비율보다 작은 비율로 상기 임계치가 증가하는 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
  5. 제1항에 있어서,
    상기 특정 URI의 타입은 웹페이지의 구조 정보에 관한 타입인 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
  6. 제1항에 있어서,
    상기 특정 URI의 확장자는 html, htm, php, asp 및 jsp 중 어느 하나인 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
  7. 제1항에 있어서,
    상기 임계치를 웹서버에 따라 다르게 설정하여 저장한 저장부를 더 포함하되,
    상기 디도스 판별부는 상기 저장부로부터 상기 임계치를 추출하는 것을 특징으로 하는 디도스 공격 탐지 및 대응 장치.
  8. 제1항에 있어서,
    상기 산출된 특정 URI의 개수를 소정의 임계치와 비교하고, 상기 특정 URI의 개수가 상기 임계치의 소정 비율보다 큰 경우 상기 디도스 판별부의 작동을 개시하는 판별 개시부를 더 포함하는 디도스 공격 탐지 및 대응 장치.
KR1020090104781A 2009-11-02 2009-11-02 Uri 타입 기반 디도스 공격 탐지 및 대응 장치 KR101061375B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090104781A KR101061375B1 (ko) 2009-11-02 2009-11-02 Uri 타입 기반 디도스 공격 탐지 및 대응 장치
US12/917,881 US20110107412A1 (en) 2009-11-02 2010-11-02 Apparatus for detecting and filtering ddos attack based on request uri type

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090104781A KR101061375B1 (ko) 2009-11-02 2009-11-02 Uri 타입 기반 디도스 공격 탐지 및 대응 장치

Publications (2)

Publication Number Publication Date
KR20110048112A true KR20110048112A (ko) 2011-05-11
KR101061375B1 KR101061375B1 (ko) 2011-09-02

Family

ID=43926832

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090104781A KR101061375B1 (ko) 2009-11-02 2009-11-02 Uri 타입 기반 디도스 공격 탐지 및 대응 장치

Country Status (2)

Country Link
US (1) US20110107412A1 (ko)
KR (1) KR101061375B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101598187B1 (ko) * 2014-12-23 2016-02-26 주식회사 시큐아이 DDoS 공격 차단 방법 및 장치
CN114499917A (zh) * 2021-10-25 2022-05-13 中国银联股份有限公司 Cc攻击检测方法及cc攻击检测装置

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009828B1 (en) 2007-09-28 2015-04-14 Dell SecureWorks, Inc. System and method for identification and blocking of unwanted network traffic
KR101036750B1 (ko) * 2011-01-04 2011-05-23 주식회사 엔피코어 좀비행위 차단 시스템 및 방법
US20120290712A1 (en) * 2011-05-13 2012-11-15 Microsoft Corporation Account Compromise Detection
CN102281298A (zh) * 2011-08-10 2011-12-14 深信服网络科技(深圳)有限公司 检测和防御cc攻击的方法及装置
CN102932650B (zh) * 2011-08-11 2018-01-19 索尼公司 视频数据完整性保护和验证方法、设备和系统
US8549645B2 (en) 2011-10-21 2013-10-01 Mcafee, Inc. System and method for detection of denial of service attacks
KR20130084442A (ko) * 2012-01-17 2013-07-25 삼성전자주식회사 통신 시스템에서 서비스 거부 공격을 감지하기 위한 기지국 및 그 방법
WO2013112606A1 (en) 2012-01-24 2013-08-01 Strebe Matthew Methods and apparatus for managing network traffic
US20130291107A1 (en) * 2012-04-27 2013-10-31 The Irc Company, Inc. System and Method for Mitigating Application Layer Distributed Denial of Service Attacks Using Human Behavior Analysis
KR20140044970A (ko) * 2012-09-13 2014-04-16 한국전자통신연구원 접근 제어 목록을 이용한 공격 차단 제어 방법 및 그 장치
US9009832B2 (en) 2013-04-22 2015-04-14 Imperva, Inc. Community-based defense through automatic generation of attribute values for rules of web application layer attack detectors
US9148440B2 (en) 2013-11-25 2015-09-29 Imperva, Inc. Coordinated detection and differentiation of denial of service attacks
CN103685294B (zh) * 2013-12-20 2017-02-22 北京奇安信科技有限公司 拒绝服务攻击的攻击源的识别方法和装置
PL2975801T3 (pl) * 2014-07-18 2017-07-31 Deutsche Telekom Ag Sposób rozpoznawania ataku w sieci komputerowej
WO2016041607A1 (en) * 2014-09-19 2016-03-24 Telefonaktiebolaget L M Ericsson (Publ) Methods and nodes for handling overload
CN104378358A (zh) * 2014-10-23 2015-02-25 河北省电力建设调整试验所 一种基于服务器日志的HTTP Get Flood攻击防护方法
CN105897664A (zh) * 2015-01-26 2016-08-24 中兴通讯股份有限公司 一种对网络资源的恶意访问检测方法、装置及通信网关
CN106411828B (zh) * 2015-08-03 2019-06-28 阿里巴巴集团控股有限公司 量化防御结果的方法、装置及系统
CN107104929B (zh) * 2016-02-23 2021-03-09 阿里巴巴集团控股有限公司 防御网络攻击的方法、装置和系统
US10432650B2 (en) 2016-03-31 2019-10-01 Stuart Staniford System and method to protect a webserver against application exploits and attacks
CN106506547B (zh) * 2016-12-23 2020-07-10 北京奇虎科技有限公司 针对拒绝服务攻击的处理方法、waf、路由器及系统
US10616271B2 (en) 2017-01-03 2020-04-07 Microsemi Frequency And Time Corporation System and method for mitigating distributed denial of service attacks
US10581745B2 (en) * 2017-12-11 2020-03-03 International Business Machines Corporation Dynamic throttling thresholds
CN108494805B (zh) * 2018-05-25 2020-10-30 何林明 一种cc攻击的处理方法及装置
CN108833410B (zh) * 2018-06-19 2020-11-06 网宿科技股份有限公司 一种针对HTTP Flood攻击的防护方法及系统
CN110071941B (zh) * 2019-05-08 2021-10-29 北京奇艺世纪科技有限公司 一种网络攻击检测方法、设备、存储介质及计算机设备
CN112202821B (zh) * 2020-12-04 2021-03-30 北京优炫软件股份有限公司 一种cc攻击的识别防御系统及方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7742424B2 (en) * 2006-06-09 2010-06-22 Alcatel-Lucent Usa Inc. Communication-efficient distributed monitoring of thresholded counts
JP4877831B2 (ja) * 2007-06-27 2012-02-15 久美子 石井 確認システム、情報提供システム、ならびに、プログラム
US9088605B2 (en) * 2007-09-19 2015-07-21 Intel Corporation Proactive network attack demand management
US8370937B2 (en) * 2007-12-03 2013-02-05 Cisco Technology, Inc. Handling of DDoS attacks from NAT or proxy devices
US8612993B2 (en) * 2008-02-21 2013-12-17 Microsoft Corporation Identity persistence via executable scripts
US8199895B2 (en) * 2008-03-24 2012-06-12 Aspect Software, Inc. Leveraging a SIP forking model for distributed contact center routing
US8745731B2 (en) * 2008-04-03 2014-06-03 Microsoft Corporation Clustering botnet behavior using parameterized models

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101598187B1 (ko) * 2014-12-23 2016-02-26 주식회사 시큐아이 DDoS 공격 차단 방법 및 장치
CN114499917A (zh) * 2021-10-25 2022-05-13 中国银联股份有限公司 Cc攻击检测方法及cc攻击检测装置
CN114499917B (zh) * 2021-10-25 2024-01-09 中国银联股份有限公司 Cc攻击检测方法及cc攻击检测装置

Also Published As

Publication number Publication date
US20110107412A1 (en) 2011-05-05
KR101061375B1 (ko) 2011-09-02

Similar Documents

Publication Publication Date Title
KR101061375B1 (ko) Uri 타입 기반 디도스 공격 탐지 및 대응 장치
KR101077135B1 (ko) 웹 서비스 대상 응용계층 디도스 공격 탐지 및 대응 장치
US9900344B2 (en) Identifying a potential DDOS attack using statistical analysis
US10944784B2 (en) Identifying a potential DDOS attack using statistical analysis
US10061922B2 (en) System and method for malware detection
JP6291135B2 (ja) コネクション制御装置、コネクション制御方法およびコネクション制御プログラム
US9282116B1 (en) System and method for preventing DOS attacks utilizing invalid transaction statistics
US20120174220A1 (en) Detecting and mitigating denial of service attacks
EP3334117B1 (en) Method, apparatus and system for quantizing defence result
JP2019021294A (ja) DDoS攻撃判定システムおよび方法
CN109922072B (zh) 一种分布式拒绝服务攻击检测方法及装置
JP2019523584A (ja) ネットワーク攻撃防御システムおよび方法
KR101061377B1 (ko) 분포 기반 디도스 공격 탐지 및 대응 장치
JP6470201B2 (ja) 攻撃検知装置、攻撃検知システムおよび攻撃検知方法
CN109413022B (zh) 一种基于用户行为检测http flood攻击的方法和装置
EP2112800B1 (en) Method and system for enhanced recognition of attacks to computer systems
KR101794746B1 (ko) 네트워크의 침입을 탐지하는 방법, 방화벽 시스템 및 컴퓨터 판독 가능한 기록 매체
KR101701310B1 (ko) DDoS 공격 탐지 장치 및 방법
CN113037841B (zh) 一种提供分布式拒绝攻击的防护方法
KR101103744B1 (ko) 양방향 트래픽 분석을 통한 서비스 거부 공격 탐지 방법
KR20070083089A (ko) 이상 트래픽 분석방법
JP2007166154A (ja) 攻撃検出装置、攻撃検出方法および攻撃検出プログラム
KR20170011598A (ko) 서비스 거부 공격 탐지 및 차단 방법,시스템 및 컴퓨터프로그램
CN114584491A (zh) 检测方法、装置、存储介质、设备及程序产品
Elanthiraiyan et al. Interactive Detection and Classification of DDoS Attacks Using ESVM

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150813

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee