KR20030059204A - 분산 네트워크의 노드상의 과부하 조건으로부터 보호하기위한 방법 및 장치 - Google Patents

분산 네트워크의 노드상의 과부하 조건으로부터 보호하기위한 방법 및 장치 Download PDF

Info

Publication number
KR20030059204A
KR20030059204A KR10-2003-7005400A KR20037005400A KR20030059204A KR 20030059204 A KR20030059204 A KR 20030059204A KR 20037005400 A KR20037005400 A KR 20037005400A KR 20030059204 A KR20030059204 A KR 20030059204A
Authority
KR
South Korea
Prior art keywords
traffic
victim
elements
network
diverted
Prior art date
Application number
KR10-2003-7005400A
Other languages
English (en)
Other versions
KR100796996B1 (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 왠월 인코포레이티드
Publication of KR20030059204A publication Critical patent/KR20030059204A/ko
Application granted granted Critical
Publication of KR100796996B1 publication Critical patent/KR100796996B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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/1416Event detection, e.g. attack signature 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/1458Denial of Service

Abstract

분산 네트워크내의 노드("피해자")에서의 과부하 조건에 응답하여 또는 과부하 조건으로부터 보호하기 위한 방법 및 장치는 피해자에게로 향했을 트래픽을 하나 이상의 다른 노드로 다이버팅하는데, 상기 하나 이상의 다른 노드는 다이버팅된 트래픽을 필터링하고, 그 일부를 피해자에게로 패싱하고, 피해자를 위해 다이버팅된 패킷 중 하나 이상의 프로세싱을 수행할 수 있다. 다이버팅은 피해자의 외부의 하나 이상의 노드(일괄하여, 노드의 "제 1 세트")에 의해 수행될 수 있다. 필터링 및/또는 트래픽 프로세싱의 수행은 역시 피해자의 외부의 하나 이상의 노드(일괄하여, 노드의 "제 2 세트")에 의해 수행될 수 있다. 그들 제 1 및 제 2 세트는 0개, 1개, 또는 그 이상의 노드를 공통으로 가질 수 있거나, 또는 전체적으로 오버래핑되거나, 부분적으로 오버래핑되거나, 또는 전혀 오버래핑되지 않거나 하는 다른 방식으로 배치될 수 있다. 본 방법 및 장치는 인터넷과 같은 분산 네트워크내의 노드를 분산 서비스 거부(DDoS) 공격으로부터 보호하는데 적용될 수 있다.

Description

분산 네트워크의 노드상의 과부하 조건으로부터 보호하기 위한 방법 및 장치{METHODS AND APPARATUS FOR PROTECTING AGAINST OVERLOAD CONDITIONS ON NODES OF A DISTRIBUTED NETWORK}
전형적으로 초기 컴퓨터 시스템은 전용 로컬 키보드, 테이프 드라이브, 디스크 드라이브, 카드 판독기 등을 통하여 입력된 데이터 및 커맨트만을 프로세싱하는 스탠드-얼론이였다. 원격 액세스가 가능하였으나, 원격 사용자의 키보드에 대한 서로게이트 또는 프록시로서 이용될 수 밖에 없었던 전화 회선 및 모뎀을 통하여서만 가능하였다. 1980년대 초기까지, 국가 네트워크는 대학, 국방성, 및 다른 대규모 컴퓨터 시스템 사이에서 데이터 통신을 수행하기 위해 발전되어 왔다. 혼합된 전용 회선 및 모뎀에 의존하는 이러한 초기 인터넷(그 때는 아파넷이라 공지됨)은 일반 대중에게는 액세스될 수 없었고, 따라서, 타국에 대한 첩보활동에 이용되었으나, 대부분, "해커"로부터의 광범위한 공격은 없었다.
1990년대를 거치면서, 국가 네트워크는 거의 전세계적으로 수백만의 정부, 연구소, 및 상업 노드를 가질만큼 확장되었다. 후자는 일반 대중에게 저비용의 액세스를 제공하는 소위 인터넷 서비스 제공자(ISP)를 포함한다. 사람들은 사실 순전히 나쁜 의도는 아니더라도-적어도 허용되는 시간, 자원, 및 관심사에 있어서는-네트워크상의 인기있는 노드(또는 사이트)로의 액세스를 블로킹한다는 점에서 유해한 것을 포함한다. 이러한 사이버테러의 가장 나쁜 형태는 분산 서비스 거부(DDoS) 공격인데, 하나의 노드로 접근하여 서비스를 요청하는 컴퓨터들이 많은 소스로부터 온 것처럼 보일 수 있지만 결국에는 몇몇 해커의 컴퓨터로부터 나온 수백만의 위장 요청에 의해 무력화된다.
YAHOO, CNN, 및 다른 주요 사이트에 대한 공격의 쇄도와 더불어 지난 몇년 동안 발생해 오고 있는 많은 DDoS 공격에도 불구하고, 그것들을 방어하기 위한 온라인 솔루션은 여전히 알려져 있지 않다.
상기한 것들을 고려하여, 본 발명의 목적은 개량된 분산 데이터 네트워크 및 그 동작 방법을 제공하는 것이다. 본 발명의 관련 목적은 그러한 분산 데이터 네트워크상에서 사용하기 위한 개량된 노드, 디바이스, 및 그 동작 방법을 제공하는 것이다.
더 나아간 관련 목적은 악의거나, 적법하거나, 또는 그렇지 않은 과부하 조건으로부터 보호를 더 강화하기 위한 개량된 데이터 네트워크, 노드, 디바이스, 및 그 동작 방법을 제공하는 것이다.
더 나아간 관련 목적은 DDoS 공격으로부터 보호를 더 강화하기 위한 개량된 데이터 네트워크, 노드, 디바이스, 및 그 동작 방법을 제공하는 것이다.
또 다른 본 발명의 목적은 인터넷과 같은 현존 네트워크뿐만 아니라 다른 네트워크에서도 사용될 수 있는 개량된 데이터 네트워크, 노드, 디바이스, 및 그 동작 방법을 제공하는 것이다.
또 다른 본 발명의 목적은 저비용으로 구현될 수 있고 스케일러블한 데이터 네트워크, 노드, 디바이스, 및 그 동작 방법을 제공하는 것이다.
본 출원은 본명세서에서 참조로 편입되어 있고 "분산 네트워크 방어 시스템"이라 명칭된 2000년 10월 17일자 미국 가특허출원 제60/240,899호의 우선권 이익을 주장한다.
본 발명은 분산 데이터 네트워크에 관한 것이고, 더 구체적으로는, 그러한 네트워크의 노드에서 과부하 조건으로부터 보호하는 것에 관한 것이다. 이것은, 분산 서비스 거부(DDoS) 공격 및 플래시 크라우드로부터, 인터넷 등과 같은 네트워크의 서버, 사이트, 및 다른 엘리먼트를 보호하는 데 응용될 수 있으나, 이것은 제한이 아닌 예시일 뿐이다.
도 1은 본 발명에 따라 구성되고 동작하는 분산 네트워크의 묘사도,
도 2 및 도 3은 본 발명에 따른 보호자 머신의 아키텍처의 묘사도, 및
도 4a 및 도 4b는 클라이언트를 검증하기 위한 3-웨이 핸드셰이크동안의 메시지의 시퀀스를 묘사한 도.
(발명의 개요)
본 발명의 이들 및 다른 목적은 분산 네트워크상에 배치된 일세트의 잠재적인 피해자(victim)내의 사이트, 서버, 또는 다른 네트워크 엘리먼트(피해자)에서 과부하 조건으로부터 보호하는 방법을 제공하는 본 발명의 일태양에 의해서 얻어질 수 있다. 본 방법은 피해자에게로 향했을 트래픽을 하나 이상의 다른 네트워크 엘리먼트 제 2 세트로 선택적으로 다이버팅하도록 (예를 들어, 이미 네트워크상에 상주할 수 있는) 하나 이상의 네트워크 엘리먼트의 제 1 세트를 사용하는 것을 포함한다. 제 2 세트의 엘리먼트는 다이버팅된 트래픽을 필터링하고, 그 일부를 피해자에게 패싱한다. 트래픽을 다이버팅할 때, 제 1 세트의 엘리먼트는 그것이 (그러한 다이버팅이 없었더라면) 가질 것이었던 경로와는 다른 경로를 갖게 한다. 따라서, 예를 들어, 트래픽이 그 정규 노드 경로로 계속하여 피해자에게로 가게 하기보다는, 본 발명의 이러한 태양에 따른 방법은 제 2 세트의 엘리먼트로 트래픽이 리디렉팅하게 하여, 그로부터 (예를 들어 필터링 및/또는 부분 프로세싱 후에) 다시 피해자에게로 리라우팅될 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 제 1 세트의 엘리먼트는 "보호 영역"이라 불릴 수 있는 영역 주위의 포인트에 배치된다. 제 2 세트의 엘리먼트는 제 1 세트의 엘리먼트 외부에 배치될 수 있거나, 예를 들어, 동일 네트워크 엘리먼트 또는 노드에 공동-상주하여 인접해 있을 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 각각의 잠재적인 피해자는 적어도 2개의 IP 주소와 연관되어 있으며, 예를 들어, 그 중 하나에 의해 피해자는 (예를 들어 DNS 시스템을 통하여) 공공연하게 공지되고 다른 하나에 의해 피해자는 (예를 들어 보호 영역내의 다른 선택 노드 또는 제 2 세트의 엘리먼트에 의해서만) 비공식적으로 알려진다. 본 발명의 이들 태양에 따라, 제 1 (공개; public) 주소로 향했을 모든 트래픽을 제 2 세트의 엘리먼트로 다이버팅하고, 제 2 (비공개; private) 주소를 사용하여, 그들 엘리먼트로부터만, 트래픽을 피해자에게로 패싱함으로써 필터링할 수 있다.
관련 태양에 있어서, 본 발명은 상기한 바와 같은 방법을 제공하는데, 제 1 세트의 엘리먼트는, 예를 들어, DDoS 공격 또는 다른 과부하 조건에 응답하여, 다이버팅을 제공하도록 선택적으로 액팅될 수 있다. 다이버팅은, 예를 들어, 제 2세트의 엘리먼트를 통하여 피해자의 공개 주소에 도달될 수 있음(또는, 다른 방식으로, 공개 주소가 네트워크 거리에 있어서 그들 엘리먼트에 근접해 있음)을 선언함으로써 이뤄질 수 있다. 대안으로 또는 부가적으로, 그러한 다이버팅은 공개 주소가 (네트워크 거리에 있어서) 피해자로부터 멀리 떨어져 있음을 선언함으로써 이뤄질 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 다이버팅은, 예를 들어 (예를 들어, 시스코의 폴리시 기반 라우팅을 사용하는) 라우터 또는 제 1 세트의 다른 엘리먼트에 의해, 트래픽을 그것이 수신되었던 인터페이스의 함수로서 리디렉팅함으로써 이뤄질 수 있다.
본 발명의 더 관련된 태양에 있어서, 다이버팅은, WCCP(웹 캐시 코디네이션 프로토콜) 버전 2를 사용하여, 더 구체적으로는, 예를 들어, 계층 2 수신지 주소 재기록 및/또는 GRE(제너릭 라우팅 인캡슐레이션)를 사용하여, (제 2 세트의 엘리먼트가 WCCP에 의해 관찰된 웹 캐싱 머신인 것처럼) 피해자에게로 향했을 트래픽을 제 2 세트의 엘리먼트로 라우팅함으로써, 이뤄질 수 있다. 그들 엘리먼트로부터 리턴된 패킷은, 예를 들어 제 1 인스턴스에서 트래픽을 다이버팅했던 제 1 세트의 엘리먼트에 있어서 또는 제 2 세트의 엘리먼트와 피해자 사이에 배치된 (다른) 라우터에 있어서, 라우팅 테이블을 사용하여 피해자에게로 라우팅될 수 있다.
또한 다이버팅은, 본 발명의 또 다른 태양에 따라, 피해자에게로 향했을 트래픽이 제 2 세트의 엘리먼트로 라우팅되게 하도록 BGP 공표의 발행을 통하여, 그리고, (예를 들어, 상응하는 제 1 세트의 엘리먼트를 통하여) 엘리먼트의 제 2 세트로부터 피해자에게로 트래픽을 라우팅하도록 폴리시 기반 라우팅(PBR)의 사용을 통하여, 이뤄질 수 있다.
또 다른 관련 태양에 있어서, 피해자에게로 향했을 트래픽이 제 2 세트의 엘리먼트로 라우팅되게 하도록 BGP의 사용을 통하여, 그리고, 엘리먼트의 제 2 세트로부터 피해자에게로 트래픽을 라우팅하도록 MAC 또는 다른 계층 2 주소의 사용을 통하여 - 데이터 센터 또는 호스팅 센터로의 입구에서 - 다이버팅은 이뤄질 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 노드의 제 2 세트에 의한 다이버팅된 트래픽의 필터링은 수상한 악의의 트래픽을 검출하는 것을 포함한다. 이것은, 예를 들어 수상한 해커의 것들과 같은 선택된 발생 포인트로부터의 트래픽일 수 있다. 또한 그것은 스푸핑된 발생 또는 스푸핑된 라우팅 주소를 갖는 트래픽일 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 필터링은 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 것을 포함한다. 피해자의 타입에 의존하여, 이것은, 단지 예로서, 피해자의 특정 서비스를 요구하는 그들 패킷만을 피해자에게 패싱하도록 사용될 수 있다. 다른 서비스를 요구하는 트래픽은 블로킹되거나, 제 2 세트의 네트워크 엘리먼트에 의해 처리될 수 있다.
예로서, 피해자가 전자상거래 사이트라면, 고객 주문을 포함하는 패킷은 제 2 세트의 네트워크 엘리먼트에 의해 그것으로 패싱될 수 있다. UDP 및 ICMP와 같은 다른 패킷은 폐기될 수 있다. 메일 서버 또는 IRC와 같이, 피해자에 의해 제공된 서비스가 다르다면, 그 때 상응하는 패킷이 피해자에게로 패싱될 수 있는 반면, 피해자에 의해 요구되지 않는 나머지들은 폐기될 수 있다.
본 발명의 다른 태양은 상기한 바와 같은 방법을 제공하는데, 필터링은 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 것을 포함한다. 예를 들어, 이것은 피해자에게로 패싱된 임의의 트래픽이 예를 들어 잠재적으로 악의있는 소스로부터 온 것이 아니고 적법한 소스로부터 온 것임을 보증하기 위하여 피해자를 위해 검증 프로토콜을 실행(예를 들어, 소스와 3-웨이 핸드셰이크를 수행하거나 그것에 사람의 입력을 요구하는지 조회)하는 것을 포함할 수 있다. 본 발명의 다른 태양에 따라, 부분 프로세싱은 다이버팅된 트래픽을 발생시킨 사이트에서의 "쿠키"를 기억 및/또는 업데이팅하는 것을 포함할 수 있다. 또한 그것은 피해자와 연관된 대안의 URL로 그러한 트래픽을 디렉팅 또는 리디렉팅하도록 트래픽을 수정하는 것을 포함할 수 있다.
본 발명의 특정 태양에 따라 제 2 세트의 네트워크 엘리먼트에 의해 수행되는 프로세싱은, 예를 들어 소스에서의 적어도 임시 사용자가 관계되는 한, 피해자의 이름으로 수행된다. 다른 그러한 프로세싱은, 그러한 사용자가 프로세싱을 수행하는 엘리먼트의 신원을 분간할 수 있는지에 관계없이, 피해자에 의한 프로세싱 대신에 수행된다.
본 발명의 더 나아간 관련 태양에 있어서, 제 2 세트의 엘리먼트는 (ⅰ)피해자에게 그들 패킷을 (수정하지 않고, 수정하여, 미리 프로세싱하여, 검증하여, 또는 다른 방법으로) 전송하고, (ⅱ)(예를 들어, 검증, 부가적인 프로세싱, 또는 다른 목적으로) 피해자 또는 네트워크상의 다른 엘리먼트 및/또는 노드로 라우팅하기 위해 패킷을 더 생성함으로써, 피해자에게로 향했을 트래픽에 응답할 수 있다. 다른 경우에 있어서, 전송되거나 생성된 패킷의 라우팅은 제 2 세트의 엘리먼트로부터 피해자에게로 다이버팅된 패킷을 전송하는 것과 관련되어 상기한 바와 같은 동일한 기술을 사용하여 이뤄질 수 있다. 예로서, 제 2 세트의 엘리먼트에 의해 생성된 패킷은 그들 엘리먼트에 의해 피해자 또는 다른 노드로 주소지정될 수 있고, 다른 메카니즘 중에서, 라우팅 테이블, PBR, MAC, 또는 다른 계층 2 주소지정을 사용하여 거기로 전송될 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 제 2 세트의 하나 이상의 엘리먼트는 다이버팅된 트래픽을 피해자 외부의 또 다른 네트워크 엘리먼트로 디렉팅하고, 다른 엘리먼트는 피해자를 위해 완전 또는 부분 프로세싱을 수행할 수 있다(그 중 하나의 가능성은 역 프록시의 분산 세트로서 액팅하는 것이다).
또 다른 태양에 있어서, 본 발명은 상기한 바와 같은 방법을 제공하는데, 제 1 세트의 엘리먼트는 필터링도 수행한다. 제한이 아닌 예로서, 이것은 트래픽이 수신되는 인터페이스에 대하여 트래픽의 소스 주소를 비교하는 것을 포함할 수 있다. 이것은 네트워크 인터페이스상에 도달하는 트래픽을 샘플링하는 것, 그 경로에서의 변경을 트래킹하는 것, 및/또는 적법성을 검정하기 위해 그 트래픽의 소스를 문의하는 것을 더 포함할 수 있다.
본 발명의 또 다른 태양은 상기한 바와 같은 방법을 제공하는데, 필터링 단계는 네트워크상의 트래픽 패턴에서의 차이를 검출하는 단계를 포함한다. 이것은 피해자 또는 잠재적 피해자의 세트가 과부하되지 않을 때 트래픽 볼륨, 포트 번호 분포, 요청의 주기성, 패킷 속성, IP 지오그래피, 패킷 도달/크기의 분포, 및/또는 잠재적 피해자 트래픽의 다른 태양을 분간하도록 네트워크 플로, 서버 로그 등을 기록하는 것을 포함한다. 또한, 그것은 DDoS 공격과 같은 과부하 조건동안 또는 개시시 피해자 트래픽의 이들(또는 다른) 태양을 모니터링하는 것을 포함할 수 있다. 피해자 및 잠재적 피해자 트래픽은, 예를 들어 그들이 개인 사용자, 호스트 또는 프록시를 공유하는 복수의 사용자, 웹 크롤러, 모니터링 서버 등으로부터 기인한 것인지와 같이 소스 타입에 의해, 본 발명의 관련 태양에 따라, 분류될 수 있다.
이들 및 다른 태양에 따라, 필터링 단계는 예를 들어 이전 주기로부터의 그러한 기대 패턴을 갖는 과부하 조건하에 시스템이 있을 때 트래픽 패턴을 비교하는 것을 포함한다. 그러한 비교는 통계적으로 중대한 점에 있어서 기대 또는 이력 패턴과 다른 변경을 식별하는 것을 포함할 수 있다.
본 발명의 나아간 태양은 상기한 바와 같은 방법을 제공하는데, 하나 이상의 엘리먼트는 네트워크 트래픽을 더 필터링하기 위한 규칙을 생성한다. 제 1 또는 제 2 세트의 엘리먼트에 의해 수행될 수 있는 이러한 규칙은 필터링하기 위한 넷플로 및 필터링하기 위한 기간을 지정한다.
본 발명의 상기 태양에 따른 방법은 제 1 세트, 제 2 세트, 또는 피해자의 엘리먼트 자신에 대하여, 공격 또는 추정되는 공격을 검출하는 것을 포함할 수 있다. 또한, 상기 기술을 이용하여, 다이버팅 및/또는 필터링은 예를 들어 공격을 검출하는 피해자(또는 다른 노드)의 요청시에 선택적으로 이뤄질 수 있다.
본 발명의 더 나아간 태양은 상기 방법에 따라 동작하는, 라우터, 스위치, 서버 및 다른 디바이스와 같은, 노드 및 디바이스를 제공한다. 예를 들어, 제 2 세트의 엘리먼트는 네트워크로부터 트래픽을 수신하는 입력부 및 필터링된 트래픽을 예를 들어 네트워크를 통하여 피해자에게로 패싱하는 출력부를 포함할 수 있다. 필터 모듈은 잠재적으로 과부하 조건을 야기시키는 것으로 의심되는 소스로부터의 트래픽을 블로킹하고, 통계학을 사용하여 그러한 소스를 식별하는 통계 엘리먼트에 연결되어 있다.
그러한 장치는 과부하 조건의 종료를 검출하기 위한 모듈을 더 포함할 수 있다. 또한, 본 발명의 나아간 태양에 따라, 그것은 트래픽을 블로킹하기 위한 규칙을, 입구 필터를 동작시키는 제 1 세트의 엘리먼트와 같은, 네트워크상의 다른 엘리먼트에 송신하는 기능을 포함할 수 있다. 또한, 안티스푸핑 엘리먼트는 악의있는 트래픽의 소스가 스푸핑된 소스 IP 주소를 갖는 패킷을 생성하는 것을 방지할 수 있다.
본 발명의 더 나아간 태양은 이하 본 발명의 청구항-방식 설명에 있어서 명백해진다.
1. 네트워크상의 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 네트워크 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 네트워크 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
2. 제 1 항에 있어서, 상기 다이버팅 단계는 트래픽이 피해자에게로 갔을 경로와는 다른 트래픽 경로를 달성하는 단계를 포함하는 것을 특징으로 하는 방법.
3. 제 1 항에 있어서, 상기 필터링 단계는 (ⅰ)기대 패턴과 다른 트래픽 패턴 및 (ⅱ)기대 볼륨과 다른 트래픽 볼륨 중 어느것이든 검출하는 단계를 포함하고, 상기 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 중대하게 변화하는지를 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
4. 제 1 항에 있어서, 필터링 단계는 수상한 악의있는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
5. 제 4 항에 있어서, 검출하는 단계는 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
6. 제 5 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
7. 제 6 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
8. 제 7 항에 있어서, 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
10. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서, 하나 이상의 잠재적인 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
11. 제 10 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
12. 제 10 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
13. 제 12 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
14. 제 12 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
15. 제 12 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
16. 제 10 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
17. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
C. 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱함으로써 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
18. 제 17 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
19. 제 18 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
20. 제 18 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
21. 제 17 항 내지 제 20 항 중 어느 한 항에 있어서, 검출 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
22. 제 21 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
23. 제 22 항에 있어서, 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
24. 제 17 항 내지 제 20 항 중 어느 한 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
25. 제 17 항 내지 제 20 항 중 어느 한 항에 있어서, 하나 이상의 잠재적인 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
26. 제 25 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
27. 제 25 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
28. 제 27 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
29. 제 27 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
30. 제 27 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
31. 제 25 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
32. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
C. 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 방법.
33. 제 32 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
34. 제 33 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
35. 제 33 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
36. 제 32 항 내지 제 35 항 중 어느 한 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
37. 제 36 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
38. 제 37 항에 있어서, 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
39. 제 32 항 내지 제 35 항 중 어느 한 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
40. 제 32 항 내지 제 35 항 중 어느 한 항에 있어서, 하나 이상의 잠재적인 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
41. 제 40 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
42. 제 40 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
43. 제 42 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
44. 제 42 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
45. 제 42 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
46. 제 40 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
47. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
C. 필터링 단계는 선택된 타입의 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
48. 제 47 항에 있어서, 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
49. 제 47 항 또는 제 48 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
50. 제 49 항에 있어서, 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
51. 제 47 항 또는 제 48 항에 있어서, 필터링 단계는 피해자에게로, 여하튼 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 방법.
52. 제 51 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
53. 제 52 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
54. 제 52 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
55. 제 47 항 또는 제 48 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
56. 제 47 항 또는 제 48 항에 있어서, 하나 이상의 잠재적인 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는단계를 포함하는 것을 특징으로 하는 방법.
57. 제 56 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
58. 제 56 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
59. 제 58 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
60. 제 58 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
61. 제 58 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
62. 제 56 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
63. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향한 트래픽의 제 1 필터링을 수행하고 그 트래픽의 적어도 일부를 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")의 제 2 필터링을 수행하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
64. 제 63 항에 있어서, 제 1 필터링 단계는 트래픽이 수신되는 네트워크 인터페이스에 대하여 트래픽의 주소를 검사하는 단계를 포함하는 것을 특징으로 하는 방법.
65. 제 64 항에 있어서, 트래픽 경로에서의 변경을 트래킹하는 단계를 포함하는 것을 특징으로 하는 방법.
66. 제 65 항에 있어서, 네트워크 인터페이스상에 도달하는 트래픽을 샘플링하는 단계를 포함하는 것을 특징으로 하는 방법.
67. 제 65 항에 있어서, 적법성을 검정하도록 트래픽의 외관상 소스를 조회하는 단계를 포함하는 것을 특징으로 하는 방법.
68. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 제 2 필터링 단계는수상한 악의있는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
69. 제 68 항에 있어서, 검출 단계는 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
70. 제 69 항에 있어서, 제 2 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
71. 제 70 항에 있어서, 제 2 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
72. 제 71 항에 있어서, 제 2 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
73. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 피해자에게로, 여하튼 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱함으로써, 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
74. 제 73 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
75. 제 74 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
76. 제 74 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로하는 방법.
77. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 방법.
78. 제 77 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
79. 제 78 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
80. 제 78 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
81. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 선택된 타입의 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
82. 제 81 항에 있어서, 제 2 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
83. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
84. 제 63 항 내지 제 67 항 중 어느 한 항에 있어서, 하나 이상의 잠재적인피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
85. 제 84 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
86. 제 84 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
87. 제 86 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
88. 제 86 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
89. 제 86 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
91. 제 84 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
92. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
C. 필터링 단계는 과부하 조건의 타입 및 소스 중 어느것이든 식별하는 단계를 포함하는 것을 특징으로 하는 방법.
93. 제 92 항에 있어서, 식별 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 측정하는 단계를 포함하는 것을 특징으로 하는 방법.
94. 하나 이상의 잠재적인 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
C. 필터링 단계는 (ⅰ)기대 패턴과 다른 트래픽 패턴 및 (ⅱ)기대 볼륨과 다른 트래픽 볼륨 중 어느것이든 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
95. 제 94 항에 있어서, 피해자가 과부하 조건에 있지 않는 주기동안 트래픽 패턴 및 볼륨 중 어느것이든 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
96. 제 95 항에 있어서, 판정 단계는 넷플로 데이터, 서버 로그, 피해자 트래픽, 및 피해자 볼륨 중 어느것이든 분석하는 단계, 및 그것을 생성한 사용자의 타입에 따라 트래픽 패턴 및 볼륨 중 어느것이든 분류하는 단계 중 적어도 하나의 단계를 포함하는 것을 특징으로 하는 방법.
97. 제 96 항에 있어서, 사용자의 타입은 개인 사용자, 호스트 또는 프록시를 공유하는 사용자, 웹 크롤러, 및 모니터링 서비스를 포함하는 것을 특징으로 하는 방법.
98. 제 95 항에 있어서, 검출 단계는 피해자가 과부하 조건에 있지 않는 주기 동안의 트래픽 패턴 및 볼륨 중 각각의 하나와 피해자가 과부하 조건에 있는 때의 트래픽 패턴 및 볼륨 중 어느것이든을 비교하는 단계를 포함하는 것을 특징으로 하는 방법.
99. 제 98 항에 있어서, 비교 단계는 트래픽 패턴 및 볼륨 중 어느것이든 기대 트래픽 패턴 및 볼륨에 대해 통계적으로 변화하는지를 각각 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
100. 제 96 항에 있어서, 비교 단계는 트래픽 볼륨, 포트 번호 분포, 요청의주기성, 패킷 속성, IP 지오그래피, 및 패킷 도달/크기의 분포 중 어느것이든 비교하는 단계를 포함하는 것을 특징으로 하는 방법.
101. 제 94 항에 있어서, 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 중대하게 변화하는지를 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
102. 제 94 항에 있어서, 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 기대 패턴 및 볼륨 중 어느것이든으로부터 통계적으로 중대하게 변화하는지를 각각 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
103. 제 102 항에 있어서, 피해자가 과부하 조건에 있지 않는 주기동안 트래픽 패턴 및 볼륨 중 어느것이든 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
104. 제 103 항에 있어서, 판정 단계는 넷플로 데이터, 서버 로그, 피해자 트래픽, 및 피해자 볼륨 중 어느것이든 분석하는 단계를 포함하는 것을 특징으로 하는 방법.
105. 제 104 항에 있어서, 판정 단계 중 어느것이든 생성한 사용자의 타입에 따라 트래픽 패턴 및 볼륨 중 어느것이든 분류하는 단계를 포함하는 것을 특징으로 하는 방법.
106. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 수상한 악의있는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
107. 제 106 항에 있어서, 검출 단계는 스푸핑된 소스 주소를 갖는 패킷을검출하는 단계를 포함하는 것을 특징으로 하는 방법.
108. 제 107 항에 있어서, 제 2 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
109. 제 108 항에 있어서, 제 2 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
110. 제 109 항에 있어서, 제 2 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
111. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱함으로써, 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
112. 제 111 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
113. 제 112 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
114. 제 112 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
115. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 제 2 필터링 단계는피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 방법.
116. 제 115 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
117. 제 116 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
118. 제 116 항에 있어서, 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
119. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 제 2 필터링 단계는 선택된 타입의 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
120. 제 119 항에 있어서, 제 2 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
121. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
122. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 트래픽을 필터링하기 위한 하나 이상의 규칙을 제 2 세트의 하나 이상의 엘리먼트에 대하여 생성하는 단계를 포함하는 것을 특징으로 하는 방법.
123. 제 106 항에 있어서, 생성 단계는 필터링 기간 및 필터링될 네트워크 플로 중 하나 이상을 포함하는 규칙을 생성하는 단계를 포함하고, 필터링될 네트워크 플로에 대한 규칙은 소스 IP 주소, 수신지 IP 주소, 수신지 포트 번호, 및 프로토콜 타입 중 어느것이든 포함하는 것을 특징으로 하는 방법.
124. 제 122 항에 있어서, 엘리먼트의 제 1 세트에 대하여 피해자에게로 향한 트래픽을 필터링하고, 상기 필터링은 제 2 세트의 하나 이상의 엘리먼트를 생성하는 규칙에 따라 수행되는 것을 특징으로 하는 방법.
125. 제 94 항 내지 제 100 항 중 어느 한 항에 있어서, 하나 이상의 잠재적인 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
126. 제 125 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
127. 제 125 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
128. 제 127 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
129. 제 127 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
130. 제 127 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
131. 제 125 항에 있어서, 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
132. 네트워크상의 과부하 조건으로부터 보호하는데 사용하기 위한 네트워크 엘리먼트에 있어서, 상기 네트워크 엘리먼트는
네트워크로부터 트래픽을 수신하기 위한 입력부,
잠재적으로 과부하 조건을 일으키는 것으로 의심되는 소스로부터 발생한 트래픽을 선택적으로 블로킹하기 위해 입력부에 연결되어 있는 필터,
잠재적으로 과부하 조건을 일으키는 소스로부터 발생했음을 통계적으로 나타내는 트래픽을 식별하기 위해 필터에 연결되어 있는 통계 모듈, 및
필터에 의해 블로킹되지 않은 트래픽을 네트워크내의 다른 엘리먼트상으로 선택적으로 패싱하기 위해 입력부에 연결되어 있는 출력부를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
133. 제 132 항에 있어서, 과부하 조건이 종료되었을 때를 판정하는데 적어도 관여하는 종료 검출 모듈을 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
134. 제 132 항에 있어서, 트래픽의 소스를 검증하거나 인증하는 안티스푸핑 엘리먼트를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
135. 네트워크상의 과부하 조건으로부터 보호하는데 사용하기 위한 시스템에 있어서, 네트워크 엘리먼트는
네트워크로부터 트래픽을 수신하기 위한 입력부, 잠재적으로 과부하 조건을 일으키는 것으로 의심되는 소스로부터 발생한 트래픽을 선택적으로 블로킹하기 위해 입력부에 연결되어 있는 필터, 잠재적으로 과부하 조건을 일으키는 것으로 의심되는 소스로부터 발생했음을 통계적으로 나타내는 트래픽을 식별하기 위해 필터에 연결되어 있는 통계 모듈, 및 필터에 의해 블로킹되지 않은 트래픽을 네트워크내의 다른 엘리먼트상으로 선택적으로 패싱하기 위해 입력부에 연결되어 있는 출력부를 각각 포함하고, 네트워크상에 배치되어 있는 하나 이상의 네트워크 엘리먼트("보호자"), 및
네트워크상의 하나 이상의 잠재적 피해자의 세트내의 다른 네트워크 엘리먼트("피해자")에게로 향했을 트래픽을 하나 이상의 보호자에게로 선택적으로 다이버팅하기 위해 네트워크상에 배치되어 보호자와 통신하고 있는 하나 이상의 다른 네트워크 엘리먼트("다이버터")를 포함하는 것을 특징으로 하는 시스템.
136. 제 135 항에 있어서, 하나 이상의 보호자는 과부하 조건이 종료되었을 때를 판정하는데 적어도 관여하는 종료 검출 모듈을 포함하는 것을 특징으로 하는시스템.
137. 제 135 항에 있어서, 하나 이상의 보호자는 네트워크상의 트래픽을 블로킹하기 위한 규칙을 생성하고 그것을 네트워크상의 다른 네트워크 엘리먼트로 송신하기 위해 통계 모듈에 연결되어 있는 입구 필터를 포함하는 것을 특징으로 하는 시스템.
138. 제 135 항에 있어서, 트래픽의 소스를 검증하거나 인증하는 안티스푸핑 엘리먼트를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
139. 제 132 항 내지 제 138 항 중 어느 한 항에 있어서, 통계 모듈은 피해자에게로 디렉팅된 트래픽 및 수신된 트래픽의 볼륨 중 어느것이든 통계적으로 중대하게 변화하는지를 판정하는 것을 특징으로 하는 네트워크 엘리먼트 또는 시스템.
140. 제 139 항에 있어서, 통계 모듈은 트래픽 패턴 및 볼륨 중 어느것이든 기대 패턴 및 볼륨 중 어느것이든으로부터 통계적으로 중대하게 변화하는지를 각각 판정하는 것을 특징으로 하는 네트워크 엘리먼트 또는 시스템.
141. 제 140 항에 있어서, 통계 모듈은 피해자가 과부하 조건에 있지 않는 주기동안 트래픽 패턴 및 볼륨 중 어느것이든 판정하는 것을 특징으로 하는 네트워크 엘리먼트 또는 시스템.
142. 제 141 항에 있어서, 통계 모듈은
(ⅰ)넷플로 데이터, 서버 로그, 피해자 트래픽, 및 피해자 볼륨 중 어느것이든 분석하는 것, 및
(ⅱ)생성한 사용자의 타입에 따라 트래픽 패턴 및 볼륨 중 어느것이든 분류하는 것 중 적어도 하나를 수행하는 것을 특징으로 하는 네트워크 엘리먼트 또는 시스템.
본 발명의 이들 및 다른 태양은 이하 도면 및 설명으로부터 명백하다.
본 발명은 이하 도면을 참조하여 더 완벽하게 이해될 것이다.
네트워크 아키텍처
도 1에는 본 발명에 따라 분산 네트워크내의 보호 영역(P)이 도시되어 있다. 네트워크 엘리먼트(R0-R8)의 제 1 세트, 네트워크 엘리먼트(G0-G3)의 제 2 세트, 및 복수의 잠재적 피해자(H0-H4)가 네트워크 접속에 의해 모두 상호접속되어 있다. 실선은 타원 바깥의 비보호 영역과 보호 영역내의 엘리먼트 사이의 통신 링크뿐만 아니라 보호 영역(P)내의 통신 링크를 나타낸다.
도시된 실시예의 네트워크 엘리먼트(R0-R8)의 제 1 세트는 인터넷과 같이 IP 네트워크상에서 공통적으로 사용되고 시판되어 상업적으로 이용될 수 있는 타입의 라우터를 포함한다. 트래픽을 리디렉팅할 수 있고 그렇지 않으면 이하 라우터가갖고 있다고 여겨지는 기능을 제공할 수 있는 (예를 들어, 스위치, 브리지, 서버, 이하 설명되는 바와 같은 "보호자 머신", 또는 다른 디지털 데이터 장치와 같은) 다른 네트워크 엘리먼트가 대신 또는 부가적으로 사용될 수 있다. 제 1 세트의 9개의 엘리먼트가 도시되어 있지만, 본 발명에 따라 구성된 네트워크에 있어서 더 많은 또는 더 적은 디바이스가 이용될 수 있음을 당업자는 이해할 것이다.
도시된 실시예의 네트워크 엘리먼트(G0-G3)의 제 2 세트는 도 2에 도시된 타입의 "보호자" 머신을 포함한다. 트래픽을 필터링할 수 있고 그렇지 않으면 이하 보호자 머신이 갖고 있다고 여겨지는 기능을 제공할 수 있는 (예를 들어, 라우터, 스위치, 브리지, 서버, 또는 다른 디지털 데이터 장치와 같은) 다른 네트워크 엘리먼트가 대신 또는 부가적으로 사용될 수 있다. 제 2 세트의 4개의 네트워크 엘리먼트가 도시되어 있지만, 본 발명에 따라 구성된 네트워크에 있어서 더 많은 또는 더 적은 디바이스가 이용될 수 있음을 당업자는 이해할 것이다.
도시된 바와 같이, 제 1 및 제 2 세트의 엘리먼트 사이에 일대일 대응일 필요는 없다. 또한, 제 2 세트의 엘리먼트는, 예를 들어 물리적 및/또는 네트워크 거리에 있어서 매우 가까이 또는 공통류의 장비의 일부로서 동등하게, 제 1 세트의 엘리먼트 근방에 배치되어 있을 수 있다. 엘리먼트(G3 및 R5)는 그 일예를 제공한다. 마찬가지로, 이들 다양한 세트의 엘리먼트는 예를 들어 물리적 또는 네트워크 거리만큼 분리되어 서로의 외부에 배치되어 있을 수 있다. 그러한 경우의 예는 엘리먼트(R4 및 G2 또는 G3)의 경우이다.
도시된 실시예의 잠재적 피해자(H0-H4)는 인터넷과 같이 IP 네트워크상에서공통적으로 사용되는 타입의 서버, 호스트, 및 웹 사이트를 포함한다. 사이트, 호스트, 및 서버에 부가하여, 도시된 실시예는 인터넷 라우터 및 다른 디바이스에 접속된 임의의 컴퓨터와 같이 인터넷으로의 인터페이스 카드 또는 IP 주소를 갖는 임의의 디바이스를 보호하도록 사용될 수 있다.
보호 영역은 인터넷상의 영역을 형성한다. 본 발명은, IP 기반이든 아니든, 몇몇 말해보자면, 전용 네트워크, 로컬 에어리어 네트워크(LAN), 와이드 에어리어 네트워크(WAN), 데이터-센터, 메트로폴리탄 에어리어 네트워크(MAN)를 포함하는 임의의 다양한 분산(또는 데이터 통신) 서브-네트워크에 대하여 사용될 수 있다.
다이버팅
도시된 R0-R8, 또는 그러한 기능을 제공하는 다른 네트워크 엘리먼트(이하 일괄하여 "라우터" 또는 "피어링 라우터"라 칭함)는 네트워크의 보호 영역의 주변 포인트에 위치해 있다. 이것은 예를 들어 소위 자율 시스템(또는 그 일부)일 수도 있고, 예를 들어 인터넷 서비스 제공자(ISP) 및/또는 그 클라이언트를 둘러싸는 인터넷상의 액세스 포인트와 같은, 네트워크상 또는 네트워크내 임의의 다른 영역(예를 들어, 서브네트워크)일 수도 있다. 보호 영역이 자율 시스템인 경우에 있어서, 이들 포인트는 소위 피어링 포인트, 즉, 그 영역으로의 모든 입구(및 출구) 루트를 정의하는 포인트를 포함할 수 있다. 여하튼, 보호 영역은 이하 일괄하여 "호스트", "피해자", 및/또는 "잠재적 피해자"라 불리는 보호 엘리먼트(H0-H4)를 포함한다.
정상적인 상황하에서, 라우터(R0-R8)는 통상적인 방식으로 잠재적피해자(H0-H4)에게로 및 그로부터(또한 다른 네트워크 엘리먼트로 및 그로부터) 트래픽을 패싱한다. 그러나, 잠재적 피해자(예를 들어, 호스트 H0)가 (예를 들어, DDoS 공격 또는 플래시 크라우드에 의해 야기되는 바와 같은) 비정상적인 트래픽 조건하에 놓이면, 이하 설명되는 바와 같이 라우터(R0-R8)는 그 피해자(H0)에게로 향한 트래픽을 하나 이상의 보호자(G0-G3)에게로 선택적으로 다이버팅한다. 다이버팅된 트래픽을 적어도 부분적으로 프로세싱 및/또는 필터링하여, 그 트래픽의 모두 또는 일부(예를 들어, DDoS 공격에 기인한 과부하 조건의 경우에서, 악의없는 패킷)는 보호자로부터 피해자(H0)에게로 디렉팅될 수 있다.
다이버팅에 더하여, 라우터(R0-R8)는, 이하 설명되는 바와 같이, 보호자(G0-G3)에 의해 정의되는 규칙을 이용하여, 예를 들어 호스트(H0)가 과부하일 때, 입구 필터링을 제공할 수 있다.
상기 및 이하의 설명에 비추어, 라우터(R0-R8)는, 예를 들어 호스트가 과부하 조건에 있을 때, 예를 들어 호스트가 그러한 조건에 있지 않을 때 트래픽이 정상적으로는 취하지 않을 경로를 취하게 하도록 트래픽을 선택적으로 다이버팅함을 인식할 것이다. 다이버팅된 경로는 근방의 보호자 머신으로(라우터 및 보호자가 함께 위치해 있는 경우에서는, 보호자 머신 프로세싱 회로 및/또는 회로 경로로) 향하는 것일 수도 있고 떨어져 배치된 보호자 머신으로 향하는 것일 수도 있다.
보호를 활성화
DDoS 공격과 같은 과부하 트래픽 조건이 탑재되고 있다거나 그렇지 않으면 과부하 조건이 일어났다거나 하는 것이 의심되면(일괄하여, 공격 및 과부하 조건은이하 "공격"이라고도 불린다), 피해자 또는 다른 디바이스는 백본 제공자에 의해 제공된 통신 채널을 통하여 보호자(G0-G3)에게 경고한다. 신호가 SSH와 같은 보안 채널(SNMP 또는 대역외 통신, 또는 단지 IVR 시스템이 대신 사용될 수 있다)을 통하여 다이버팅 라우터 및/또는 보호자에게로 중계되는 NOC(네트워크 운영 센터)로 인증된 메시지를 송신하는 것이 그 예이다. 경고 메시지는 피해자 머신의 신원(그 IP 주소를 포함함)을 포함한다. 이 시점에서 피해자는 "보호" 모드로 들어간다.
이러한 "보호" 모드에 있어서, 피해자에게로 흐르는 트래픽의 모두 또는 대부분은 (1)피해자를 호스팅하는 보호 영역의 외부로부터 또는 보호 영역의 내부로부터 그 수신지가 피해자인 모든 트래픽이 보호자에게로 리디렉팅하도록, 그리고 (2)피해자에게 도달되는 트래픽의 모두 또는 대부분이 보호자 중 하나를 반드시 통과하여야만 하도록, 즉, 보호자를 통과하지 않고는 어떠한 트래픽도 전혀 또는 거의 피해자에게 도달할 수 없도록 다이버팅되어야 한다.
"이중 주소" 다이버팅 방법
도시된 실시예에 있어서, 서버 공개 주소 및 서버 비공개 주소의 2개의 IP 주소가 각각의 잠재적 피해자 수신지 머신(서버)과 연관되어 있다. 서버 공개 주소는 DNS 시스템을 통하여 전 인터넷을 통해 알려져 있는 서버의 IP 주소이다. 서버 비공개 주소는 보호자가 피해자를 보호하면서 보호자와 피해자의 사이에서 패킷을 전송하는데만 사용되는 IP 주소이다. 따라서, 서버 비공개 주소는 호스팅 보호 영역 백본의 내부 링크, 보호자, 또는 서버 인터페이스에 접속되어 있는 라우터 인터페이스에 의해서만 인식된다(비공개 IP 주소가 인식되는 연관 인터페이스와의 링크 세트는 도 1에서 점선에 의해 도시되어 있다). 보호 영역의 외부로부터 온 피어링-접속, 또는 보호 영역의 다른 고객에 접속되어 있는 링크(스터브 네트워크)와 같은 모든 다른 인터페이스는 그 수신지가 서버 비공개 IP 주소인 임의의 패킷을 폐기한다(예를 들어, 이것은 시스코 라우터의 CEF 메카니즘을 사용하여 용이하게 효율적으로 달성된다, 도 1 참조). 이것은 해킹된 데몬이 피해자 비공개 IP 주소로 트래픽을 생성할 수 없도록 보증한다.
상기 설정을 달성하기 위해서, 피어링 링크, 즉, 다른 네트워크 또는 외부 호스트 및 고객 네트워크로 접속하는 링크에 접속되어 있는 모든 인터페이스는 서버 비공개 IP 주소로 향한 트래픽을 폐기하도록 영구적으로 프로그래밍된다. 어떠한 공격도 탑재되어 있지 않은 정상적인 동작에 있어서, 피해자는 자신이 서버 비공개 IP 주소 및 서버 공개 IP 주소 모두로부터 제로인 거리에 있음을 선언한다. 이것은, 어느 주소로 향한 메시지를 피해자(지금은 피해자가 아님) 머신에게로 전송하기 위해, 모든 보호 영역 라우터에서의 전송 테이블내의 엔트리를 라우팅 프로토콜이 설정하게 한다.
공개 IP 주소로 향한 트래픽을 다이버팅하기 위해, 공격동안 호스팅 보호 영역의 외부로부터 도달한 서버 트래픽은 보더 라우터, 즉, 피어링 또는 NAP, BGP 라우터 중 하나를 통과하여야만 한다. 보호자 머신은 이 포인트에서 보더 라우터의 옆에 각각의 엔트리에 위치한다. 피해자에 대한 가능한 공격의 경고를 수신시에, 모든 이들 보더 라우터는 네트워크(보호 영역)의 외부로부터 도달하고 그 수신지 IP 주소가 피해자 공개 IP 주소인 모든 트래픽을 그들 옆에 위치한 보호자 머신으로 전송하도록 설정된다. 예를 들어 이것은 그들 폴리시 라우팅 메카니즘을 업데이팅하여, 적절한 업데이트를 보더 라우터에 주입함으로써 달성될 수 있다. 폴리시 라우팅 메카니즘을 업데이팅하는 것은 우리가 보더 라우팅 성능을 저하시키지 않고 라우팅 동작을 변경할 수 있게 한다. 피해자로부터 신뢰된 클라이언트로 리턴된 모든 트래픽은 상응하는 보호자 머신을 통하여 패싱된다. 피해자에게로 향한 트래픽을 다이버팅하는 다른 방법은 예를 들어 (광고설정없이) 적절한 BGP 공표를 사용하여 제공된다.
호스팅 보호 영역내로부터 발생하여 피해자 공개 IP 주소로 향한 트래픽을 내부 또는 보더 보호자에게로 다이버팅하기 위해, 유사한 메카니즘이 사용될 수 있다. 즉, 경고가 수신되는 때 모든 라우터내로 원하는 라우팅 정보를 주입하는 것이다. 그러나, 이것은 보호 영역내의 모든 라우터의 폴리시 라우팅을 업데이팅할 것을 요구한다. 많은 경우(많은 네트워크)에 있어서, 단순한 라우팅 조작에 기초한 다른 방법을 사용하는 것이 더 이롭다. 이 방법에 있어서, 피해자가 공격이 가해지고 있다고 의심할 때, 피해자는 자신이 서버(피해자) 공개 IP 주소로부터 먼 거리에 있음을 선언한다. 동시에, 보호자는 그들이 서버(피해자) 공개 IP 주소로부터 제로(제로에 가까운)인 거리에 있음을 선언하기 시작한다. 이러한 라우팅 업데이트는 예를 들어 OSPF, EIGRP, 또는 RIP(BGP와 달리, 이들 라우팅 프로토콜은 매우 신속하게 토폴로지컬 변경에 적응한다)와 같은 표준 라우팅 프로토콜을 사용하여 보호 영역 네트워크내에 신속하게 퍼진다. 따라서, 이들 선언으로부터 수 초내에, 그 수신지가 피해자 공개 IP 주소인 모든 트래픽은 자동으로 보호자에게로다이버팅된다. 또, 예를 들어 내부 라우터로부터 보호자 머신으로의 GRE(제네릭 라우팅 인캡슐레이션)를 사용하는 것과 같이, 이러한 다이버팅을 달성하기 위한 대안도 가능하다.
피어링 포인트에서 트래픽을 보호자에게로 다이버팅하도록 동일한 방법이 사용될 수 있음을 인식할 것이다. 즉, 2개의 다이버팅 방법 중 선택할 수 있다.
인트라 네트워크 트래픽의 볼륨을 처리하기 위한 어떠한 경우에 있어서, 하나의 보호자 머신이 아니라 일군의 보호자 머신을 사용하는 것이 이로울 수 있다. 그러나, 대부분의 경우에 있어서, 공격, 특히 스푸핑 공격의 문제는 공격이 보호 영역의 외부로부터 발생한 때 더 힘들어진다. 공격이 네트워크의 내부로부터 발생한 때는, 네트워크의 완전한 정보 및 관리가 존재한다. 입구 및 출구 필터링은 스푸핑 공격을 다루도록 사용될 수 있다. 공격의 출처가 알려져 있는 경우에 있어서는, 공격의 출처를 디스에이블/블로킹함으로써 더 용이하게 공격을 중지시킬 수 있다.
보호자가 공격이 종료되었다고 판단하면, 보호자는 적절한 메시지를 피해자 머신으로 패싱한다. 동시에, 그들은 상기 설정을 역으로 한다, 즉, 그들은 서버(피해자) 공개 IP 주소로부터의 그들의 거리가 제로임을 선언하는 것을 중지하는 한편, 피해자는 그것이 그 공개 IP 주소로부터 제로인 거리에 있음을 다시 선언하기 시작한다.
"보호" 모드에 있어서 수개의 보호자는 모두 피해자 공개 IP 주소로부터 제로인 거리에 있음을 주장할 수 있다. 이것은 각각의 클러스터내의 이러한 수신지주소를 갖는 패킷이 그 클러스터내에 상주하는 보호자에게로 라우팅되도록 보호 영역을 클러스터로 분할한다. 그러나, 2개 이상의 보호자까지의 거리가 동일한 2개 이상의 그러한 클러스터 사이의 보더상에 라우터가 존재할 수 있다. 이것은 라우팅 불안정성을 도입할 수 있는데, 플로의 어떤 패킷은 하나의 보호자에게로 가고 어떤 패킷은 다른 보호자에게로 간다. 보호 영역의 내부에서 발생한 피해자 트래픽에 대해서만임을 우선 명심하자. 보호 영역의 외부로부터 도달한 피해자 트래픽은 그 트래픽에 대하여 프록시로서 액팅하는 엔트리 포인트에서의 보호자에 의해 처리된다. 따라서 외부 트래픽은 플래핑이 BGP에 의해 도입되는 경우에만 루트 플래핑을 겪는데, 이것은 매우 드물다. 보호 영역의 내부에서 발생한 피해자 트래픽의 플래핑을 회피하기 위해, 각각의 보호자는 그것이 피해자 공개 IP 주소로부터 매우 작은 거리지만 다른 거리에 있음을 선언한다. 이들 작은 섭동은 어떠한 라우터도 2개의 보호자로부터 동일한 거리에 있지 않음을 보증한다. 이들 섭동의 정확한 계산은 보호 영역에 의해 커버링되는 ISP의 백본의 맵이 주어지면 자동으로 계산된다.
도 1의 네트워크에 있어서, 피해자 비공개 주소는 네트워크내의 신뢰할 수 있는 파트, 즉, 보호자 머신 또는 다른 라우터에 접속되어 있는 라우터의 인터페이스에만 알려져 있다. 피해자 비공개 주소가 알려져 있는 네트워크내의 루트는 점선에 의해 표시되어 있다.
어떠한 경우에 있어서는, 2개의 IP 주소(공개 주소 및 비공개 주소)를 갖는 각각의 잠재적 피해자를 관리 및 구성하는 것이 부담이 될 수도 있다. 여기서, 비공개 IP 주소를 공개 주소로 번역하도록 서버(있다면) 전에 현존 NAT를 사용하는 것이 바람직할 수 있다.
비공개 IP 주소에 대한 가능한 선택은 RFC 1918에 정의된 바와 같은 비공개 IP 주소 공간으로부터 주소를 사용하는 것이다. 또한, 이들 주소의 악용을 회피하기 위해, 대부분의 네트워크는 네트워크 자율 시스템의 보더에서 비공개 IP 주소로 향한 패킷을 중지시키도록 입구 및 출구 필터를 사용한다.
대안의 리디렉팅 메카니즘
잠재적 피해자(타켓) IP 주소의 복제를 회피하는 대안의 리디렉팅 스킴은 인커밍 인터페이스 카드(Juniper에 의해 유사한 방식으로 지원되기도 하는 시스코에서의 폴리시 기반 라우팅(PBR)으로 알려져 있음)에 기초하여 라우팅할 수 있는 라우터 기능을 사용할 수 있다. 즉, 라우터는 패킷이 도달한 인터페이스 카드에 의존하여, 수신지(X)를 갖는 패킷을 송신할 인터페이스 카드에 대해 결정할 수 있다. 이러한 대안의 방법에 있어서, 공격(또는 다른 과부하 조건)동안, 피어링 라우터는 액세스 접속 또는 피어링 접속으로부터 도달한 피해자의 트래픽을 보호자 머신으로(즉, 보호자 머신에 접속한 인터페이스로) 전송하도록 (전송 테이블에 대한 적절한 변경을 통해서) 명령받는다. 다른 한편, 보호자 인터페이스 카드로부터 도달하는 피해자로의 트래픽은 통상 피해자를 향하여 전송된다. 따라서, 이러한 스킴은 액세스 라우터 또는 각각의 피어링에서의 보호자 머신으로의 접속 및 인터페이스마다 전송을 필요로 한다. 모든 백본 접속된 인터페이스(즉, ISP 관점으로부터 내부 접속)는, 정상적인 동작에서와 같이, 피해자를 향해 트래픽을 전송할 수있다.
대안의 리디렉팅 메카니즘에 있어서, PBR 방법은 보호자에 접속된 인터페이스 카드에 대해서만 사용될 수 있다. 피해자의 트래픽을 보호자에게로 이르게 하기 위해서, 적절한 BGP 공표가 보호자에 의해 라우터에 제공된다. 이러한 대안에 있어서, 루트 테이블은 피해자의 트래픽을 보호자에게로 디렉팅하도록 (광고표시없이) BGP 공표를 통하여 업데이팅되고, 보호자에 접속된 인터페이스 카드는 피해자 트래픽을 적절한 다음 홉으로 전송하도록 PBR로 프로그래밍된다. 적절한 다음 홉은 리디렉팅 이전 및 리디렉팅 이후 양자의 라우터에서 이용될 수 있는 라우팅 정보에 기초하여 판정된다.
더 나아간 대안의 실시예에 있어서, 다이버팅은 WCCP(웹 캐시 코디네이션 프로토콜) 버전 2를 사용함으로써 비정상적인 트래픽, DDoS 공격 또는 다른 과부하 조건에 응답하여 활성화되고 달성된다. 트랜스페어런트 WEB 캐싱을 지원하도록 원래 설계된 이러한 프로토콜은 특정 인터페이스(클라이언트로부터 오는 인터페이스)상에 도달하는 특정 플로의 데이터 다이버팅을 행하도록 설계되어 있다. WCCP내에서, 2개의 다이버팅 방법이 제공되는데, 라우터에 직접 접속된 WEB 캐시에 대한 계층 2 수신지 주소 재기록 및 원격 캐시에 대한 GRE(제네릭 라우팅 인캡슐레이션)이다. 그 후 캐시로부터 라우터로 리턴되는 패킷은 라우터의 라우팅 테이블에 따라 라우팅된다. WCCP는 WCCP 프로토콜을 사용하여 제 1 세트의 노드와 대화함으로써 제 2 세트의 노드가 다이버팅을 활성화하게 한다. WCCP는 (그것이 웹 캐싱 머신인 것처럼) 피해자의 트래픽을 보호자에게로 다이버팅하는데 사용될 수 있다. 보호자가 라우터(제 1 세트의 노드)로 리턴하는 트래픽은 그것이 (임의의 다이버팅없이) 정상적으로 라우팅되는 것처럼 라우터에 의해 라우팅된다.
대안의 실시예에 있어서, 그 수신지가 피해자인 트래픽이 제 2 세트의 노드에 이르도록 BGP 공표를 사용함으로써, 그리고, 제 2 세트가 상응하는 제 1 세트 노드로 리턴하는 트래픽에 대하여 폴리시 기반 라우팅(PBR)을 사용함으로써, 비정상적인 트래픽, DDoS 공격 또는 다른 과부하 조건에 응답하여, 다이버팅은 활성화되고 달성된다.
관련 태양에 있어서, 본 발명은 상기한 바와 같은 방법을 제공하는데, 제 1 세트의 엘리먼트는 예를 들어 DDoS 공격 또는 다른 과부하 조건에 응답하여 다이버팅을 제공하도록 선택적으로 활성화된다. 다이버팅은, 제 1 세트로부터의 피해자 트래픽이 제 2 세트의 상응하는 노드에 이르도록 BGP를 다시 사용함으로써, 대부분 데이터 센터 또는 호스팅 센터로의 입구에서, 특정 구성에서, 달성될 수 있고, 그 후, 제 2 세트의 상응하는 노드는 원하는 다음 홉의 임의의 다른 계층 2 주소 또는 MAC 주소를 그것이 송신하는 다이버팅된 패킷에 기록한다.
본 발명의 또 다른 실시예에 있어서, 예를 들어, 보호자로부터 라우터로 되돌아오는 패킷을 라우팅하도록 PBR 및/또는 GRE(제네릭 라우팅 인캡슐레이션)과 같은 몇몇 다른 방법 및 (트래픽을 보호자에게로 전하도록) BGP 방법의 조합을 사용하여, 상기 다이버팅 메카니즘의 조합에 의해 다이버팅은 이뤄질 수 있다.
여기서 하나의 잠재적 결점은 보호 영역내에서 발생된 트래픽을 보호 영역의 내부의 보호자 머신으로 어떻게 리디렉팅하는가이다. 본 발명의 일실시예에 있어서 채용되는 솔루션은 모든 액세스 라우터에도 보호자 머신을 배치하는 것이다. 이러한(또는 다른) 솔루션이 채용되지 않는 경우라도, 최악의 경우에 있어서, 상기 대안의 리디렉팅 메카니즘은 적어도 보호 영역의 외부에서 일어난 공격(또는 다른 과부하를 초래하는 소스)으로부터는 보호를 제공한다. 그러나, 실제로 이것은 대부분의 위험이 보호 영역의 외부로부터 오는 경우이지 보호 영역의 내부로부터 오는 경우는 아니다. 이것은 보호 영역의 내부에서는 네트워크 소유자가 제어하고 있는 상태에 있다는 사실에 기인한다: 소유자는 공격자(또는 다른 과부하 소스)를 찾도록 입구 및 출구 필터링, 백트래킹을 사용할 수 있다.
네트워크 동작 및 특성의 개관 및 개설
실시예에 따라 동작되고 구성된 네트워크는 DDoS 공격 또는 다른 비정상적 또는 과부하 조건동안 피해자 서버의 계속적인 동작을 제공한다. 보호자 머신(G0-G3) 및 라우터(R0-R8) 등의 기능을 동작시키는 인터넷 서비스 제공자(ISP) 및 다른 공급자(예를 들어, 데이터 센터 및 호스팅 제공자)는 네트워크의 보호 영역내에 상주하는 모든 컴퓨터, 라우터, 서버, 및 다른 엘리먼트에 보호를 제공하고, 따라서, 그들 엘리먼트가 DDoS 공격 또는 다른 과부하 조건으로부터 그 자신의 보호를 제공해야할 필요를 경감시킨다.
실시예의 보호자 머신 및 라우터는 공격이 탑재되고 있을 때 호출되는 분산 계산력을 제공한다. 이러한 분산 계산력은 악의있는 또는 과부하 트래픽을 걸러냄으로써 공격시 피해자를 돕는다. 또한, 보더에서 트래픽을 중지시킴으로써, 보호 영역내의 다른 네트워크 엘리먼트는 라우터에서의 공격의 과도한 트래픽에 의해 야기될 수 있는 부작용으로부터 보호된다.
본 실시예는 스케일 면에서 경제적이다. 보호 영역(P)과 같은 네트워크의 일부 주변에 위치한 보호자 머신의 세트는 보호되기를 원하는 그 영역내의 임의의 사이트 또는 네트워크 엘리먼트에 DDoS 및 다른 과부하 조건으로부터의 보호를 제공한다. ISP 레벨에서 솔루션을 위치시키는 것은, 예를 들어, 네트워크 및 보호 시스템에 의해 지원될 수 있는 전 볼륨에서의 공격으로부터의 작거나 큰 보호를 임의의 사이트에 제공한다. 이러한 점에 있어서, 공격 볼륨(초 당 비트)은 타겟 크기의 함수가 아니다는 것을 인식할 것이며, 작은 사이트는 최악의 경우의 공격시 공격받을 수 있다. 따라서, 임의의 노드는, 크던 작던, 본 예시 시스템에 의해 제공되는 타입의 최대 보호를 필요로 한다. 대안은 각각의 사이트 또는 서버가 그 스스로 최대 보호를 획득하는 것인데, 그것은 경제적인 것과는 거리가 멀다.
본 실시예에 의해 제공되는 보호는 내고장성을 갖는다. 보호자는 보호자내의 어떠한 고장도 네트워크의 정상적인 동작을 붕괴시킬 수 없는 방식으로 배치되어 있다. 즉, 보호자는 최악의 경우에 아무것도 하지않고, 여하튼, 그것이 정상적인 동작 중에 있거나 공격동안에 있는 것보다 더 네트워크 성능을 저하시키지는 않는다.
또한 본 실시예의 구성에 의해 제공되는 보호는 유연성을 갖는다. 그것은 보호를 요구하는 서버 및 엘리먼트에 제공될 수 있다. 즉, 보호되는 사이트 및 엘리먼트의 목록은 보호 영역의 내부에 상주하는 것들의 임의의 서브세트일 수 있다.
개관 및 개설에 의해, 본 실시예의 동작은 검출, 경고, 다이버팅, 걸러내기,및 종료 검출의 단계를 포함한다. 물론, 다른 실시예는 더 많은 또는 더 적은 단계를 사용할 수도 있고 그들 단계는 이하 설명되는 특정예로부터 변화될 수도 있음을 당업자는 인식할 것이다.
검출.본 실시예는 공격받는 피해자가 공격이 시작될 때를 검출하고 경고하는 자동 메카니즘을 갖는 것으로 가정한다. 그러한 메카니즘은 다른 라우터, 방화벽 장비, 침입 검출 시스템, 및 운영체제에 의해 제공된다. 어떤 데이터-센터 및 호스팅 팜은 그들의 클라이언트 조건(그 중 하나는 과부하 및 비정상적인 트래픽 조건이다)을 모니터링하는 헬스 체크 메카니즘을 서버에 제공한다. 그러한 검출 메카니즘이 없는 사이트에 대하여, 여러 통상적인 기술이 네트워크내의 피해자내에, 보호자내에, 또는 임의의 다른 적합한 노드에 채용될 수 있다(일괄하여, "경고 노드" 또는 "경고 네트워크").
경고.공격이 탑재되고 있다고 의심될 때, 사이트(또는 다른 경고 노드)는 플래그를 일으키고 피해자가 상주하는 네트워크의 영역 주변의 전략적 포인트에 위치한 보호자 머신의 네트워크를 활성화한다. 경고 노드로부터의 경고 신호는 NOC(네트워크 운영 센터)를 통하여 NOC로부터 보호자 머신으로 간다. 예를 들어, 일실시예에 있어서, 보호자는, 각각의 피어링 포인트에 하나의 보호자가, 피해자를 호스팅하는 보호 영역의 주변에 배치된다.
다이버팅.또한, 경고 네트워크는 보호 영역의 외부에서 발생하여 피해자에게로 향한 모든 트래픽(및, 모두는 아닐지라도, 그 영역 내부로부터의 트래픽의 적어도 일부)이 보호자에게로 다이버팅되어 통과하는 것을 보증하는 리라우팅 메카니즘(예를 들어, 라우터(R0-R8), 또는 유사한 기능)을 호출한다. 따라서, DDoS 공격의 경우에 있어서, 예를 들어, 악의있는 데몬이 임의의 선택된 노드를 패싱하는 루트상의 피해자에게로 직접 패킷을 송신할 방법이 없다.
걸러내기.경고가 보호자에 도달하고 피해자 트래픽이 수신되고 있을 때, 보호자는 "불량"(또는 과도) 패킷을 분류해내어 "우량"(또는 비-과도) 트래픽만을 피해자에게로 패싱하도록 트래픽을 걸러낸다. 특정 조건하에서 보호자는 피해자를 위해 요청을 프로세싱하는 또 다른 노드(예를 들어, 역 캐시 프록시)로 요청을 전송함으로써 또는 보호자 머신에서, 피해자를 위해, 피해자에게로 송신되고 있는 요청을 프로세싱할 수 있다.
종료 검출.보호자는 피해자를 보호하는 동안 그들이 걸러내는 "불량" 패킷의 양을 모니터링한다. 각각의 보호자에 의해 걸러진 총 양이 공격이 종료된 것으로 정의되는 시간의 충분히 긴 주기동안 특정 레벨 이하로 내려가 다이버팅이 중지되면, 피해자 트래픽의 라우팅은 정상 동작으로 리턴하고 따라서 피해자 트래픽의 걸러내기도 중지된다. 일반적으로, 보호자는 공격의 레벨에 대한 표시를 NOC에 계속 송신하고, 피해자에 대한 시스템의 불활성화 및 보호의 중지 결정이 NOC에서 취해질 수 있다.
보호자 머신
도 2에는 본 발명에 따른 보호자 머신(10)의 일실시예의 동작 및 아키텍처가 도시되어 있다. 디바이스(10)는 필터(12), 안티스푸핑 모듈(14), 통계 엔진(16), 종료 검출기(18), 고객 데이터베이스(20), 및 관리 모듈(22)을 포함하고, 이들은도시된 바와 같이 또한 이하 설명에서 명백한 바와 같이 상호접속되어 있다. 이들 기능은 스탠드-얼론 네트워킹된 디지털 데이터 프로세싱 디바이스내의 소프트웨어, 펌웨어, 또는 하드웨어에, 또는 스위치, 라우터, 퍼스널 컴퓨터, 워크스테이션, 서버, 또는 다른 디지털 데이터 프로세싱 장치의 일부로서(또는 그것들과 접속되어) 구현될 수 있다.
필터 기능(12)은 다이버팅된 데이터를 수신하여 그것을 그것에 주어진 다른 규칙(필터)에 따라 분류한다. 필터에 주어진 각각의 필터-규칙과 액션은 연관될 수 있다. 필터-규칙은 통계 엔진으로부터 수신된 표시에 응답하여 보호자의 관리에 의해 동적으로 또는 보호자가 피해자를 보호하기 시작할 때 필터내에 배치된다. 필터-규칙과 연관된 액션은 필터에게 그 필터와 매칭하는 플로/패킷에 대하여 무엇을 해야할지 알려준다. 어떤 필터-규칙은 예를 들어 통계 엔진(16)에 의해 판정되는 바와 같이 악의있는 트래픽의 소스인 것으로 의심된 서브네트워크 또는 IP 주소로부터 발생한 패킷을 블로킹한다. 다른 액션은 각각의 필터-규칙에 상응하는 트래픽을 디렉팅할 다른 모듈을 필터에게 알려준다.
안티스푸핑 기능(14)은 각각의 플로에 대하여 4중(quadruple)<소스-주소, 수신지-주소, 소스-포트, 수신지-포트>으로, 그 소스 포트-번호 뒤의, 그 소스-주소를 갖는 클라이언트에서의 실제 프로세스가 이러한 TCP 플로를 개시하였는지를 인증 및 검증한다. 이것은 피해자를 위해 보호자에서 TCP 3-웨이 핸드셰이크 프로세스를 완수하는 공지의 방식으로 행해진다. 이러한 포인트로부터, (4중에 의해 결정된) 이러한 접속의 기간동안, 보호자는 클라이언트와 피해자 서버 사이에서 다소저-레벨 프록시로 된다. SYN-방어자(TCP 안티스푸핑 블로킹에 대한 다른 명칭)의 일태양은 트래픽이 스푸핑된 패킷으로부터 클리닝되고 나면 그것은 예를 들어 악의있는 TCP 트래픽의 소스를 검출하도록 통계적으로 분석될 수 있는 것이다(스푸핑된 패킷을 우선 클리닝하지 않았다면 더 힘들었을 것이다).
통계 엔진(16)은 비정규적인/수상한 동작을 하는 플로 또는 플로의 집합(집합은 4중의 임의의 서브세트에 의해 식별되고 서브세트내의 IP 주소는 서브네트워크에 의해 대체될 수 있다)을 검출하여 골라낸다. 부정 동작하는 플로가 검출되고 나면 필요한 모듈은 이러한 플로를 걸러내도록 활성화된다. 부정 동작하는 플로를 처리하는 이러한 프로세스는 이러한 플로의 서브-플로의 더 상세한 조사를 포함하거나, 그러한 플로를 클리닝하는 하나 이상의 모듈의 특정 세트를 활성화하는 것을 포함하거나, 또는 이들 플로의 신원은 블로킹을 위해 필터(12)로 패싱될 수 있다.
종료 검출 기능(18). 모든 보호자는 공격이 중지된 때를 협력하여 결정하고 피해자는 평화로운 동작 모드로 리턴할 수 있다. 이러한 종료 검출은 이하의 2단계를 갖는다. 첫째로, 각각의 보호자는 특정 피해자를 위해 그들이 블로킹하는 "불량"(또는 오버플로) 트래픽의 볼륨을 개별적으로 모니터링한다. 둘째로, 시간의 충분히 긴 주기동안 모든 보호자에서 이러한 볼륨이 가라앉을 때 공격이 종료되었다는 공동 결정에 도달된다. 2가지 방식 중 하나의 방식으로 공동 결정에 도달된다: 하나의 방식은 각각의 보호자가 NOC와 같은 센트럴 포인트에 그 레벨을 보고함으로써 NOC가 모든 보호자로부터 얻은 모든 표시의 함수로서 종료를 결정하는 것이고, 다른 하나의 방식은 각각의 보호자가 모든 다른 보호자로부터 이들 표시를 수신하고 이들 표시에 따라 결정하는 좀 더 분산된 방식이다.
(기억장치 모듈 및 인터페이스 모듈을 포함하는) 고객 데이터베이스(20)는 각각의 잠재적 피해자 트래픽 패턴에 대한 통계적 정보 및 필터/분류기에 대한 디폴트 설정, WFQ(이하 논의), 및 스로틀링 레벨(이하 논의)에 대한 통계적 정보를 보존하고 있다. 필터/분류기에 대한 디폴트 설정은 피해자가 스트레스 받는 동안 필터가 피해자로의 액세스를 거부할 수 있는 패킷/트래픽의 타입을 나타낸다. 전형적으로, 이들은 피해자에게 그다지 중요하지 않은 패킷 및 플로일 것이고, 그것은 이들 트래픽 타입을 얻지 않고서도 계속하여 그 의도된 기본 및 중요 서비스를 제공할 수 있다.
관리 모듈(22)은 2가지의 기본 기능을 이행한다. 첫째로, 그것은 보호자 머신의 다른 엘리먼트 사이의 대화를 조정한다. 예를 들어, 통계 엔진으로부터 표시를 얻고 결과적인 결정을 필터로 패싱하거나, 또는 통과하는 패킷의 흐름을 용이하게 한다. 둘째로, 그것은, 예를 들어 특정 피해자의 보호를 시작 또는 중지하거나 특정 피해자를 위해 트래픽의 특정 타입의 블로킹을 시작 또는 중지하도록, 어딘가(예를 들어, NOC에) 상주할 수 있는 관리 애플리케이션과 대화하여, 그것으로부터 명령어를 수신하고 결과적인 커맨드를 보호자내의 적절한 모듈로 패싱한다.
디바이스(10)에서의 전반적인 흐름에 관하여, 도면에서의 굵은 선은 머신을 통한 피해자 트래픽의 흐름을 나타내는 한편, 가는 선은 제어 및 다른 정보 경로를 나타낸다. 바람직하게는, 도면에 도시된 바와 같이, 패킷은 우선 필터를 통과하고, 그 후 안티스푸핑을 통과하고, 최종적으로 통계 모듈을 통과한다.
도 3에는 본 발명에 따른 보호자 머신(10')의 대안예의 동작 및 아키텍처가 도시되어 있다. 머신(10')은 도 2의 엘리먼트(22)에 함께 상응하는 관리 엘리먼트(22')와 방어 조정 엘리먼트(23), 도 2의 엘리먼트(18)에 상응하는 종료 검출 엘리먼트(18'), 도 2의 엘리먼트(16)에 함께 상응하는 통계 수집 엘리먼트(16')와 지능형 학습 제어 엘리먼트(17), 도 2의 엘리먼트(12)에 상응하는 분류기/필터 엘리먼트(12'), 도 2의 엘리먼트(14)에 함께 상응하는 SYN-방어자/안티스푸핑 엘리먼트(14')와 TCP 엘리먼트, 도 2의 엘리먼트(20)에 상응하는 고객 프로파일 데이터베이스 엘리먼트(20'), 도 2의 종료 검출 기능(18)에 상응하는 종료 검출 엘리먼트(18'), NIC 엘리먼트(2), 리어셈블리 엘리먼트(4), 대역외 엘리먼트(6), 레귤러 TCP/IP 스택 엘리먼트(8), /dev/null 엘리먼트(11), DNS 엘리먼트(16), 방어 조정 엘리먼트(23), TCP 트래픽 디멀티플렉스 엘리먼트(24), WFQ 엘리먼트(28), 송신 엘리먼트(32), HTTP 프록시 엘리먼트(36), 및 MIB 에이전트 엘리먼트(26)를 포함한다. 도시된 바와 같이 이들 엘리먼트는 상호접속되어 있지만, 명료함을 위해, 모든 상호접속을 나타내지는 않았다.
도 2 및 도 3을 참조하면, 각각의 보호자 머신(10,10')은 피해자 또는 피해자의 세트로 향한 트래픽의 모두 또는 일부를 수신하고 악의있는(과도한) 트래픽을 걸러내어, 상응하는 피해자에게 피해자가 견딜 수 있는 비율로 적법한 트래픽을 전송한다. 그렇게 함에 있어서, 보호자는 대규모 필터처럼 "불량" 패킷(또는 과부하 조건을 야기시켰을 패킷)을 식별하여 그것을 폐기한다. 여기서 설명되는 보호자 머신(10,10') 아키텍처는 개별적으로 및/또는 함께 대부분의 악의있는(또는 과도한) 트래픽 플로를 블로킹 및 검출하는 엘리먼트를 포함한다. DDoS 공격의 경우에 있어서, "블랙 햇"(해커)이 적법해 보이는 대량의 트래픽을 생성하더라도, 보호자 머신(예를 들어, 라우터(R0-R8)와 접속되어 동작함)은 대규모 분산 역 프록시(엘리먼트 36)로의 API의 형태로 과부하로부터 피해자를 보호한다. 보호자 시스템과 접속되어 있는 역 프록시의 크기는 도시된 시스템의 능력에 상응한다.
특히, 보호자 머신(10,10')은 이하의 기능을 수행한다:
1) 트래픽의 상위 계층을 클리닝하기 전에 통신의 하위 계층에서 악의있는(또는 과부하 이벤트를 일으키는) 소스에 의해 생성된 노이즈를 클리닝한다. 유추해보면, 이것은 하위 주파수 신호가 분석되고 클리닝될 수 있기 전에 로우 페이즈 필터가 상위 주파수를 우선 블로킹하는 신호 프로세싱에 있어서, 노이즈 신호를 클리닝하는 것과 유사하다. DDoS의 경우에 있어서, 보호자(10,10')는 우선 스푸핑된 패킷을 필터링하는 것이 바람직하다. 통계 분석 및 WFQ 모듈로 패싱된 트래픽은 비-스푸핑된 것으로 가정된다; 그렇지 않으면 이들 모듈의 효율성은 감소될 수 있다. 또한, 트래픽이 패킷 계층에서 비-스푸핑되고 나면, 상위 레벨 스푸핑으로부터의 트래픽, 예를 들어 트래픽의 많은 볼륨을 생성하는 거짓의 적법한 사용자로부터의 트래픽을 클리닝하는 새로운 모듈이 도입된다.
2) 통계 공격 식별 모듈에 의해 지시받은 바와 같이 다른 모듈의 요구에 따라 호출한다. 통계 엔진 기능(도 2의 16, 또는 도 3의 16' 및 17))은 피해자 트래픽의 스트림에서 다른 제네릭 공격 방법의 존재를 검출한다. 공격 타입이 검출되자 마자, 상응하는 방어 엘리먼트(예를 들어, 보호자 및/또는 라우터)는 호출되어상응하는 트래픽에 대해 활성화된다. 예를 들어, 공격 식별이 DNS 요청의 이례적인 볼륨을 식별하면, 엔진(16 또는 16'/17)은 DNS 요청 공격이 탑재되고 있다고 결론짓고 DNS 방어 모듈(36)이 활성화된다. 분류기(12')는 피해자 DNS 트래픽을 리디렉팅하여 DNS 방어 모듈(36')을 통과하게 한다.
3) 통계 공격 식별 모듈내 원리를 주밍한다. 통계 엔진(16 및 16'/17)은 우선 코어스니스의 특정 레벨에서 트래픽을 모니터링한다. 트래픽의 특정 타입(예를 들어 UDP)에서 이례적인 볼륨이 검출되고 나면, 더 세밀한 통계 검출이 공격 트래픽 플로의 더 특정한 파라미터를 찾아내도록 호출된다. 계속하여 UDP 예에 있어서, 더 세밀한 검출은, 공격이 많은 주소 및/또는 포트 번호를 통하여 스푸핑되지 않는다면, 공격을 생성하고 있는 포트 번호 및/또는 소스 IP 주소를 찾아낸다.
(예를 들어 보호자 또는 다른 노드에 의해) 악의있는 것으로서 식별되지도 않고 피해자를 위해 처리되지도 않은 피해자 트래픽은 피해자에게로 패싱된다. 역시, 어떠한 서비스 거부 공격도 못알아차리는 일이 없는 것을 보증하도록, 보호자(10')는 피해자에게로 패싱되는 트래픽의 양을 스로틀링한다. 즉, 트래픽의 특정 양만이 각각의 보호자로부터 피해자에게로 패싱되게 된다. 따라서, DDoS 공격이 탑재되고 있는지와는 무관하게, 활성화된 보호자는 피해자 노드에서의 트래픽 과부하 조건을 방지한다.
각각의 보호자로부터 허용된 양은, 이것이 다른 보호자가 피해자에게로 패싱하는 양과 조정되어 동적으로 수정될 수 있을지라도, (고객 프로파일 데이터베이스 엘리먼트(20,20')내에 기억된) 피해자 디폴트 프로파일에 의해 초기에 설정된다.피해자에게로 패싱되고 있는 트래픽의 양이 허용된 비율보다 더 클 때마다, 초과는 웨이티드 페어 큐잉(WFQ) 모듈(28)에서 큐잉 업된다. 이 모듈은 모든 클라이언트로의 페어 액세스 비율을 사용하여 피해자에게로의 액세스 비율을 제어한다. 이러한 생각은 예를 들어 클라이언트 또는 소스 IP 주소, 또는 포트 번호, 및/또는 프로토콜 타입과 같은 임의의 다른 트래픽 분류 파라미터에 상응할 수 있는 각각의 큐에 대한 웨이트를 사용하는 것이다.
각각의 큐 웨이트는 각각의 그러한 소스(클라이언트)로부터의 트래픽의 추정에 비례한다. 공격하는, 따라서, 피해자에게 기대 볼륨보다 더 많은 볼륨을 가하고 있는 악의있는 클라이언트(또는 너무 많은 요청을 하고 있는 적법한 클라이언트)는 WFQ에 의해 스로틀링되고, 따라서, 그것이 다른 적법한 클라이언트의 액세스 비율에 가하는 효과를 제한한다. WFQ에 대한 디폴트 설정은 어느 소스(IP 주소)가 피해자 대역폭의 상대적으로 더 많은 부분을 가져야 하는지 나타내고, 스로틀링 레벨의 디폴트 설정은 피해자 가용 대역폭 및 보호자를 통과해야 하는 그것의 상대량의 함수이다.
보호자(10')를 통한 트래픽 플로는 보호자(10)의 그것과 유사할 수 있다. 대안으로, 보호자(10')에 있어서, 패킷은 우선 필터/분류기(12')를 통과하고, 그 후 모듈 DNS(36), UDP(13), TCP(15) 및 안티스푸핑(14') 중 하나를 통과하고, 그 후 웨이티드-페어-큐잉 모듈(28)을 통과할 수 있다. 또한, 통계 모듈(16'/17)은 공격 타입을 나타내거나 악의있는 소스를 가리킬 수 있는 부정 동작하는 트래픽 플로 및/또는 수상한 트래픽 패턴을 검출하도록 각각의 모듈내의 활동을 모니터링한다.
도 2 및 도 3을 참조하면, 지능형 학습 제어(도 3의 17)와 함께 통계 수집(16') 및 통계 엔진(도 2의 16)은 (다른 트래픽 타입 중) 피해자의 TCP 트래픽이 안티스푸핑 모듈(14')을 통과한 후에 그것을 모니터링함을 인식할 것이다. 이것은 스푸핑된 트래픽으로부터의 혼동없이 트래픽의 이례적인 볼륨을 생성하는 소스를 효과적으로 검출할 수 있는 능력을 통계 엔진(16) 또는 엘리먼트(16' 및 17)에 준다. 또한 유사한 로직이 UDP 및 IP 트래픽의 다른 타입에 대해 동작한다. 또한, 방어의 다른 라인(각각은 보호자 박스의 내부의 모듈이다)은 트래픽의 특정 타입(TCP, UDP, DNS, ICMP 등)에 있어서 이례적인 동작이 감지되기만 하면 통계 엔진(16 또는 16'/17)에 의해 활성화된다.
NIC 엘리먼트(2)는 보호자 머신이 라우터 또는 노드의 제 1 세트의 다른 멤버에 접속되어 있는 네트워크 인터페이스 카드이다. NIC는 1기가비트/초 또는 OC3 또는/및 OC12 또는 임의의 다른 NIC일 수 있다.
대역외 엘리먼트(6)는 네트워크 관리자/운영자 및 다른 권한부여된 엘리먼트가 보호자 머신과 비공개적으로 보안 통신하는 별개의 통신 채널로의 인터페이스이다. 이러한 별개의 통신 채널은 공개되지 않은 전용 통신 매체이다. 상응하는 인터페이스는 보호되는 네트워크의 관리자 및/또는 운영자에 의해 사용되는 다른 매체 인터페이스 또는 임의의 NIC 또는 직렬 인터페이스일 수 있다.
레귤러 TCP/IP 스택 엘리먼트(8)는 네트워크 운영자로부터 도달하는 대역외 통신을 수신하고 그것을 제어 및 관리 엘리먼트(22') 및/또는 고객 프로파일 데이터베이스 엘리먼트(20')와 같은 보호자 머신내의 적절한 엘리먼트로 패싱한다.
리어셈블리 엘리먼트(4)는 다이버팅된 트래픽을 수신하고 트래픽의 TCP 파트에서의 프래그먼트에 대해 검사한다. 그것은 프래그먼트를 수집하여 완벽한 패킷을 리어셈블링하는데, 그것은 보호자 머신의 다른 엘리먼트를 통하여 공급된 것이다. 그렇게 함에 있어서, 이러한 엘리먼트는 프래그먼트의 대규모 볼륨을 송신하는데 기초한 공격을 검출하도록 통계 수집 및 지능형 학습 제어 엘리먼트와 통신한다. 그러한 경우에 있어서, SYN-방어자/안티스푸핑 엘리먼트(14')는 스푸핑된 프래그먼트(그것들에 대하여서는 SYN-방어자 엘리먼트(14')에 의해 어떠한 접속도 개방되지 않았음)의 특성에 관한 피드백을 제공한다. 또한, 엘리먼트(4)내 소스 당 작은 큐잉 시스템은 프래그먼트 공격을 완화시키는 것을 도와준다.
분류기/필터 엘리먼트(12')는 도 2의 필터 기능(12)처럼 동작한다. 그것은 다이버팅된 데이터를 수신하고 그것을 기억된 규칙(필터)에 따라 분류한다. 각각의 필터-규칙과 연관된 액션이 존재할 수 있다. 필터-규칙은 통계 수집 및 지능형 학습 제어 엘리먼트(16' 및 17)로부터 수신된 표시에 응답하여 보호자의 관리에 의해 동적으로 또는 보호자가 피해자를 보호하기 시작할 때 분류기/필터내에 배치된다. 필터-규칙과 연관된 액션은 필터에게 그 필터와 매칭하는 플로/패킷에 대하여 무엇을 해야할지 알려준다. 어떤 필터-규칙은 예를 들어 지능형 학습 제어 엘리먼트(17)에 의해 판정되는 바와 같이 악의있는 트래픽의 소스인 것으로 의심된 서브네트워크 또는 IP 주소로부터 발생한 패킷을 블로킹한다. 다른 액션은 각각의 필터-규칙에 상응하는 트래픽을 디렉팅할 다른 엘리먼트를 분류기/필터에게 알려준다. 따라서, 예를 들어, 지능형 학습 제어 엘리먼트가 통계 데이터에 기초하여 DNS 공격이 탑재되고 있다는 것을 수신한다고 결정하면, 그것은 DNS 프로토콜에 속하는 각각의 패킷이 이제 DNS 엘리먼트(16)로 전송된다고 말하는 새로운 필터-규칙을 등록한다.
통계 수집 엘리먼트(16')는 샘플을 수집하고, 보호자 머신의 다른 엘리먼트를 통과하는 플로의 타입에 관한 통계를 구축한다. 도 2의 엘리먼트(14)의 기능은 도 3의 2개의 엘리먼트, 즉, 통계 수집 엘리먼트 및 지능형 학습 제어 엘리먼트로 나눠져 있다. 통계 수집 엘리먼트는 지능형 학습 제어 엘리먼트에 의해 결정된 바와 같은 플로의 새로운 타입에 관한 통계를 수집할 수 있다. 이것은 플로의 그 타입에서의 이례적인 볼륨을 생성하는 소스 또는 다른 서브 타입을 알아내기 위해서 더 세밀한 분석이 높은 볼륨 플로에 대해 필요한 경우에 일어난다. 통계 수집 엘리먼트는 우선 코어스니스의 정도에서 트래픽을 모니터링한다. 트래픽의 소정 타입(예를 들어 UDP)에 대해 지능형 학습 제어 엘리먼트에 의해 이례적인 볼륨이 검출되고 나면, 더 세밀한 통계 검출이 공격 트래픽 플로의 더 특정한 파라미터를 찾아내도록 호출된다. 이것은 더 세밀한 서브-플로 트래픽 볼륨의 통계 수집 엘리먼트(16')에 의한 모니터링을 통하여 (엘리먼트(17)의 커맨드시) 달성된다. 계속하여 UDP 예에 있어서, 더 세밀한 검출은, 공격이 많은 주소 및/또는 포트 번호를 통하여 스푸핑되지 않는다면, 공격(UDP 공격)을 생성하고 있는 포트 번호 및/또는 소스 IP 주소를 식별한다.
지능형 학습 제어 엘리먼트(17)는 엘리먼트(16')로부터 통계 정보를 얻고 학습 방법(예를 들어, 단순 임계값 패싱, 또는 결정 트리, 또는 다른 학습 결정 방법)을 사용하여 결정한다. 엘리먼트는 통계 수집 엘리먼트(16') 및 방어 조정 엘리먼트(23)와의 대화 타입에 대하여 더 강력한 능력을 갖게 된다. 통계 수집 엘리먼트(16')와의 대화를 통하여, 학습 제어(17)는 상기 주밍 기능을 허용하는 더 세밀한 통계를 제공할 수 있다.
악의있는 트래픽의 특정 타입, 즉 공격의 특정 타입이 검출되면, 방어 조정 엘리먼트(23)에 경고한다. 응답하여, 방어 조정 엘리먼트(23)는 필요한 필터-규칙을 분류기/필터 엘리먼트(12')내에 등록하고, 검출된 공격의 타입을 걸러내도록 필요한 엘리먼트를 호출한다.
제어 및 관리 엘리먼트(22')는 특히 이하의 기능을 제공한다: 그것은 정상적인 통신 채널을 통하여 도달하는 보안 채널 및/또는 비공개 대역외 채널을 통하여 관리 애플리케이션(예를 들어, NOC에 상주함)으로부터 오는 정보를 수신하고 그 수신된 정보를 적절한 엘리먼트내에 배치한다. 예를 들어 이들 데이터는 (ⅰ)고객 프로파일 데이터베이스 엘리먼트(20')내에 배치될 고객 프로파일, (ⅱ)걸러내기의 특정 타입을 수행하도록 알려주는, 방어 조정 엘리먼트(23)로의 구성 및 명령어, 또는 (ⅲ)트래픽의 특정 타입을 적절한 엘리먼트로 디렉팅 및/또는 블로킹하도록 분류기/필터에 의해 사용되어야 하는 초기 또는 새로운 세트의 필터-규칙일 수 있다.
DNS 엘리먼트(16)는 DNS 공격의 검출 후 DNS 패킷을 수신한다. 이 엘리먼트는 DNS 요청을 걸러내고, 악의있는 소스를 통계적으로 식별하도록 응답한다.
UDP 엘리먼트(13)는 UDP 공격의 검출 후에 UDP 패킷을 수신한다. 이 엘리먼트는, SYN-방어자/안티스푸핑 엘리먼트(14')에 의해 타당한 접속이 확립된 피해자와 소스와의 사이에 각각의 UDP 패킷이 있는지를 검사함으로써, UDP 공격이 식별될 때에만, UDP 패킷을 걸러낸다.
SYN-방어자/안티스푸핑 엘리먼트(14')는 도 2의 기능(14)이 하는 것과 동일한 방식으로 동작한다.
TCP 엘리먼트(15)는 분류기/필터에 의해 SYN-방어자 엘리먼트(14')로 전송된 것들을 제외하고는 TCP 패킷을 수신한다. TCP 엘리먼트는 동일한 소스 및 수신지 IP 주소와의 타당한 접속이 확립되어 있는지를 검증하도록 각각의 그러한 패킷을 검사한다. 따라서, 실제로, 피해자에게로 전송된 TCP 패킷만이 안티스푸핑 검증 단계(엘리먼트(14')에 의해 수행됨)를 패싱한 접속에 속하는 것을 보증한다.
/dev/null 엘리먼트(11)는 분류기/필터 엘리먼트(12')로부터 폐기되어야 하는 패킷을 수신한다. 이 엘리먼트의 유일한 목적은 폐기된 패킷에 관한 통계 데이터의 수집을 용이하게 하는 것인데, 그러한 수집은 종료 검출 및 지능형 학습 제어 엘리먼트에 대해서도 차례로 그것을 요구하는 통계 수집 엘리먼트에 의해 요구되는 것이다.
디멀티플렉스 엘리먼트(24)는 비-스푸핑된 TCP 패킷을 수신하고 그것들을 방어 조정 엘리먼트(23)에 의해 판정된 바와 같은 다른 엘리먼트로 전송한다. 예를 들어, 플래시 크라우드 상황이 검출되면, 방어 조정 엘리먼트(23)는 보호자에 첨부되었던(첨부된다면) HTTP 캐시 프록시로 모든 HTTP/TCP 패킷(포트 80)을 전송하도록 디멀티플렉스 엘리먼트(24)에 명령한다. 다른 예에 있어서, SYN-방어자 엘리먼트(14')에 의해 생성되는 모든 TCP SYNACK 패킷은 WFQ 엘리먼트(28)를 통과하지 않고 전송을 위해 NIC로 직접 송신된다(피해자에게로 전송된 트래픽만이 WFQ 엘리먼트를 통과해야 하기 때문이다).
HTTP 프록시(36)는 플래시 크라우드 상황이 식별되는 경우에 역 웹 캐시 프록시 기능을 제공하는 고객-제공(예를 들어 ISP-제공) 모듈을 나타낸다. 그러한 경우에 있어서, HTTP는 피해자를 위해 요청을 서비스하는 캐시 프록시(36)로 트래픽이 다이버팅되는 것을 요청한다. 이들 상황하에서 기대되는 HTTP 요청의 볼륨 및 타입을 지원할 수 있는 적절한 캐시 프록시를 제공하는 것은 고객의 몫이다.
WFQ 엘리먼트(28)는 모든 클라이언트로의 페어 액세스 비율을 사용하여 피해자에게로의 액세스 비율을 제어한다. 이러한 생각은 예를 들어 클라이언트 또는 소스 IP 주소, 또는 포트 번호, 및/또는 프로토콜 타입과 같은 임의의 다른 트래픽 분류 파라미터에 상응할 수 있는 각각의 큐에 대한 웨이트를 사용하는 것이다. 각각의 큐 웨이트는 원하는 서비스 품질 및/또는 각각의 그러한 소스(클라이언트)로부터의 트래픽의 추정에 비례한다. 공격하는, 따라서, 피해자에게 기대 볼륨보다 더 많은 볼륨을 가하고 있는 악의있는 클라이언트(또는 너무 많은 요청을 하고 있는 적법한 클라이언트)는 WFQ에 의해 스로틀링되고, 따라서, 그것이 다른 적법한 클라이언트의 액세스 비율에 가하는 효과를 제한한다. WFQ에 대한 디폴트 설정은 어느 소스(IP 주소)가 피해자 대역폭의 상대적으로 더 많은 부분을 가져야 하는지 나타내고, 스로틀링 레벨의 디폴트 설정은 피해자 가용 대역폭 및 보호자를 통과해야 하는 그것의 상대량의 함수이다. 피해자와 통신하는 각각의 소스 IP 주소에 대한 큐에 더하여, 예시된 WFQ 엘리먼트는 플로의 다른 타입 중에서 DNS 요청 및 UDP 패킷의 각각의 하나 이상의 큐를 제공할 수 있다.
이하의 논의를 참조하여 보호자(10,10')의 동작을 더 완벽하게 이해할 것이다.
TCP 안티스푸핑
DDoS 공격에 의해 생성된 트래픽은 다른 방식으로 분류될 수 있는데, 그 중 하나의 방식은 2개의 타입, 즉, 스푸핑된 것과 비-스푸핑된 것으로 나누는 것이다. 스푸핑된 패킷에 있어서, 소스 IP 주소는 거짓이고, 패킷이 발생한 머신의 실제 소스 주소가 아니다. 패킷의 비-스푸핑된 플로를 처리하기 위한 메카니즘은 다음절에서 설명된다. 여기서, 스푸핑된(거짓) 패킷이 도 2 및 도 3에 도시된 타입의 보호자 머신에 의해서 식별되고 블로킹되는 방식을 설명한다.
스푸핑된 패킷은 핑 패킷, 다른 ICMP 타입, TCP 핸드셰이크의 첫 단계로부터의 SYN 패킷, 또는 다른 TCP 또는 UDP 패킷과 같이 다른 타입일 수 있다. 공격동안, 보호자 머신(10,10')은 공격의 타겟(피해자)에 의해 제공되는 서비스에 직접 필요한 패킷만을 분석한다. 서비스가 웹 서비스(HTTP 기반)라면, UDP, ICMP, 및 다른 것들과 같은 모든 다른 패킷은 보호자 머신(10,10')에 의해 폐기된다. 메일 서버, 또는 IRC와 같이 서비스가 다르다면, 그 때 상응하는 패킷이 패싱되고 서비스에 필요하지 않은 나머지들은 폐기된다.
TCP 지향 안티스푸핑 기술을 사용하여 스푸핑 SYN 공격이 블로킹되도록 보호하는 것이 얼마나 매우 대중적이고 매우 어려운가를 설명한다. 원래 체크포인트 및 시스코에 의해 설명된 TCP 인터셉트 모델에 대해서와 같이, 보호자 머신(10,10')은 클라이언트와의 3-웨이 핸드셰이크를 수행하고, 실제 클라이언트가 주장된 소스 IP 주소 및 소스 포트 번호 뒤에서 동작하고 있다는 것을 검증한 후에만, 피해자에게로의 접속도 확립된다. 이후, 보호자 머신(10,10')은 클라이언트와 피해자 사이의 프록시(TCP 프록시)로서 동작한다.
클라이언트가 서버에 대하여 TCP 접속을 개방하기를 원할 때, 그것은 SYN 요청을 송신하여, 새로운 접속을 개방하려는 그 시도에 관해 서버에게 통지한다. 서버는 클라이언트에게 난수(패킷의 플로에 대하여 최초 시퀀스 번호로도 사용됨)를 송신함으로써 클라이언트 소스 주소를 인증한다. 그 후, 서버는 소스로부터 다시 이러한 번호를 수신하도록 대기한다. 스푸핑된다면, SYNACK는 응답하지 않는 존재하지 않는 클라이언트로 송신된다. 그러한 경우에 있어서, 보호자는 접속을 타임아웃하고 그것을 폐기한다(도 4a 및 도 4b 참조)
접속 확립에 대한 도 4a 및 도 4b에 도시된 SYN 메카니즘(3-웨이 핸드셰이크)도 알려진 서비스 거부 공격 방법 중 하나이다. 이러한 공격에 있어서, 많은 수의 스푸핑된 SYN-요청이 서버에 송신되고 있다. 각각의 그러한 요청은 그 상응하는 SYN-ACK가 수신될 때까지 시간 주기(표준 30초)동안 서버에 의해 버퍼링되고 유지되어야 한다. 서버에서의 SYN-요청 버퍼가 가득 차면 최악의 경우에는 서버가 다운되어 버리고 최상의 경우에는 서버가 새로운 접속을 개방하도록 우량의 거짓없는 요청을 무시하게 된다.
보호자 머신(10, 10')의 각각은 거대한 수의 접속 요청을 고속으로 처리하도록 특별히 설계되었다. 더욱이, 본 시스템의 분산 구조는 다른 보호자 머신 사이에서 부하를 분산시킨다. 도 4a 및 도 4b는 3-웨이 핸드셰이크동안의 메시지의 시퀀스를 도시하고 있다. 제1 도면, 도 4a는 IP 주소가 12.12.12.12인 클라이언트와 IP 주소가 10.10.10.10인 서버 사이의 3-웨이 핸드셰이크동안의 메시지의 정상적인 시퀀스를 도시하고 있다. 도 4b에서, 동일한 프로세스가 실행되지만, 이제 SYN 요청 메시지가 보호자 머신에 의해 인터셉팅되고, 그후에 이 보호자 머신은 서버를 위해 3-웨이 핸드셰이크를 실행한다. 보호자 머신(10,10')이 클라이언트로부터 올바른 SYN-ACK 메시지를 수신한 후에만 보호자 머신은 서버와의 상응하는 접속을 개방하고 클라이언트와 서버 사이의 저레벨의 프록시로서 기능하기 시작한다.
입구 필터링
라우터에 인접하여 배치된 예시 시스템의 보호자는 소스 IP 주소가 각각의 인터페이스에 도달할 것으로 생각되는 것과 그렇지 않은 라우터(R0-R9)를 계산하고 명령함으로써 입구 필터링을 돕는다. (프레픽스의 긴 목록상의 패킷의 소스 IP 주소에 따라 필터링하는 능력을 라우터가 가지고 있다고 가정하여) 실제 입구 필터링은 라우터에 의해 실행된다. 이러한 방법은 정상 동작에서 그리고 공격 동안 두가지 모두에서 사용된다. 따라서, 공격시 보호자는 스푸핑된 UDP 또는 ICMP 패킷을 차단하기 위해 인접한 라우터의 필터링 메카니즘을 사용할 수 있다.
도시된 시스템에서, ISP 백본의 주변에 있는 보호자는 라우터 인터페이스의 각각에 들어갈 수 있는 적법한 소스 IP 주소를 학습하고 어느 소스가 수용될 것인지 그리고 어느 소스가 거부될 것이지를 라우터에 명령한다. BGP 루트가 비대칭이고 불안정하더라도, (어느 소스가 블로킹되고 어느 소스가 패싱되는지에 대한) 규칙의 대다수는 안정적이고 경로의 대칭 특성을 가정함으로써 학습할 수 있다는 것에 주목해야 한다. 그러나, 이것은 항상 그러하지는 않기 때문에, 도시된 시스템은 라우팅에서 변경을 적응 및 트래킹한다. 이러한 목적을 위해, 그것은 (넷플로와 같은 인커밍 트래픽의 정보를 주는 라우터의 메카니즘을 사용하여) 요구되는 지식의 계산을 위해 필요한 정보를 모으기 위해 2개의 기술을 사용한다.
1. 이러한 인터페이스상에 수신된 소스 주소내의 변화를 발견하기 위해 각각의 인터페이스에 도달한 트래픽을 샘플링한다.
2. 변경이 적법한지 또는 위조 소스 IP 주소인지를 찾아내기 위해, (보호자 머신으로부터) 핑을 사용한다. 스푸핑된 주소의 경우에 핑에 대한 응답은 다른 인터페이스 또는 다른 보더 라우터에서 수신된다.
통계 인식 유닛을 통한 공격 식별, 인식 및 격리
통계 유닛(16)은 안티스푸핑 인증을 패싱하고 필터에 의해 중지되지 않은 모든 피해자 트래픽을 모니터링한다. 유닛(16)은 트래픽을 샘플링하고 분석하고 악의있는 소스(즉, 훼손된 소스)를 식별하고, 악의없는 진짜 트래픽을 방해하지 않고 공격을 블로킹하는 동작 규칙을 제공한다. 유닛의 동작 뒤에 있는 기본 원리는 소스에 상주하는 블랙-햇 데몬으로부터 발생된 트래픽의 패턴이 정상적인 작동동안 그러한 소스에 의해 생성된 패턴과 다르다는 것이다. 이와 반대로, 공격 동안 "악의없는"(훼손되지 않은) 소스의 트래픽 패턴은 정상적인 시간에 그들의 트래픽을닮는다. 이러한 원리는 공격 타입 및 소스를 식별하기 위해 사용되고 통계 유닛에 의한 세밀한 모니터링에 의한 의심되는 플로의 추가 분석 또는 보호자내의 필터 또는 다른 모듈에 의한 블로킹에 대한 가이드라인을 제공한다. 예를 들어, 통계 유닛은 UDP 플러드 공격이 있고 이 공격 후에 통계 유닛에 의한 보다 세밀한 모니터링으로 UDP 플러드 공격이 소스 IP 주소로의 세트로부터의 포트 666에 있다는 것을 드러내는지를 결정할 수 있다. 통계 유닛이 패킷의 스트림에서 모니터링하는 파라미터는 공격 데몬으로부터의 트래픽의 볼륨, 패킷 크기의 분포, 포트 번호, 패킷 도착간 시간의 분포, 동시접속 플로의 수, 고레벨의 프로토콜 특성 및 인바운드 및 아웃바운드 트래픽을 포함하지만 이에 제한되지 않고, 이 파라미터들은 소스(클라이언트)가 공격 데몬이라는 것을 나타낼 수 있는 모든 파라미터이다. 통계 유닛(16)은 다음의 2개의 주요 태스크를 가지고 있다.
1) 정상 동작, 즉, 아무런 공격이 탑재되고 있지 않을 때 트래픽 패턴을 학습하는 단계, 이러한 패턴은 악의있는 트래픽을 진짜 트래픽으로부터 구별하기 위해 실제 트래픽과 비교하도록 공격동안 피해자를 방어하는 동안 사용된다. 우리는 이러한 학습이 이루어질 수 있는 다음의 3가지 가능한 방법을 고려한다: (1)라우터 넷플로 데이터를 사용하는 방법, (2)피해자 서버에서 서버 로그를 분석하는 방법, (3)무작위 샘플링하기 위해 트래픽이 수시로 보호자에게로 다이버팅되도록 함으로써 보호자에서 잠재적 피해자 트래픽을 분석하는 방법.
2) 우량의 진짜 트래픽으로부터 악의있는 트래픽을 식별하고 격리시키기 위해 공격동안 피해자 트래픽을 모니터링하는 단계. 그후에, 공격하는 호스트의 신원은 필터 또는 인접하는 라우터에 주어지고, 그후에, 이 라우터는 상기 호스트로부터 도달하는 임의의 패킷을 드롭핑한다.
네트워크플로 및 트래픽 분류
통계 유닛(16)에 의해 조사된 기본 엘리먼트는 플로이다. 각각의 플로는 동일한 접속에 속한 패킷의 시퀀스이다. 가장 일반적인 방법에서 플로는 다음의 파라미터, 소스 IP 주소, 소스 포트, 수신지 포트, 프로토콜 타입, 접속 생성의 날의 시간 및 요일에 의해 식별된다. 수신지 IP 주소는 모든 정보가 수신지 주소마다 수집되기 때문에 암시되어진다. 이러한 각각의 플로에 대하여 트래픽 볼륨이 등록된다.
상기 모든 정보를 보유하는 것은 수용불가능한 양의 메모리를 필요로 하기 때문에 실행불가능하다. 그러나, 학습 방법은 각각의 수신지로 향한 트래픽의 기본 특성을 식별하고 이러한 키 파라미터를 효과적으로 압축 보유하기 위해 사용된다. 본질적으로 학습 방법은 수신지와 대화하는 사용자의 그룹의 전형적인 행위를 조사한다. 예를 들어, 전형적인 웹사이트는 호스트(pc) 뒤에 있는 개별적인 사용자, 하나의 멀티 사용자 시분할 호스트를 공유하는 사용자의 그룹 또는 프록시의 뒤에 있는 사용자의 그룹에 의해 액세스된다. 각각의 이러한 그룹에 대하여 그 전형적인 동작이 조사된다. (검색 엔진에 대한) 웹 크롤러와 같은 사용자의 다른 타입 및 키노트(www.keynote.com)와 같은 모니터링 서버가 가능하다. 더욱이, 가장 큰 그룹 즉, 개별적인 사용자의 그룹에 대하여 그들의 신원(IP 주소)이 보유되지 않는다. 다른 그룹내에 포함되지 않은 각각의 소스는 개별적인 소스인 것으로 가정한다. 한편, 수신지에 액세스하는 프록시 머신의 그룹에 대하여 각각의 개별적인 IP 주소는 트리 형상의 데이터 구조로 보유된다. 사용자의 다른 그룹에 대하여 그들의 트래픽이 공격동안 시작부터 블로킹되기 때문에 그들의 IP 주소만이 필요할 수 있다. 차후, 이러한 섹션의 나머지는 사용자의 타입 및 이러한 사용자로부터 발생한 플로의 특성을 고려한다.
각각의 사용자 그룹을 특징짓는 기본 파라미터는 다음과 같다:
1. 트래픽 볼륨 분포: 이들은 그러한 사용자가 생성하는 트래픽의 평균값, 중앙값, 피크, 및 분산을 포함한다.
2. 포트 번호 분포: 소스 포트 번호 분포, 및 수신지 포트 번호 분포.
3. 주기성: 소스는 그 요청의 주기성에 대해 조사된다. 악의있는 소스는 비교적 주기적인 방식으로 액팅할 것인 반면, 악의없는 소스는 규칙적인 방식으로 액팅하지 않을 것이다.
4. 패킷 속성: (공지 및 새로운) 다른 공격을 특징짓는 패킷 크기, 포트 번호, 및 다른 속성의 분포.
5. 프로토콜 특정 특성: 예를 들어 HTTP 에러 비율 및 리프레시 비율.
클라이언트를 특징짓는 후보 파라미터의 더 상세한 목록은 다음과 같다:
1. 트래픽 볼륨: 요청 및 리턴 대역폭. 트래픽 볼륨은 누설 버킷에 의해 또는 익스포넨셜 평균(Ti= (1-a)Ti-1+ adi)을 사용함으로써 특징지어질 수 있다.
2. 도달간 시간.
3. 세션 길이 및 분산.
4. 중지 시간.
5. 요청 오더(HTTP 레벨).
6. 에러있는 요청의 퍼센트.
7. 리프레시 요청의 퍼센트 및 요청 이후 수정된다면 그 퍼센트.
8. 시간 및 날짜.
9. 지오그래피 정보.
10. 서브넷 정보.
11. IP의 이력(블랙 리스트에서의 IP).
12. WFQ에서의 클라이언트의 큐의 길이.
13. 이 클라이언트가 적법한 쿠기를 갖는지 여부(사이트 레벨에서).
14. CPU 소비 요청의 퍼센트: (검색, asp, cgi, 암호화).
15. 학습 트래픽 특성.
상기 파라미터의 평균은 익스포넨셜 평균, 러닝 평균, 시간 윈도우에서의 평균 등과 같은 표준 평균 기법을 사용하여 계산될 수 있다. 특정 타겟의 트래픽 특성을 알아내고 분석하는 3가지 가능한 방법이 있다.
1. 타겟까지의 루트 상의 라인을 가로지르는 패킷((0, 1)에서의 α)의 프랙션을 샘플링하고 그 다음에 플로 id와 그 날의 시간 및 요일에 따라 패킷을 분류한다. α=1로 설정하는 것은 유닛이 모든 패킷을 프로세싱하도록 하고 따라서 최적의 통계 측정치를 제공하는 반면 유닛에 고부하를 가하게 한다. α값이 낮으면 유닛에 부과되는 부하는 감소하나 통계적 측정치의 질을 잠재적으로 다소 감소시킨다. 따라서 프랙션은 시스템에 과부하를 걸리게 함이 없이 충분한 통계치가 획득될 수 있도록 설정되는 파라미터이다.
샘플링을 위한 몇가지 실제적인 방법은 트래픽을 보호자 머신에 복제하는 것 및 (트래픽 복제를 위하여 특별한 스위칭 메커니즘이나 특별한 성능의 라우터를 사용함), 사이트상에 공격이 있는것 처럼, 그 날의 다소 작은 주기동안 보호자 머신을 동작시킴으로써 트래픽을 리디렉팅하는 것, 그리고 사이트에서 트래픽을 모니터링하는 특별한 머신을 설치하는 것을 포함한다.
2. 방어된 타겟에 의하여 수집된 서버 로그를 이용한다. 이것은 전형적으로 타겟에 적용되고 있는 활동에 관한 정보를 포함한다. 예컨대, 잠재적 타겟의 메인 바디를 형성할 것 같은 웹 사이트는 (소스 주소, 날짜 및 기타 파라미터를 포함하여) 사이트에 전송된 모든 문서 요청을 기록하는 로그를 보유한다. 도시된 시스템에 의하여 이러한 로그를 프로세싱하는 것은 (상기 a)에서와 같이, 초 당 패킷으로 측정된) 네트워크 플로 크기의 통계치의 매우 정확한 측정치를 산출한다. 이러한 방법의 결점은 첫째, 타겟에서 수집될 경우 정보가 보호 포인트와 관련 있음을 즉각적으로 명확하게 파악할 수 없다는 것이고, 둘째, 타겟에서 보여지는 패턴은 네트워크 보더에서 보여지는 패턴과 다소 다를 수 있다는 것이다. 그러나 상기 둘 중 어느것도 진정으로 문제될 것은 아니고, 공격시 동안 네트워크 루트가 변경되어 트래픽이 다른 포인트로부터 네트워크로 들어갈 수 있기 때문에, 첫번째 사항은 특징이 될 수 있다.
3. 적당한 라우터로부터 수집된 넷플로 데이터를 분석한다. 이 선택사항은 넷플로를 가능하게 하고 우리가 알고 있는 애플리케이션으로써 넷플로를 프로세싱할 수 있는 백본 제공자를 필요로 한다. 이 방법은 약간의 제한이 있으나 금지되지는 않는다. 상기 제한은 넷플로가 몇분 간격(전형적으로는 5분 간격)으로 각각의 플로에 대한 정보를 수집하고, 이 간격동안 개개의 패킷의 크기를 유지하지 않는다는 것이다. 오히려, 각각의 플로에 대하여 이 간격동안 패싱된 전체 패킷 및 바이트 수를 계산한다. 넷플로의 또다른 제한은 ISP가 데이터를 획득하는데 보다 더 관련되어야 한다는 것이다. 특히 대부분의 시스코 라우터는 단지 하나의 수신지로만 넷플로 데이터를 전송한다. 따라서 데이터는 라우터로부터 직접적으로 오지말고 ISP로부터 와야 한다.
공격시 트래픽 모니터링 및 분석
공격시 또는 과부하시에, 보호자 머신은 피해자를 방어하고, 피해자 트래픽을 모니터링하며, (인입 및 인출) 트래픽을 분류하고, 악의있는 트래픽을 검출하기 위하여 상기 트래픽을 정상적인 트래픽과 비교한다. 공격시 동안 정보는 단지 현재의 플로에 관해서만 수집됨을 주의하여야 한다. 양호한 동작 플로에 관한 정보는 수분내만 유지된다.
1. 공격시 온라인 트래픽 볼륨 수집: 이 모듈은 공격시에 타겟으로 향한 트래픽의 통계치를 수집한다. 이 경우에 있어서, 측정치는 상기 방법 1에서 수집된 측정치와 유사하다. 일반적으로 트래픽의 분류는 학습 단계에서 수행되나 외부 간섭에 의하여 제어/가이드될 수 있다. 이러한 간섭은 공격 타입에 대한 몇몇 부가적인 정보가 다른 소스(예컨대, 휴먼 에이디드 식별)로부터 획득되고 상기 유닛에 의하여 이용될 수 있으면 발생한다.
2. 공격 분석: 전 단계에서 수집된 트래픽 특성은 악의있는 소스를 발견하기 위하여 정상적인 동작동안 알려진 특성과 비교된다. 그 다음에 악의있는 트래픽의 식별된 소스는 각각의 보호자의 필터 컴포넌트에 의하여 블로킹된다. 본 단계의 출력은 플로가 블로킹되도록 하는 필터에게 명령하는 일련의 규칙이다. 각각의 그러한 규칙은 이하의 2개의 파라미터를 갖는다.
a.네트워크 플로,네트워크 플로는 (앞에 위치될 수 있는) 소스 IP 주소, (하나 이상일 수 있는) 수신지 IP 주소, 수신지 포트 번호, 프로토콜 타입 (포트 번호, 즉 훼손된 IP 주소로부터 발생한 모든 트래픽을 무시하는 블로킹인 프록시나 호스트로 생각될 수 있다)의 조합에 의하여 식별된다.
b.지속시간,지속시간은 클래스가 블로킹되는 지속시간을 식별한다.
상기 분석은 데이터의 통계 파라미터에 기초하고 대부분의 "수상한" 및 "해로운" 트래픽 스트림을 블로킹함으로써 타겟 트래픽을 정상적인 부하로 유지시키는 것이 그 목적이다. 블로킹 규칙은 해로운 트래픽을 블로킹하는 것을 최대화하는 반면, 악의없는 트래픽을 블로킹하는 것을 최소화하는 것에 기초한다.
"악의없는" 데이터의 통계 인식
보호자 머신은 악의있는 트래픽을 식별하도록 네트워크 ㅍㄹ로의 2개의 주요 속성, 즉 a)트래픽 패턴, 및 b)트래픽 볼륨을 사용한다. 이하 이들 인자에 기초하여 인식 어프로우치를 설명한다.
트래픽 패턴의 인식
트래픽 패턴의 몇몇 태양이 조사된다:
1) 소스 "IP 지오그래피" 근접성: 소스는 "IP 지오그래피"를 닮은 클래스로 분류된다, 즉, (IP 주소 프레픽스를 사용하여) 인접 네트워크상에 상주하는 IP 주소는 동일한 클래스로 분류된다. 요청의 비교적 많은 볼륨을 생성하는 클래스는 악의있는 것으로 의심된다. 그러한 "악의있는 클래스"는 공격자가 동일한 네트워크내에 데몬의 무리를 심었다면 형성될 수도 있고, 이러한 네트워크는 프록시를 사용하지 않는다.
2) 주기성: 소스는 패킷 도달간 시간의 분포에 대하여 조사된다. 악의있는 데몬의 도달간 시간 분포는 악의없는 소스(사용자 또는 프록시)의 도달간 시간 분포와는 다를 것으로 예상된다. 예를 들어, 악의있는 소스는 비교적 주기적인 방식으로 액팅할 것인 반면, 악의없는 소스는 더 불규칙적인 패턴으로 액팅할 것이다.
3) 패킷 속성: 소스는 그 패킷의 반복 속성에 대하여 조사된다. 예를 들어, 패킷 크기의 분포. 악의있는 소스는 동일한 속성(예를 들어, 모든 패킷이 동일한 크기를 가짐)의 패킷을 생성할 것인 반면, 악의없는 소스는 더 무작위한 특성을 갖는 패킷을 생성할 것이다. 다른 속성은 포트 번호 분포를 포함한다. 소스의 블로킹은 블로킹되지 않은 소스의 총 볼륨이 타겟 서버가 견딜 수 있는 트래픽 볼륨 이하일 때까지 순차적으로 행해진다. 예시의 분산 시스템에 있어서, 이러한 임계값은 다른 보호자에서의 부하에 의존할 수 있다. 분산 알고리즘은 다른 보호자 머신 사이에서 이들 임계값을 조정하도록 사용된다.
4) 프로토콜 특정 속성: HTTP(에러 및 리프레시 비율) DNS(에러 비율) 등과 같은 프로토콜에 의존한다.
트래픽 볼륨의 인식
트래픽 볼륨 인식은 그 정상적인 볼륨과는 중대하게 다른 데이터의 많은 볼륨을 송신하는 악의있는 소스를 식별하도록 사용된다. 구체적으로, 인터넷 데이터 소스는 작은 소스 또는 큰 소스로 분류된다. 전자는 그 트래픽 볼륨이 일반적으로 작은 개개의 IP 주소에 관한 것이다. 후자는 그 볼륨이 상당히 더 큰 프록시 트래픽 또는 스파이더(크롤러) 트래픽에 관한 것이다. 스파이더 액세스로부터 기인한 트래픽 볼륨은, 특히 큰 웹 사이트상에서, 하나의 개인 사용자의 그것보다 통상 더 크다. 그 이유는 스파이더가 전체 사이트를 스캐닝하여 수백 또는 수천개의 요청을 하게 되는 반면, 개인 클라이언트는 평균적으로 수십 페이지 이하를 요청하기 때문이다.
본 예시의 시스템은 각각의 큰 소스(예를 들어 AOL 프록시 및 다른 edu 및 큰 회사 프록시와 같은 프록시)에 대하여 개개의 볼륨 파라미터를 유지한다. 개개의 파라미터는 작은 소스(개개의 클라이언트를 나타냄)에 대하여서는 유지되지 않는다; 오히려 타겟 서버의 전형적인 사용자의 평균값, 중앙값, 및 분산을 특징짓는 파라미터의 1세트. 공격시에 개개의 플로의 트래픽 볼륨은 측정되고 그 기록된 볼륨과 비교된다. 그 볼륨이 그 기록된 측정값과 상당히 다른 플로는 악의있는 것으로 표시된다.
이러한 프로시저의 수학 공식은 예를 들어 다음과 같다:
플로의 K개의 클래스가 주어지고, 1, 2, ..., K로 인덱싱될 때, 그 학습된 볼륨의 평균(μi) 및 분산(бi)에 의해, 그리고, 그 현재 볼륨(Xi)에 의해 특징지어진다. 그 상응하는 기대 볼륨으로부터 가장 큰 편차를 갖는 클래스를 식별하고 싶다고 하자. Yi= (Xi- μi)/бi라 놓자. 본 예시 시스템은 Yi의 값에 의해 클래스를 분류하고 가장 큰 Yi의 값을 갖는 클래스를 블로킹할 것을 추천한다. 분산(бi)이 비교적 크다면(인터넷 트래픽에 대해 일어날 수 있음), 그 때 Yi는 총 트래픽 볼륨 및 타겟 서버 용량에 의존하는 설계 파라미터인 특정 상수(α) 곱하기 Mi(중앙값)로 설정된다.
시간 누적 트래픽 볼륨 인식 및 "제어된" 서비스 거부
볼륨 인식의 효율성은 그것이 구현되는 지속시간에 따라 증가한다. 이것은 시간 주기(T)동안 소스에 의해 생성된 총 데이터 볼륨의 분산이 T에 있어서 감소하기 때문에 옳다. 예를 들어, 1시간의 주기동안 작은 소스에 의해 생성된 트래픽의 평균양은 매우 작을 것으로 기대된다. 그러나, 특정 시기에서, 1분의 주기동안 동일한 소스에 의해 생성된 트래픽의 평균양은 다소 클 수 있을 것으로 기대된다. (1 시간 평균의 그것보다 60배까지 더 크다).
이러한 이유에서, 이하의 유니크 인식 및 트래픽 스크린잉 메카니즘이 본 예시의 시스템에서 구현된다. 소스(i)에 대하여, 구간(0,t)동안(공격이 시간 0에서 시작된다고 가정) 소스에 의해 생성된 트래픽 양을 Si(t)라 놓자. 그리고 시간(t)에서 Xi(t)=Si(t)/t라 설정하고 상기 스크린잉 메카니즘을 적용한다. 평균을 계산하는 대안의 방식은 도달간 시간의 익스포넨셜 평균을 사용하는 것이다. 소스(I)의 j번째 패킷과 (j-1)번째 패킷 사이의 도달간 시간을 dj라 놓으면, 그 때 익스포넨셜 평균은 Ti= (1-a)Ti-1+ adi이다.
이러한 메카니즘은 이하의 속성을 갖는다:
1. t의 작은 값에 대하여(즉, 공격의 첫 수 초에서), 정교하고 능력있는 공격자는 악의없는 특정 사용자가 서비스 거부 당하게 한다. 이것은 공격자가 아주 초기에 악의없는 클라이언트처럼 보이는 트래픽을 생성할 수 있고 따라서 공격자는 악의없는 클라이언트와 구분되지 않는다는 사실에 기인한다. 이러한 단계에서 데몬의 수가 매우 크다면 그 때 본 예시의 시스템은 총 볼륨이 타겟 서버에서 허용되는 최대값 이하인 것을 보증하기 위해 어떤 악의없는 클라이언트 및 어떤 공격자를 블로킹할 수 있다. 이러한 액션을 사용하여, 짧은 시간의 주기동안, 어떤 악의없는 클라이언트는 서비스 거부될 수 있지만 본 예시의 시스템은 (모든 클라이언트가 서비스 거부되는 포인트에서) 사이트가 다운되는 것으로부터 보호한다.
2. t가 점점 더 증가함에 따라, 악의있는 소스는 식별되어 블로킹되고, 악의없는 소스는 거의 블로킹되지 않는다. 이것은 악의있는 소스가 누적된 부하의 많은 양을 야기했기 때문이다. 따라서, 시간이 적게 흐르면 흐를수록 악의없는 클라이언트는 서비스 거부당한다. 실제로는, 비교적 짧은 시간의 주기 후에, 모든 악의있는 소스는 서비스 거부당하는 반면 악의없는 소스는 모든 정상적인 서비스를수신한다.
예:나가노 서버의 웹 사이트상에서 생성된 트래픽 볼륨을 생각해보자(Feb 98). 그것은 24 시간의 주기동안 59,582명의 클라이언트로부터 11,665,713번의 요청을 받았다. 이것은 한명의 사용자가 세션 당 평균 200 페이지를 요청했다는 것을 의미한다. 하루동안 클라이언트의 균일 분포를 가정하고, 한명의 사용자 세션이 평균하여 약 10분에 걸쳤다고 가정하면, 사이트가 평균하여 400명의 동시접속 사용자를 지원한다는 결론을 얻는다. 트래픽은 하루동안 균일하지 않기 때문에, 정상적인 트래픽은 (적어도) 하루 평균 2-3번 도달한다고, 즉 약 1000명의 동시접속 사용자를 가정하자. 해커가 최대 부하의 2배만큼(즉, 100%만큼) 사이트를 과부하시키기 위해서는, 별도의 1000명의 동시접속 사용자를 배치시켜야 할 필요가 있다. 공격자가 200개의 데몬을 사용한다고 가정하면, 각각의 데몬은 정상적인 사용자의 트래픽보다 5배 높은 트래픽을 생성하여야 한다, 즉, (분 당 20페이지 대신에) 평균하여 분 당 100페이지를 요청하여야 한다.
이제, 본 예시의 시스템이 악의없는 소스로부터 악의있는 소스를 스크린잉하도록 어떻게 동작하는지 살펴보자. 방어하기 시작한지 1분 후에, 대부분의 악의있는 소스는 약 100페이지 요청을 생성한다. 대조적으로, 악의없는 소스는 약 20 페이지를 생성한다; 통계 요동에 기인하여 악의없는 소스 중 어떤 것은 가령 40번의 요청과 같이 더 많은 트래픽을 생성할 수도 있으나 약 100번의 요청을 생성하는 것은 (있다 하더라도) 거의 없을 것이다. 이러한 이유로, 1분 후에 본 예시의 시스템은 잘못하여 악의없는 사용자를 블로킹할 가능성이 매우 적게 올바른 스크린잉을수행한다.
보호 메카니즘의 설명
보호 및 검출은 계층 방식으로 수행된다. 예를 들어 UDP 볼륨 공격을 생각해볼 때, 첫 단계에서 UDP 패킷의 총 볼륨을 추정하려 할 것이다. 이러한 볼륨이 특정 임계값 이상이라고 결정하고 나면, 몇몇 방어를 한다.
예를 들어: (1)수신지 포트 당 볼륨, (2)소스 IP 당 볼륨 등을 추정한다. 대부분의 볼륨이 포트 53(DNS 프로토콜)에 대한 것임을 인식한다고 가정하면, 그러한 경우에 있어서는 DNS에 특정한 방어를 호출할 것이다. 일반적인 생각은, 모든 시간에서 모든 방어를 활성화시키기보다, 그들이 관련있어 보이는 때에만 방어를 호출하는 것이다.
다이버팅된 트래픽의 프로세싱 및 비-공격 시나리오
DDoS 공격하의 피해자(V)에 대해 악의있는 트래픽을 필터링하는 것에 더하여, 또는 그 대신에, 보호자 머신은, 예를 들어 노드가 과잉-접속 또는 불충분한 자원에 기인하여 단지 압도된 경우와 같이, 임의의 다양한 다른 환경하의 과부하로부터 피해자를 보호하도록 채용될 수 있다. 그러한 과부하 조건은, 예를 들어 그들이 보호자에게로 중계되는 NOC로 인증된 메시지를 송신함으로써, DDoS 공격에 대하여 상기한 바와 같은 방식으로 피해자에 의해 시그날링될 수 있다(SNMP 또는 대역외 통신이 대신 사용될 수 있다).
경고 메시지는 피해자 머신의 신원을 포함한다(그 IP 주소를 포함). 이러한 포인트에서 피해자는 "보호" 모드로 들어간다.
원하는 목적을 달성하는 시스템, 디바이스, 및 방법이 상술되었다. 상기 실시예는 단지 예시일뿐 본 발명의 범위내에서 변경을 포함하는 다른 실시예가 실시될 수 있음을 당업자는 인식할 것이다. 따라서, 예로서, 본 발명의 범위내에서, 보호자 머신은 도 1a 및 도 1b와 결합되어 설명된 엘리먼트보다 더 적거나, 더 많거나, 다른 엘리먼트를 포함할 수도 있고 그러한 엘리먼트 사이의 더 적거나, 더 많거나, 다른 상호접속을 포함할 수도 있음을 인식할 것이다. 더 나아가, 본 발명은 인터넷 이외의 네트워크(IP 등)에도 적용될 수 있음을 인식할 것이다. 더 나아가, 보호자 노드 기능은 임의의 다양한 플랫폼상의 소프트웨어, 펌웨어, 또는 하드웨어내에서 구현될 수 있음을 인식할 것이다. 또한, 본 발명은 DDoS 공격으로부터 기인한 과부하 조건만에 국한되는 것이 아니라 인터넷상의(또는 다른 네트워크상의) 임의의 과부하 조건으로부터도 피해자를 보호할 목적으로 적용될 수 있다.

Claims (52)

  1. 네트워크상의 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 네트워크 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 네트워크 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서, 상기 다이버팅 단계는 트래픽이 피해자에게로 갔을 경로와는 다른 트래픽 경로를 달성하는 단계를 포함하는 것을 특징으로 하는 방법.
  3. 제 1 항에 있어서, 상기 필터링 단계는 (ⅰ)기대 패턴과 다른 트래픽 패턴 및 (ⅱ)기대 볼륨과 다른 트래픽 볼륨 중 어느것이든 검출하는 단계를 포함하고, 상기 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 중대하게 변화하는지를 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서, 상기 필터링 단계는 수상한 악의있는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제 4 항에 있어서, 상기 검출 단계는 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
  6. 제 5 항에 있어서, 상기 필터링 단계는 피해자로부터 선택된 서비스를 요구하는 트래픽을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
  7. 제 6 항에 있어서, 상기 필터링 단계는 피해자로부터 선택된 서비스를 요구하지 않는 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
  8. 제 7 항에 있어서, 상기 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
  9. 제 1 항에 있어서, 상기 제 1 세트 및 제 2 세트는 0개, 1개, 또는 그 이상의 네트워크 엘리먼트를 공통으로 포함하는 것을 특징으로 하는 방법.
  10. 제 1 항에 있어서, 하나 이상의 잠재적 피해자의 세트 주변의 네트워크상의 포인트에서 제 1 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을특징으로 하는 방법.
  11. 제 10 항에 있어서, 제 1 세트의 하나 이상의 엘리먼트 외부 또는 근방의 제 2 세트의 하나 이상의 엘리먼트를 동작시키는 단계를 포함하는 것을 특징으로 하는 방법.
  12. 제 10 항에 있어서, 제 2 세트의 하나 이상의 엘리먼트로 트래픽을 다이버팅하도록 트래픽을 다이버팅하기 위해 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
  13. 제 12 항에 있어서, 분산 서비스 거부(DDoS) 공격 또는 그 통지에 응답하여 트래픽을 다이버팅하도록 제 1 세트의 하나 이상의 엘리먼트를 활성화하는 것을 특징으로 하는 방법.
  14. 제 12 항에 있어서, (ⅰ)피해자의 네트워크 주소가 네트워크 거리에 있어서 제 2 세트의 하나 이상의 엘리먼트에 근접되어 있음을 선언하거나, (ⅱ)피해자의 네트워크 주소가 피해자로부터 멀리 떨어져 있음을 선언함으로써, 제 1 세트의 하나 이상의 엘리먼트를 선택적으로 활성화하는 단계를 포함하는 것을 특징으로 하는 방법.
  15. 제 12 항에 있어서, 피해자를 제 1 및 제 2 주소와 연관시키는 단계를 포함하고, 상기 필터링 단계는 제 1 주소로 디렉팅된 포인트에 의해 정의된 영역 외부에서 수신된 트래픽을 폐기하는 단계, 및 제 2 주소로 디렉팅된 영역 외부에서 수신된 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  16. 제 10 항에 있어서, 상기 다이버팅 단계는 폴리시 기반 라우팅을 사용하여 트래픽을 리디렉팅하는 단계를 포함하는 것을 특징으로 하는 방법.
  17. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하고,
    C. 상기 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱함으로써, 스푸핑된 소스 주소를 갖는 패킷을 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
  18. 제 17 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 상기 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
  19. 제 18 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 상기 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
  20. 제 18 항에 있어서, 상기 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  21. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게 선택적으로 패싱하는 단계를 포함하고,
    C. 상기 필터링 단계는 피해자에게로, 여하튼, 트래픽을 선택적으로 패싱하기 전에 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  22. 제 21 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 상기 단계는 검증 프로토콜을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
  23. 제 22 항에 있어서, 다이버팅된 트래픽을 적어도 부분적으로 프로세싱하는 상기 단계는 다이버팅된 트래픽의 소스와의 TCP 3-웨이 핸드셰이크를 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
  24. 제 22 항에 있어서, 상기 패싱 단계는 핸드셰이크 프로토콜에 정확하게 따르는 소스로부터의 트래픽을 피해자에게로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  25. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하고,
    C. 상기 필터링 단계는 선택된 타입의 트래픽을 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
  26. 제 25 항에 있어서, 상기 필터링 단계는 UDP 및 ICMP 패킷 트래픽 중 어느것이든 폐기하는 단계를 포함하는 것을 특징으로 하는 방법.
  27. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향한 트래픽의 제 1 필터링을 수행하고 그 트래픽의 적어도 일부를 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")의 제 2 필터링을 수행하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  28. 제 27 항에 있어서, 제 1 필터링 단계는 트래픽이 수신되는 네트워크 인터페이스에 대하여 트래픽의 주소를 검사하는 단계를 포함하는 것을 특징으로 하는 방법.
  29. 제 28 항에 있어서, 트래픽 경로에서의 변경을 트래킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  30. 제 29 항에 있어서, 네트워크 인터페이스상에 도달하는 트래픽을 샘플링하는 단계를 포함하는 것을 특징으로 하는 방법.
  31. 제 29 항에 있어서, 적법성을 검정하도록 트래픽의 외관상 소스를 조회하는 단계를 포함하는 것을 특징으로 하는 방법.
  32. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하고,
    C. 상기 필터링 단계는 과부하 조건의 타입 및 소스 중 어느것이든 식별하는 단계를 포함하는 것을 특징으로 하는 방법.
  33. 제 32 항에 있어서, 상기 식별 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 측정하는 단계를 포함하는 것을 특징으로 하는 방법.
  34. 하나 이상의 잠재적 피해자의 세트내의 네트워크 엘리먼트("피해자")에서 과부하 조건에 응답하는 방법에 있어서, 상기 방법은
    A. 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 1 세트에 대하여, 피해자에게로 향했을 트래픽을 하나 이상의 잠재적 피해자의 세트 외부의 하나 이상의 엘리먼트의 제 2 세트로 다이버팅하는 단계, 및
    B. 제 2 세트의 엘리먼트가 단계(A)에서 다이버팅된 트래픽("다이버팅된 트래픽")을 필터링하고 그 일부를 피해자에게로 선택적으로 패싱하는 단계를 포함하고,
    C. 상기 필터링 단계는 (ⅰ)기대 패턴과 다른 트래픽 패턴 및 (ⅱ)기대 볼륨과 다른 트래픽 볼륨 중 어느것이든 검출하는 단계를 포함하는 것을 특징으로 하는 방법.
  35. 제 34 항에 있어서, 피해자가 과부하 조건에 있지 않는 주기동안 트래픽 패턴 및 볼륨 중 어느것이든 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  36. 제 35 항에 있어서, 상기 판정 단계는 넷플로 데이터, 서버 로그, 피해자 트래픽, 및 피해자 볼륨 중 어느것이든 분석하는 단계, 및 생성한 사용자의 타입에 따라 트래픽 패턴 및 볼륨 중 어느것이든 분류하는 단계 중 적어도 하나의 단계를 포함하는 것을 특징으로 하는 방법.
  37. 제 36 항에 있어서, 사용자의 타입은 개인 사용자, 호스트 또는 프록시를 공유하는 사용자, 웹 크롤러, 및 모니터링 서비스를 포함하는 것을 특징으로 하는 방법.
  38. 제 35 항에 있어서, 상기 검출 단계는 피해자가 과부하 조건에 있지 않는 주기동안의 트래픽 패턴 및 볼륨 중 각각의 하나와 피해자가 과부하 조건에 있는 때의 트래픽 패턴 및 볼륨 중 어느것이든을 비교하는 단계를 포함하는 것을 특징으로 하는 방법.
  39. 제 38 항에 있어서, 상기 비교 단계는 트래픽 패턴 및 볼륨 중 어느것이든 기대 트래픽 패턴 및 볼륨에 대해 통계적으로 변화하는지를 각각 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  40. 제 36 항에 있어서, 상기 비교 단계는 트래픽 볼륨, 포트 번호 분포, 요청의 주기성, 패킷 속성, IP 지오그래피, 및 패킷 도달/크기의 분포 중 어느것이든 비교하는 단계를 포함하는 것을 특징으로 하는 방법.
  41. 제 34 항에 있어서, 상기 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 통계적으로 중대하게 변화하는지를 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  42. 제 34 항에 있어서, 상기 검출 단계는 트래픽 패턴 및 볼륨 중 어느것이든 기대 패턴 및 볼륨 중 어느것이든으로부터 통계적으로 중대하게 변화하는지를 각각 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  43. 제 42 항에 있어서, 피해자가 과부하 조건에 있지 않는 주기동안 트래픽 패턴 및 볼륨 중 어느것이든 판정하는 단계를 포함하는 것을 특징으로 하는 방법.
  44. 제 43 항에 있어서, 상기 판정 단계는 넷플로 데이터, 서버 로그, 피해자 트래픽, 및 피해자 볼륨 중 어느것이든 분석하는 단계를 포함하는 것을 특징으로 하는 방법.
  45. 제 44 항에 있어서, 판정 단계 중 어느것이든 생성한 사용자의 타입에 따라 트래픽 패턴 및 볼륨 중 어느것이든 분류하는 단계를 포함하는 것을 특징으로 하는 방법.
  46. 네트워크상의 과부하 조건으로부터 보호하는데 사용하기 위한 네트워크 엘리먼트에 있어서, 상기 네트워크 엘리먼트는
    네트워크로부터 트래픽을 수신하기 위한 입력부,
    잠재적으로 과부하 조건을 일으키는 것으로 의심되는 소스로부터 발생한 트래픽을 선택적으로 블로킹하기 위해 입력부에 연결되어 있는 필터,
    잠재적으로 과부하 조건을 일으키는 소스로부터 발생했음을 통계적으로 나타내는 트래픽을 식별하기 위해 필터에 연결되어 있는 통계 모듈, 및
    필터에 의해 블로킹되지 않은 트래픽을 네트워크내의 다른 엘리먼트상으로 선택적으로 패싱하기 위해 입력부에 연결되어 있는 출력부를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
  47. 제 46 항에 있어서, 과부하 조건이 종료되었을 때를 판정하는데 적어도 관여하는 종료 검출 모듈을 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
  48. 제 46 항에 있어서, 트래픽의 소스를 검증하거나 인증하는 안티스푸핑 엘리먼트를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
  49. 네트워크상의 과부하 조건으로부터 보호하는데 사용하기 위한 시스템에 있어서, 네트워크 엘리먼트는
    네트워크로부터 트래픽을 수신하기 위한 입력부, 잠재적으로 과부하 조건을일으키는 것으로 의심되는 소스로부터 발생한 트래픽을 선택적으로 블로킹하기 위해 입력부에 연결되어 있는 필터, 잠재적으로 과부하 조건을 일으키는 것으로 의심되는 소스로부터 발생했음을 통계적으로 나타내는 트래픽을 식별하기 위해 필터에 연결되어 있는 통계 모듈, 및 필터에 의해 블로킹되지 않은 트래픽을 네트워크내의 다른 엘리먼트상으로 선택적으로 패싱하기 위해 입력부에 연결되어 있는 출력부를 각각 포함하고, 네트워크상에 배치되어 있는 하나 이상의 네트워크 엘리먼트("보호자"), 및
    네트워크상의 하나 이상의 잠재적 피해자의 세트내의 다른 네트워크 엘리먼트("피해자")에게로 향했을 트래픽을 하나 이상의 보호자에게로 선택적으로 다이버팅하기 위해 네트워크상에 배치되어 보호자와 통신하고 있는 하나 이상의 다른 네트워크 엘리먼트("다이버터")를 포함하는 것을 특징으로 하는 시스템.
  50. 제 49 항에 있어서, 하나 이상의 보호자는 과부하 조건이 종료되었을 때를 판정하는데 적어도 관여하는 종료 검출 모듈을 포함하는 것을 특징으로 하는 시스템.
  51. 제 49 항에 있어서, 하나 이상의 보호자는 네트워크상의 트래픽을 블로킹하기 위한 규칙을 생성하고 그것을 네트워크상의 다른 네트워크 엘리먼트로 송신하기 위해 통계 모듈에 연결되어 있는 입구 필터를 포함하는 것을 특징으로 하는 시스템.
  52. 제 49 항에 있어서, 트래픽의 소스를 검증하거나 인증하는 안티스푸핑 엘리먼트를 포함하는 것을 특징으로 하는 네트워크 엘리먼트.
KR1020037005400A 2000-10-17 2001-10-16 분산 네트워크의 노드상의 과부하 조건으로부터 보호하기위한 방법 및 장치 KR100796996B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US24089900P 2000-10-17 2000-10-17
US60/240,899 2000-10-17
US09/929,877 2001-08-14
US09/929,877 US7707305B2 (en) 2000-10-17 2001-08-14 Methods and apparatus for protecting against overload conditions on nodes of a distributed network
PCT/US2001/032273 WO2002033870A2 (en) 2000-10-17 2001-10-16 Methods and apparatus for protecting against overload conditions on nodes of a distributed network

Publications (2)

Publication Number Publication Date
KR20030059204A true KR20030059204A (ko) 2003-07-07
KR100796996B1 KR100796996B1 (ko) 2008-01-22

Family

ID=26933812

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037005400A KR100796996B1 (ko) 2000-10-17 2001-10-16 분산 네트워크의 노드상의 과부하 조건으로부터 보호하기위한 방법 및 장치

Country Status (7)

Country Link
US (1) US7707305B2 (ko)
EP (1) EP1364297B1 (ko)
KR (1) KR100796996B1 (ko)
AT (1) ATE493712T1 (ko)
AU (1) AU2002213264A1 (ko)
DE (1) DE60143767D1 (ko)
WO (1) WO2002033870A2 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675850B1 (ko) * 2005-10-12 2007-02-02 삼성전자주식회사 AXI 프로토콜을 적용한 NoC 시스템
KR100803029B1 (ko) * 2006-12-01 2008-02-18 경희대학교 산학협력단 협력적인 통계기반 탐지기법을 이용한 분산서비스거부공격의 방어 방법
KR100882809B1 (ko) * 2006-08-31 2009-02-10 영남대학교 산학협력단 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어시스템 및 방법
KR100900491B1 (ko) * 2008-12-02 2009-06-03 (주)씨디네트웍스 분산 서비스 거부 공격의 차단 방법 및 장치
KR100956498B1 (ko) * 2008-01-09 2010-05-07 한양대학교 산학협력단 상호 협력적인 다중 서버를 통한 침입 탐지 시스템 및 방법그리고 침입 탐지 통제 시스템 및 방법
KR100977124B1 (ko) * 2003-06-27 2010-08-23 주식회사 케이티 트래픽 폭주 및 불법 트래픽 감시 제어를 통한 고객망관리 서비스 시스템 및 그 방법
WO2011002119A1 (ko) * 2009-07-02 2011-01-06 충남대학교 산학협력단 패킷검사장치의 부하조절방법 및 장치
WO2012153948A2 (ko) * 2011-05-06 2012-11-15 주식회사 비씨클라우드 디도스 공격 상황에서 세션 유지 시스템
KR101231966B1 (ko) * 2010-04-19 2013-02-08 에스2정보 주식회사 장애 방지 서버 및 방법
KR101235099B1 (ko) * 2005-03-31 2013-02-20 알카텔-루센트 유에스에이 인코포레이티드 시그널링 공격으로부터 3 세대 무선 네트워크를 방어하기 위한 방법들 및 장치들
KR101358794B1 (ko) * 2012-03-28 2014-02-10 에스케이브로드밴드주식회사 이상 패킷 차단 시스템 및 방법

Families Citing this family (269)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089591B1 (en) 1999-07-30 2006-08-08 Symantec Corporation Generic detection and elimination of marco viruses
JP3596400B2 (ja) * 2000-01-21 2004-12-02 日本電気株式会社 Dnsサーバフィルタ
US20060212572A1 (en) * 2000-10-17 2006-09-21 Yehuda Afek Protecting against malicious traffic
US7801978B1 (en) 2000-10-18 2010-09-21 Citrix Systems, Inc. Apparatus, method and computer program product for efficiently pooling connections between clients and servers
US20020143946A1 (en) * 2001-03-28 2002-10-03 Daniel Crosson Software based internet protocol address selection method and system
WO2002093334A2 (en) * 2001-04-06 2002-11-21 Symantec Corporation Temporal access control for computer virus outbreaks
EP1393194B1 (en) 2001-04-27 2012-09-26 Cisco Technology, Inc. Weighted fair queuing-based methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7458094B2 (en) * 2001-06-06 2008-11-25 Science Applications International Corporation Intrusion prevention system
US8650321B2 (en) * 2001-07-24 2014-02-11 Digi International Inc. Network architecture
US7774492B2 (en) * 2001-07-26 2010-08-10 Citrix Systems, Inc. System, method and computer program product to maximize server throughput while avoiding server overload by controlling the rate of establishing server-side net work connections
US20040187032A1 (en) * 2001-08-07 2004-09-23 Christoph Gels Method, data carrier, computer system and computer progamme for the identification and defence of attacks in server of network service providers and operators
US8438241B2 (en) * 2001-08-14 2013-05-07 Cisco Technology, Inc. Detecting and protecting against worm traffic on a network
WO2004070509A2 (en) 2001-08-14 2004-08-19 Riverhead Networks Inc. Detecting and protecting against worm traffic on a network
US6907525B2 (en) 2001-08-14 2005-06-14 Riverhead Networks Inc. Protecting against spoofed DNS messages
WO2004090741A2 (en) 2001-08-14 2004-10-21 Riverhead Networks Inc. Selective diversion and injection of communication traffic
US7313815B2 (en) * 2001-08-30 2007-12-25 Cisco Technology, Inc. Protecting against spoofed DNS messages
US20030045308A1 (en) * 2001-08-30 2003-03-06 Ikhlaq Sidhu Wireless data access infrastructure based upon an open platform
US7389537B1 (en) * 2001-10-09 2008-06-17 Juniper Networks, Inc. Rate limiting data traffic in a network
US7356596B2 (en) * 2001-12-07 2008-04-08 Architecture Technology Corp. Protecting networks from access link flooding attacks
NZ516346A (en) * 2001-12-21 2004-09-24 Esphion Ltd A device for evaluating traffic on a computer network to detect traffic abnormalities such as a denial of service attack
SE526312C2 (sv) * 2001-12-21 2005-08-23 Anna Oestberg Med Anna Oestber Spärranordning för oönskad nättrafik i öppna telekommunikationsnät
US9026674B1 (en) * 2010-03-22 2015-05-05 Satish K Kanna System and method for accurately displaying communications traffic information
US20030187989A1 (en) * 2002-03-27 2003-10-02 Patrick Petit System and method for determining memory usage in sizing a portal server
US20030188155A1 (en) * 2002-03-27 2003-10-02 Patrick Petit System and method of determining the number of central processing units for sizing a portal server
US20030187982A1 (en) * 2002-03-27 2003-10-02 Patrick Petit System and method for resource load balancing in a portal server
US20030187998A1 (en) * 2002-03-27 2003-10-02 Patrick Petit System and method for detecting resource usage overloads in a portal server
US20060242313A1 (en) * 2002-05-06 2006-10-26 Lewiz Communications Network content processor including packet engine
US7155742B1 (en) 2002-05-16 2006-12-26 Symantec Corporation Countering infections to communications modules
US7367056B1 (en) 2002-06-04 2008-04-29 Symantec Corporation Countering malicious code infections to computer files that have been infected more than once
US7418492B1 (en) 2002-06-20 2008-08-26 P-Cube Ltd. System and a method for testing network communication devices
US7418732B2 (en) * 2002-06-26 2008-08-26 Microsoft Corporation Network switches for detection and prevention of virus attacks
WO2004006115A1 (en) * 2002-07-02 2004-01-15 Netscaler, Inc System, method and computer program product to avoid server overload by controlling http denial of service (dos) attacks
US7418729B2 (en) 2002-07-19 2008-08-26 Symantec Corporation Heuristic detection of malicious computer code by page tracking
US7380277B2 (en) 2002-07-22 2008-05-27 Symantec Corporation Preventing e-mail propagation of malicious computer code
US7478431B1 (en) 2002-08-02 2009-01-13 Symantec Corporation Heuristic detection of computer viruses
US7167912B1 (en) * 2002-08-09 2007-01-23 Cisco Technology, Inc. Method and apparatus for detecting failures in network components
TWI266215B (en) * 2002-08-12 2006-11-11 Silicon Integrated Sys Corp Method for analyzing power noise and method for reducing the same
US7190671B2 (en) * 2002-08-21 2007-03-13 Alcatel Canada Inc. Mitigating denial-of-service attacks using frequency domain techniques
US7467408B1 (en) * 2002-09-09 2008-12-16 Cisco Technology, Inc. Method and apparatus for capturing and filtering datagrams for network security monitoring
DE10241974B4 (de) * 2002-09-11 2006-01-05 Kämper, Peter Überwachung von Datenübertragungen
US7469419B2 (en) 2002-10-07 2008-12-23 Symantec Corporation Detection of malicious computer code
WO2004036387A2 (en) * 2002-10-18 2004-04-29 Broadcom Corporation System and method for receive queue provisioning
US7159149B2 (en) * 2002-10-24 2007-01-02 Symantec Corporation Heuristic detection and termination of fast spreading network worm attacks
US7353538B2 (en) 2002-11-08 2008-04-01 Federal Network Systems Llc Server resource management, analysis, and intrusion negation
US7376732B2 (en) * 2002-11-08 2008-05-20 Federal Network Systems, Llc Systems and methods for preventing intrusion at a web host
KR100481614B1 (ko) 2002-11-19 2005-04-08 한국전자통신연구원 서비스 거부와 분산 서비스 거부 공격으로부터 정상트래픽을 보호하는 방법 및 그 장치
US7249187B2 (en) 2002-11-27 2007-07-24 Symantec Corporation Enforcement of compliance with network security policies
US20040111531A1 (en) * 2002-12-06 2004-06-10 Stuart Staniford Method and system for reducing the rate of infection of a communications network by a software worm
US7631353B2 (en) * 2002-12-17 2009-12-08 Symantec Corporation Blocking replication of e-mail worms
US7296293B2 (en) 2002-12-31 2007-11-13 Symantec Corporation Using a benevolent worm to assess and correct computer security vulnerabilities
US20040148520A1 (en) * 2003-01-29 2004-07-29 Rajesh Talpade Mitigating denial of service attacks
US7979694B2 (en) * 2003-03-03 2011-07-12 Cisco Technology, Inc. Using TCP to authenticate IP source addresses
US7398315B2 (en) * 2003-03-12 2008-07-08 Workman Nydegger Reducing unwanted and unsolicited electronic messages by preventing connection hijacking and domain spoofing
US7552176B2 (en) * 2003-03-12 2009-06-23 Microsoft Corporation Reducing unwanted and unsolicited electronic messages by exchanging electronic message transmission policies and solving and verifying solutions to computational puzzles
US7203959B2 (en) 2003-03-14 2007-04-10 Symantec Corporation Stream scanning through network proxy servers
EP2977910A1 (en) 2003-04-09 2016-01-27 Cisco Technology, Inc. Selective diversion and injection of communication traffic
US7426634B2 (en) * 2003-04-22 2008-09-16 Intruguard Devices, Inc. Method and apparatus for rate based denial of service attack detection and prevention
US7681235B2 (en) * 2003-05-19 2010-03-16 Radware Ltd. Dynamic network protection
WO2004107131A2 (en) * 2003-05-28 2004-12-09 Caymas Systems, Inc. Policy based network address translation
US7409712B1 (en) * 2003-07-16 2008-08-05 Cisco Technology, Inc. Methods and apparatus for network message traffic redirection
US8271774B1 (en) 2003-08-11 2012-09-18 Symantec Corporation Circumstantial blocking of incoming network traffic containing code
US8539063B1 (en) 2003-08-29 2013-09-17 Mcafee, Inc. Method and system for containment of networked application client software by explicit human input
KR100590758B1 (ko) * 2003-10-02 2006-06-15 한국전자통신연구원 이더넷 기반 수동형 광가입자망을 위한 서비스 품질 지원장치 및 방법
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
FR2863128A1 (fr) * 2003-11-28 2005-06-03 France Telecom Procede de detection et de prevention des usages illicites de certains protocoles de reseaux sans alteration de leurs usages licites
US7840968B1 (en) 2003-12-17 2010-11-23 Mcafee, Inc. Method and system for containment of usage of language interfaces
US7417951B2 (en) 2003-12-17 2008-08-26 Electronics And Telecommunications Research Institute Apparatus and method for limiting bandwidths of burst aggregate flows
US20050198269A1 (en) * 2004-02-13 2005-09-08 Champagne Andrew F. Method and system for monitoring border gateway protocol (BGP) data in a distributed computer network
US7503068B2 (en) * 2004-02-13 2009-03-10 Microsoft Corporation Secure ISN generation
US7925766B2 (en) * 2004-02-18 2011-04-12 At&T Intellectual Property Ii, L.P. Method for distributed denial-of-service attack mitigation by selective black-holing in MPLS VPNS
US20050195840A1 (en) * 2004-03-02 2005-09-08 Steven Krapp Method and system for preventing denial of service attacks in a network
US7610621B2 (en) * 2004-03-10 2009-10-27 Eric White System and method for behavior-based firewall modeling
JP4334379B2 (ja) * 2004-03-12 2009-09-30 富士通株式会社 ネットワークシステム
US8051483B2 (en) 2004-03-12 2011-11-01 Fortinet, Inc. Systems and methods for updating content detection devices and systems
US7337327B1 (en) 2004-03-30 2008-02-26 Symantec Corporation Using mobility tokens to observe malicious mobile code
US7571181B2 (en) * 2004-04-05 2009-08-04 Hewlett-Packard Development Company, L.P. Network usage analysis system and method for detecting network congestion
US7376080B1 (en) * 2004-05-11 2008-05-20 Packeteer, Inc. Packet load shedding
US7373667B1 (en) 2004-05-14 2008-05-13 Symantec Corporation Protecting a computer coupled to a network from malicious code infections
US7484094B1 (en) 2004-05-14 2009-01-27 Symantec Corporation Opening computer files quickly and safely over a network
US7370233B1 (en) 2004-05-21 2008-05-06 Symantec Corporation Verification of desired end-state using a virtual machine environment
US7565445B2 (en) 2004-06-18 2009-07-21 Fortinet, Inc. Systems and methods for categorizing network traffic content
US8739274B2 (en) 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
US7757074B2 (en) 2004-06-30 2010-07-13 Citrix Application Networking, Llc System and method for establishing a virtual private network
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
WO2006013292A1 (fr) * 2004-07-09 2006-02-09 France Telecom Procede, dispositif et systeme de protection d'un serveur contre des attaques de deni de service dns
AU2005266945A1 (en) 2004-07-23 2006-02-02 Citrix Systems, Inc. A method and systems for securing remote access to private networks
US8046830B2 (en) 2004-07-23 2011-10-25 Citrix Systems, Inc. Systems and methods for network disruption shielding techniques
US20090094671A1 (en) * 2004-08-13 2009-04-09 Sipera Systems, Inc. System, Method and Apparatus for Providing Security in an IP-Based End User Device
US8582567B2 (en) * 2005-08-09 2013-11-12 Avaya Inc. System and method for providing network level and nodal level vulnerability protection in VoIP networks
US7933985B2 (en) * 2004-08-13 2011-04-26 Sipera Systems, Inc. System and method for detecting and preventing denial of service attacks in a communications system
TW200608224A (en) * 2004-08-23 2006-03-01 Lite On It Corp Player and method for processing a file with vector-based format
US7441042B1 (en) 2004-08-25 2008-10-21 Symanetc Corporation System and method for correlating network traffic and corresponding file input/output traffic
US7873955B1 (en) * 2004-09-07 2011-01-18 Mcafee, Inc. Solidifying the executable software set of a computer
US7690034B1 (en) 2004-09-10 2010-03-30 Symantec Corporation Using behavior blocking mobility tokens to facilitate distributed worm detection
US7478429B2 (en) * 2004-10-01 2009-01-13 Prolexic Technologies, Inc. Network overload detection and mitigation system and method
US20070143841A1 (en) * 2004-10-21 2007-06-21 Nippon Telegraph And Telephone Corp. Defense device, defense method, defense program, and network-attack defense system
US7313878B2 (en) * 2004-11-05 2008-01-01 Tim Clegg Rotary pop-up envelope
US7565686B1 (en) 2004-11-08 2009-07-21 Symantec Corporation Preventing unauthorized loading of late binding code into a process
US20070113290A1 (en) * 2004-11-08 2007-05-17 Olivier Charles Method of detecting and preventing illicit use of certain network protocols without degrading legitimate use thereof
US7540025B2 (en) * 2004-11-18 2009-05-26 Cisco Technology, Inc. Mitigating network attacks using automatic signature generation
US7568224B1 (en) 2004-12-06 2009-07-28 Cisco Technology, Inc. Authentication of SIP and RTP traffic
US7626940B2 (en) * 2004-12-22 2009-12-01 Intruguard Devices, Inc. System and method for integrated header, state, rate and content anomaly prevention for domain name service
US7607170B2 (en) 2004-12-22 2009-10-20 Radware Ltd. Stateful attack protection
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US7810089B2 (en) 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8549149B2 (en) 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
US8346960B2 (en) * 2005-02-15 2013-01-01 At&T Intellectual Property Ii, L.P. Systems, methods, and devices for defending a network
US8104086B1 (en) 2005-03-03 2012-01-24 Symantec Corporation Heuristically detecting spyware/adware registry activity
US8089871B2 (en) * 2005-03-25 2012-01-03 At&T Intellectual Property Ii, L.P. Method and apparatus for traffic control of dynamic denial of service attacks within a communications network
US7620733B1 (en) 2005-03-30 2009-11-17 Cisco Technology, Inc. DNS anti-spoofing using UDP
US7603552B1 (en) 2005-05-04 2009-10-13 Mcafee, Inc. Piracy prevention using unique module translation
US9407608B2 (en) 2005-05-26 2016-08-02 Citrix Systems, Inc. Systems and methods for enhanced client side policy
US9621666B2 (en) 2005-05-26 2017-04-11 Citrix Systems, Inc. Systems and methods for enhanced delta compression
US9692725B2 (en) 2005-05-26 2017-06-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US8943304B2 (en) 2006-08-03 2015-01-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US7730536B2 (en) * 2005-06-08 2010-06-01 Verizon Business Global Llc Security perimeters
US8161555B2 (en) * 2005-06-28 2012-04-17 At&T Intellectual Property Ii, L.P. Progressive wiretap
JP2007013990A (ja) * 2005-07-01 2007-01-18 Pmc-Sierra Israel Ltd 破棄−スニッフィング装置及び方法
US7856661B1 (en) * 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
WO2007022454A2 (en) 2005-08-18 2007-02-22 The Trustees Of Columbia University In The City Of New York Systems, methods, and media protecting a digital data processing device from attack
US7624447B1 (en) 2005-09-08 2009-11-24 Cisco Technology, Inc. Using threshold lists for worm detection
WO2007033344A2 (en) * 2005-09-14 2007-03-22 Sipera Systems, Inc. System, method and apparatus for classifying communications in a communications system
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US8045473B2 (en) * 2005-11-28 2011-10-25 Cisco Technology, Inc. Tailored relief for congestion on application servers for real time communications
US20070130619A1 (en) * 2005-12-06 2007-06-07 Sprint Communications Company L.P. Distributed denial of service (DDoS) network-based detection
US8510826B1 (en) * 2005-12-06 2013-08-13 Sprint Communications Company L.P. Carrier-independent on-demand distributed denial of service (DDoS) mitigation
US8170020B2 (en) * 2005-12-08 2012-05-01 Microsoft Corporation Leveraging active firewalls for network intrusion detection and retardation of attack
US8965334B2 (en) 2005-12-19 2015-02-24 Alcatel Lucent Methods and devices for defending a 3G wireless network against malicious attacks
US7921184B2 (en) 2005-12-30 2011-04-05 Citrix Systems, Inc. System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US7757269B1 (en) * 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US7580974B2 (en) 2006-02-16 2009-08-25 Fortinet, Inc. Systems and methods for content type classification
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US7870387B1 (en) * 2006-04-07 2011-01-11 Mcafee, Inc. Program-based authorization
WO2007133178A2 (en) 2006-04-21 2007-11-22 The Trustees Of Columbia University In The City Of New York Systems and methods for inhibiting attacks on applications
US8352930B1 (en) 2006-04-24 2013-01-08 Mcafee, Inc. Software modification by group to minimize breakage
US8555404B1 (en) 2006-05-18 2013-10-08 Mcafee, Inc. Connectivity-based authorization
US8248946B2 (en) * 2006-06-06 2012-08-21 Polytechnic Institute of New York Unversity Providing a high-speed defense against distributed denial of service (DDoS) attacks
US7773507B1 (en) * 2006-06-30 2010-08-10 Extreme Networks, Inc. Automatic tiered services based on network conditions
US7817549B1 (en) 2006-06-30 2010-10-19 Extreme Networks, Inc. Flexible flow-aging mechanism
US8239915B1 (en) 2006-06-30 2012-08-07 Symantec Corporation Endpoint management using trust rating data
US8205252B2 (en) 2006-07-28 2012-06-19 Microsoft Corporation Network accountability among autonomous systems
CN101119299A (zh) * 2006-08-02 2008-02-06 华为技术有限公司 导通媒体流的方法、导通检测方法及其系统
US8392977B2 (en) * 2006-08-03 2013-03-05 Citrix Systems, Inc. Systems and methods for using a client agent to manage HTTP authentication cookies
US7907621B2 (en) * 2006-08-03 2011-03-15 Citrix Systems, Inc. Systems and methods for using a client agent to manage ICMP traffic in a virtual private network environment
US8561155B2 (en) 2006-08-03 2013-10-15 Citrix Systems, Inc. Systems and methods for using a client agent to manage HTTP authentication cookies
US8856920B2 (en) * 2006-09-18 2014-10-07 Alcatel Lucent System and method of securely processing lawfully intercepted network traffic
US8838773B1 (en) * 2006-09-29 2014-09-16 Trend Micro Incorporated Detecting anonymized data traffic
US8583793B2 (en) * 2006-11-20 2013-11-12 Apple Inc. System and method for providing a hypertext transfer protocol service multiplexer
US8156557B2 (en) * 2007-01-04 2012-04-10 Cisco Technology, Inc. Protection against reflection distributed denial of service attacks
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8045550B2 (en) * 2007-03-01 2011-10-25 Hewlett-Packard Development Company, L.P. Packet tunneling
US8209748B1 (en) * 2007-03-27 2012-06-26 Amazon Technologies, Inc. Protecting network sites during adverse network conditions
US8782786B2 (en) * 2007-03-30 2014-07-15 Sophos Limited Remedial action against malicious code at a client facility
CN101136922B (zh) * 2007-04-28 2011-04-13 华为技术有限公司 业务流识别方法、装置及分布式拒绝服务攻击防御方法、系统
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US7925694B2 (en) * 2007-10-19 2011-04-12 Citrix Systems, Inc. Systems and methods for managing cookies via HTTP content layer
US8195931B1 (en) 2007-10-31 2012-06-05 Mcafee, Inc. Application change control
US8370937B2 (en) * 2007-12-03 2013-02-05 Cisco Technology, Inc. Handling of DDoS attacks from NAT or proxy devices
US8117449B2 (en) * 2007-12-27 2012-02-14 Mastercard International, Inc. Method to detect man-in-the-middle (MITM) or relay attacks
CN101984778B (zh) 2008-01-26 2014-08-13 思杰系统有限公司 用于细粒度策略驱动的cookie代理的系统和方法
US8701189B2 (en) * 2008-01-31 2014-04-15 Mcafee, Inc. Method of and system for computer system denial-of-service protection
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
EP2109281A1 (en) * 2008-04-11 2009-10-14 Deutsche Telekom AG Method and system for server-load and bandwidth dependent mitigation of distributed denial of service attacks
US8615502B2 (en) 2008-04-18 2013-12-24 Mcafee, Inc. Method of and system for reverse mapping vnode pointers
WO2009140625A1 (en) * 2008-05-15 2009-11-19 Harris Stratex Networks Operating Corporation Systems and methods for distributed data routing in a wireless network
CN102047721B (zh) 2008-05-28 2014-04-02 哈里斯施特拉特克斯网络运行公司 用于无线网络中的数据路径控制的系统和方法
US8509235B2 (en) * 2008-07-30 2013-08-13 Blue Coat Systems, Inc. Layer-2 packet return in proxy-router communication protocol environments
US8752175B2 (en) * 2008-10-31 2014-06-10 Hewlett-Packard Development Company, L.P. Method and apparatus for network intrusion detection
US8539576B2 (en) * 2008-11-12 2013-09-17 At&T Intellectual Property Ii, L.P. System and method for filtering unwanted internet protocol traffic based on blacklists
US8897139B2 (en) * 2008-12-05 2014-11-25 Hewlett-Packard Development Company, L.P. Packet processing indication
US8544003B1 (en) 2008-12-11 2013-09-24 Mcafee, Inc. System and method for managing virtual machine configurations
KR101263218B1 (ko) * 2008-12-19 2013-05-10 한국전자통신연구원 단일 세션 내 단일 패킷 집성 방법 및 장치
CH700308A2 (de) 2009-01-22 2010-07-30 Martin Blapp Ein technisches System in der Hardware oder im Kernel eines E-Mail Gateways, um die Betriebs-Infrastruktur oder das Betriebs-System gegen DDos-Angriffe aus dem Internet zu schützen.
FR2943873B1 (fr) * 2009-03-25 2012-01-13 Infovista Sa Procede permettant a un systeme de surveillance du reseau d'un operateur de classifier des flux ip
CN102576353A (zh) 2009-05-13 2012-07-11 航空网络公司 用于部分路由冗余的系统和方法
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US8341627B2 (en) * 2009-08-21 2012-12-25 Mcafee, Inc. Method and system for providing user space address protection from writable memory area in a virtual environment
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
US9552497B2 (en) 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US8458769B2 (en) 2009-12-12 2013-06-04 Akamai Technologies, Inc. Cloud based firewall system and service
CN102137059B (zh) * 2010-01-21 2014-12-10 阿里巴巴集团控股有限公司 一种恶意访问的拦截方法和系统
FR2956542B1 (fr) * 2010-02-17 2012-07-27 Alcatel Lucent Filtre d'une attaque de deni de service
US8495205B2 (en) * 2010-05-03 2013-07-23 At&T Intellectual Property I, L.P. Method and apparatus for mitigating an overload in a network
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8549003B1 (en) 2010-09-12 2013-10-01 Mcafee, Inc. System and method for clustering host inventories
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
SG189130A1 (en) 2010-09-29 2013-05-31 Aviat Networks Inc Systems and methods for distributed data routing in a wireless network
US20120155273A1 (en) 2010-12-15 2012-06-21 Advanced Micro Devices, Inc. Split traffic routing in a processor
US8499348B1 (en) * 2010-12-28 2013-07-30 Amazon Technologies, Inc. Detection of and responses to network attacks
US8966622B2 (en) * 2010-12-29 2015-02-24 Amazon Technologies, Inc. Techniques for protecting against denial of service attacks near the source
US8862870B2 (en) 2010-12-29 2014-10-14 Citrix Systems, Inc. Systems and methods for multi-level tagging of encrypted items for additional security and efficient encrypted item determination
US20120174196A1 (en) * 2010-12-30 2012-07-05 Suresh Bhogavilli Active validation for ddos and ssl ddos attacks
US9075993B2 (en) 2011-01-24 2015-07-07 Mcafee, Inc. System and method for selectively grouping and managing program files
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US8151341B1 (en) * 2011-05-23 2012-04-03 Kaspersky Lab Zao System and method for reducing false positives during detection of network attacks
KR20120136507A (ko) 2011-06-09 2012-12-20 삼성전자주식회사 네임 기반의 네트워크 시스템에서 펜딩 테이블의 오버플로우를 방지하는 노드 장치 및 방법
WO2013005220A1 (en) * 2011-07-06 2013-01-10 Hewlett-Packard Development Company, L.P. Method and system for an improved i/o request quality of service across multiple host i/o ports
US9218216B2 (en) 2011-07-22 2015-12-22 Cisco Technology, Inc. Centrally driven performance analysis of low power and Lossy Networks
US8955112B2 (en) * 2011-08-18 2015-02-10 At&T Intellectual Property I, L.P. Dynamic traffic routing and service management controls for on-demand application services
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
JP2014526751A (ja) 2011-09-15 2014-10-06 ザ・トラスティーズ・オブ・コロンビア・ユニバーシティ・イン・ザ・シティ・オブ・ニューヨーク リターン指向プログラミングのペイロードを検出するためのシステム、方法、および、非一時的コンピュータ可読媒体
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US8773999B2 (en) 2011-10-26 2014-07-08 International Business Machines Corporation Distributed chassis architecture having integrated service appliances
CN102394794A (zh) * 2011-11-04 2012-03-28 中国人民解放军国防科学技术大学 防范边界网关协议路由劫持的协同监测方法
US9392010B2 (en) 2011-11-07 2016-07-12 Netflow Logic Corporation Streaming method and system for processing network metadata
US9843488B2 (en) 2011-11-07 2017-12-12 Netflow Logic Corporation Method and system for confident anomaly detection in computer network traffic
US20140075557A1 (en) 2012-09-11 2014-03-13 Netflow Logic Corporation Streaming Method and System for Processing Network Metadata
US9749338B2 (en) * 2011-12-19 2017-08-29 Verizon Patent And Licensing Inc. System security monitoring
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
US8887280B1 (en) * 2012-05-21 2014-11-11 Amazon Technologies, Inc. Distributed denial-of-service defense mechanism
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
WO2014058439A1 (en) * 2012-10-14 2014-04-17 Empire Technology Development, Llc Error-capturing service replacement in datacenter environment for simplified application restructuring
US8973146B2 (en) 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
CN105051696A (zh) * 2013-01-10 2015-11-11 网络流逻辑公司 用于处理网络元数据的改进的流式处理方法及系统
US8973143B2 (en) 2013-01-28 2015-03-03 The Barrier Group, Llc Method and system for defeating denial of service attacks
US9197362B2 (en) 2013-03-15 2015-11-24 Mehdi Mahvi Global state synchronization for securely managed asymmetric network communication
US8978138B2 (en) 2013-03-15 2015-03-10 Mehdi Mahvi TCP validation via systematic transmission regulation and regeneration
US9043912B2 (en) 2013-03-15 2015-05-26 Mehdi Mahvi Method for thwarting application layer hypertext transport protocol flood attacks focused on consecutively similar application-specific data packets
US9172721B2 (en) 2013-07-16 2015-10-27 Fortinet, Inc. Scalable inline behavioral DDOS attack mitigation
US9461967B2 (en) * 2013-07-18 2016-10-04 Palo Alto Networks, Inc. Packet classification for network routing
US9628507B2 (en) * 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
EP3061030A4 (en) 2013-10-24 2017-04-19 McAfee, Inc. Agent assisted malicious application blocking in a network environment
EP2879343A1 (en) * 2013-11-29 2015-06-03 Nederlandse Organisatie voor toegepast- natuurwetenschappelijk onderzoek TNO System for protection against DDos attacks
US9847970B1 (en) * 2014-04-30 2017-12-19 Amazon Technologies, Inc. Dynamic traffic regulation
US9674207B2 (en) * 2014-07-23 2017-06-06 Cisco Technology, Inc. Hierarchical attack detection in a network
US20160036843A1 (en) * 2014-08-01 2016-02-04 Honeywell International Inc. Connected home system with cyber security monitoring
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
CN106161333B (zh) 2015-03-24 2021-01-15 华为技术有限公司 基于sdn的ddos攻击防护方法、装置及系统
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
JP6733147B2 (ja) * 2015-10-07 2020-07-29 富士通株式会社 通信システム、中継方法、及び中継プログラム
EP3391272A1 (en) * 2015-12-17 2018-10-24 Praesideo B.V. Method and system for a distributed early attack warning platform (deawp)
US9973528B2 (en) 2015-12-21 2018-05-15 Fortinet, Inc. Two-stage hash based logic for application layer distributed denial of service (DDoS) attack attribution
JP6232456B2 (ja) * 2016-02-02 2017-11-15 エヌ・ティ・ティ・コミュニケーションズ株式会社 制御装置、緩和システム、制御方法及びコンピュータプログラム
US10432650B2 (en) 2016-03-31 2019-10-01 Stuart Staniford System and method to protect a webserver against application exploits and attacks
US11416912B2 (en) * 2016-05-13 2022-08-16 Digital River, Inc. High volume transaction queueing with machine learning
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US20180077227A1 (en) * 2016-08-24 2018-03-15 Oleg Yeshaya RYABOY High Volume Traffic Handling for Ordering High Demand Products
US10469513B2 (en) * 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10686833B2 (en) * 2017-03-31 2020-06-16 Samsung Electronics Co., Ltd. System and method of detecting and countering denial-of-service (DoS) attacks on an NVMe-of-based computer storage array
JP6834768B2 (ja) * 2017-05-17 2021-02-24 富士通株式会社 攻撃検知方法、攻撃検知プログラムおよび中継装置
US10673891B2 (en) 2017-05-30 2020-06-02 Akamai Technologies, Inc. Systems and methods for automatically selecting an access control entity to mitigate attack traffic
US10609064B2 (en) * 2017-07-06 2020-03-31 Bank Of America Corporation Network device access control and information security
US10567433B2 (en) * 2017-07-06 2020-02-18 Bank Of America Corporation Network device authorization for access control and information security
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
EP3493503B1 (en) * 2017-11-30 2022-08-24 Panasonic Intellectual Property Corporation of America Network protection device and network protection system
US11875183B2 (en) 2018-05-30 2024-01-16 Texas Instruments Incorporated Real-time arbitration of shared resources in a multi-master communication and control system
US11343205B2 (en) * 2018-05-30 2022-05-24 Texas Instruments Incorporated Real-time, time aware, dynamic, context aware and reconfigurable ethernet packet classification
CN110213214B (zh) * 2018-06-06 2021-08-31 腾讯科技(深圳)有限公司 一种攻击防护方法、系统、装置和存储介质
US11245667B2 (en) 2018-10-23 2022-02-08 Akamai Technologies, Inc. Network security system with enhanced traffic analysis based on feedback loop and low-risk domain identification
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
JP7138043B2 (ja) * 2018-12-28 2022-09-15 日立Astemo株式会社 情報処理装置
US11153342B2 (en) * 2019-02-08 2021-10-19 Arbor Networks, Inc. Method and system for providing ddos protection by detecting changes in a preferred set of hierarchically structured items in stream data

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067074A (en) 1989-10-27 1991-11-19 At&T Bell Laboratories Control of overload in communications networks
US6005926A (en) 1997-08-29 1999-12-21 Anip, Inc. Method and system for global communications network management
CA2162200A1 (en) * 1994-11-23 1996-05-24 Gagan Lal Choudhury Efficiently providing multiple grades of service with protection against overloads in shared resources
US5841775A (en) 1996-07-16 1998-11-24 Huang; Alan Scalable switching network
US5991881A (en) * 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US6351775B1 (en) 1997-05-30 2002-02-26 International Business Machines Corporation Loading balancing across servers in a computer network
US6738814B1 (en) 1998-03-18 2004-05-18 Cisco Technology, Inc. Method for blocking denial of service and address spoofing attacks on a private network
US6314463B1 (en) 1998-05-29 2001-11-06 Webspective Software, Inc. Method and system for measuring queue length and delay
US6831895B1 (en) * 1999-05-19 2004-12-14 Lucent Technologies Inc. Methods and devices for relieving congestion in hop-by-hop routed packet networks
US6901053B1 (en) * 1999-12-29 2005-05-31 Nortel Networks Limited Connectionless network express route
US6880090B1 (en) * 2000-04-17 2005-04-12 Charles Byron Alexander Shawcross Method and system for protection of internet sites against denial of service attacks through use of an IP multicast address hopping technique
US6829654B1 (en) * 2000-06-23 2004-12-07 Cloudshield Technologies, Inc. Apparatus and method for virtual edge placement of web sites
AU2002211242A1 (en) 2000-09-20 2002-04-02 Bbnt Solutions Llc Systems and methods that protect networks and devices against denial of service attacks
US7251692B1 (en) * 2000-09-28 2007-07-31 Lucent Technologies Inc. Process to thwart denial of service attacks on the internet

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100977124B1 (ko) * 2003-06-27 2010-08-23 주식회사 케이티 트래픽 폭주 및 불법 트래픽 감시 제어를 통한 고객망관리 서비스 시스템 및 그 방법
KR101235099B1 (ko) * 2005-03-31 2013-02-20 알카텔-루센트 유에스에이 인코포레이티드 시그널링 공격으로부터 3 세대 무선 네트워크를 방어하기 위한 방법들 및 장치들
KR100675850B1 (ko) * 2005-10-12 2007-02-02 삼성전자주식회사 AXI 프로토콜을 적용한 NoC 시스템
KR100882809B1 (ko) * 2006-08-31 2009-02-10 영남대학교 산학협력단 플로우 기반 패킷 처리방식의 분산 서비스 거부 공격 방어시스템 및 방법
KR100803029B1 (ko) * 2006-12-01 2008-02-18 경희대학교 산학협력단 협력적인 통계기반 탐지기법을 이용한 분산서비스거부공격의 방어 방법
KR100956498B1 (ko) * 2008-01-09 2010-05-07 한양대학교 산학협력단 상호 협력적인 다중 서버를 통한 침입 탐지 시스템 및 방법그리고 침입 탐지 통제 시스템 및 방법
KR100900491B1 (ko) * 2008-12-02 2009-06-03 (주)씨디네트웍스 분산 서비스 거부 공격의 차단 방법 및 장치
WO2011002119A1 (ko) * 2009-07-02 2011-01-06 충남대학교 산학협력단 패킷검사장치의 부하조절방법 및 장치
US8719916B2 (en) 2009-07-02 2014-05-06 The Industry & Academic Cooperation In Chungnam National University (Iac) Method and apparatus for controlling loads of a packet inspection apparatus
KR101231966B1 (ko) * 2010-04-19 2013-02-08 에스2정보 주식회사 장애 방지 서버 및 방법
WO2012153948A2 (ko) * 2011-05-06 2012-11-15 주식회사 비씨클라우드 디도스 공격 상황에서 세션 유지 시스템
WO2012153948A3 (ko) * 2011-05-06 2013-03-21 주식회사 비씨클라우드 디도스 공격 상황에서 세션 유지 시스템
KR101358794B1 (ko) * 2012-03-28 2014-02-10 에스케이브로드밴드주식회사 이상 패킷 차단 시스템 및 방법

Also Published As

Publication number Publication date
US20020083175A1 (en) 2002-06-27
WO2002033870A2 (en) 2002-04-25
US7707305B2 (en) 2010-04-27
AU2002213264A1 (en) 2002-04-29
EP1364297A4 (en) 2009-04-08
DE60143767D1 (de) 2011-02-10
KR100796996B1 (ko) 2008-01-22
EP1364297A2 (en) 2003-11-26
ATE493712T1 (de) 2011-01-15
WO2002033870A3 (en) 2003-09-25
EP1364297B1 (en) 2010-12-29

Similar Documents

Publication Publication Date Title
KR100796996B1 (ko) 분산 네트워크의 노드상의 과부하 조건으로부터 보호하기위한 방법 및 장치
Dayal et al. Research trends in security and DDoS in SDN
Masdari et al. A survey and taxonomy of DoS attacks in cloud computing
Buragohain et al. FlowTrApp: An SDN based architecture for DDoS attack detection and mitigation in data centers
Yurekten et al. SDN-based cyber defense: A survey
Ioannidis et al. Implementing pushback: Router-based defense against DDoS attacks
US7359962B2 (en) Network security system integration
Mirkovic et al. A taxonomy of DDoS attack and DDoS defense mechanisms
AU2015255980B2 (en) System and methods for reducing impact of malicious activity on operations of a wide area network
US7823204B2 (en) Method and apparatus for detecting intrusions on a computer system
EP1905197B1 (en) System and method for detecting abnormal traffic based on early notification
Mihai-Gabriel et al. Achieving DDoS resiliency in a software defined network by intelligent risk assessment based on neural networks and danger theory
US11005865B2 (en) Distributed denial-of-service attack detection and mitigation based on autonomous system number
US20150089566A1 (en) Escalation security method for use in software defined networks
JP2006517066A (ja) サービス妨害攻撃の軽減
KR101042291B1 (ko) 디도스 공격에 대한 디도스 탐지/차단 시스템 및 그 방법
Mahajan et al. DDoS attack prevention and mitigation techniques-a review
Tudosi et al. Secure network architecture based on distributed firewalls
Khadke et al. Review on mitigation of distributed denial of service (DDoS) attacks in cloud computing
Poongothai et al. Simulation and analysis of DDoS attacks
Kong et al. Combination attacks and defenses on sdn topology discovery
Dayal et al. Analyzing effective mitigation of DDoS attack with software defined networking
Chen Aegis: An active-network-powered defense mechanism against ddos attacks
Melara Performance analysis of the Linux firewall in a host
Sardana et al. Honeypot based routing to mitigate ddos attacks on servers at isp level

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140107

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150106

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160108

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170110

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180105

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190108

Year of fee payment: 12