트래픽분산그래프기반의비정상트래픽탐지 정태열 O,1, Le Quoc Do 2, 홍원기 1,2 포항공과대학교 1 컴퓨터공학과, 2 정보전자융합공학부 {dreamerty, lequocdo, jwkhong}@postech.ac.kr 요 약 네트워크의안정적인관리를위해서비정상트래픽을초기에탐지하고대응하는것은매우중요하다. 하지만네트워크에서발생하는트래픽의양이점점증가하고네트워크공격방법이날로다양해지면서기존의비정상트래픽탐지방법들은많은한계를보이고있다. 이에따라본논문에서는트래픽분산그래프라는그래프모델을기반으로인터넷트래픽에서호스트들사이의커뮤니케이션패턴을표현하고이를활용하여비정상트래픽탐지뿐만아니라해당비정상트래픽을유발한네트워크공격의종류를판단할수있는방법을제안하고이를실제 DDoS Trace 에적용하여그타당성을검증한다. 1. 서론 인터넷의규모가지속적으로커지면서비정상트래픽을탐지하고대응하기위해네트워크관리자의입장에서보안의중요성이날로커지고있다. 비정상트래픽은서비스거부공격 (DoS), 포트스캔, 인터넷웜같은다양한원인에의해발생할수있는데이러한비정상트래픽들은네트워크의정상적인기능에심각한영향을초래한다. 따라서비정상트래픽탐지는네트워크보안인프라에서뺄수없는중요한요소이다. 하지만실질적으로비정상트래픽을유발하는위협들을탐지하고판별하는것은쉬운일이아니다. 현재까지사용되어온비정상트래픽탐지기법들은주로기계학습, 데이터마이닝, 통계적분석에기반한것이었지만이러한방법들은인터넷트래픽을분석하는데많은시간이소모되거나종종잘못된알람을생성하기때문에이를보완할수있는새로운접근방법이필요하다. 지난 10 년동안 Complex network 의개념은컴퓨터공학, 사회학, 생물학등다양한분야에서연구되어왔는데이들학문분야들은네트워크가형성하고있는구조적인특성들을분석하는데주력해왔다. 본연구에서는이와비슷한관점을인터넷트래픽에적용하여비정상트래픽탐지에활용하고자한다. 본논문에서비정상트래픽은 Traffic Dispersion Graph (TDG), 트래픽분산그래프라는그래프모델을사용해탐지되는데트래픽분산그래프로부터네트워크의특성을표현할수있는변수들을추출하고이를활용해네트워크내에비정상트래픽존재유무를결정짓는다 [1]. 변수추출은정적변수와동적변수두가지로이루어진다. 정적변수는그래프가특성시점에서가지는 정적인특성을나타내고동적변수는시간에따라변화하는그래프의정도를표현한다. 비정상트래픽이탐지되었다면부분그래프매칭알고리즘을사용해비정상트래픽을유발한공격종류를판단한다. 본연구에서는 DDoS 공격을당할당시의 CAIDA Trace[2] 에나타나는비정상그래프가 POSTECH Trace 에존재함을확인함으로써부분그래프가공격종류를판단하는데활용될수있음을보였다. 2. 관련연구 Iliofotou 는네트워크노드들의커뮤니케이션패턴을표현할수있는 Traffic Dispersion Graph(TDG) 즉트래픽분산그래프를소개하고네트워크트래픽을트래픽분산그래프를기반으로분석하여서로다른어플리케이션을분류하는데사용하였다 [3]. 본논문에서는트래픽분산그래프를네트워크트래픽을표현하기위한그래프모델로사용하여비정상트래픽을탐지하였다. 많은논문들에서그래프매칭알고리즘을사용하여네트워크에서공격패턴을탐지하려는시도들이연구되어왔다 [4, 5]. 하지만이논문들에서는그래프매칭알고리즘을전체네트워크트래픽에바로적용하기때문에계산시간이너무많이소모된다는문제점이존재한다. 본논문에서는비정상트래픽이탐지되었을경우에만그래프매칭알고리즘을적용하기때문에계산해야할트래픽의양을대폭감소시켰다. 그래프기반으로네트워크트래픽을분석하기 본연구는한국연구재단을통해교육과학기술부의세계수준의연구중심대학육성사업 (WCU) 으로부터의지원 (R31-2010- 000-10100-0) 및 2011 년도정부 ( 교육과학기술부 ) 의재원으로한국연구재단 - 차세대정보컴퓨팅기술개발사업의지원 (No. 2011-0020518) 을받아수행되었습니다. 15
위해다양한정적변수들이사용될수있는데특히 Node degree 값으로부터상당히많은정보들을얻을수있다. 트래픽분산그래프모델에서는 Innode 와 Out-node 를구분할수있기때문에한노드가얼마나많은노드들과커뮤니케이션하는지, 그리고그커뮤니케이션방향은어떻게되는지를 Node degree 를통해확인할수있다. 본논문에서는그래프의최대 Node degree 를나타내는 Kmax 값을비정상트래픽탐지를위한정적변수로사용하였다. 시간에따라변화하는두그래프의차이를추적할수있는동적변수들도네트워크트래픽분석에유용하게활용될수있다. 그중 dk-2 동적변수는두그래프의 Joint Degree Distribution 을나타내는데이는두그래프의연관정도를양적으로표현하기위한변수이다 [6, 7]. 본논문에서는매분마다변화하는 dk-2 값사이의 Euclidean Distance 값을의미하는 dk-2 Distance 를비정상트래픽과정상트래픽을구분하기위해동적변수로사용하였다. 3. 비정상트래픽탐지및공격종류판별 3 장에서는본논문에서제안하는그래프기반의비정상트래픽탐지방법및공격종류판별에대해구체적으로살펴보고자한다. 여기서비정상트래픽은 DoS/DDoS 공격, 인터넷웜, 네트워크스캐닝등공격자의악의적인의도에의해발생하는트래픽으로한정하고이를탐지하기위한방법에대해논의한다. 제안하는비정상트래픽탐지시스템은그림 1 에서볼수있는것과같이크게두가지모듈로구성되어있다. 첫번째는인터넷트래픽이정상인지비정상인지를판단하는것이고두번째는앞서인터넷트래픽이비정상으로판단되었다면해당비정상트래픽을유발한공격의종류를판별하는과정이다. 비정상트래픽탐지모듈은인터넷트래픽모니터링시스템으로부터플로우정보를받아서플로우정보로부터트래픽분산그래프를얻는다. 비정상트래픽탐지모듈은트래픽분산그래프에서정적및동적변수를분석해현재인터넷트래픽이비정상유무를판단하는역할을한다. 공격종류판별모듈은다양한원인에의해발생할수있는비정상트래픽이어떠한종류의공격에의해생겨난것인지를판단하는모듈이다. 3.1 비정상트래픽탐지 비정상트래픽탐지단계에서네트워크트래픽은매분마다샘플링되고그에상응하는트래픽분산그래프가매분마다얻어진다. 시스템은매분마다생성되는트래픽분산그래프에서그래프변수들을계산하고그값들에근거하여트래픽의비정상여부를결정한다. 이러한비정상트래픽탐지단계는그림 2 와같이크게 4 단계로이루어져있다. 1 단계 : 네트워크트래픽을샘플링하고플로우정보를얻는다. 2 단계 : 플로우정보로부터매분마다의트래픽분산그래프를얻는다. 3 단계 : 트래픽분산그래프에서인접행렬정보를계산하고그로부터정적및동적그래프변수값을계산한다. 4 단계 : 트래픽분산그래프에서얻은그래프변수값들을비정상트래픽을결정짓는 Threshold 값과비교한다. 만약그래프변수값들이 Threshold 값보다크다면비정상트래픽으로, Threshold 값보다작다면정상트래픽으로간주한다. NG-MON 시스템 [8] 은네트워크트래픽을모니터링하고그로부터플로우정보를생성하여데이터베이스에저장하기위해사용되었다. 데이터베이스에저장된플로우정보는 DOT 포맷의형태로변형되어트래픽분산그래프를그리는데사용된다 [9]. DOT 포멧으로플로우정보를표현한후비정상트래픽탐지에사용되는그래프변수값들을계산하기위해그래프의인접행렬값들을계산한다. 그림 2. 비정상트래픽탐지과정 그림 1. 전체시스템의구조 비정상트래픽을판단하기위한 Threshold 값은 POSTECH 네트워크에서장기간모니터링한트래픽을기준으로설정하였다. 연속적인트래픽분산그래프 G i 와 G i+1 의 dk-2 Distance 값을얻기위해 16
Joint Degree Distribution 알고리즘 [10] 이사용되었고이를두개의연속적인트래픽분산그래프의인접행렬에적용한다. 이후두 Joint Degree Distribution JDD(G i ) 와 JDD(G i+1 ) 사이의 Euclidean Distance 가계산된다. 네트워크트래픽의시각화를위해 Graphviz Library 를사용하여노드들의커뮤니케이션을형상화하였다 [11]. 3.2 공격종류판별 네트워크에서비정상트래픽은 DoS/DDoS 나인터넷웜같은다양한이유에의해발생할수있다. 공격종류판단모듈은앞서비정상트래픽탐지과정에서비정상으로탐지된트래픽이어떤공격에의해발생한것인지를판단한다. 기존에잘알려진네트워크공격들의공격패턴을파악하고그것을공격종류판단에사용하기위해서그림 3 와같은과정이필요하다. 본연구에서는그림 4 와같이 DDoS CAIDA Trace 로부터 DDoS 공격패턴을추출하고이를 DDoS 공격판단을위한비교대상으로사용하였다. DDoS 외에도다양한네트워크공격들의커뮤니케이션패턴을정의하여공격종류판단에사용할수있다. 본논문에서비정상트래픽에포함된공격의종류를탐지하는과정은부분그래프매칭알고리즘을사용하여기존에알고있던공격패턴이비정상트래픽 TDG 내에포함되어있는지를판단함으로써이루어진다. 부분그래프매칭을위해서다른부분그래프매칭알고리즘에비해가장좋은효율을보이는 VF2 알고리즘이사용되었다 [12, 13]. 그림 3. 공격종류탐지과정 기존연구에서는공격패턴을전체네트워크트래픽에직접매칭시켜공격이존재하는지판단했지만, 본논문에서는먼저비정상트래픽을판별한후 VF2 알고리즘을적용하기때문에대용량의트래픽에대해서도훨씬빠른계산이가능하다. 그림 4. CAIDA Trace 의 DDoS 공격패턴 4. 결과및검증 제안한시스템이정상적으로비정상트래픽을탐지할수있는지검증하기위해 2009 년 7 월 7 일저장된 POSTECH Trace 가사용되었다. 당시 POSTECH 네트워크내에는 DDoS 공격에이용된다수의좀비 PC 들이존재했었고 POSTECH Trace 에는 DDoS 공격에참여한좀비 PC 들의트래픽이포함되어있다. 검증을위해 POSTECH Trace 는 1 분단위로샘플링되었고매분마다그에해당하는트래픽분산그래프를얻었다. 그림 5 와그림 6 은비정상트래픽탐지를위해 Kmax 와 dk-2 Distance 값을사용하여 1 시간동안의 POSTECH 트래픽을분석한결과이다. 2 분, 22 분, 23 분의시각에 Kmax 값과 dk-2 Distance 값이급변하는것으로보아해당시각에비정상트래픽이발생했던것을확인할수있다. 그림 7 에서볼수있는것처럼발생한패킷의수를이용하는기본적인통계기반분석의경우비정상트래픽과정상트래픽의차이가크지않아판단에어려움이따른다. 그에반해그림 5, 그림 6 에서는비정상트래픽과정상트래픽의구별이확실하게드러난다. 이후비정상트래픽을유발한공격종류의판별을위해비정상트래픽이탐지된 2 분, 22 분, 23 분의트래픽분산그래프에대해서그래프매칭알고리즘을적용하였다. 그결과 POSTECH Trace 에서 DDoS CAIDA Trace 에서발견된공격패턴과일치하는패턴이발견되었고, 해당하는시각의플로우정보를역추적하여그당시 DDoS 공격이 Internet Relay Chat(IRC) TCP 포트 6667 번을사용하는봇넷에의한 DDoS 공격이었음을확인할수있었다. 17
그림 5. POSTECH Trace 의 Kmax 값변화 래픽분산그래프의형태로나타내고그그래프를통해비정상적인커뮤니케이션패턴을파악하여비정상트래픽을탐지한다. 또한제안하는방법의타당성을검증하고평가하기위해실제 DDoS 공격트래픽을포함하고있는 2009 년 7.7 DDoS POSTECH Trace 를사용하여비정상트래픽을탐지할수있음을보였다. 이후부분그래프매칭알고리즘을적용하여 DDoS CAIDA Trace 가포함하고있는 DDoS 공격그래프패턴이 POSTECH Trace 에포함되어있음을보임으로써 7.7 POSTECH Trace 가 DDoS 공격트래픽을포함하고있음을확인할수있었다. 향후연구에서는 DDoS 트래픽뿐만아니라다양한네트워크공격또는네트워크상의문제로인해야기되는비정상트래픽을분석하여그들이트래픽분산그래프상에서보이는특성들을연구할예정이다. 또한시스템의심도있는검증을위해더많은비정상트래픽 Trace 들을확보하고기존의비정상트래픽탐지시스템들과의성능을비교및평가할계획이다. 6. 참고문헌 5. 결론 그림 6. POSTECH Trace 의 dk-2 값변화 그림 7. POSTECH Trace 의패킷수변화 본논문에서는그래프이론을기반으로네트워크상에서발생하는비정상트래픽을탐지하는방법을소개하였다. 제안한방법은네트워크트래픽을트 [1] Iliofotou, M., Pappu, P., Faloutsos, M., Mitzenmacher, M. Singh, S. and Varghese, G. Network monitoring using traffic dispersion graphs (tdgs). In Proceedings of the 7th ACM SIGCOMM conference on Internet measurement (IMC '07). ACM, New York, NY, USA, 2007, 315-320. [2] Hick, P., Aben, E., Claffy, K. and Polterock, J.2007. The CAIDA DDoS Attack 2007 Dataset. http://www.caida.org/data/passive/ddos- 20070804dataset.xml (accessed on 2011-05-10). [3] Iliofotou, M., Faloutsos, M. and Mitzenmacher, M. 2009. Exploiting dynamicity in graph-based traffic analysis: techniques and applications. In Proceedings of the 5 th international conference on Emerging networking experiments and technologies (CoNEXT '09). ACM, New York, NY, USA, 2009, 241-252. [4] Godiyal, A., Garland, M. and John, C.H. 2010. Enhancing network traffic visualization by graph pattern analysis, https://agora.cs.illinois.edu/download/attachments/187443 03/NetflowPatternGraph.pdf?version=1&modificationDate =1238354953000. [5] Cordella, L.P., Foggia, P., Sansone, C. and Vento, M. 2004. A (Sub)Graph isomorphism algorithm for matching large graphs. IEEE Trans. Pattern Anal. Mach. Intell. 26, 10 (October 2004), 1367-1372. [6] Sala, A., Cao, L., Wilson, C., Zablit, R., Zheng, H. and Zhao, B. 2010. Measurement-calibrated graph models for social network experiments. In WWW, 2010, pages 861-870. [7] Mahadevan, P., Hubble, C., Krioukov, D., Huffaker, B., Vahdat, A. 2007. Orbis: rescaling degree correlations to generate annotated Internet topologies. SIGCOMM Computer Communications Review, 2007, 325-336. 18
[8] Hong, J.W. 2004. Internet traffic monitoring and analysis using NG-MON. POSTECH, Advanced Communication Technology. The 6th International Conference, 2004, Volume: 1, page(s): 100-120. [9] Gansner, E., Koutsofios, E. and North, S. Drawing graphs with dot. [10] Whitney, D. 2008. Basic Network Metrics. Lecture note. http://ocw.mit.edu/courses/engineering-systemsdivision/esd-342-network-representations-of-complexengineeringsystems-spring- 2010/readings/MITESD_342S10_ntwk_metrics.pdf [11] Graphviz graph visualization software. http://www.graphviz.org/ [12] Foggia, P., Sansone, C. and Vento, M. 2001. A Performance Comparison of Five Algorithms for Graph Isomorphism Proc. 3rd IAPR TC-15 Workshop on Graphbased Representations in Pattern Recognition, 2001. [13] Voss, S. and Subhlok, J. 2010. Performance of general graph isomorphism algorithms. Technical Report UH-CS- 09-07, University of Houston, 2010. 19