KR20110067264A - 네트워크 이상징후 탐지장치 및 방법 - Google Patents

네트워크 이상징후 탐지장치 및 방법 Download PDF

Info

Publication number
KR20110067264A
KR20110067264A KR1020090123784A KR20090123784A KR20110067264A KR 20110067264 A KR20110067264 A KR 20110067264A KR 1020090123784 A KR1020090123784 A KR 1020090123784A KR 20090123784 A KR20090123784 A KR 20090123784A KR 20110067264 A KR20110067264 A KR 20110067264A
Authority
KR
South Korea
Prior art keywords
state vector
entropy
packet
port number
address
Prior art date
Application number
KR1020090123784A
Other languages
English (en)
Inventor
최형기
한찬규
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020090123784A priority Critical patent/KR20110067264A/ko
Priority to US12/685,736 priority patent/US8144603B2/en
Publication of KR20110067264A publication Critical patent/KR20110067264A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/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
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

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

Abstract

이상징후 탐지장치 및 방법이 개시된다. 상기 이상징후 탐지 장치는 송신되거나 수신되는 패킷을 수신하는 패킷 수신부와, 상기 패킷을 분석하여 패킷의 소스 및 목적 IP 주소를 획득하는 패킷 분석부와, IP 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 IP 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 IP 주소에 따라 상기 IP 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 IP 상태벡터 관리부와, 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 포트번호 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 토큰번호에 따라 상기 포트번호 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 포트번호 상태벡터 관리부와, 상기 IP 상태벡터 및 상기 포트번호 상태벡터에 관련된 상태벡터 값들의 개수와 그 상태수에 기초하여 IP 주소 및 상기 포트번호에 관련된 엔트로피를 각각 계산하는 엔트로피 계산부와, 상기 계산된 엔트로피에 따라 네트워크 이상징후를 판단하는 이상징후 판단부를 포함한다. 그에 따라 미탐율과 오탐율을 최소화한 효율적인 이상징후 탐지가 가능하다.
엔트로피, 이상징후 탐지, 웜, 서비스거부공격, ROC, 네트워크 보안

Description

네트워크 이상징후 탐지장치 및 방법{Anomalous Event Detection Apparatus and Method}
본 발명은 네트워크 이상 징후 탐지 장치 및 방법에 관한 것이다.
인터넷을 통한 웜, 스캐닝, 서비스거부공격(Denial of Service attack, DoS) 등의 네트워크 공격은 네트워크 자원을 낭비하여 사용자에게 제공되는 서비스의 질과 보안의 강도를 하락시키는 위협적인 존재이다. 2000년에 발생한 Amazon, CNN, Yahoo, Ebay 같은 유명 사이트를 마비시킨 사례나, 2001년 Microsoft Domain Name System(DNS) 서버와 연결된 라우터가 분산 서비스 거부공격을 받아 라우터의 과부하로 인해 한동안 웹 접속서비스가 마비된 사건이 대표적인 사례로 볼 수 있다. 따라서 이러한 네트워크 공격을 높은 정확도로 탐지하는 기법을 개발하는 것은 시급한 문제이다.
이상징후(anomalous events)란 네트워크 공격의 일련의 과정 및 결과에서 추출할 수 있는 트래픽 특성을 지칭한다. 이상징후의 일례로는 높은 대역폭, 정상 트래픽과는 다른 IP의 분포 혹은 포트번호의 분포 등이 있다. 이상징후는 네트워크 공격을 탐지하는 데에 적합한 단서를 제공하며, 따라서 이러한 이상징후를 높은 정 확도로 탐지하는 것은 네트워크 공격에 기민하게 대처하는 데에 일조할 수 있다.
현재까지 이상징후를 효율적으로 탐지하기 위한 기법이 다수 제안되었다. 기존 연구는 일반적으로 트래픽 볼륨에 대한 관찰을 바탕으로, 트래픽 볼륨에 특징적인 변화가 나타날 시에 이를 이상징후로서 탐지한다. 트래픽 볼륨이란 단위시간당 패킷수, 단위시간 당 패킷의 크기의 변화량 등을 시간순으로 관측한 데이터를 의미한다. 대표적인 연구로 시계열예측, 주성분분석, 신호분석을 이용한 이상징후 탐지 기법이 있다. 이러한 기존 기술은 미탐율과 오탐율이 높거나, 시간복잡도가 높다는 단점이 있다.
따라서, 본 발명의 목적은 미탐율과 오탐율을 최소화한 효율적인 이상징후 탐지를 위해 패킷의 이동역학을 고려한 이상징후 탐지 장치 및 방법을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 네트워크 이상징후 탐지장치는 송신되거나 수신되는 패킷을 수신하는 패킷 수신부와, 상기 패킷을 분석하여 패킷의 소스 및 목적 IP 주소를 획득하는 패킷 분석부와, IP 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 IP 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 IP 주소에 따라 상기 IP 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태 벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 IP 상태벡터 관리부와, 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 포트번호 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 토큰번호에 따라 상기 포트번호 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 포트번호 상태벡터 관리부와, 상기 IP 상태벡터 및 상기 포트번호 상태벡터에 관련된 상태벡터 값들의 개수와 그 상태수에 기초하여 IP 주소 및 상기 포트번호에 관련된 엔트로피를 각각 계산하는 엔트로피 계산부와, 상기 계산된 엔트로피에 따라 네트워크 이상징후를 판단하는 이상징후 판단부를 포함한다.
여기에서, 상기 IP 상태벡터 관리부는 미리 정해진 단위 시간마다 상기 상태벡터 값들의 개수 및 그 상태수를 출력한다.
여기에서, 상기 포트번호 상태벡터 관리부는 미리 정해진 단위 시간마다 상태 상태벡터 값들의 개수 및 그 상태수를 출력한다.
여기에서, 상기 엔트로피 계산부는 이하 수학식에 따라 상기 IP 주소 및 상기 포트번호에 관련한 엔트로피를 각각 계산한다.
Figure 112009076940380-PAT00001
여기에서,
Figure 112009076940380-PAT00002
이다.
상기 수학식에서, 단위시간 t번째 구간의 엔트로피는 Entropyt이다. di는 i번째 상태벡터 값의 상태수이며, mt는 단위시간 t동안 기록된 상태벡터 값들의 총 개수를 의미한다.
여기에서, 상기 IP 상태벡터 관리부는 상기 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트하고, 상기 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트한다.
여기에서, 상기 포트번호 상태벡터 관리부는 상기 패킷의 소스 및 목적 포트번호에 대응한 서비스들을 결정하고, 상기 소스 포트번호에 대해 결정된 서비스에 대응한 토큰수를 디크리먼트하고 목적 포트번호에 대해 결정된 서비스에 대응한 토큰수를 인크리먼트한다.
여기에서, 상기 이상징후 판단부는 하기 수학식에 따라 IP 주소의 엔트로피와 포트번호의 엔트로피에 대해 k번째 단위시간에서의 엔트로피의 평균값과 k-1번째의 단위시간까지의 엔트로피의 평균값의 차의 절대값을 구하고, 이들 둘 중 더 작은 값이 미리 결정된 임계값보다 크면 이상징후가 존재하는 것으로 판단한다.
Figure 112009076940380-PAT00003
여기에서, E1i는 i번째 단위시간에서 관측한 IP 주소에 관련된 엔트로피이며, E2i는 i번째 단위시간에서 관측한 포트번호에 관련된 엔트로피이다. R은 미리 결정된 임계값이다.
여기에서, 상기 이상징후 탐지장치는 방화벽 상에 구현될 수 있다.
여기에서, 상기 포트번호에 의해 구분되는 서비스들은 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service), 비동기식 서비스(Asynchronous service) 및 사용자 임시(User ephemeral) 서비스를 포함한다.
또한, 상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 이상징후 탐지방법은 IP(Internet Protocol) 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 상기 토큰수들을 구성요소로 한 IP 상태벡터를 정의하는 단계와, 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 상기 토큰수들을 구성요소로 한 포트번호 상태벡터를 정의하는 단계와, 패킷이 이동되면, 상기 패킷을 분석하여 패킷의 소스 및 목적 IP 주소, 그리고 패킷의 소스 및 목적 포트 번호를 획득하는 단계와, 상기 패킷의 소스 및 목적 IP 주소, 그리고 상기 패킷의 소스 및 목적 포트번호에 따라 상기 상태벡터의 토큰수들을 갱신함으로써 상기 상태벡터 값을 각각 결정하는 단계와, 상기 IP 주소 및 상기 포트번호에 관련된 상태벡터 값을 각각 카운트하여 상기 IP 주소 및 포트번호에 관련된 상태벡터 값의 상태수를 각각 획득하는 단계와, 상기 IP 주소 및 포트번호 관련된 상기 상태벡터 값들의 개수와 그 상태수에 기초하여 IP 주소 및 상기 포트번호에 관련된 엔트로피를 각각 계산하는 단계와, 상기 계산된 엔트로피에 따라 네트워크 이상징후를 판단하는 단계를 포함한다.
여기에서, 상기 IP 주소에 관련된 상태벡터 값들의 개수 및 그 상태수는 미리 결정된 시간 단위로 획득된다.
여기에서, 상기 포트번호에 관련된 상태벡터 값들의 개수 및 그 상태수는 미리 결정된 시간 단위로 획득된다.
여기에서, 상기 엔트로피는 이하 수학식에 따라 계산된다.
Figure 112009076940380-PAT00004
여기에서,
Figure 112009076940380-PAT00005
이다.
상기 수학식에서, 단위시간 t번째 구간의 엔트로피는 Entropyt이다. di는 i번째 상태벡터 값의 상태수이며, mt는 단위시간 t동안 기록된 상태벡터 값들의 총 개수를 의미한다.
여기에서, 상기 IP 주소에 관련된 상태벡터의 토큰수들은 상기 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트하고, 상기 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트함으로써 갱신된다.
여기에서, 상기 포트번호에 관련된 상태벡터의 토큰수는 상기 패킷의 소스 및 목적 포트번호에 대응한 서비스들을 결정하고, 상기 소스 포트번호에 대해 결정된 서비스에 대응한 토큰수를 디크리먼트하고 상기 목적 포트번호에 대해 결정된 서비스에 대응한 토큰수를 인크리먼트함으로써 갱신된다.
여기에서, 상기 네트워크 이상징후는 하기 수학식에 따라 IP 주소의 엔트로피와 포트번호의 엔트로피에 대해 k번째 단위시간에서의 엔트로피의 평균값과 k-1번째의 단위시간까지의 엔트로피의 평균값의 차의 절대값을 구하고, 이들 둘 중 더 작은 값이 미리 결정된 임계값보다 크면 존재하는 것으로 판단된다.
Figure 112009076940380-PAT00006
여기에서, E1i는 i번째 단위시간에서 관측한 IP의 엔트로피이며, E2i는 i번째 단위시간에서 관측한 포트번호의 엔트로피이다.
여기에서,상기 이상징후 탐지방법은 방화벽 상에 구현될 수 있다.
여기에서, 상기 포트번호에 의해 구분되는 서비스들은 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service), 비동기식 서비스(Asynchronous service) 및 사용자 임시(User ephemeral) 서비스를 포함한다.
본 발명에서는 패킷 역학을 관찰하고 엔트로피로 그 특성을 측정하여 네트워크 이상징후(어노멀리)을 검출하는 방법 및 장치를 제시한다. 이상징후가 발생하게 되면 패킷의 이동역학이 정상적일 때와는 급변하므로, 패킷의 이동역학을 고려했을 때는 보다 높은 정확도로 이상징후를 탐지할 수 있다. 그에 따라 이상징후 탐지의 오탐율 및 미탐율을 현저히 감소시켰다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지 다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명은 열역학 이론을 응용하여 이상징후탐지에 적합한 알고리즘을 제시하고자 한다. 네트워크 호스트 간 패킷 교환과, 열역학 이론에서 시스템과 주변환경이 물질을 주고 받는 과정은 유사하다. 본 발명은 열역학의 시스템과 주변환경의 개념을 도입하여 네트워크를 구분하고, 시스템과 주변환경 간에 주고 받는 물질을 패킷으로 규정한다. 시스템과 주변환경의 물질분포에 급격한 변화가 나타나면 엔트로피가 증가한다는 열역학이론에 기반하여 이상징후를 탐지하고자 한다.
엔트로피는 열역학에서 사용되는 개념으로 시스템 내의 무질서한 정도를 측정하는 수치이다. 시스템 내의 현재 상태와 다른 분포를 가진 요소가 유입 또는 유 출되면 엔트로피는 급증한다. 이상징후가 포함된 트래픽과 정상 트래픽의 분포는 대역폭, IP, 포트번호, 패킷수 등 에서 현저한 차이가 난다. 예를 들어 서비스거부공격은 공격대상 IP로 트래픽이 집중되며 대역폭 사용량이 높아지는 특성이 있다. 이러한 이상징후 발생 시에 엔트로피가 급증하므로 이상징후를 탐지할 수 있다.
이에 따라, 본 발명에서는 패킷역학을 관찰하기 위해 '시스템'과 '주변환경'이라는 개념을 사용한다. 시스템과 주변환경의 구분기준으로는 IP와 포트번호를 사용한다.
도 1은 본 발명의 일 실시예에 따라 시스템과 주변환경을 IP(Internet Protocol) 주소에 따라 구분한 경우를 나타낸 도면이다.
IP 주소를 구분기준으로 할 때는 시스템은 내부 네트워크로 정하고 주변 환경은 외부 네트워크로 정한다. IP 주소를 기준으로 내부, 외부 네트워크를 각각 시스템과 주변환경으로 정한 이유는 네트워크의 활동주체인 호스트를 구분할 수 있는 요인이 IP 주소이기 때문이다. IP 주소를 기준으로 내부, 외부 네트워크로 구분함으로써 이상징후의 근원지 즉 공격자의 위치를 파악할 수 있다. 네트워크에서 시스템과 주변환경 간 물질의 입출입은 패킷을 통해 이루어진다. 시스템과 주변환경 간의 패킷교환에 따라 시스템이 가지는 패킷의 양 또는 개수가 변화한다. 변화의 정도를 시스템의 엔트로피로 관찰함으로써 시스템의 정상여부를 탐지할 수 있다.
도 2는 본 발명의 다른 실시예에 따라 시스템과 주변환경을 포트 번호에 따라 구분한 경우를 나타낸 도면이다.
단순히 이상징후의 발생 시점을 탐지하는 것보다 플로우 별 이상징후를 탐지 해야만 이상징후에 대한 대처를 더욱 효과적으로 할 수 있다. 예를 들어 특정 취약점을 공격하는 웜 출현 시 단순히 발생한 시점 인지보다 취약점이 있는 서비스가 어떤 플로우에 속하는지, 어떤 서비스에 취약점이 있는지 파악할 필요가 있다. 이에 따라 이상징후가 나타난 플로우를 파악 및 분석하면 현재 출현한 이상징후가 어떤 이상징후인지 정확하게 판단이 가능하다. 그런데, IP 주소를 이용하여 시스템과 주변환경을 구분할 시에는 플로우 별 이상징후를 판단하는 것이 어렵다.
따라서 본 발명의 다른 실시예는 도 2와 같이 포트번호를 구분기준으로 하여 시스템과 주변환경을 구분한다. 포트번호를 구분기준으로 할 때 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service) 및 비동기식 서비스(Asynchronous service)의 3개의 서비스를 시스템으로 규정하고, 사용자 임시(User ephemeral) 서비스를 주변환경으로서 규정한다.
포트번호를 구분기준으로 사용한 이유는, 네트워크 공격은 일반적으로 취약점이 있는 서비스를 대상으로 발생한다는 사실에 기반하여 서비스를 구분할 수 있는 요인이 포트번호이기 때문이다. 서비스들은 잘 알려진 포트번호로 정의되어 있어 이들은 시스템으로 구분하고, 나머지 사용자 임시(User ephemeral) 포트번호는 주변환경으로 구분한다. 플로우 별 이상징후를 탐지하기 위해서는 어플리케이션 서비스의 특성을 반영하고, 각 서비스 범주 별로 특성의 중복이 없이 구분 지을 수 있어야 한다. 상기 두 조건을 고려하여 예컨대, RFC1633 서비스 구분기준에 따라 포트번호들을 인터랙티브 서비스 포트, 인터랙티브 벌크 서비스 포트, 비동기식 서비스 포트 및 사용자 임시 서비스 포트로 분류하였다.
인터랙티브 서비스는 텔넷, X-windows 등과 같이 세션이 이루어진 상태에서 요청-응답 질의가 1:1로 상호 작용하는 트래픽을 말한다. 두 번째로 인터랙티브 벌크 서비스는 인터랙티브 서비스와 유사하게 상호작용이 이루어지나 서버로부터의 응답이 그룹 지어서 한꺼번에 온다는 특징이 있다. 대표적인 인터랙티브 벌크 서비스로는 FTP, HTTP와 같은 어플리케이션이 존재한다. 마지막으로 비동기식 서비스는 요청(Request)에 상관없이 응답(Response) 여부가 빠른 시간 내에 도착하지 않아도 무방한 이메일 등이 이에 속한다.
도 3은 본 발명의 네트워크 이상징후 탐지 장치의 네트워크 상의 위치를 설명하기 위한 도면이다.
이상징후 탐지 장치(12, 22)는 예컨대, 라우터(24)를 통해 하나 이상의 유저 단말(16,26)이 연결되어 있는 시스템(10, 20)에 설치될 수 있다. 이 이상징후 탐지장치(12, 24)는 시스템(10, 20) 내부에서 송/수신되는 패킷 및 시스템(10, 20)과 다른 시스템(20, 10) 또는 네트워크(30) 간에 송/수신되는 패킷 뿐만 라우터(24)를 통해 네트워크(30) 상에서 송/수신되는 패킷을 수신한다.
이상징후 탐지장치(12,22)는 송/수신되는 패킷들을 수신하면 이들 패킷들의 IP 주소 또는 포트번호에 따른 엔트로피를 계산하여 네트워크 이상징후를 판단한다. 이러한 이상징후 탐지장치는 바람직하게 방화벽 상에 구현될 수 있으며, 당업자에 의해 하드웨어적으로 또는 소프트웨어적으로 구현될 수 있다.
도 4는 본 발명의 일 실시예에 따른 이상징후 탐지 장치의 블록 구성도를 도시한다.
도 4를 참조하면, 이상징후 탐지장치는 패킷 수신부(110), 패킷 분석부(120), IP 상태벡터 관리부(130), 포트번호 상태벡터 관리부(140), 엔트로피 계산부(150) 및 이상징후 판단부(160)를 포함한다.
패킷 수신부(110)는 이상징후 탐지장치가 속한 시스템에 관련하여 송/수신되는 패킷들을 수신하고, 수신된 패킷들을 패킷 분석부(120)에 제공한다.
패킷 분석부(120)는 본 발명의 일 실시예에 따라 패킷들의 소스 및 목적 IP 주소를 추출하여 IP 상태벡터 관리부(130)로 제공한다. 또한, 패킷 분석부(120)는 본 발명의 다른 실시예에 따라 패킷들의 소스 및 목적 포트번호를 추출하여 포트번호 상태벡터 관리부(140)로 제공한다.
IP 상태벡터 관리부(130)는 IP 주소에 의해 구분되는 시스템과 주변환경에 대해 미리 정해진 토큰수를 할당하고, 시스템과 주변환경에 할당된 토큰수를 구성요소로 한 상태벡터를 정의한다. 예컨대, 시스템에 i개, 주변환경에 j개의 토큰이 있다 면 상태벡터는 (i, j)이 된다.
그리고, IP 상태벡터 관리부(130)는 패킷 분석부(120)로부터 패킷의 소스 및 목적 IP 주소를 제공받으면, 상태벡터에서 소스 IP에 대응하는 토큰수를 1개 감소시키고, 목적 IP에 대응하는 토큰수를 1개 증가시킨다. 즉, IP 상태벡터 관리부(130)는 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트하고, 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트한다. 예컨대, 소스 IP가 시스템이고, 목적 IP가 주변환경이면, 상태벡터는 예컨대, (i, j)에서 (i-1, j+1)이 된다.
IP 상태벡터 관리부(130)는 패킷의 소스 및 목적 IP 주소에 따라 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정한 후, 상태벡터 값을 카운트한다. 즉, IP 상태벡터 관리부(130)는 상태벡터 값 (i-1, j+1)에 대한 상태수를 획득한다.
만일 상태벡터가 예컨대, (i, j)인 상태에서 시스템(10)에서 시스템(10)으로 또는 주변환경(30)에서 주변환경(30)으로 패킷이 1개 이동하였다면, 상태벡터의 구성요소들 중 하나에 대해서만 인크리먼트 및 디크리먼트가 수행되므로, 상태벡터 값은 다시 (i, j)이 된다. 이 경우, IP 상태벡터 관리부(130)는 상태벡터 값 (i, j)을 카운트하여 상태수를 획득한다.
이와 같이, 패킷이 이동할 때마다 IP 상태벡터 관리부(130)는 패킷의 소스 및 목적 IP 주소에 따라 상태벡터의 토큰수를 인크리먼트하거나 디크리먼트하고, 그에 따라 결정된 상태벡터 값의 상태수를 획득한다.
IP 상태벡터 관리부(130)는 미리 정해진 시간 구간마다 각 상태벡터값의 상태수들을 엔트로피 계산부(150)에 제공한다. 만일 미리 정해진 시간 구간에 상태벡터 값 (i,j)가 k번 나타나고, 상태벡터 값 (i-1, j+1)이 l번 나타났으면, (i,j)와 (i-1, j+1)에 대한 상태수는 각각 k, l이 된다.
이에 대해 다시 설명하면, 시스템 X와 주변환경 Y가 있다고 가정하자. 시스템과 주변환경이 각 n개의 토큰을 가지고 따라서 상태벡터의 초기값은 (n,n)이다. 시스템과 주변환경 간에 X→Y, Y→X, Y→Y의 패킷이동이 있었다고 가정하면, 상태벡터는 초기값을 포함하여 (n,n), (n-1,n+1), (n,n), (n,n)으로 기록된다. 이에 따 라, 상태수는 (n,n)은 3, (n-1,n+1)은 1이 된다.
또한, 포트번호 상태벡터 관리부(140)는 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 서비스들에 할당된 토큰수를 구성요소로 한 상태벡터를 정의한다. 예컨대, 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service), 비동기식 서비스(Asynchronous service) 및 사용자 임시(User ephemeral) 서비스에 각각 토큰수를 할당하고, 이들 토큰수를 구성요소들로 한 상태벡터를 생성한다.
그리고, 포트번호 상태벡터 관리부(140)는 패킷 분석부(120)로부터 패킷의 소스 및 목적 포트번호를 제공받으면, 소스 및 목적 포트번호에 대응하는 서비스를 결정한다. 전술한 바와 같이, 포트번호는 서비스에 따라 분류되고, 포트번호에 관련한 상태벡터는 포트번호에 따른 서비스에 대해 할당된 토큰수를 구성요소들로서 가지고 있다. 본 발명의 일 실시예에 따라 포트번호는 인터랙티브 서비스, 인터랙티브 벌크 서비스, 비동기식 서비스 및 사용자 임시 서비스의 4가지 서비스들중 하나로 분류된다. 그에 따라 상태벡터는 4개의 구성요소를 가진다.
따라서, 포트번호 상태벡터 관리부(140)는 패킷 분석부(120)로부터 패킷의 소스 및 목적 포트번호를 수신하면, 수신된 소스 및 목적 포트번호가 속하는 서비스를 결정한다.
이어서, 포트번호 상태벡터 관리부(140)는 상태벡터에서 소스 포트번호에 대해 결정된 서비스에 대응하는 토큰수를 1개 감소시키고, 목적 포트번호에 대해 결정된 서비스에 대응하는 토큰수를 1개 증가시킨다. 즉, 포트번호 상태벡터 관리 부(130)는 소스 포트번호에 대응한 서비스의 토큰수를 디크리먼트하고, 목적 포트번호에 대응한 서비스의 상태벡터의 토큰수를 인크리먼트한다.
즉, 포트번호 상태벡터 관리부(140)는 소스 및 목적 포트번호에 따라 토큰수를 변경함으로써 상태벡터 값을 결정한다.
그런 다음, 포트번호 상태벡터 관리부(140)는 상태벡터 값을 카운트하여 해당 상대벡터 값의 상태수를 획득한다. 포트번호 상태벡터 관리부(140)는 미리 정해진 시간 구간마다 각 상태벡터 값의 상태수들을 엔트로피 계산부(150)에 제공한다. 만일 미리 정해진 시간 구간에 상태벡터 값 (a,b,c,d)가 e번 나타나고, 상태벡터 값 (a+1, b, c, d-1)이 f번 나타나고, (a+1, b, c+1, d-2)이 g번 나타나면, (a, b, c, d), (a+1, b, c, d-1) 및 (a+1, b, c+1, d-2)에 대한 상태수는 각각 e, f, g가 된다.
엔트로피 계산부(140)는 일 실시예에 따라 IP 상태벡터 관리부(130)로 IP 주소에 관련된 상태벡터 값들의 상태수들을 제공받으며, 다른 실시예에 따라, 포트번호 상태벡터 관리부(140)로부터 포트번호에 관련된 상태벡터 값들의 상태수들을 제공받는다. 엔트로피 계산부(140)는 IP 주소에 관련된 상태벡터 값들과 그 상태수들을 이용하여 IP 주소에 관련된 제1 엔트로피를 계산한다. 또는 엔트로피 계산부(140)는 포트번호에 관련된 상태벡터 값들과 그 상태수들을 이용하여 포트번호에 관련된 제2 엔트로피를 계산한다.
구체적으로, 엔트로피 계산부(140)는 이하 수학식 1에 따라 엔트로피를 계산한다.
Figure 112009076940380-PAT00007
여기에서,
Figure 112009076940380-PAT00008
이다.
상기 수학식 1에서, 단위시간 t번째 구간의 엔트로피는 Entropyt이다. di는 i번째 상태벡터 값의 상태수이며, mt는 단위시간 t동안 기록된 상태벡터 값들의 총 개수를 의미한다.
예컨대, 상태벡터값 (n,n)의 상태수는 3, 상태벡터값 (n-1,n+1)의 상태수 1이면, 상태벡터 값의 총 개수 mt는 2가 되고 각각의 확률은 3/4, 1/4이 되는데, 이 경우 엔트로피는 이하 수학식 2와 같이 계산될 수 있다.
Figure 112009076940380-PAT00009
엔트로피 계산부(140)는 IP 주소에 관련된 제1 엔트로피와 포트번호에 관련된 엔트로피를 이상징후 판단부(160)에 제공한다. 이상징후 판단부(160)는 제1 또는 제2 엔트로피에 기초하여 네트워크 이상징후를 판단한다.
본 발명에서 상태벡터 값들의 개수와 상태수의 분포를 고려하여 엔트로피를 상기 수학식 1과 같이 측정하는 이유는 다음과 같다.
도 5는 이상징후의 특성을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 공격대상 호스트를 시스템으로 구분하고, 좀비를 포함한 공격자를 주변환경으로 구분하였을 때 네트워크 공격, 즉 이상징후는 두 가지 범주로 분류가 가능하다.
도 5(a)의 분산서비스거부공격 등의 네트워크 공격은 공격자로부터 공격대상 호스트로 패킷이 일방적으로 전송이 되는 형태로써 상태벡터 값의 통계를 구해보면 다양한 상태벡터 값이 고루 넓게 퍼져있는 형태이다. 즉 분산서비스거부공격은 시스템과 주변환경이 가진 토큰의 변화폭이 커서 상태벡터의 회수인 상태수는 적지만 다수 개의 상태벡터를 만들어낸다.
도 5(b)의 포트스캐닝 등의 네트워크 공격은 Interactive 형태로 공격자와 공격대상 호스트가 패킷을 주고받으므로 소수의 상태벡터 값들에 집중되어 있는 형태이다. 즉 포트스캐닝은 시스템과 주변환경이 가진 토큰의 변화폭이 적은 대신 같은 상태벡터 값이 기록되는 횟수인 상태수는 큰 값을 가진다. 이상징후는 도 5(a)와 같이 상태벡터의 개수가 증가하거나, 도 5(b)와 같이 상태수가 증가하는 형태로 발생한다. 상기 수학식 1에서는 상태벡터의 개수와 상태수의 확률을 모두 고려하고 있어 이로써 효율적으로 보다 정확하게 이상징후를 탐지할 수 있다.
기존 제안 기법은 분산서비스거부 등의 네트워크 공격과 포트스캐닝 등의 네트워크 공격 동시에 모두는 탐지가 불가하다. 시계열예측 기법, 주성분 분석 기법의 경우 단위 시간당 패킷크기(또는 패킷수)를 기반으로 이상징후를 탐지하기 때문에 단위시간당 패킷 크기와 패킷수가 급증하는 분산서비스거부공격 등의 네트워크 공격만이 탐지가 가능하다. 포트 스캐닝 등의 네트워크 공격은 단위 시간당 패킷크 기에 영향을 미치는 정도가 적기 때문에 상대엔트로피 기법의 경우 정상 트래픽에서 플래그, 목적지 포트번호만이 엔트로피의 관측 대상이기 때문에 포트스캐닝 등의 네트워크 공격만이 탐지가 가능하다. 본 발명에서는 각 시스템과 주변환경이 교환하는 패킷의 이동에 따라 변화하는 토큰 수를 관찰하여 상태벡터 값으로 표현하고, 단위시간 내에 각 상태벡터 값이 기록된 회수를 상태수로 표현하였다. 상태수의 확률을 엔트로피로 측정하여 이상징후를 탐지하는 장치는 이상징후의 분산서비스거부공격 및 포트스캐닝 등의 두 가지 범주 모두 탐지 가능하므로 효율적이다.
일 실시예에 따라, 이상징후 판단부(160)은 다음 수학식 3에 따라 네트워크 이상징후를 판단한다.
Figure 112009076940380-PAT00010
여기에서, E1i는 i번째 단위시간에서 관측한 IP의 엔트로피이며, E2i는 i번째 단위시간에서 관측한 포트번호의 엔트로피이다.
이상징후 판단부(160)는 현재 단위시간이 k번째 단위시간이라고 했을 때 상기 수학식 3를 만족하면 이상징후라고 판단한다. 여기에서 단위시간인 t는 1초가 될 수 있으며, 구현에 따라 다양한 값으로 설정될 수 있다.
구체적으로, 이상징후 판단부(160)는 IP 주소의 엔트로피와 포트번호의 엔트 로피에 대해 각각 k번째 단위시간에서의 엔트로피의 평균값과 k-1번째 단위시간까지의 엔트로피의 평균값의 차의 절대값을 구한다. 이상징후 판단부(160)는 이들 둘 중 더 작은 값이 임계값 R값 만큼 넘어서면 이상징후라고 판단한다. 상기 수학식 3의 임계값은 경험적으로 관찰하여 이상징후 오탐과 미탐을 최소화할 수 있는 값인 0.01로 정하였다. 그러나, 본 발명은 구체적인 임계값 예컨대, 0.01에 의해 제한받지 않으며, 당업자에 의해 경험적으로 또는 수학적으로 결정될 수 있다.
이러한 이상징후 탐지 장치에서의 수행되는 이상징후 탐지 방법을 도 6 내지 도 8을 참조하여 설명한다.
도 6은 본 발명의 일 실시예에 따른 이상징후 탐지 방법을 나타낸 도면이다. 도 6에 도시된 이상징후 탐지 방법은 IP 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 상기 토큰수들을 구성요소로 한 상태벡터를 정의한 것을 전제로 한다. 또는 도 6에 도시된 이상징후 탐지 방법은 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 상태벡터를 정의한 것을 전제로 한다.
이상징후 탐지장치는 단계 210에서 패킷이 이동되었는지를 판단한다. 패킷의 이동되었으면, 이상징후 탐지장치는 상기 패킷을 분석하여 패킷의 소스 및 목적 IP 주소를 획득한다(도시 생략). 이어서, 이상징후 탐지장치는 단계 220에서 패킷의 소스 및 목적 IP에 기초하여 상태벡터의 토큰수를 갱신한다.
전술한 바와 같이, 본 발명에서는 IP 주소에 의해 구분되는 시스템과 주변환경에 대해 미리 정해진 토큰수를 할당하고, 시스템과 주변환경에 할당된 토큰수를 구성요소로 한 상태벡터를 정의한다. 이러한 IP 주소에 기초한 상태벡터의 토큰수를 변경하는 방법이 도 7에 도시되어 있다.
도 7을 참조하면, 이상징후 탐지장치는 패킷의 소스 및 목적 IP 주소에 기초하여 단계 310에서 상태벡터에서 소스 IP 주소에 대응하는 토큰수를 1개 감소시키는데, 즉 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트한다. 이어서, 이상징후 탐지장치는 단계 320에서 목적 IP 주소에 대응하는 토큰수를 1개 증가시키는데, 즉, 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트한다.
이와 같이, 이상징후 탐지장치는 패킷의 이동이 존재하면, 단계 220에서 패킷의 소스 및 목적 IP 주소에 기초하여 상태벡터의 토큰수를 갱신한다. 이어서, 이상징후 탐지장치는 단계 230에서 해당 상태벡터 값을 카운트하여 상태수를 획득한다.
또한, 이상징후 탐지장치는 패킷의 이동되었으면, 단계 240에서 패킷의 소스 및 목적 포트번호에 기초하여 상태벡터의 토큰수를 갱신한다.
전술한 바와 같이, 본 발명에서는 포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 이러한 서비스들에 할당된 토큰수를 구성요소로 한 상태벡터를 정의한다. 이러한 포트번호에 기초한 상태벡터의 토큰수를 변경하는 방법이 도 8에 도시되어 있다.
도 8을 참조하면, 이상징후 탐지장치는 먼저 단계 410에서 소스 및 목적 포트번호에 대응하는 서비스를 결정한다. 전술한 바와 같이, 포트번호는 서비스에 따 라 분류되고, 포트번호에 관련한 상태벡터는 포트번호에 따른 서비스에 대해 할당된 토큰수를 구성요소들로서 가지고 있다. 본 발명의 일 실시예에 따라 포트번호는 인터랙티브 서비스, 인터랙티브 벌크 서비스, 비동기식 서비스 및 사용자 임시 서비스의 4가지 서비스들중 하나로 분류된다. 그에 따라 상태벡터는 4개의 구성요소를 가진다.
따라서, 이상징후 탐지장치는 패킷의 소스 및 목적 포트번호를 수신하면, 수신된 소스 및 목적 포트번호가 속하는 서비스를 결정한다. 이어서, 이상징후 탐지장치는 단계 420에서 상태벡터에서 소스 포트번호에 대해 결정된 서비스에 대응하는 토큰수를 1개 감소시키는데, 즉, 소스 포트번호에 대응한 서비스의 토큰수를 디크리먼트한다. 그리고, 이상징후 탐지장치는 단계 430에서 목적 포트번호에 대해 결정된 서비스에 대응하는 토큰수를 1개 증가시키는데, 즉, 목적 포트번호에 대응한 서비스의 상태벡터의 토큰수를 인크리먼트한다.
이와 같이, 이상징후 탐지장치는 패킷의 이동이 존재하면, 단계 240에서 패킷의 소스 및 목적 포트번호에 기초하여 상태벡터의 토큰수를 갱신한다. 이어서, 이상징후 탐지장치는 단계 250에서 해당 상태벡터 값을 카운트하여 상태수를 획득한다.
이어서, 이상징후 탐지장치는 단계 260에서 단위 시간이 경과하였는 지를 판단한다. 단위 시간이 경과하였으면 이상징후 탐지장치는 단계 270에서 IP 주소에 관련된 상태벡터 값들의 상태수들을 IP 주소에 관련된 제1 엔트로피를 계산한다. 다른 실시예에서, 단위 시간이 경과하였으면 이상징후 탐지장치는 단계 270에서 포 트번호에 관련된 상태벡터 값들과 그 상태수들을 이용하여 포트번호에 관련된 제2 엔트로피를 계산한다.
이상징후 탐지장치는 단계 270에서 IP 주소 또는 포트번호에 관련하여 상기 계산된 엔트로피에 기초하여 네트워크 이상징후를 판단한다. 구체적으로 이상징후 탐지 장치는 IP 주소의 엔트로피 및 포트번호의 엔트로피에 대해 미리 결정된 단위시간까지의 엔트로피의 평균값과 그 이전 단위시간까지의 엔트로피의 평균값의 차의 절대값을 각각 구한다. 이상징후 탐지장치는 상기 구한 절대값들 중 더 작은 값이 임계값 R값 만큼 넘어서면 이상징후라고 판단한다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따라 시스템과 주변환경을 IP 주소에 따라 구분한 경우를 나타낸 도면이다.
도 2는 본 발명의 다른 실시예에 따라 시스템과 주변환경을 포트 번호에 따라 구분한 경우를 나타낸 도면이다.
도 3은 본 발명의 네트워크 이상징후 탐지 장치의 네트워크 상의 위치를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이상징후 탐지 장치의 블록 구성도를 도시한다.
도 5는 이상징후의 특성을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 이상징후 탐지 방법을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따라 IP 주소에 기초한 상태벡터의 토큰수를 변경하는 방법을 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따라 포트번호에 기초한 상태벡터의 토큰수를 변경하는 방법을 나타낸 도면이다.

Claims (18)

  1. 네트워크 이상징후 탐지장치에 있어서,
    송신되거나 수신되는 패킷을 수신하는 패킷 수신부와,
    상기 패킷을 분석하여 패킷의 소스 및 목적 IP(Internet Protocol) 주소를 획득하는 패킷 분석부와,
    IP 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 IP 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 IP 주소에 따라 상기 IP 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 IP 상태벡터 관리부와,
    포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 토큰수들을 구성요소로 한 포트번호 상태벡터를 정의하고, 상기 패킷의 소스 및 목적 토큰번호에 따라 상기 포트번호 상태벡터의 토큰수들을 갱신함으로써 상태벡터 값을 결정하고, 상기 상태벡터 값을 카운트하여 상기 상태벡터 값의 상태수를 획득하는 포트번호 상태벡터 관리부와,
    상기 IP 상태벡터 및 상기 포트번호 상태벡터에 관련된 상태벡터 값들의 개수와 그 상태수에 기초하여 IP 주소 및 상기 포트번호에 관련된 엔트로피를 각각 계산하는 엔트로피 계산부와,
    상기 계산된 엔트로피에 따라 네트워크 이상징후를 판단하는 이상징후 판단 부를 포함하는 이상징후 탐지 장치.
  2. 제1항에 있어서, 상기 IP 상태벡터 관리부는 미리 정해진 단위 시간마다 상기 상태벡터 값들의 개수 및 그 상태수를 출력하는 이상징후 탐지 장치.
  3. 제2항에 있어서, 상기 포트번호 상태벡터 관리부는 미리 정해진 단위 시간마다 상태 상태벡터 값들의 개수 및 그 상태수를 출력하는 이상징후 탐지 장치.
  4. 제3항에 있어서, 상기 엔트로피 계산부는 이하 수학식에 따라 상기 IP 주소 및 상기 포트번호에 관련한 엔트로피를 각각 계산하는 이상징후 탐지 장치.
    Figure 112009076940380-PAT00011
    여기에서,
    Figure 112009076940380-PAT00012
    이다.
    상기 수학식에서, 단위시간 t번째 구간의 엔트로피는 Entropyt이다. di는 i번째 상태벡터 값의 상태수이며, mt는 단위시간 t동안 기록된 상태벡터 값들의 총 개수를 의미한다.
  5. 제1항에 있어서, 상기 IP 상태벡터 관리부는 상기 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트하고, 상기 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트하는 이상징후 탐지 장치.
  6. 제1항에 있어서, 상기 포트번호 상태벡터 관리부는 상기 패킷의 소스 및 목적 포트번호에 대응한 서비스들을 결정하고, 상기 소스 포트번호에 대해 결정된 서비스에 대응한 토큰수를 디크리먼트하고 목적 포트번호에 대해 결정된 서비스에 대응한 토큰수를 인크리먼트하는 이상징후 탐지 장치.
  7. 제4항에 있어서, 상기 이상징후 판단부는 하기 수학식에 따라 IP 주소의 엔트로피와 포트번호의 엔트로피에 대해 k번째 단위시간에서의 엔트로피의 평균값과 k-1번째의 단위시간까지의 엔트로피의 평균값의 차의 절대값을 구하고, 이들 둘 중 더 작은 값이 미리 결정된 임계값보다 크면 이상징후가 존재하는 것으로 판단하는 이상징후 탐지장치.
    Figure 112009076940380-PAT00013
    여기에서, E1i는 i번째 단위시간에서 관측한 IP 주소에 관련된 엔트로피이며, E2i는 i번째 단위시간에서 관측한 포트번호에 관련된 엔트로피이다. R은 미리 결정된 임계값이다.
  8. 제1항에 있어서, 상기 이상징후 탐지장치는 방화벽 상에 구현되는 이상징후 탐지장치.
  9. 제1항에 있어서, 상기 포트번호에 의해 구분되는 서비스들은 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service), 비동기식 서비스(Asynchronous service) 및 사용자 임시(User ephemeral) 서비스를 포함하는 이상징후 탐지장치.
  10. 네트워크 이상징후 탐지방법에 있어서,
    IP(Internet Protocol) 주소에 의해 구분되는 시스템 및 주변환경에 대해 미리 정해진 토큰수를 할당하고, 상기 토큰수들을 구성요소로 한 IP 상태벡터를 정의하는 단계와,
    포트번호에 의해 구분되는 서비스들에 대해 미리 정해진 토큰수를 할당하고, 상기 토큰수들을 구성요소로 한 포트번호 상태벡터를 정의하는 단계와,
    패킷이 이동되면, 상기 패킷을 분석하여 패킷의 소스 및 목적 IP 주소, 그리고 패킷의 소스 및 목적 포트 번호를 획득하는 단계와,
    상기 패킷의 소스 및 목적 IP 주소, 그리고 상기 패킷의 소스 및 목적 포트번호에 따라 상기 상태벡터의 토큰수들을 갱신함으로써 상기 상태벡터 값을 각각 결정하는 단계와,
    상기 IP 주소 및 상기 포트번호에 관련된 상태벡터 값을 각각 카운트하여 상기 IP 주소 및 포트번호에 관련된 상태벡터 값의 상태수를 각각 획득하는 단계와,
    상기 IP 주소 및 포트번호 관련된 상기 상태벡터 값들의 개수와 그 상태수에 기초하여 IP 주소 및 상기 포트번호에 관련된 엔트로피를 각각 계산하는 단계와,
    상기 계산된 엔트로피에 따라 네트워크 이상징후를 판단하는 단계를 포함하는 이상징후 탐지방법.
  11. 제10항에 있어서, 상기 IP 주소에 관련된 상태벡터 값들의 개수 및 그 상태수는 미리 결정된 시간 단위로 획득되는 이상징후 탐지 방법.
  12. 제11항에 있어서, 상기 포트번호에 관련된 상태벡터 값들의 개수 및 그 상태수는 미리 결정된 시간 단위로 획득되는 이상징후 탐지방법.
  13. 제12항에 있어서, 상기 엔트로피는 이하 수학식에 따라 계산되는 이상징후 탐지방법.
    Figure 112009076940380-PAT00014
    여기에서,
    Figure 112009076940380-PAT00015
    이다.
    상기 수학식에서, 단위시간 t번째 구간의 엔트로피는 Entropyt이다. di는 i번째 상태벡터 값의 상태수이며, mt는 단위시간 t동안 기록된 상태벡터 값들의 총 개수를 의미한다.
  14. 제10항에 있어서, 상기 IP 주소에 관련된 상태벡터의 토큰수들은 상기 패킷의 소스 IP 주소에 대응한 상태벡터의 토큰수를 디크리먼트하고, 상기 패킷의 목적 IP 주소에 대응한 상태벡터의 토큰수를 인크리먼트함으로써 갱신되는 이상징후 탐지방법.
  15. 제10항에 있어서, 상기 포트번호에 관련된 상태벡터의 토큰수는 상기 패킷의 소스 및 목적 포트번호에 대응한 서비스들을 결정하고, 상기 소스 포트번호에 대해 결정된 서비스에 대응한 토큰수를 디크리먼트하고 상기 목적 포트번호에 대해 결정된 서비스에 대응한 토큰수를 인크리먼트함으로써 갱신되는 이상징후 탐지방법.
  16. 제13항에 있어서, 상기 네트워크 이상징후는 하기 수학식에 따라 IP 주소의 엔트로피와 포트번호의 엔트로피에 대해 k번째 단위시간에서의 엔트로피의 평균값과 k-1번째의 단위시간까지의 엔트로피의 평균값의 차의 절대값을 구하고, 이들 둘 중 더 작은 값이 미리 결정된 임계값보다 크면 존재하는 것으로 판단되는 이상징후 탐지방법.
    Figure 112009076940380-PAT00016
    여기에서, E1i는 i번째 단위시간에서 관측한 IP의 엔트로피이며, E2i는 i번째 단위시간에서 관측한 포트번호의 엔트로피이다.
  17. 제10항에 있어서, 상기 이상징후 탐지방법은 방화벽 상에 구현되는 이상징후 탐지방법.
  18. 제10항에 있어서, 상기 포트번호에 의해 구분되는 서비스들은 인터랙티브 서비스(Interactive service), 인터랙티브 벌크 서비스(Interactive bulk service), 비동기식 서비스(Asynchronous service) 및 사용자 임시(User ephemeral) 서비스를 포함하는 이상징후 탐지방법.
KR1020090123784A 2009-12-14 2009-12-14 네트워크 이상징후 탐지장치 및 방법 KR20110067264A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090123784A KR20110067264A (ko) 2009-12-14 2009-12-14 네트워크 이상징후 탐지장치 및 방법
US12/685,736 US8144603B2 (en) 2009-12-14 2010-01-12 Apparatuses and methods for detecting anomalous event in network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090123784A KR20110067264A (ko) 2009-12-14 2009-12-14 네트워크 이상징후 탐지장치 및 방법

Publications (1)

Publication Number Publication Date
KR20110067264A true KR20110067264A (ko) 2011-06-22

Family

ID=44142778

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090123784A KR20110067264A (ko) 2009-12-14 2009-12-14 네트워크 이상징후 탐지장치 및 방법

Country Status (2)

Country Link
US (1) US8144603B2 (ko)
KR (1) KR20110067264A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101383069B1 (ko) * 2013-05-27 2014-04-08 한국전자통신연구원 네트워크 이상상태 탐지 장치 및 방법
KR20190048273A (ko) 2017-10-31 2019-05-09 주식회사 윈스 프로파일링 기반의 통계 학습을 활용한 이상 징후 탐지 장치 및 방법
KR20190048264A (ko) 2017-10-31 2019-05-09 주식회사 윈스 패킷 분석 기반의 기계 학습을 활용한 이상 징후 탐지 장치 및 방법
KR20190050521A (ko) 2017-11-03 2019-05-13 주식회사 윈스 프로파일링 기반의 기계 학습을 활용한 이상 징후 탐지 장치 및 방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8997234B2 (en) * 2011-07-27 2015-03-31 Mcafee, Inc. System and method for network-based asset operational dependence scoring
JP6148323B2 (ja) * 2012-03-22 2017-06-14 ロス アラモス ナショナル セキュリティー,リミテッド ライアビリティー カンパニーLos Alamos National Security,Llc 計算機ネットワークにおいて調整グループ攻撃を識別する異常検出
US9773112B1 (en) * 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
US10057283B2 (en) * 2015-02-17 2018-08-21 Accenture Global Solutions Limited Volumetric event forecasting tool
CN105847283A (zh) * 2016-05-13 2016-08-10 深圳市傲天科技股份有限公司 一种基于信息熵方差分析的异常流量检测方法
KR102088299B1 (ko) * 2016-11-10 2020-04-23 한국전자통신연구원 분산 반사 서비스 거부 공격 탐지 장치 및 방법
JP2018147444A (ja) * 2017-03-09 2018-09-20 株式会社日立製作所 分析プログラムを実行する計算機システム、及び、分析プログラムの実行を監視する方法
CN108173812B (zh) * 2017-12-07 2021-05-07 东软集团股份有限公司 防止网络攻击的方法、装置、存储介质和设备
US11777785B2 (en) * 2018-01-21 2023-10-03 Cisco Technology, Inc. Alert throttling
CN108848095B (zh) * 2018-06-22 2021-03-02 安徽大学 SDN环境下基于双熵的服务器DDoS攻击检测与防御方法
CN112104670B (zh) * 2020-11-11 2021-02-26 北京城市轨道交通咨询有限公司 一种基于链路映射解析轨道交通数据的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8611219B2 (en) * 2007-12-31 2013-12-17 Telecom Italia S.P.A. Method of detecting anomalies in a communication system using symbolic packet features

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101383069B1 (ko) * 2013-05-27 2014-04-08 한국전자통신연구원 네트워크 이상상태 탐지 장치 및 방법
KR20190048273A (ko) 2017-10-31 2019-05-09 주식회사 윈스 프로파일링 기반의 통계 학습을 활용한 이상 징후 탐지 장치 및 방법
KR20190048264A (ko) 2017-10-31 2019-05-09 주식회사 윈스 패킷 분석 기반의 기계 학습을 활용한 이상 징후 탐지 장치 및 방법
KR20190050521A (ko) 2017-11-03 2019-05-13 주식회사 윈스 프로파일링 기반의 기계 학습을 활용한 이상 징후 탐지 장치 및 방법

Also Published As

Publication number Publication date
US20110141915A1 (en) 2011-06-16
US8144603B2 (en) 2012-03-27

Similar Documents

Publication Publication Date Title
KR20110067264A (ko) 네트워크 이상징후 탐지장치 및 방법
KR101519623B1 (ko) 오탐률을 줄이기 위한 분산 서비스 거부 공격 탐지 장치 및 방법, 분산 서비스 거부 공격 탐지 및 방어 장치
CN108429651B (zh) 流量数据检测方法、装置、电子设备及计算机可读介质
KR100942456B1 (ko) 클라우드 컴퓨팅을 이용한 DDoS 공격 탐지 및 차단 방법 및 서버
US8634717B2 (en) DDoS attack detection and defense apparatus and method using packet data
US20140189867A1 (en) DDoS ATTACK PROCESSING APPARATUS AND METHOD IN OPENFLOW SWITCH
Toklu et al. Two-layer approach for mixed high-rate and low-rate distributed denial of service (DDoS) attack detection and filtering
US10701076B2 (en) Network management device at network edge for INS intrusion detection based on adjustable blacklisted sources
Osanaiye et al. Change-point cloud DDoS detection using packet inter-arrival time
Zubaydi et al. Review on detection techniques against DDoS attacks on a software-defined networking controller
CN112055956A (zh) 网络安全性
Al-Adaileh et al. Proposed statistical-based approach for detecting distribute denial of service against the controller of software defined network (SADDCS)
Liu et al. TrustGuard: A flow-level reputation-based DDoS defense system
Unal et al. Towards prediction of security attacks on software defined networks: A big data analytic approach
JP5532241B2 (ja) 高パケットレートフロー検出装置及び高パケットレートフロー検出方法
Rajakumaran et al. Early detection of LDoS attack using SNMP MIBs
Sree et al. Detection of http flooding attacks in cloud using dynamic entropy method
US20110141899A1 (en) Network access apparatus and method for monitoring and controlling traffic using operation, administration, and maintenance (oam) packet in internet protocol (ip) network
US11895146B2 (en) Infection-spreading attack detection system and method, and program
RU2531878C1 (ru) Способ обнаружения компьютерных атак в информационно-телекоммуникационной сети
Prathibha et al. A comparative study of defense mechanisms against SYN flooding attack
Majed et al. Efficient and Secure Statistical DDoS Detection Scheme.
Al-Mafrachi Detection of DDoS attacks against the SDN controller using statistical approaches
CN110162969B (zh) 一种流量的分析方法和装置
Ramprasath et al. Virtual Guard Against DDoS Attack for IoT Network Using Supervised Learning Method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application