완전자동화페이로드시그니쳐업데이트시스템 Fully Automatic Payload pdate System 심규석, 구영훈, 이성호, 김명섭고려대학교컴퓨터정보학과 {kusuk7, gyh88, gaek5}@korea.ac.kr, 요 약 오늘날네트워크자원을사용하는응용이증대되면서네트워크관리를위한트래픽분석에서현재연구단계의한계가드러나고그런한계를해결하기위한다양한연구가진행되고있다. 그중대표적인연구인시그니쳐자동생성연구는응용트래픽을입력으로트래픽의공통된패턴을찾아출력하는과정이자동화된연구이다. 그러나시그니쳐자동생성연구는트래픽을사용자가수집해야하는반자동시스템이기때문에트래픽수집단계에서문제가발생하고, 생성된시그니쳐의정확도를신뢰할수없는한계가있다. 본논문에서는시그니쳐자동생성시스템의한계를극복하기위해트래픽수집, 시그니쳐생성 / 검증 / 관리까지모든과정이자동으로이루어지는시스템을제안한다. 제안하는방법을학내망의실제트래픽에적용하여추출한시그니쳐는분석률은유지하며, 오탐률을 로만드는효과를보였다. Keyword: Automatic,, pdate, Identifier, Verifier, Generation 1. 서론 1 네트워크관리분야에서트래픽분석은점점더중요시되어가고있다. 네트워크환경은증대되고있고, 그속에서통신하는트래픽은매우다양한형태를가진다. 다양한종류의트래픽을정리하고, 조절하여네트워크자원을최대한효율적으로사용하고, 네트워크사용자에게서비스를원활하게제공하는것이네트워크관리의목적이다 [6]. 네트워크관리에있어가장중요한분야는네트워크모니터링이다. 네트워크모니터링은네트워크에서특정응용및서비스가발생량을알아내어, 그에맞는관리정책을수립하는것을의미한다. 네트워크모니터링을위한트래픽분석은사용자에게는질높은네트워크서비스를제공받도록하고, 제공자에게는최소한의네트워크자원으로최대한에질높은서비스를제공할수있는기반이된다. 트래픽분석에서필수적으로사용되는것은각응용별로트래픽을분류할수있는시그니쳐이다. 시그니쳐는트래픽의특징별로다양한종류가존재한다. 시그니쳐를빠르고정확하게생성하기위해시그니쳐자동생성연구는활발하게진행되고있다. 시그니쳐자동생성연구는패킷의페이로드내용을기반으로공통문자열을자동으로추출하여시그니쳐화하는방법이다. 그러나현재단계의시그니쳐자동생성방법은한계가존재한다. 먼저, 시그니쳐를만들기위한최소조건으로추출하고자하는응용의트래픽을수집해야하는데이단계는사용자가직접트래픽수집도구 [4,5] 를이용하여수집해야한다. 본단계에서트래픽을잘못수집하면추출된시그니쳐는잘못된시그니쳐이다. 두번째는수집된트래픽이단기간의트래픽이기때문에시그니쳐또한응용의대표적인시그니쳐가아닐확률이높다. 세번째는시그니쳐검증단계를포함하지않기때문에추출된시그니쳐가다른응용을분석할확률이높다. 마지막으로항상최신시그니쳐를유지할수없는단점이있다. 트래픽패턴이변화되더라도인지하는것은여전히사람이기때문에즉각적인대응이불가하다. 따라서본논문에서는이러한한계를극복하기위해완전자동화시그니쳐업데이트시스템을제안한다. 제안하는시스템은트래픽수집, 시그니쳐생성, 생성된시그니쳐검증그리고시그니쳐관리까지모든과정이자동으로이루어지는시스템이다. 또한지속적으로시스템을수행하기때문에항상최신시그니쳐를유지할수있고, 트래픽패턴변화에대해즉각적인대응이가능하다. 본논문은 1 장서론에이어, 2 장에서시그니쳐자동생성시스템에대한관련연구에대해언급하고, 3 장에서제안하는시스템을제안한다. 4 장에서는제안한시스템의성능을평가하고마지막 5 장에서결론및향후연구에대해서술하고논문을마친다. 이논문은 215 년도정부 ( 교육부 ) 의재원으로한국연구재단의지원을받아수행된기초연구사업임 (No.215R1D1A3A11857) 21
2. 관련연구 트래픽분석을위한시그니쳐는서론에서언급했듯이트래픽특성에따라다양한형태로존재한다. 트래픽의포트번호를이용하여분석하는포트기반시그니쳐와트래픽의크기, 위치, 시간등통계적인정보를이용한통계기반시그니쳐, 패킷의데이터부분인페이로드정보를이용한페이로드기반시그니쳐가대표적이다. 포트기반시그니쳐는 IANA 에서지정한포트정보를시그니쳐로사용한다. 본방법은적은메모리사용으로매우빠르게트래픽분석이가능하지만, 현재많은응용들은방화벽및 IPS 장비를통과하기위해임의포트번호를사용하기때문에더이상포트기반시그니쳐는무의미하다. 통계기반시그니쳐는플로우내의패킷의크기, 위치, 방향, 지속시간등을시그니쳐로사용한다. 본방법은암호화된트래픽을분석할수있고, 분석속도가빠른장점이있지만, 시그니쳐를생성하는것이어렵고응용이한정되어있을뿐만아니라정확성을기대하기힘들다는단점이존재한다. 따라서본연구에서는페이로드기반시그니쳐를다룬다. 페이로드기반시그니쳐는패킷의데이터부분인페이로드내의공통된문자열을의미한다. 가장정확도가높은시그니쳐이지만시그니쳐추출이어렵고, 추출과정에서인적, 시간적소비가크다는단점이있다. 이러한단점을해결하기위해시그니쳐자동생성방법이연구되고있다. 시그니쳐자동생성을위해다양한알고리즘이사용되고있는데, 대표적으로 LCS (Longest Common String) 알고리즘, Smith-Waterman 알고리즘과가장최근연구에서순차패턴알고리즘의한종류인 AprioriAll 알고리즘을이용한시그니쳐자동생성연구가있다. LCS 알고리즘을응용트래픽시그니쳐추출목적에맞게변형한대표적인방법은 LASER(LCSbased Application ExtRaction) 이다 [1]. 본방법은두개의스트링을비교하는 Matrix 에서 Backtracking 을이용하여연속된공통문자열을찾는방법이다. 따라서두개의스트링을계속비교하여야하기때문에추출과정의시간이오래걸리는단점이있다. Smith-Waterman 은본래 DNA 의유사도를판단하는목적에발표된알고리즘이다 [2]. 본알고리즘을사용한응용시그니쳐자동생성방법도발표되었는데본방법은 LCS 와매우유사하다. 하지만 Backtracking 방법에서 LCS 알고리즘은연속된공통문자열을찾을수있지만, Smith-Waterman 알고리즘은연속된공통문자열의집합을찾을수있는차이가있다. 그러나본방법또한두개의스트링을비교하는것에차이가없기때문에추출과정에많은시간이소비된다. 가장최근연구인 AprioriAll 알고리즘을이용한 시그니쳐자동생성방법은위의단점을해결할수있는방법이다 [3]. 위의방법들은특정두문자열을비교하여실제트래픽에적용하기위해트래픽의순서를정하거나, 그룹화시키는전처리과정과생성된부분문자열을하나의규칙으로통합시키는후처리과정이필요하다면, 본방법은모든문자열을후보로길이 1 부터증가시키며시그니쳐가될수있는가능성이높은문자열만취하기때문에추출과정에많은시간이소비되지않고, 전처리과정과후처리과정이필요없는장점이있다. 3. 문제정의 트래픽분석이다양한이유로매우어려워지고있다. 그중두가지의가장큰이유가있는데, 첫번째로지속적으로변하는트래픽패턴이다. 트래픽은일정한패턴을가지고통신을하게된다. 하지만서비스를제공하는업체에서보안위험에예방하여트래픽패턴을변화시킬수있다. 트래픽패턴이변화되면, 네트워크관리자는다시트래픽패턴을분석하고, 그렇지않다면해당서비스를관리하지못하게된다. 두번째는새로운응용이급격하게생성되고많이사용되고있다. 모바일앱다운로드는전세계시장에서 5 년사이에약 1 배정도증가한것으로나타나고, 지속적으로증가할것이예상된다. 네트워크관리자는이러한새로운응용에대해모두다파악하기힘들고파악한다하더라도모든응용들을분석하기는한계가있다. 이러한한계를극복하기위해시그니쳐자동생성의연구는활발히이루어지고있다. 그러나현재단계의시그니쳐자동생성은트래픽수집과추출된시그니쳐에대한검증, 그리고시그니쳐관리방법에대한한계가존재한다. 최적의방법으로시그니쳐를자동생성할수있지만입력된트래픽에서문제가발생하면잘못된시그니쳐가추출될수밖에없다. 또한추출된시그니쳐는해당응용만을분석할수있다는신뢰가없고, 계속해서추출되는시그니쳐와사용되지않는시그니쳐를관리해야하는한계는존재한다. 따라서본논문에서는이러한과정을완전자동화할수있는완전자동화페이로드시그니쳐업데이트시스템을제안한다. 4. 완전자동화시그니쳐업데이트시스템 본장에서는완전자동화페이로드시그니쳐업데이트시스템을제안한다. 제안하는시스템은트래픽수집, 시그니쳐생성, 시그니쳐검증, 그리고시그니쳐관리의모든과정이자동으로수행된다. 따라서본장에서각과정의수행과정에대한방법론을설명한다. 그림 1 은완전자동화페이로드시그니쳐업데이트시스템의수행과정이다. 22
Internet Network Automatic Generator Verifier New s Traffic Log GT Traffic (n-identified) Final s GT Traffic Generator GT Traffic Identifier Current Old s List 그림 1. 완전자동화시그니쳐업데이트시스템 그림 1 에서 GT Traffic Generator 에서는트래픽데이터와호스트에서발생하는 Log 데이터를이용하여응용별정답지트래픽을생성한다. Identifier 에서는응용별정답지트래픽과기존시그니쳐를이용해분석되지않은응용별정답지트래픽을출력한다. Automatic Generator 에서는분석되지않은응용별정답지트래픽을입력으로새로운시그니쳐를출력한다. 새로운시그니쳐는 Verifier 를통해검증된시그니쳐를분별하여다시 List 로입력된다. 이러한과정이지속적으로이어지면서검증된 Final 는다음수행과정때 Current 로지속적인검증단계를거쳐항상최신시그니쳐를유지할수있다. 4-1. GT Traffic Generator: 자동트래픽수집및정답지트래픽생성기존연구가가진가장큰한계는트래픽을사용자가직접수집해야하는것이다. 이러한과정에서잘못된트래픽이수집될수있기때문에제안하는시스템의 GT Traffic Generator 에서는트래픽을자동으로수집하고, 각응용별로정답지트래픽을생성한다. 정답지트래픽을생성하기위해본시스템에서는 TMA(Traffic Measurement Agent) 를사용한다. TMA 는각호스트에서실행되며로그데이터를남긴다. 표 1 은 TMA 에서발생하는로그데이터가포함하는정보이다. 표 1. TMA 정보 Process name IP address (local, remote) Port number (local, remote) State (start, continue, end, server) Protocol Path 표 1 과같은정보들을 TMA 는각호스트에서시간대별로 TMS(Traffic Measurement Server) 로전송한다. TMS 는각호스트에서받아온정보를통합한다. 본시스템에서는 TMS 로부터통합된정보와트래픽의정보를매칭한다. 같은시간, 같은 5- tuple(srcip/port, dstip/port, Protocol) 를가진정보를매칭하여트래픽을 Process name 별로저장하며응용별정답지트래픽을생성한다. 4-2. Identifier: 트래픽분석및시그니쳐관리자동으로수집된정답지트래픽을이용하여시그니쳐를바로생성할수있다. 하지만같은응용에대해지속적으로동일한시그니쳐가추출될수있기때문에시스템에불필요한부하와시간이소비될수있다. 또한기존시그니쳐에서트래픽패턴변화로인해사용되지않는시그니쳐에대한관리방법이필요하다. 본시스템의 Identifier 에서는기존시그니쳐로 1 차트래픽을분석하여분석되지않는트래픽을분류하고, 사용되지않는시그니쳐를삭제하며시그니쳐를관리한다. 최신시그니쳐를유지하기위해서는새로운시그니쳐를생성할뿐만아니라사용되지않는시그니쳐를삭제해야한다. 이러한과정이생략된다면시그니쳐는지속적으로축적되고, 축적된시그니쳐는트래픽분석에있어시스템부하및과도한시간소비의원인이된다. 따라서본시스템에서는사용되지않는시그니쳐를삭제한다. 수식 (1) 은시그니쳐의구성을나타낸다. = {Header, Contents, Weight, Score} (1) 다음과같이시그니쳐는응용서버의정보인 IP address, Portnumber, 그리고 Protocol 로이루어진 Header, 트래픽의고유한패턴인 Contents, 시그니쳐삭제를위한가중치값인 Weight, Weight 를계산하기위한 Score 값으로구성된다. Score 는알고리즘 1 과같이계산된다. Procedure: Calculation of Score Input: Current s, total GT traffic Output: Cumulative Score by s 1: foreach signature S in OldSet do 2: foreach flow F in GTtrafficSet do 3: if ( identified(s, F) == 1 ) then 4: S. CumulativeScore = ; break; 5: end 6: end 7: S. CumulativeScore + +; 8: end 알고리즘 1. Score 계산알고리즘 23
다음과같이 Score 는분석에사용되지않은횟수를나타낸다. 그러나 Score 가누적되더라도분석에사용된시그니쳐는다시 Score 값이 으로초기화된다. 수식 (2) 는 Score 를이용한 Weight 계산방법이다. Weight t (S) = Weight t p (S) + C(S) t (S) (2) (t = current time, p = period, C = completeness) t (S) = Weight (t p)(s) Score (3) 1 (Weight =, Weight, Weight(S) 1) 1 시그니쳐에 Weight 를구성한것은과거분석률에상당한영향을미친시그니쳐이거나, 오랜기간분석에사용되었던시그니쳐가삭제되기까지시간을주기위함이다. 반면기존사용자가잘못된시그니쳐를가지고있었다면 Weight 값이적어서신속하게삭제된다. 4-3. Automatic Generator: 시그니쳐자동생성시그니쳐자동생성은시그니쳐를추출하기위해순차패턴알고리즘중 Aprioriall 알고리즘을수정하여사용한다. 시그니쳐를자동으로생성하는과정은먼저트래픽의페이로드를추출하여시퀀스를생성한다. 생성된시퀀스들의집합에서길이 1 의콘텐츠를생성한다. 길이 1 콘텐츠는최소지지도검사를통해, 길이 2 로생성된후보자콘텐츠와삭제될콘텐츠로구분된다. 더이상길이가증가되지않을때까지이러한과정을반복하여공통문자열을추출한다. 생성되는시그니쳐는그림 2 와같이총 3 가지타입이존재한다. 첫번째타입은공통적으로발생하는연속된문자열을의미하는콘텐츠시그니쳐이다. 두번째타입은동일한패킷에서발생하는콘텐츠시그니쳐의조합을의미하는패킷시그니쳐이다. 세번째타입은동일한플로우에서발생하는패킷시그니쳐의조합을의미하는플로우시그니쳐이다. Traffic Data "A" Flow (A File) Sequence in "A-1" Packet S E R "B" Flow (B File) Sequence in "A-2" Packet K Y S E O K Sequence in "B-1" Packet S E R Sequence in "B-2" Packet H E L L O S N G M I N H E L L O Type of Content Packet Flow Sig 2. Sig 3. Sig 2. H H and H 그림 2. 타입별시그니쳐생성 and A and 4-4: Verifier: 시그니쳐검증제안하는시스템은새롭게추출된시그니쳐에대해검증단계를포함하고있다. 검증단계에서는 A 응용트래픽에의해추출된시그니쳐가 A 응용이아닌 B, C 등다른응용트래픽을분석하는것을방지한다. 다른응용트래픽을분석하는시그니쳐는시그니쳐로써의의미를잃어버리기때문에삭제해주지만아주소량의다른응용트래픽을분석하고, 해당응용트래픽분석에큰비중을차지하고있는시그니쳐를남기는방법론을제안한다. 시그니쳐를검증은다른응용을분석하는시그니쳐즉, False-Positive 가있는시그니쳐를대상으로한다. False-Positive 가없는시그니쳐는최종시그니쳐에포함된다. 다음과같이검증과정에서 False- Positive 수치를사용하게된다. 표 2 는데이터판별용어에대해설명한것이다. TP(True-Positive) 는 A 응용시그니쳐가 A 응용트래픽을분석한수치이다. FN(False-Negative) 는 A 응용시그니쳐가 A 응용트래픽을분석하지못한수치이다. FP(False-Positive) 는 A 응용시그니쳐가 A 응용트래픽을제외한나머지트래픽을분석한수치이다. TN(True-Negative) 는 A 응용시그니쳐가 A 응용트래픽을제외한나머지트래픽을분석하지않은수치이다. 표 2. 데이터판별 Relevant Traffic Others Traffic Analyze TP(True-Positive) FP(False-Positive) Not Analyze FN(False-Negative) TN(True-Negative) 본시스템에서가장중점적으로 FP(False-Positive) 수치를다룬다. 특정응용에대한시그니쳐전체를분석할경우 TP(True-Positive) 도중요하지만, 현재단계에서각시그니쳐하나의수치를계산하기때문에 FP 를중점으로다룬다. 각시그니쳐별 FP 를계산하여 FP 가 인시그니쳐는최종시그니쳐로저장되고, FP 가 을초과하는시그니쳐에한해검증단계에입력된다. 시그니쳐의검증을위해본논문은 Precision, Recall, 그리고 F-measure 값을사용한다. Precision 은시그니쳐로분석된트래픽중에정확히분석한비율을나타내고, Recall 은특정응용트래픽중시그니쳐로정확히분석한비율을나타낸다. 다음과같이수식 (4), 수식 (5) 이표현한다. Precision = Recall = TP TP+FP TP TP+FN F-measure 는 Precision 과 Recall 을이용하여가중치를주어값을측정하는공식이다. 본논문에서는 F-measure 를사용하여 Precision 에가중치를두기위해 β 값을사용하는데 1 을기준으로 1 보다작으면 Precision 에민감한수식이되고, 1 보다크면 Recall 값에민감한수식이된다. 만약동일한가중치를주어야한다면 β 를 1 로고정하면된다. 본논문에서는 F-measure 를사용하여 Precision 에가중치를두기위해 β 값을.1 로고정하여사용한다. 수식 (6) 은 F- (4) (5) 24
measure 표현식이다. F measure = (β2 +1) Precision Recall β 2 Precision Recall F-measure 의최대값은 1 이고최소값은 이다. 1 이나오는경우는해당시그니쳐가해당정답지트래픽에있는모든트래픽을분석하고, 그외트래픽을하나도분석하지못했을때이고, 이나오는경우는 TP= 가되면된다. 따라서본논문에서는 F-measure 가최소.95 이상의정확도를가진시그니쳐만을최종시그니쳐로저장한다. 제안하는방법을통해관리되는네트워크에서호스트가사용하는응용에대한시그니쳐는지속적으로업데이트가되며, 사용되지않은시그니쳐는삭제되고, 새로운시그니쳐는추출된다. 새로운시그니쳐는검증과정을거치면서정확도높은시그니쳐를유지한다. 5. 실험 본장에서는완전자동화페이로드시그니쳐업데이트시스템에의해생성되는시그니쳐와기존시그니쳐자동생성시스템에의해생성되는시그니쳐의분석률과오탐률을비교실험한다. 분석률은 TP(True-Positive) 로써해당응용트래픽중분석한트래픽의양으로표현하고, 오탐률은 FP(False- Positive) 로써해당응용을제외한트래픽중분석한트래픽의양으로표현한다. 표 3 은호스트에서자주사용하는 5 가지응용을선정하여비교실험한결과이다. 본실험결과에서모든응용에대해 FP 수치를 으로감소시켰음에도불구하고, TP 수치는많이감소하지않았다. 특히, Dropbox 의경우 FP 수치가 으로감소하였지만 TP 수치는유지하는효과를나타냈다. 따라서본시스템을통해시그니쳐의정화도를향상시키고최신시그니쳐로유지할수있었다. Naver Youtube utorrent Dropbox Facebook 표 3. 시그니쳐정확도비교실험결과 미검증시그니쳐 검증시그니쳐 TP FP 개수 TP FP 개수 2,68 /2,128 642 /645 2,138 /2,613 31 /51 273 /273 94 /3,582 2,458 /5,65 2,591 /3,97 5 /5,659 1,344 /5,437 542 112 631 5 37 1,929 /2,128 417 /645 2,18 /2,613 31 /51 212 /273 /3,582 /5,65 /3,97 /5,659 /5,437 다음실험결과는각응용시그니쳐들의분석률 (TP) 및오탐률 (FP) 가지속적으로업데이트됨에따라변화량을표현한다. 기존연구와비교하기위해 58 1 68 4 22 (6) 각응용의초기시그니쳐는시그니쳐자동생성시스템에의해추출된시그니쳐를사용한다. 실험결과에서와같이초기시그니쳐로각응용을분석했을때, FP 의수치가높은것을확인할수있지만본시스템인시그니쳐업데이트시스템에의해추출된시그니쳐로분석한결과인두번째부터 FP 의수치가급격히줄어든것을확인할수있었다. 그림 3 은 Naver 응용의시도횟수에따른분석률및오탐률이다. 그림 3. 시그니쳐업데이트시도횟수에따른 naver 응용의분석률및오탐률 6. 결론및향후연구 본논문에서제안한완전자동화페이로드시그니쳐업데이트시스템은기존시그니쳐생성방법의한계를극복하기위해시그니쳐를추출하기위한모든과정인트래픽수집, 시그니쳐생성, 시그니쳐검증, 시그니쳐관리까지일련의과정을자동화한다. 제안된시스템은실험결과로성능향상이증명되었다. 향후본시스템을실시간에실행하기위한성능향상에대한연구가필요하다. 또한시그니쳐자동생성과정에서최적화된순차패턴알고리즘을선정해야한다. 참고문헌 [1] B.-C. Park, Y. J. Won, M.-S. Kim, and J. W. Hong, "Towards automated application signature generation for traffic identification," in Network Operations and Management Symposium, 28. NOMS 28. IEEE, 28, pp. 16-167. [2] X. Feng, X. Huang, X. Tian, and Y. Ma, "Automatic traffic signature extraction based on Smith-waterman algorithm for traffic classification," in Broadband Network and Multimedia Technology (IC-BNMT), 21 3rd IEEE International Conference on, 21, pp. 154-158.. [3] 심규석, 윤성호, 이수강, 김성민, 정우석, 김명섭, " 네트워크트래픽분석을위한 snort content 규칙자동생성 ", 통신학회논문지 Vol.4 No.4, pp.666-677, April. 214. [4]https://www.wireshark.org [5]https://www.tcpdump.org [6]Y. Wang, Y. Xiang, W. L. Zhou, and S. Z. Yu, Generating regular expression signatures for network traffic classification in trusted network management, J. Netw. Comput. Appl., vol. 35, pp. 992-1, May 212. 25