[go: up one dir, main page]

KR101598187B1 - DDoS 공격 차단 방법 및 장치 - Google Patents

DDoS 공격 차단 방법 및 장치 Download PDF

Info

Publication number
KR101598187B1
KR101598187B1 KR1020140187206A KR20140187206A KR101598187B1 KR 101598187 B1 KR101598187 B1 KR 101598187B1 KR 1020140187206 A KR1020140187206 A KR 1020140187206A KR 20140187206 A KR20140187206 A KR 20140187206A KR 101598187 B1 KR101598187 B1 KR 101598187B1
Authority
KR
South Korea
Prior art keywords
counter
source
image
text
http
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020140187206A
Other languages
English (en)
Inventor
이기홍
Original Assignee
주식회사 시큐아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 시큐아이 filed Critical 주식회사 시큐아이
Priority to KR1020140187206A priority Critical patent/KR101598187B1/ko
Application granted granted Critical
Publication of KR101598187B1 publication Critical patent/KR101598187B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/32Flooding
    • 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

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)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 DDoS 공격 차단 방법 및 장치에 관한 것으로, 본 발명의 일 실시예에 따른 DDoS 공격 차단 방법은, 출발지 IP(source IP)로부터 HTTP 패킷을 수신하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인(HTTP Request Line)에서 GET 메소드(GET method)를 포함하는지 여부를 판단하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI(Uniform Resource Identifier)가 텍스트(text)인지 이미지(image)인지 판단하는 단계, 상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터(text counter)를 증가시키고, 상기 GET 메소드가 요청하는 URI(request URI)가 이미지인 경우, 이미지 카운터(image counter)를 증가시키는 단계 및 상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계를 포함하는 것을 특징으로 한다.

Description

DDoS 공격 차단 방법 및 장치{METHOD AND APPARATUS FOR BLOCKING DISTRIBUTED DENIAL OF SERVICE}
본 발명은 DDoS 공격 차단 방법 및 장치에 관한 것이다.
DDoS 또는 분산 서비스 거부 공격은 여러 대의 공격자를 분산 배치하여 동시에 동작하게 함으로써 특정 사이트를 공격하는 해킹 방식의 하나이다. 서비스 공격을 위한 도구들을 여러 대의 컴퓨터에 심어놓고 공격 목표인 사이트의 컴퓨터 시스템이 처리할 수 없을 정도로 많은 분량의 패킷을 동시에 범람시킴으로써 네트워크의 성능을 저하시키거나 시스템을 마비시키는 방식이다.
이러한 DDoS 공격에 대하여 종래의 웹 플루딩(web flooding) 방어 기능의 경우, 발신지 IP별로 일정 시간 동안 GET/POST 등의 HTTP 메소드(HTTP method)의 요청 횟수가 임계치 이상 발생하는 경우, 공격으로 판단하고 해당 IP를 차단하는 방법이 대부분이다. 하지만, 이러한 종래 기술에 따르면, 정상적인 웹 접속과 비정상적인 웹 접속에 대해서 판단하기가 어려워 정상적인 웹 접속의 경우에도 차단이 되는 경우가 발생하게 된다는 문제점이 있다.
본 발명은 정상적인 웹 접속과 비정상적인 웹 접속을 판단하여, 정상적인 웹 접속 요청에 대한 서비스는 유지하고 비정상적인 웹 접속 요청에 대해서는 공격을 차단할 수 있는 DDoS 공격 차단 방법 및 장치를 제공하는데 그 목적이 있다.
본 발명의 일 실시예에 따른 DDoS 공격 차단 방법은, 출발지 IP(source IP)로부터 HTTP 패킷을 수신하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인(HTTP Request Line)에서 GET 메소드(GET method)를 포함하는지 여부를 판단하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI(Uniform Resource Identifier)가 텍스트(text)인지 이미지(image)인지 판단하는 단계, 상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터(text counter)를 증가시키고, 상기 GET 메소드가 요청하는 URI(request URI)가 이미지인 경우, 이미지 카운터(image counter)를 증가시키는 단계 및 상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따른 DDoS 공격 차단 장치는, 출발지 IP로부터 HTTP 패킷을 수신하는 통신부, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 패킷 분석부, 상기 패킷 분석부에서 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI가 텍스트인지 이미지인지 판단하는 요청 URI 분석부, 텍스트 카운터와 이미지 카운터를 포함하며, 상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터를 증가시키고, 상기 GET 메소드가 요청하는 URI가 이미지인 경우, 이미지 카운터를 증가시키는 카운터부 및 상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 제어부를 포함하는 것을 특징으로 한다.
본 발명의 또다른 실시예에 따른 DDoS 공격 차단을 위해 프로세서에 의해 수행되는 명령들이 저장되는 컴퓨터에 의해 판독 가능한 저장 매체에서, 상기 DDoS 공격 차단을 위해 프로세서에 의해 수행되는 명령은, 출발지 IP로부터 HTTP 패킷을 수신하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 단계, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI가 텍스트인지 이미지인지 판단하는 단계, 상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터를 증가시키고, 상기 GET 메소드가 요청하는 URI가 이미지인 경우, 이미지 카운터를 증가시키는 단계 및 상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계를 수행하는 것을 특징으로 한다.
본 발명에 따르면, HTTP 웹 서버를 공격하기 위해서 악의적인 GET 플루딩 공격에 대해서 정상적인 요청과 비정상적인 요청을 판단하여, 정상적인 요청에 대해서는 서비스를 지속해주고 비정상적인 요청에 대해서는 공격으로 판단하여 웹 서버가 공격으로부터 보호할 수 있다. 특히, 오탐 및 지능적인 방어 체계 무력화에 대응할 수 있다.
도 1은 본 발명이 적용되는 네트워크 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 DDoS 공격 차단 방법을 나타내는 순서도이다.
도 3은 본 발명의 다른 실시예에 따른 DDoS 공격 차단 방법을 나타내는 순서도이다.
도 4는 본 발명의 일 실시예에 따른 DDoS 공격 차단 장치의 내부 구성을 나타내는 블럭도이다.
도 5 내지 도 7은 본 발명이 적용되는 실제 예시를 나타내는 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다. 이 때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의해야 한다. 또한 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 장치를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명이 적용되는 네트워크 시스템을 나타내는 도면이다.
도 1을 참조하면, 네트워크 시스템은 복수의 단말 장치(111, 112, … ,11k), 네트워크(120), DDoS 보안 장치(130) 및 웹 서버(140)를 포함한다.
복수의 단말 장치(111, 112, … ,11k)는 네트워크(120)를 통해 웹 서버(140)에 연결되어 웹 서버(140)가 제공하는 서비스를 이용할 수 있다. 또한, 복수의 단말 장치(111, 112, … ,11k)는 컴퓨터, PC, 노트북, 휴대폰 등 네트워크(120)에 접속할 수 있는 모든 단말 장치를 포함할 수 있다.
네트워크(120)는 복수의 단말 장치(111, 112, … ,11k)와 웹 서버(140)를 연결한다. 또한, 네트워크(120)는 인터넷, 인트라넷 등 복수의 단말 장치(111, 112, … ,11k)가 접속할 수 있는 모든 네트워크를 포함할 수 있다.
DDoS 공격 차단 장치(130)는 네트워크(120)와 웹 서버(140) 사이에 위치할 수 있다. 또한, DDoS 공격 차단 장치(130)는 네트워크(120)와 웹 서버(140) 사이에서 통신되는 데이터 패킷들을 관리하도록 구성될 수 있다. 이러한 DDoS 공격 차단 장치(130)는 다른 보안 기능들을 함께 수행할 수도 있다. 예를 들면, DDoS 공격 차단 장치(130)는 방화벽(Firewall), 침입 차단 시스템(Intrusion Prevention System; IPS), 안티 바이러스(Anti-Virus), 안티 스팸(Anti-Spam), 웹 서버에 설치된 애플리케이션 제어 관련 기능 등을 수행할 수 있다. 또한, DDoS 공격 차단 장치(130)는 통합보안관리(Unified Threat Management; UTM) 장비, 방화벽(Firewall) 장비, 침입 차단 시스템(Intrusion Prevention System; IPS) 장비, WAF(Web Application Firewall) 장비, 애플리케이션 제어 장비와 결합될 수도 있다.
뿐만 아니라 DDoS 공격 차단 장치(130)는 복수의 단말 장치(111, 112, … ,11k)와 네트워크(120) 사이에 위치할 수도 있다. 이 경우, 내부 네트워크에서 외부로 전송되어 DDoS 공격에 참여하는 데이터 패킷들을 관리할 수 있다.
본 발명의 일 실시예에 따른 DDoS 공격 차단 장치(130)는 정상적인 웹 접속과 비정상적인 웹 접속을 판단하여, 정상적인 웹 접속 요청에 대한 서비스는 유지하고 비정상적인 웹 접속 요청에 대해서는 공격을 차단할 수 있다. 따라서, 특히, 오탐 및 지능적인 방어 체계 무력화에 대응할 수 있다.
웹 서버(140)는 DDoS 공격 차단 장치(130)를 통해 네트워크 (120)에 연결된다. 웹 서버(110)는 네트워크(120)를 통해 복수의 단말 장치(111, 112, … ,11k)에 연결되며, 복수의 단말 장치(111, 112, … ,11k)에 서비스를 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른 DDoS 공격 차단 방법을 나타내는 순서도이다.
먼저, 210 단계에서 출발지 IP(source IP)로부터 HTTP 패킷을 수신하고, 220 단계에서 수신한 HTTP 패킷을 분석하여, HTTP 요청 라인(HTTP Request Line)에서 GET 메소드(GET method)를 포함하고 있는지 여부를 판단한다. 정상적인 웹 접속의 경우, TEXT/HTML을 요청한 이후 해당 HTML 파일 내에 있는 이미지, 스크립트 또는 Flash 파일 등을 GET 메소드로 요청을 한다. 이와 비교하여, 웹 플루딩(web flooding) 공격의 경우, 특정 페이지 및 경로만 요청하게 된다. 본 발명의 일 실시예에 따르면, 이러한 정상과 비정상 요청에 대한 차이점을 이용하기 위하여 HTTP 요청 라인(HTTP Request Line)에서 GET 메소드(GET method)를 포함하고 있는지 여부를 판단한다.
220 단계에서 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 230 단계로 진행하여, GET 메소드가 요청하는 URI(Uniform Resource Identifier)가 텍스트인지 이미지인지 판단한다. GET 메소드가 요청하는 URI가 텍스트인 경우, 240 단계로 진행하여 텍스트 카운터(text counter)를 증가시키고, GET 메소드가 요청하는 URI가 이미지인 경우, 250 단계로 진행하여 이미지 카운터(image counter)를 증가시킨다. 텍스트는 HTML, ASP, CGI, PHP 등의 확장자로 확인 가능하고, 이미지는 JPG, JPEG, PNG, GIF 등의 확장자로 확인 가능하다.
그 후, 260 단계에서, 텍스트 카운터와 이미지 카운터의 값을 비교하여, 출발지 IP로부터 수신하는 패킷을 차단한다. 이때, 본 발명의 일 실시예에 따르면, 텍스트 카운터 또는 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 출발지 IP를 차단할 수 있다. 특히, 설정된 시간동안 상기 텍스트 카운터 또는 상기 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 출발지 IP를 차단할 수도 있다. 즉, 공격 판단 시, 일정 시간 동안 전체 GET 메소드가 몇 개 도착했는지 확인한 후, GET 메소드에 텍스트 URI 및 이미지 URI가 몇 개 있는지 판단하여, 텍스트 카운트만 증가하거나, 이미지 카운트만 증가한 경우에 공격으로 판단하여 출발지 IP를 차단할 수 있다.
일반적인 BOT들의 공격은 특정 URL에 대한 플루딩 공격을 반복한다는 특징이 있다. 특정 URL은 텍스트 URL일 수도 있고, 이미지 URL일 수도 있는데, 종래 기술은 출발지 IP별로 GET 메소드에 대한 임계치만으로 공격을 판단하였다. 따라서, 특정 URL에 이미지가 많은 경우, GET 메소드가 많이 발생하여 공격으로 오탐하는 경우가 있었고, 오탐을 방지하기 위해서 GET 메소드에 대한 임계치를 증가시킬 경우, 증가된 임계치만큼 공격 트래픽이 유입되게 된다는 문제점이 있었다.
이와 비교하여, 본 발명의 일 실시예에 따르면, 단순히 GET 메소드의 임계치를 고려하는 것이 아니라, 텍스트 카운터와 이미지 카운터의 값을 비교하여 오탐을 방지하면서도 공격 트래픽의 유입을 차단할 수 있다는 장점이 있다.
도 3은 본 발명의 다른 실시예에 따른 DDoS 공격 차단 방법을 나타내는 순서도이다.
먼저, 310 단계에서 출발지 IP로부터 HTTP 패킷을 수신한다.
이후, 320 단계에서 출발지 IP가 블랙 리스트(black list)에 등록된 IP인지 판단하여, 출발지 IP가 블랙 리스트에 등록된 IP라고 판단되는 경우, 340 단계로 진행하여 출발지 IP를 바로 차단한다.
320 단계에서 출발지 IP가 블랙 리스트에 등록된 IP가 아니라고 되는 경우, 330 단계로 진행하여 출발지 IP가 화이트 리스트(white list)에 등록된 IP인지 판단한다. 출발지 IP가 화이트 리스트에 등록된 IP라고 판단되는 경우, 350 단계로 진행하여 HTTP 패킷을 바로 통과시킨다.
330 단계에서 출발지 IP가 화이트 리스트에 등록된 IP가 아니라고 판단되는 경우, HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 단계, 즉, 도 2의 220 단계로 진행하고 그에 따른 과정을 진행한다.
이러한 본 발명의 일 실시예에 따르면, 이미 차단해야할 IP로 판단되어 블랙 리스트에 등록된 IP에 대해서는 굳이 분석과정을 진행하지 않고 바로 차단하고, 마찬가지로, 통과시켜도 되는 IP로 판단되어 화이트 리스트에 등록된 IP에 대해서는 굳이 분석과정을 진행하지 않고 바로 통과시키게 되어 효율성을 높일 수 있다.
이 경우, 320 단계와 330 단계는 그 순서가 바뀌어도 무방하다. 즉, 출발지 IP가 화이트 리스트에 등록된 IP인지 여부를 먼저 확인하고, 그 이후 출발지 IP가 블랙 리스트에 등록된 IP인지 여부를 확인하는 것도 가능하다.
나아가, 정상적인 웹 접속으로 판단된 출발지 IP에 대해서는 일정 시간 동안 화이트 리스트에 등록하여 해당 방어 기능을 우회하도록 하고, 비정상적인 웹 접속이라고 판단된 출발지 IP에 대해서는 일정 시간 동안 블랙 리스트에 등록하여 차단하도록 할 수도 있다.
지금까지 살펴본 발명의 실시예들은 프로세서에 의해 수행되는 명령들로 구현되어 컴퓨터에 의해 판독 가능한 저장 매체에 저장될 수 있다. 이러한 명령들이 프로세서에 의해 실행되는 경우, 위에서 설명한 흐름도 및/또는 블록도에서 특정된 기능들/동작들을 구현하는 수단을 생성할 수 있다. 흐름도/블록도들에서의 각 블록은 본 발명의 실시예들을 구현하는 하드웨어 및/또는 소프트웨어모듈 또는 로직을 나타낼 수도 있다. 또한, 블록도들에 언급한 기능들은 도면들에서 언급한 순서를 벗어나 발생할 수도 있고, 동시에 발생할 수도 있다.
컴퓨터에 의해 판독 가능한 매체는 예를 들어, 플로피 디스크, ROM, 플래시 메모리, 디스크 드라이브 메모리, CD-ROM, 및 다른 영구 저장부와 같은 비휘발성 메모리를 포함할 수 있으나, 이에 한정되지 않고 다양한 매체가 사용 가능하다.
도 4는 본 발명의 일 실시예에 따른 DDoS 공격 차단 장치의 내부 구성을 나타내는 블럭도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 DDoS 공격 차단 장치(400)는 통신부(410), 패킷 분석부(420), 요청 URI 분석부(430), 카운터부(440), 저장부(450) 및 제어부(460)를 포함할 수 있다.
통신부(410)는 DDoS 공격 차단 장치(400)와 네트워크 시스템을 연결하는 역할을 수행하며, 유선 또는/및 무선 통신을 수행한다. 통신부(410)는 DDoS 공격 차단 장치(400)와 웹 서버(140) 및 네트워크(120) 간에 통신을 위한 데이터의 송수신 기능을 수행할 수 있다. 본 발명의 실시예에 따르면, 통신부(410)는 출발지 IP로부터 HTTP 패킷을 수신한다.
패킷 분석부(420)는 통신부(410)를 통해 수신한 HTTP 패킷을 분석하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 패킷 분석부(420)는 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단한다. 또한, 패킷 분석부(420)는 임시 리스트(450)에 등록된 정보를 바탕으로 수신한 HTTP 패킷을 분석할 수 있다.
요청 URI 분석부(430)는 GET 메소드가 요청하는 URI를 분석하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 패킷 분석부(420)에서 수신한 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 요청 URI 분석부(430)는 GET 메소드가 요청하는 URI가 텍스트인지 이미지인지 여부를 판단한다. 또한, 요청 URI 분석부(430)는 임시 리스트(450)에 등록된 정보를 바탕으로 GET 메소드가 요청하는 URI를 분석할 수 있다.
카운터부(440)는 텍스트 카운터(441)와 이미지 카운터(442)를 포함하며, 카운팅하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 카운터부(440)는 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터를 증가시키고, GET 메소드가 요청하는 URI가 이미지인 경우, 이미지 카운터를 증가시킨다.
저장부(450)는 DDoS 공격 차단 장치(400)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(450)는 휘발성(volatile) 저장 매체 또는 비휘발성(nonvolatile) 저장 매체로 구성될 수 있으며, 양 저장 매체의 조합(combination)으로 구성될 수도 있다. 휘발성 저장 매체로는 RAM, DRAM, SRAM과 같은 반도체 메모리(semiconductor memory)가 포함될 수 있으며, 비휘발성 저장 매체로는 하드 디스크(hard disk), 플래시 낸드 메모리(Flash NAND Memory)가 포함될 수 있다. 본 발명의 일 실시예에 따르면, 저장부(450)는 블랙 리스트(451), 화이트 리스트(452) 및 임시 리스트(450)를 저장한다.
제어부(460)는 DDoS 공격 차단 장치(400)의 전반적인 동작을 제어하는 구성요소이다. 본 발명에서 제어부(460)는 DDoS 공격 차단 장치(400)가 패킷을 분석하고, 패킷의 통과/차단을 결정하는 과정의 전반적인 동작을 제어하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 제어부(460)는 텍스트 카운터(441)와 이미지 카운터(442)의 값을 비교하여, 출발지 IP로부터 수신하는 패킷을 차단한다. 나아가, 제어부(460)는 텍스트 카운터(441) 또는 이미지 카운터(442) 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 출발지 IP를 차단할 수 있고, 특히, 제어부(460)는 설정된 시간동안 텍스트 카운터(441) 또는 이미지 카운터(442) 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 출발지 IP를 차단할 수도 있다.
또한, 본 발명의 일 실시예에 따르면, 제어부(460)는 출발지 IP가 블랙 리스트(451)에 등록된 IP라고 판단되는 경우, 출발지 IP를 차단할 수 있다. 또한, 제어부(460)는 출발지 IP가 화이트 리스트에 등록된 IP라고 판단되는 경우, HTTP 패킷을 통과시킬수 있다. 나아가, 제어부(460)는 출발지 IP가 블랙 리스트 또는 화이트 리스트에 등록되지 않은 IP인 경우, 임시 리스트에 등록할 수도 있다.
위에서 설명한 것과 같이 본 발명의 실시예에 따른 DDoS 공격 차단 장치(400)는 통신부(410), 패킷 분석부(420), 요청 URI 분석부(430), 카운터부(440), 저장부(450) 및 제어부(460)를 이용하여 패킷을 분석하고, 패킷의 통과/차단을 결정할 수 있다.
위 설명에서는 패킷 분석부(420), 요청 URI 분석부(430), 카운터부(440) 및 제어부(460)가 별도의 블록으로 구성되고, 각 블록이 상이한 기능을 수행하는 것으로 기술하였지만 이는 기술상의 편의를 위한 것일 뿐, 반드시 이와 같이 각 기능이 구분되는 것은 아니다. 예를 들어, 패킷 분석부(420), 요청 URI 분석부(430) 및 카운터부(440)가 수행하는 기능을 제어부(460) 자체가 수행할 수도 있다.
도 5 내지 도 7은 본 발명이 적용되는 실제 예시를 나타내는 도면으로, DDoS 공격 차단 장치(130)를 통과하는 패킷을 캡쳐한 화면이다.
먼저, 도 5를 참조하면, No. 및 Time(510)은 인덱스를 나타내고, Source(520)는 출발지 IP, Destination(530)은 목적지 IP를 나타내며, Protocol(540)은 사용되는 프로토콜, Length(550)는 크기, Info(560) 해당 패킷의 정보를 나타낸다.
도 5는 정상적인 웹 접속인 경우에 텍스트와 이미지를 골고루 요청하는 과정을 나타내고 있다. Info(560)를 살펴보면, GET 메소드를 사용할 때, 텍스트(html, css, javascript)를 요청하는 경우가 있고, 이미지(PNG)를 이용하는 경우가 있어 정상적인 웹 접속으로 판단된다.
도 6은 비정상적인 웹 접속을 나타내는 화면으로 텍스트(html)만 요청하는 것을 나타내고, 도 7 역시 비정상적인 웹 접속을 나타내는 화면으로 이미지(jpeg)만을 요청하는 것을 나타내고 있다.
도 5 내지 도 7에서 도시하고 있는 실제 동작화면을 보면, 정상적인 웹 접속과 비정상적인 웹 접속이 확연히 다른 것을 알 수 있다. 본 발명은 이러한 점에 착안한 것으로 위와 같은 차이점을 이용하여 정상적인 요청과 비정상적인 요청을 판단하고, 정상적인 요청에 대해서는 서비스를 지속해주고 비정상적인 요청에 대해서는 공격으로 판단하여 웹 서버가 공격으로부터 보호할 수 있다. 특히, 오탐 및 지능적인 방어 체계 무력화에 대응할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.
111, 112, … ,11k: 단말 장치
120: 네트워크
130: DDoS 공격 차단 장치
140: 웹 서버

Claims (14)

  1. 출발지 IP(source IP)로부터 HTTP 패킷을 수신하는 단계;
    상기 HTTP 패킷의 HTTP 요청 라인(HTTP Request Line)에서 GET 메소드(GET method)를 포함하는지 여부를 판단하는 단계;
    상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI(Uniform Resource Identifier)가 텍스트(text)인지 이미지(image)인지 판단하는 단계;
    상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터(text counter)를 증가시키고, 상기 GET 메소드가 요청하는 URI(request URI)가 이미지인 경우, 이미지 카운터(image counter)를 증가시키는 단계; 및
    상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계를 포함하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  2. 제1항에 있어서,
    상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계는,
    상기 텍스트 카운터 또는 상기 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 상기 출발지 IP를 차단하는 단계를 포함하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  3. 제1항에 있어서,
    상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계는,
    설정된 시간동안 상기 텍스트 카운터 또는 상기 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 상기 출발지 IP를 차단하는 단계를 포함하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  4. 제1항에 있어서,
    상기 출발지 IP로부터 HTTP 패킷을 수신하는 단계 이후,
    상기 출발지 IP가 블랙 리스트(black list)에 등록된 IP인지 판단하는 단계; 및
    상기 출발지 IP가 블랙 리스트에 등록된 IP라고 판단되는 경우, 상기 출발지 IP를 차단하는 단계를 더 포함하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  5. 제1항에 있어서,
    상기 출발지 IP로부터 HTTP 패킷을 수신하는 단계 이후,
    상기 출발지 IP가 화이트 리스트(white list)에 등록된 IP인지 판단하는 단계; 및
    상기 출발지 IP가 화이트 리스트에 등록된 IP라고 판단되는 경우, 상기 HTTP 패킷을 통과시키는 단계를 더 포함하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  6. 제1항에 있어서,
    상기 출발지 IP로부터 HTTP 패킷을 수신하는 단계 이후,
    상기 출발지 IP가 블랙 리스트 또는 화이트 리스트에 등록된 IP인지 판단하하여, 상기 출발지 IP가 블랙 리스트 또는 화이트 리스트에 등록되지 않은 IP인 경우, 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 단계로 진행하는 것을 특징으로 하는 DDoS 공격 차단 방법.
  7. 출발지 IP로부터 HTTP 패킷을 수신하는 통신부;
    상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 패킷 분석부;
    상기 패킷 분석부에서 상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI가 텍스트인지 이미지인지 판단하는 요청 URI 분석부;
    텍스트 카운터와 이미지 카운터를 포함하며, 상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 상기 텍스트 카운터를 증가시키고, 상기 GET 메소드가 요청하는 URI가 이미지인 경우, 상기 이미지 카운터를 증가시키는 카운터부; 및
    상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 제어부를 포함하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  8. 제7항에 있어서,
    상기 제어부는,
    상기 텍스트 카운터 또는 상기 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 상기 출발지 IP를 차단하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  9. 제7항에 있어서,
    상기 제어부는,
    설정된 시간동안 상기 텍스트 카운터 또는 상기 이미지 카운터 중 하나의 카운터만 설정값 이상으로 증가하는 경우, 상기 출발지 IP를 차단하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  10. 제7항에 있어서,
    블랙 리스트, 화이트 리스트 및 임시 리스트를 저장하는 저장부를 더 포함하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  11. 제10항에 있어서,
    상기 제어부는,
    상기 출발지 IP가 상기 블랙 리스트에 등록된 IP라고 판단되는 경우, 상기 출발지 IP를 차단하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  12. 제10항에 있어서,
    상기 제어부는,
    상기 출발지 IP가 상기 화이트 리스트에 등록된 IP라고 판단되는 경우, 상기 HTTP 패킷을 통과시키는 것을 특징으로 하는 DDoS 공격 차단 장치.
  13. 제10항에 있어서,
    상기 제어부는,
    상기 출발지 IP가 상기 블랙 리스트 또는 상기 화이트 리스트에 등록되지 않은 IP인 경우, 상기 임시 리스트에 등록하고,
    상기 패킷 분석부 및 상기 요청 URI 분석부는 상기 임시 리스트에 등록된 정보를 통해 분석을 수행하는 것을 특징으로 하는 DDoS 공격 차단 장치.
  14. DDoS 공격 차단을 위해 프로세서에 의해 수행되는 명령들이 저장되는 컴퓨터에 의해 판독 가능한 저장 매체에서,
    상기 DDoS 공격 차단을 위해 프로세서에 의해 수행되는 명령은,
    출발지 IP로부터 HTTP 패킷을 수신하는 단계;
    상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함하는지 여부를 판단하는 단계;
    상기 HTTP 패킷의 HTTP 요청 라인에서 GET 메소드를 포함한다고 판단하는 경우, 상기 GET 메소드가 요청하는 URI가 텍스트인지 이미지인지 판단하는 단계;
    상기 GET 메소드가 요청하는 URI가 텍스트인 경우, 텍스트 카운터를 증가시키고, 상기 GET 메소드가 요청하는 URI가 이미지인 경우, 이미지 카운터를 증가시키는 단계; 및
    상기 텍스트 카운터와 상기 이미지 카운터의 값을 비교하여, 상기 출발지 IP로부터 수신하는 패킷을 차단하는 단계를 수행하는 것을 특징으로 하는 컴퓨터에 의해 판독 가능한 저장 매체.
KR1020140187206A 2014-12-23 2014-12-23 DDoS 공격 차단 방법 및 장치 Active KR101598187B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140187206A KR101598187B1 (ko) 2014-12-23 2014-12-23 DDoS 공격 차단 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140187206A KR101598187B1 (ko) 2014-12-23 2014-12-23 DDoS 공격 차단 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101598187B1 true KR101598187B1 (ko) 2016-02-26

Family

ID=55447669

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140187206A Active KR101598187B1 (ko) 2014-12-23 2014-12-23 DDoS 공격 차단 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101598187B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180118401A (ko) * 2017-04-21 2018-10-31 에스케이브로드밴드주식회사 네트워크관리장치 및 방법
CN111090426A (zh) * 2019-12-19 2020-05-01 北京浪潮数据技术有限公司 一种http请求处理的方法、系统及设备
WO2021221266A1 (ko) * 2020-04-28 2021-11-04 주식회사 락인컴퍼니 위협 사용자의 접속차단방법 및 프로그램 보안 적용방법
CN115225368A (zh) * 2022-07-15 2022-10-21 北京天融信网络安全技术有限公司 一种报文处理方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110048349A (ko) * 2009-11-02 2011-05-11 한국전자통신연구원 Http를 이용한 통신에서 불완전한 get 요청 메시지에 의한 서비스 거부 공격을 탐지하는 방법 및 그 장치
KR20110048112A (ko) * 2009-11-02 2011-05-11 한국인터넷진흥원 Uri 타입 기반 디도스 공격 탐지 및 대응 장치
KR101095447B1 (ko) * 2011-06-27 2011-12-16 주식회사 안철수연구소 분산 서비스 거부 공격 차단 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110048349A (ko) * 2009-11-02 2011-05-11 한국전자통신연구원 Http를 이용한 통신에서 불완전한 get 요청 메시지에 의한 서비스 거부 공격을 탐지하는 방법 및 그 장치
KR20110048112A (ko) * 2009-11-02 2011-05-11 한국인터넷진흥원 Uri 타입 기반 디도스 공격 탐지 및 대응 장치
KR101095447B1 (ko) * 2011-06-27 2011-12-16 주식회사 안철수연구소 분산 서비스 거부 공격 차단 장치 및 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180118401A (ko) * 2017-04-21 2018-10-31 에스케이브로드밴드주식회사 네트워크관리장치 및 방법
KR101977612B1 (ko) * 2017-04-21 2019-05-13 에스케이브로드밴드주식회사 네트워크관리장치 및 방법
CN111090426A (zh) * 2019-12-19 2020-05-01 北京浪潮数据技术有限公司 一种http请求处理的方法、系统及设备
WO2021221266A1 (ko) * 2020-04-28 2021-11-04 주식회사 락인컴퍼니 위협 사용자의 접속차단방법 및 프로그램 보안 적용방법
CN115225368A (zh) * 2022-07-15 2022-10-21 北京天融信网络安全技术有限公司 一种报文处理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US10855700B1 (en) Post-intrusion detection of cyber-attacks during lateral movement within networks
US9443075B2 (en) Interception and policy application for malicious communications
US9654494B2 (en) Detecting and marking client devices
US8839442B2 (en) System and method for enabling remote registry service security audits
US9015839B2 (en) Identifying malicious devices within a computer network
KR101095447B1 (ko) 분산 서비스 거부 공격 차단 장치 및 방법
US11483339B1 (en) Detecting attacks and quarantining malware infected devices
EP2850781B1 (en) Methods, systems, and computer readable media for measuring detection accuracy of a security device using benign traffic
US9444830B2 (en) Web server/web application server security management apparatus and method
KR101598187B1 (ko) DDoS 공격 차단 방법 및 장치
CN113810423A (zh) 一种工控蜜罐
CN102457415B (zh) Ips检测处理方法、网络安全设备和系统
TWM542807U (zh) 網路資訊安全偵測系統
Movva et al. Intelligent IDS: Venus fly-trap optimization with honeypot approach for intrusion detection and prevention
US11539738B1 (en) Methods, systems, and media for mitigating damage resulting from a website being an intermediary in a cyberattack
KR101252812B1 (ko) 네트워크 보안 장치 및 그를 이용한 패킷 데이터 처리방법
KR101231966B1 (ko) 장애 방지 서버 및 방법
Gao et al. Software-defined firewall: Enabling malware traffic detection and programmable security control
KR100983549B1 (ko) 클라이언트 ddos 방어 시스템 및 그 방법
Jamar et al. E-shield: Detection and prevention of website attacks
Naveed et al. Network intrusion prevention by configuring acls on the routers, based on snort ids alerts
KR101606088B1 (ko) 악성 코드 탐지 방법 및 장치
Choi et al. Slowloris dos countermeasure over websocket
KR101686472B1 (ko) 네트워크 보안 장치, 네트워크 보안 장치에서 수행되는 악성 행위 방어 방법
EP3595257B1 (en) Detecting suspicious sources, e.g. for configuring a distributed denial of service mitigation device

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20190201

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20200203

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 11