DoS 공격의유형분석및탐지방법 (Monitoring and Investigation of DoS Attack) 이종엽 *, 윤미선 **, 이훈 ** * 창원대학교대학원정보통신공학과, ** 창원대학교정보통신공학과 ljyfree@mail.changwon.ac.kr* 요약 본논문에서는 DoS 공격의유형을분석하고탐지방법을제안한다. 우선 DoS 공격의유형에대해서분석을하고, DoS 공격의탐지방법에대한연구동향을요약하였다. 이어서 DoS 공격의탐지를위하여필요한일반적인 LAN 트래픽의특성과다양한 DoS 공격유형에따른트래픽특성을분석하고, 이들트래픽의프로토콜과 CP 플래그값들의비율을이용한 DoS 공격탐지와판별방법을제안하였다. 제안한방법의성능을평가하기위하여 DoS 공격탐지도구를개발하고모의실험을하였다. 실험의결과제안한방법이 DoS 공격의탐지에유효함을입증하였다. 1. 서론 오늘날세계는고도의정보화사회에서컴퓨터통신의급속적인발전과인터넷사용의폭발적인증가로인한부작용인컴퓨터범죄에대한우려와대응책마련의필요성이요구되고있다. 갈수록늘어나는인터넷과연동되는네트웍과링크의증속으로네트웍이고속화됨에따라공격경로가점점다양화, 지능화되고있어분석과추적이어려워지고있고그에대한연구와효과적인서비스거부공격탐지방법의개발이요구되고있다. 최근인터넷보안체계를공격하는경향은시스템또는네트워크자원을공격대상으로하여사용가능한자원을모두소비하여사용자가실제사용해야하는자원을사용할수없게하는서비스거부공격 (Denial of Service) 이증가하고있다. 서비스거부공격은대역폭, 프로세스처리능력및시스템자원을고갈시킴으로써정상적인서비스를제공하지못하게만드는모든행위를말하기때문에그방법또한다양하다. DoS 공격의특성을이용하여여러시스템에 Agent 를설치하고그 Agent 를제어하여공격함으로써엄청난파괴력을지닌분산서비스거부공격 (Distributed DoS) 이많이이루어지고있다 [9]. 최근빈번하게발생하는웜바이러스 (Nachi, Welchia) 에도 DoS 공격방식이내장되어피해를주고있어 DoS 공격에대한대책이시급하다 [15]. 네트워크가 DoS 공격에취약한원인은공격이여러개의소스에서이루어지고특정소스에서는매우적은수의패킷을사용하고또 CP, UDP, ICMP 등다양한형태의패킷을공격에이용하기때문에공격자의추적은물론, 탐지와방어에어려움이있다는것이다 [1]. 본논문에서는이러한 DoS 공격의유형을 분석하고현재의 DoS 공격탐지방법에대한연구동향을분석하여, DoS 공격탐지방법의하나로트래픽기반의공격을분석함으로써정상상태의트래픽유형을바탕으로공격시의이상트래픽을판별하는트래픽측정, 분석관점에서공격의유형, 탐지방법에대한현황, 전망및구현방안에대해기술하였다. 본논문의구성은아래와같다. 제 2 장에서는 DoS 공격의유형을분석한다. 제 3 장에서는 DoS 공격의탐지및판별방법을제안한다. 제 4 장에서는 DoS 공격탐지도구의개발을통하여제안한방법이유효함을실험을통하여입증한다. 마지막으로제 5 장에서는본연구의의의와향후연구과제에대해기술한다. 2. DoS 공격의유형 DoS 공격의유형은공격자의위치에따라내부에서의공격과외부에서의공격으로나눌수있고, 공격대상의형태에따라, 특정네트워크에서허용하는대역폭을모두소모시키는방법, 공격대상 (victim) 시스템의자원 (CPU, Memory 등 ) 을고갈시키는방법, victim 의시스템상에서동작하는 Application 등프로그래밍오류에대한공격으로서비스를거부하게하는방법들이있다 [1]. 내부에서의공격은 CPU, 메모리, 디스크등의시스템자원에대한공격으로시스템을독점하여과소비함으로써서비스를거부하도록하는방법이대부분을차지하고있고, 외부에서의공격은위와같이여러가지형태의공격방법을띄고있으나네트워크와시스템에대한공격이주를이룬다. 네트워크트래픽을증가시키면실제로시스템의사용에는문제가없지만이시스템이사용자에게네트워크서비스를제대로수행하지못하게된다. 이방법을링크의대역폭이낮은네트워크에서
사용될수있는방법이다. 본절에서는여러공격방법들중트래픽의양과관련된 DoS 공격에이용되고있는몇가지공격유형을살펴본다 [2] [12]. 2.1 SYN Flooding SYN Flooding 공격은특정시스템에대한불법적인권한을얻는적극적인방법이아니라, 네트워크와시스템의자원을공격대상으로하는공격방법의하나이다. 이것은 CP 가데이터를보내기전에연결을먼저맺어야하는연결지향 (Connectionoriented) 성을이용한방법이다. 즉, SYN Flooding 은 CP 의연결과정인 hree-way handshaking 를이용하여공격자 (Attacker) 가대상시스템 (Victim) 에 source IP address 를 spoofing 하여 SYN 패킷을특정포트로전송하게되면이포트의대기큐 (Backlog Queue) 를가득차게하여이포트에들어오는연결요청을큐가빌때까지무시하도록하는방법이다 [3]. 이때 source IP 주소에들어갈임의의호스트를찾아야되는데, 이호스트는 Unreachable 호스트여야한다. 이러한호스트는간단히 ping 을이용해서찾아낼수있다. 사용할포토번호는널리알려진 port scan 방법을이용해대상포트를찾을수있다. 먼저공격자는 unreachable 한호스트의 IP 주소로 spoofing 하여계속하여연결요청 (SYN/ACK) 패킷을보내게되면 victim 은 unreachable 호스트에게 ACK 를받을때까지이러한연결상태를큐에계속해서저장하게된다. 시간이지나면큐는 overflow 가발생하게되고, 이후에큐로들어오는연결요청은거부하게되는것이다. < 그림 1> 은 SYN Flooding 의개념도이다. spoof 되는 victim 간네트워크를마비시킨다. < 그림 2> 에서나타낸바와같이공격자가 victim A 에게 source IP address 를 victim B 의 IP address 로 spoofing 하여대량의 UDP 패킷을전송하면 victim A 와 victim B 는계속해서서로패킷을주고받게되어두시스템사이의네트워크에과부하가초래된다. 이공격은주로 echo 와 chargen 서비스를이용한다. 그림 2. UDP Flooding 에의한 DOS 공격 2.3 ICMP Flooding ICMP(Internet Control Message Protocol) 는 IEF RFC 792 에정의된프로토콜로써호스트간혹은호스트와라우터간의에러상태혹은상태변화를알려주고요청에응답을하는기능을담당하는네트워크제어프로토콜이다. 활성화된서비스나포트가필요하지않는유일한프로토콜이다. 이러한 ICMP 의특징을악용한 ICMP Flooding 은대량의 ICMP 패킷을공격자가직접 victim 에게전송하는방법으로그변종의예로 Smurf, Welchia worm 등이있다. Smurf 는공격자가 source IP address 를 victim 의 IP address 로설정한후, broadcast address 로 ICMP echo request 패킷을전송하면그하위모든시스템들이 ICMP echo reply 패킷을 victim 으로전송하게되어대량의패킷들이집중하여네트워크부하를높이게된다. < 그림 3> 은 Smurf 의개념도이다. 그림 1. SYN Flooding 에의한 DOS 공격 2.2 UDP Flooding UDP(User Datagram Protocol) 를이용한패킷전달은비연결형 (connectionless) 서비스로서포트대포트로전송한다. 대표적인응용서비스로 FP, SNMP, 실시간인터넷방송들이이에해당된다. UDP Flooding 은 UDP 의비연결성및비신뢰성때문에공격이용이한방법이다. UDP 는 source address 와 source port 를 spoofing 하기쉽다. 이러한약점들을이용해과다한트래픽을 victim 에전송함으로써 그림 3. Smurf 에의한 DOS 공격
최근발견된 Welchia worm 은감염시스템에대하여 IP address 의 B 클래스를고정시키고 C 클래스부터증가시키며 ICMP 패킷을전송하여다른감염대상을찾고감염시스템의성능을저하시키는형태이다 [4]. 3. DoS 공격탐지와판별 DoS 공격을탐지하기위해서는먼저네트워크가정상상태 (normal state) 에어느정도의부하를처리하고있는지알아야한다. 그리고네트워크이상징후분석에대한특정한 parameter 를정의하고, 정상상태의 parameter 값들에대한임계치를정하는것이무엇보다중요하다. 일반적으로잘알려진 parameter 는 CPU 사용량및 Load 양, 패킷의분포 ( 패킷의크기와패킷 header 의정보 ), 네트워크의서비스의종류별분포를알수있는프로토콜의분포와전체적인트래픽양에대한최대치및평균치와특정호스트에대한집중현상, spoofing 주소를이용하는플로우에대한모니터링, 네트워크상에서플로우급증현상을파악하는데이용하는네트워크플로우정보등이있다. 이러한 parameter 를서로조합하여트래픽을분석함으로써트래픽특성에대한신뢰도를높일수있다. 따라서, 본연구에서는트래픽의양의변화를기반으로하는 DoS 공격탐지방법의하나로서우선 LAN 의정상상태에서의트래픽특성을분석하고이어서 DoS 공격시의트래픽특성을분석하여두경우의트래픽의특성을비교하여 DoS 공격의발생여부를판단하는방법을제안한다. 3.1 공격탐지방법연구동향 기존에발표된가장일반적인 DoS 공격의탐지방법으로는 Source IP 를이용하는방법이다. 일반적으로공격자는자신의존재를숨기기위해서 IP Spoofing 을한다. 랜덤함수를이용해 Source IP 를생성하고네트워크자원을빨리고갈시키기위해패킷길이는보통프로토콜에서허용하는최소의크기로정해진다. 일반적인 Web 트래픽은 HP 프로토콜을이용하고 CP 기반으로이루어진다. 그러므로 Web 트래픽에서일정시간내에같은 Source IP 를가지고들어오는패킷들이여러번나타난다. 이는최소한연결을맺어서데이터를받기까지해당 Source IP 를가진패킷이여러번들어온다는것을의미한다. 이에 Web 트래픽은특정 Source IP 대의분포가높게분포하게되고반대로 DoS 공격트래픽의 Source IP 주소분포는 uniform 하게넓게퍼져있는것을알수있다. 즉 DoS 특징상 source IP 주소는특정값으로정해질수없다. Source IP 주소를모니터링하기위해 LRU(Least Recently used) 큐를이용하여큐의대체율, 전체패킷수등을일정시간간격으로분석하고, 이통계값들을이용하여공격을탐지하고있다 [14]. 3.2 LAN 트래픽특성분석 LAN 트래픽의측정은 2002 년 7 월 4 일부터 9 월 13 일까지교내의링크중트래픽유통량이가장많은부분에서 MRG 를이용하여링크의 In- Out 트래픽을측정하여하루중가장트래픽이많은 busy hour 를찾은다음해당시간대의패킷을캡쳐하여분석하였다 [5]. 일반 LAN 의트래픽에서패킷크기의분포를살펴보면, < 그림 4> 에서나타낸바와같이 64byte 이하의크기를가지는패킷들의전체에대한비율은 26.3% 로주로 broadcasting, multicasting, configuration, control 등에쓰이는작은단위의패킷이고, 128~255byte 의비율이 47.31% 인것으로보아 web 사용으로인한트래픽의비율이가장높다는것을확인할수있다. 그림 4. 패킷크기분포 < 그림 5> 에서 IP 패킷의각프로토콜의패킷단위및바이트단위의비율을보면패킷단위의비율이 94:6, 바이트단위의비율이 93:7 정도로 CP 의비율이 UDP 의비율에비해절대적으로우세함을볼수있다. 또한 ICMP 는거의찾아볼수가없다 [5]. 그림 5. Protocol 별비율분포 CP 플래그의비율은 ACK 플래그의비율이거의
100% 에가까운수치로높게나타나는데그이유는데이터를받았을때그에대한확인응답을보내는 CP 의연결지향적특성때문에생기는현상이다 [6]. 3.3 DoS 공격트래픽특성분석 네트워크가 DoS 공격을받으면전체적인트래픽의양과공격의유형에따라프로토콜, 패킷의분포와헤더플래그의비율에변화가생긴다. 본논문에서는전체적인트래픽의양의 average value와응용패킷분포와응용프로토콜의비율분포에대한 parameter를선정하여특성을분석하였다. 공격트래픽의특성분석은잘알려진공격툴을이용하여임의적인 victim을만들어 victim앞에네트워크트래픽분석툴을이용하여트래픽의특성을분석하였다. 앞에서제시한유형에서 UDP Flooding은일반적인프로토콜별 UDP 프로토콜의비율보다그비율이매우높아지게되고, ICMP Flooding은 ICMP 프로토콜의비율이높아지게된다. SYN Flooding은일반적으로 CP프로토콜이네트워크트래픽의분석결과프로토콜별비율면에서는많은양을차지하고있어, 프로토콜별비율면에서공격을탐지하기어렵다. CP패킷의헤더에포함된 CP 플래그의양을분석하여정상상태의분포와공격시의분포를비교하여 SYN Flooding의공격유무를판단하였다. 결과를먼저이야기하면 SYN Flooding공격을받으면정상상태의플래그비율에서대부분을차지하던 ACK 플래그의수치가낮아지고 SYN 플래그의비율이높아진다. 3.4 DoS 공격탐지방법 DoS 공격탐지방법으로다음의 3 단계를제안한다. ⅰ. 실시간트래픽과평균트래픽과의비교 ⅱ. 실시간프로토콜비율의분석비교 ⅲ. 실시간 CP 플래그비율의분석비교 맨먼저, 실시간트래픽과링크의평균트래픽을계산하여비교하여 DoS 공격여부를 1 차판별한다. 이어서실시간응용프로토콜을비율을분석하여 UDP Flooding 공격과 ICMP Flooding 공격을탐지하고마지막으로 CP 패킷헤더의 CP 플래그비율을분석하여 SYN Flooding 공격을탐지한다. DoS 공격의탐지및판별을위해일반 LAN 에서의트래픽분석이필요하다. 이는 MRG, Sniffer 등트래픽분석도구를이용할수있다. 다음의표는측정한트래픽의분석자료이다. 트래픽측정은 2003 년 9 월 15 일부터 10 월 17 일까지교내건물중가장트래픽이많이발생하는건물을대상으로 busy hour 시간대의 data 를수집하여분석하였다. 표 1. 트래픽분석결과 구분 평균 표준편차 데이터량 (kbits) 4841.667 1989.519 CP 비율 (%) 96.144 2.599 UDP 비율 (%) 3.720 2.522 ACK 비율 (%) 92.916 5.478 SYN 비율 (%) 8.567 16.090 먼저실시간트래픽의데이터량 _mes 가임계값 _t 보다크다면 DoS 공격의가능성이있다고판정한다. 임계값은 < 표 1> 의값을이용하여다음과같이구한다. _ t = µ + kσ, ( k = 1,2,3, 4 ) (1) 이때, k 값이증가하면신뢰도가높아지는데본논문에서는 3으로설정하여신뢰도를 99.7% 로가정한다. 또, 트래픽의평균데이량 µ 는다음과같이구한다. µ + = 1 α) µ old αµ new ( (2) 이때, α = 0. 9 로설정하여트래픽의평균에이동성을부여한다. (_mes > _t) 를만족하면 2단계인실시간프로토콜의비율을분석비교한다. UDP 비율의임계값 UDP_t는다음과같다. UDP _ t = µ + kσ, ( k = 1,2,3, 4 ) (3) U U 그림 6. DoS Attack 탐지 flow chart k 의값은 3 으로설정한다. 실측한 UDP 메시지의양인 UDP_mes 가 (UDP_mes > UDP_t) 를만족하면 UDP Flooding 으로판정한다. ICMP 는정상상태의 LAN 에서는거의발생하지않으므로 ICMP 비율이전체프로토콜비율의 10% 이상을차지하면 ICMP Flooding 으로판정한다. 2 단계에서어느것도판정하지못했다면,
마지막으로 실시간 CP 플래그의 비율을 분석 비교한다. SYN 플래그비율의임계값 SYN_t는다음과같다. SYN _ t = µ + kσ, ( k = 1,2,3, 4 ) (4) S S k 의값은 3 으로설정한다. 실측치 SYN_mes 가 (SYN_mes> SYN_t) 를만족하면 SYN Flooding 으로판정한다. 이와같이 DoS 공격의탐지방법을 3 단계로진행하고신뢰도를높임으로써탐지와판별에오류는줄어들것으로예상된다. 4. DoS 공격탐지도구개발및실험 본논문에서제안한 DoS 공격탐지와판별방법으로 DoS 공격탐지도구를제작하기위해 AMAN 라이브러리를이용하여 VC++ 로도구를제작하였다 [7][8]. < 그림 7> 은제작한프로그램으로송수신주소에따른각프로토콜발생빈도수와데이터량을나타내고, 누적프로토콜, CP 플래그의빈도수와비율을보여준다. 그리고실시간트래픽의프로토콜, CP 플래그의비율, 데이터량을보여주고데이터량은그래프로쉽게관측할수있다. < 그림 7> 은프로그램의실시간트래픽측정및분석의그림이다. 1 에서송수신주소에따른 CP, UDP, ICMP 프로토콜의발생빈도수와데이터량을 나타내고, 2에서는누적프로토콜, CP 플래그의빈도수와비율및누적패킷수와데이터량을보여준다. 4에서는실시간트래픽의 CP, UDP, ICMP 프로토콜의비율과 CP 플래그의비율및데이터량을보여주고, 데이터량은 3에서그래프로쉽게관측할수있다. < 그림8>,< 그림9>,< 그림10> 은앞절에서제안한 3단계탐지판별방법으로 UDP Flooding, ICMP Flooding, SYN Flooding 공격여부를판별한것을나타낸다. < 그림8> 은단계1에서실시간데이터량이 µ + 3σ 보다크면단계2인프로토콜비율을분석비교하여실시간 UDP 프로토콜의비율이 µ U + 3σ U 보다크다는것을확인하고 UDP Flooding 공격이있음보여준다. < 그림9> 는단계1에서실시간데이터량이 µ + 3σ 보다크면단계2인프로토콜비율을분석비교하여실시간 ICMP의비율이전체프로토콜비율의 10% 이상임을확인하고 ICMP Flooding 공격이있음을나타낸다. < 그림8> 은단계1에서실시간데이터량이 µ + 3σ 보다크면단계2인프로토콜비율을분석비교한다. 프로토콜비율에는이상이없다면단계3에서 CP 플래그의비율을분석비교하여실시간 SYN 플래그의비율이 µ + 보다크면 SYN Flooding 공격이있음 S kσ S 보여준다 그림 7. DoS 공격탐지도구실행화면
그림 8. UDP Flooding 의탐지 그림 9. ICMP Flooding 의탐지.
그림 10. SYN Flooding 의탐지 5. 결론 최근인터넷환경에서 DoS 공격이큰위험요소로부각되고있지만이를완벽하게막아내는것은매우어려운일이다. 본논문에서는 DoS 공격의탐지와판별방법을제안하고 DoS 공격탐지도구를개발하였다. 먼저발생빈도가높은공격유형을분석하고, 일반 LAN 트래픽의특성과 DoS 공격트래픽의특성을비교하여데이터량, 프로토콜비율, CP 플래그의비율을이용한 3 단계탐지판별방법을제안하였다. 제안한방법에맞는 DoS 탐지도구를제작하여실험을하였으며그결과임계치를어느정도의값으로정하느냐에따라 DoS 공격의판별이가능한지를쉽게알수있었다. 향후계획으로는 DoS 공격탐지의정확도를높이기위한방안을강구할예정이다. 그중에서도이동평균치의정확도를높이고, 또한 NGN 의다양한서비스특성을더욱면밀히분석하여새로운유형의 DoS 공격에대해서도계속연구할예정이다. 본논문의결과는 DoS 공격에대한네트워크보안대책의수립으로네트워크의가용성을높여서고객에게보다높은 QoS 를제공할수있을것이다. 참고문헌 [1] 정철현, 변대용, 트래픽분석을통한서비스거부공격추적, http://www.certcc.or.kr/paper/tr2003/030115-dos.pdf, 2003.1. [2] 이경현, 조현호, 박영호, 네트워크를동한시스템침입에대한고찰Ⅱ, 한국멀티미디어학회 2000년도추계학술발표논문집, 제3권제2호, pp. 525-529, 2000. [3] 고규만, Distributed Reflection Denial of Service, http://www.kisa.or.kr/critical_information_infrastruc ture/data/tech_data/tech_data_20020802_drdos.pdf, 2002. [4] hauri- virus information, http://www.hauri.co.kr/virus/vir_new.html [5] Sung-Chul Shin, Analysis for CNU_LAN user traffic characteristics, 창원대학교학사학위논문 2003.2. [6] 이철호, 최경희, 정기현, 노상욱, 웹서버에대한 DDoS 공격의네트워크트래픽분석, 한국정보처리학회논문지, 10-C(3), pp. 253-263, 2003.06. [7] CP/IP 프로토콜분석및네트워크프로그래밍, 정익사, 2002.10. [8] AMAN2002, http://www.aide.co.kr/ [9] Felix Lau, Stuart H. Rubin, Michael H. Smith, Ljiljana rajkovic, Distributed Denial of Service Attacks, 2000 IEEE International Conference on Systems, Man and Cybernetics, Volume:, pp. 2275 -
2280, 3, 2000. [10] David Moore, Geoffrey M. Voelger and stefan savage, "Inferring Internet Denial-of-Service Activity", Usenix Security Symposium, pp.9-22, August 2001. [11] Computer Emergency Response eam (CER), Carnegie Mellon University, Pittsburgh, PA. "CP SYN Flooding and IP Spoofing Attacks", Sept.1996. CA-96:21. [12] L.Garber, Denial-of-Service Attacks rip the Internet, IEEE Computer pp.12-17, April 2000. [13] 나중찬, 김영국, 보안측면에서의네트워크이상징후분석기술. [14] 정휘석, 이철호, 최경희, 정기현, 트래픽분석을통한효과적인 DDOS공격탐지방법, 정보과학회가을학술발표논문집, pp574~576, 2002.10. [15] http://info.ahnlab.com/smart2u/virusdetail1206.html Communication Engineering from ohoku University, Sendai, Japan February 1986 - February 2001: K R&D Group March 2001 ~ : Assistant Professor of Changwon National University Dr. Lee is a member of IEEE, KICS and IEEK Research interests: ele-traffic engineering, Network design, performance analysis and provision of QoS for high speed telecommunication networks Jong -yeub Lee Feb. 2003: B.E of Information & Communication Engineering from Changwon National University March 2003 ~ : Graduate school of I at Changwon National University Research interests: Internet Security, eletraffic engineering Mi-sun Yoon Feb. 2004: B.E of Information & Communication Engineering from Changwon National University Research interests: Network security & management Hoon Lee February 1984: B.E. of Electronics from Kyungpook National University February 1986: M.E. of Communications from Kyungpook National University March 1996: Ph.D. of Electrical &