牛偉納,張小松,孫恩博,楊國武,趙凌園
?
基于流相似性的兩階段P2P僵尸網(wǎng)絡(luò)檢測方法
牛偉納1,2,張小松1,2,孫恩博2,楊國武2,趙凌園2
(1. 電子科技大學(xué)網(wǎng)絡(luò)空間安全研究中心 成都 611731; 2. 電子科技大學(xué)計算機科學(xué)與工程學(xué)院 成都 611731)
僵尸網(wǎng)絡(luò)利用諸如蠕蟲、木馬以及rootkit等傳統(tǒng)惡意程序,進行分布式拒絕服務(wù)攻擊、發(fā)送釣魚鏈接、提供惡意服務(wù),已經(jīng)成為網(wǎng)絡(luò)安全的主要威脅之一。由于P2P僵尸網(wǎng)絡(luò)的典型特征是去中心化和分布式,相對于IRC、HTTP等類型的僵尸網(wǎng)絡(luò)具有更大的檢測難度。為了解決這一問題,該文提出了一個具有兩階段的流量分類方法來檢測P2P僵尸網(wǎng)絡(luò)。首先,根據(jù)知名端口、DNS查詢、流計數(shù)和端口判斷來過濾網(wǎng)絡(luò)流量中的非P2P流量;其次基于數(shù)據(jù)流特征和流相似性來提取會話特征;最后使用基于決策樹模型的隨機森林算法來檢測P2P僵尸網(wǎng)絡(luò)。使用UNB ISCX僵尸網(wǎng)絡(luò)數(shù)據(jù)集對該方法進行驗證,實驗結(jié)果表明,該兩階段檢測方法比傳統(tǒng)P2P僵尸網(wǎng)絡(luò)檢測方法具有更高的準確率。
僵尸網(wǎng)絡(luò)檢測; 會話特征; 流相似性; P2P流量識別
當今時代,網(wǎng)絡(luò)環(huán)境錯綜復(fù)雜,安全問題日益突出。由于僵尸網(wǎng)絡(luò)的C&C服務(wù)器具有更高的隱蔽性,僵尸程序經(jīng)常被實施大規(guī)模網(wǎng)絡(luò)攻擊的黑客所采用,幾乎所有的DDoS攻擊和80%~90%的垃圾郵件攻擊都是由僵尸網(wǎng)絡(luò)發(fā)起的[1]。因此,僵尸網(wǎng)絡(luò)已成為網(wǎng)絡(luò)安全中不容忽視的問題。
早期的僵尸網(wǎng)絡(luò)主要采用IRC[2]和HTTP[3]作為通信協(xié)議,具有單點失效問題,很容易被檢測和摧毀。如今,大多數(shù)僵尸網(wǎng)絡(luò)使用P2P技術(shù)來創(chuàng)建C&C(命令和控制)機制以增強網(wǎng)絡(luò)通信隱蔽性[4]。相比采用IRC和HTTP協(xié)議的僵尸網(wǎng)絡(luò),不具有中心節(jié)點的P2P僵尸網(wǎng)絡(luò)具有更大的威脅性和隱蔽性。所以,P2P僵尸網(wǎng)絡(luò)越來越受到攻擊者的青睞,P2P僵尸網(wǎng)絡(luò)檢測[5]也成為安全領(lǐng)域的研究熱點。
目前,P2P應(yīng)用已經(jīng)引起了互聯(lián)網(wǎng)流量爆炸式的增長,這對數(shù)據(jù)存儲以及實時分析來講都是一個巨大的挑戰(zhàn)。因此,在檢測P2P僵尸網(wǎng)絡(luò)的早期,對網(wǎng)絡(luò)中的非P2P流量進行過濾就顯得尤為重要。
本文針對P2P僵尸網(wǎng)絡(luò)提出一種兩階段的檢測方法:第一階段基于端口判斷、DNS查詢以及會話中數(shù)據(jù)流計數(shù)來過濾非P2P流量;第二階段基于會話特征來識別P2P僵尸網(wǎng)絡(luò),其中本文使用基于會話特征的檢測方法有效降低了需要分析的數(shù)據(jù)條數(shù)。然后采用基于決策樹模型的隨機森林算法對流量進行分類識別,從而檢測出僵尸網(wǎng)絡(luò)。同時,在UNB數(shù)據(jù)集上將本文算法與另外兩種已有算法做了實驗對比和分析,實驗結(jié)果表明隨機森林算法對P2P僵尸網(wǎng)絡(luò)的檢測準確率更高。
根據(jù)檢測策略的不同,P2P僵尸網(wǎng)絡(luò)檢測方法包括以下4種類型:基于特征碼[6-7]、基于主機行為[8-9]、基于流行為特征[10]和基于流相似性[11]。
基于特征碼的檢測[6-7]是通過分析僵尸網(wǎng)絡(luò)應(yīng)用程序或者通信流量提取其特征(如MD5、PE頭格式等)來設(shè)計檢測規(guī)則。但是最初的檢測規(guī)則將會在僵尸網(wǎng)絡(luò)應(yīng)用程序改變它們的通信方式和數(shù)據(jù)包格式之后失效。與此同時,如果當前使用的特征碼不能有效表示僵尸程序的特征,該檢測策略就會有較高的誤報率。
基于主機行為的檢測[8-9]是通過在一個可控環(huán)境中監(jiān)測主機中進程、文件、網(wǎng)絡(luò)連接、注冊表內(nèi)容的更改來檢測僵尸程序。該方法不能檢測新型和變種的僵尸網(wǎng)絡(luò)程序,如攻擊者可以使用諸如rootkit、反調(diào)試等新的攻擊和隱藏技術(shù)躲避此種檢測策略。
基于流行為特征[10]的檢測主要是在僵尸網(wǎng)絡(luò)C&C控制階段使用[12],因為C&C控制階段的流量與正常的網(wǎng)絡(luò)流量在流特征與通信規(guī)律上存在差異,這些差異包括平均數(shù)據(jù)包大小、周期性連接等。因此,可以結(jié)合機器學(xué)習(xí)[13]、神經(jīng)網(wǎng)絡(luò)[14]對僵尸網(wǎng)絡(luò)實時監(jiān)控。
基于流行為特征的僵尸網(wǎng)絡(luò)檢測方法主要分析如下兩個特征:連接失敗率和流特征。其中,流特征又包括上下行數(shù)據(jù)包的數(shù)量,上下行傳輸字節(jié)的大小,上下行數(shù)據(jù)包的平均長度、最大長度、平均方差,數(shù)據(jù)流的持續(xù)時間以及在一個流中已加載的數(shù)據(jù)包的總長度。
這種方法具有較高的檢測率,因為它不依賴于僵尸網(wǎng)絡(luò)的類別來提取流的共同特征向量。所以,該檢測策略廣受流量分析領(lǐng)域?qū)<覍W(xué)者的關(guān)注。在高速、復(fù)雜、多變的網(wǎng)絡(luò)環(huán)境中,決定檢測效率和準確率的主要因素是提取的特征和使用的分類策略。
研究表明[11],加入同一個僵尸網(wǎng)絡(luò)的僵尸主機之間的通信行為具有相似性。所以,P2P僵尸網(wǎng)絡(luò)流量識別可以采用如下方案:首先對獲取到的網(wǎng)絡(luò)流量進行分析處理,并提取特征;然后結(jié)合聚類算法對上一階段提取的流數(shù)據(jù)進行聚簇;最后分析判斷P2P僵尸網(wǎng)絡(luò)流量位于哪一個簇中。
該方案是通過設(shè)置閾值的方式來提高檢測準確率,無需使用現(xiàn)有的僵尸網(wǎng)絡(luò)數(shù)據(jù)流進行訓(xùn)練。但是,如果當前網(wǎng)絡(luò)中只有一臺僵尸主機,或者在已捕獲的數(shù)據(jù)包中未發(fā)現(xiàn)不同僵尸主機的通信流量,此方法也不會有太大效果。
本節(jié)描述了本文提出的分兩個階段檢測僵尸網(wǎng)絡(luò)流量的方法。該方法的重點在于對非P2P流量的過濾以及對會話的特征的提取,其結(jié)構(gòu)如圖1所示。本文將從數(shù)據(jù)包過濾規(guī)則、會話特征和分類算法3方面依次展開介紹。
圖1 所提出方法的架構(gòu)
目前,常用的P2P流量識別方法包括端口識別[15]、特征碼識別[16]以及基于流特征的識別[17]。然而,端口識別方法不能識別出采用隨機端口或自定義端口的P2P應(yīng)用程序,DPI(深度包檢測技術(shù))[18]不能識別加密的P2P流量,基于流特征的識別方法只能判斷出P2P應(yīng)用程序的部分流量,且具有很高的誤報率。所以,結(jié)合快速啟發(fā)式的P2P協(xié)議流量識別方法,本文采用非P2P協(xié)議知名端口過濾機制、DNS查詢、流計數(shù)規(guī)則來過濾非P2P流量,如圖2所示。
圖2 非P2P流量過濾
端口過濾是數(shù)據(jù)包級別的過濾方法,主要過濾掉常用的非P2P應(yīng)用程序流量;DNS查詢是流級別的過濾方法,流計數(shù)和端口判斷是會話級的過濾方法,這兩種規(guī)則主要是過濾掉網(wǎng)頁等非P2P流量。其中,基于端口的過濾方法可以識別出一些普通的非P2P應(yīng)用程序流量,比如SSH一般使用22號端口,Telnet(遠程登錄)使用23號端口。常用應(yīng)用程序及其對應(yīng)端口號如表1所示。
表1 常用應(yīng)用程序及其對應(yīng)端口
通常,P2P節(jié)點通信不需要進行域名解析,而是直接讀取存儲在本地配置文件中的IPs列表來獲取IP。然而,對于非P2P的應(yīng)用程序必須使用DNS域名解析來獲取IP。因此,判斷諸如Web、Mail等非P2P網(wǎng)絡(luò)數(shù)據(jù)流的依據(jù)之一可以是:網(wǎng)絡(luò)流中的目的IP地址是否是通過域名解析得到的。
用戶正常發(fā)送Web應(yīng)用服務(wù)請求時,在一個頁面中,該Web應(yīng)用程序會對一個IP地址采用多端口、并行請求的連接方式。因此,會有多條數(shù)據(jù)流出現(xiàn)在同一個會話中。P2P網(wǎng)絡(luò)節(jié)點每次使用一對隨機的源端口和目的端口進行通信。因此,本文可以使用流計數(shù)和端口判斷來過濾非P2P流量,如果某個會話使用了TCP協(xié)議和80、8080或443端口,且會話中的流數(shù)量超過了閾值,那么該會話便可以認為是網(wǎng)頁流量會話。判斷準則為:
盡管這一階段的方法不能準確地檢測出確定的P2P應(yīng)用程序,但是它可以在真實的網(wǎng)絡(luò)環(huán)境中過濾掉絕大部分非P2P流量和少量安全的P2P流量。
通過對P2P僵尸網(wǎng)絡(luò)的數(shù)據(jù)流特征分析,加入同一個僵尸網(wǎng)絡(luò)的僵尸主機之間的流量特征具有相似性。所以,本文使用基于會話的策略進行特征提取,也就是把具有相同目的地址的數(shù)據(jù)流聚合在相同的會話中,降低了流特征個數(shù)和數(shù)據(jù)條數(shù),進而提高了檢測效率。
2.2.1 會話中流持續(xù)時間
P2P僵尸主機與其他僵尸主機的通信過程是由僵尸程序自動完成的,流的持續(xù)時間一般較短且很固定。因此,可以提取會話中流持續(xù)時間的平均值、最大值、最小值和標準差以及會話中上行(下行)流數(shù)據(jù)包平均間隔時間作為特征。
2.2.2 會話中流的分布
P2P僵尸網(wǎng)絡(luò)中兩個節(jié)點進行通信過程中,傳輸數(shù)據(jù)包的大小以及傳輸數(shù)量均比較小,且同一個僵尸網(wǎng)絡(luò)中,僵尸主機產(chǎn)生的C&C通信流具有極大的相似性。因此,可以通過使用會話中流的分布來區(qū)分正常的P2P網(wǎng)絡(luò)通信流與P2P僵尸網(wǎng)絡(luò)流。提取會話中上行(下行)流最大數(shù)據(jù)包長度的平均值、平均數(shù)據(jù)包長度的平均值、最小數(shù)據(jù)包長度的平均值、平均數(shù)據(jù)包長度的標準差、有效數(shù)據(jù)包個數(shù)的平均值、有效數(shù)據(jù)包個數(shù)的標準差、傳輸字節(jié)數(shù)的平均值、傳輸字節(jié)數(shù)的標準差作為特征。
綜上所述,將從會話中提取到的這22個特征如表2所示。
表2 會話特征
(續(xù)表)
特征值特征值的說明 avg_f(b)int相同會話中不同網(wǎng)絡(luò)流的上行(下行)數(shù)據(jù)包傳輸?shù)钠骄g隔時間 max_f(b)pl相同會話中不同網(wǎng)絡(luò)流的上行(下行)傳輸數(shù)據(jù)包長度的最大值的均值 avg_f(b)pl相同會話中不同網(wǎng)絡(luò)流的上行(下行)傳輸數(shù)據(jù)包長度的均值的均值 min_f(b)pl相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸數(shù)據(jù)包長度的最小值的均值 std_avg_f(b)pl相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸數(shù)據(jù)包長度的平均值的標準差 avg_f(b)pen相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸?shù)挠行?shù)據(jù)包個數(shù)的平均值 std_avg_f(b)pen相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸?shù)挠行?shù)據(jù)包個數(shù)的標準差 avg_f(b)pb相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸?shù)目傋止?jié)數(shù)的平均值 std_f(b)pb相同會話中不同網(wǎng)絡(luò)流上行(下行)傳輸?shù)目傋止?jié)數(shù)的標準差
到目前為止,很多有監(jiān)督的機器學(xué)習(xí)算法都可以被用來對數(shù)據(jù)進行分類。本文使用以下3種分類算法來驗證所提方法的檢測率:貝葉斯網(wǎng)絡(luò)分類算法、REPTree分類算法以及隨機森林分類算法。雖然,這些算法都是基于會話特征來檢測P2P僵尸網(wǎng)絡(luò)流量的,但隨機森林算法展現(xiàn)出了較高的準確率。
隨機森林算法使用二叉樹作為分類樹,每個分類樹的構(gòu)建原則是從上到下遞歸劃分的,且其訓(xùn)練集是通過對原始訓(xùn)練數(shù)據(jù)集有放回采樣得到的。為了盡可能降低發(fā)生過擬合現(xiàn)象的情況,隨機森林使用Bagging隨機采樣方式構(gòu)建法分類樹。所以,本文使用隨機森林分類算法進行高速網(wǎng)絡(luò)環(huán)境中P2P僵尸網(wǎng)絡(luò)流量的檢測。
本文用于檢測僵尸網(wǎng)絡(luò)的數(shù)據(jù)集是由ISOT組織,Stratosphere和UNB的信息安全中心公開的僵尸網(wǎng)絡(luò)流量數(shù)據(jù)。其中,Stratosphere數(shù)據(jù)集包括具有端口掃描、C&C通信、攻擊等行為的僵尸網(wǎng)絡(luò)流量;ISOT數(shù)據(jù)集包括Waledac、Storm、Zuse 3種不同類型的僵尸網(wǎng)絡(luò)流量和一些背景流量。從UNB信息安全中心所獲取的流量包含了許多類型的P2P僵尸網(wǎng)絡(luò)流量。
根據(jù)對上述3家公司所提供的數(shù)據(jù)集及其流量進行分析,本文選擇采用UNB信息安全中心的數(shù)據(jù)集[19]來做對P2P僵尸網(wǎng)絡(luò)檢測的實驗。其中,訓(xùn)練集中只有3種類型的P2P僵尸網(wǎng)絡(luò),測試集包含8種不同類型的P2P僵尸網(wǎng)絡(luò)。
流計數(shù)和端口判斷識別Web流量的識別率與設(shè)定的閾值有關(guān),本次試驗使用不同的閾值(1,2,3,4,5, 6,8,10)來識別Web流量,結(jié)果如圖3所示。當閾值大于3的時候,隨著閾值的增大,檢測率急速下降,而誤報率基本沒有發(fā)生變化。但是,當閾值小于3的時候,誤報率會隨著閾值的減小而增加,而檢測率變化不大。因此,根據(jù)測試結(jié)果,在整個P2P流量的檢測過程中將閾值設(shè)定為3比較合適。
圖3 不同閾值下的Web流量識別
基于流特征的檢測一般使用單一類型的僵尸網(wǎng)絡(luò)數(shù)據(jù)集作為實驗數(shù)據(jù),并采用十指交叉驗證策略對分類準確率進行分析。所以,本文采用十指交叉驗證的方法來對比分析無過濾的會話特征與過濾后的會話特征的檢測效果,僵尸網(wǎng)絡(luò)的檢測率分別為:91%、92.4%,正常流量的誤報率分別為:9%、7.6%。結(jié)果說明,經(jīng)過知名端口、DNS、流計數(shù)過濾后的會話特征的分類結(jié)果不僅比沒有過濾的P2P僵尸網(wǎng)絡(luò)檢測效果好,正常流量的誤報率也進一步降低。
圖4 分類樹的個數(shù)與深度對檢測率的影響
一般來說,隨機森林算法的分類準確率與分類樹個數(shù)和分類樹深度正相關(guān)。然而,隨機森林算法的檢測速率卻與它們呈負相關(guān)關(guān)系。為了確定用于識別高速網(wǎng)絡(luò)環(huán)境中P2P僵尸網(wǎng)絡(luò)流量的隨機森林模型,本文對不同的分類樹個數(shù)和分類樹深度對檢測率的影響做了對比分析,實驗結(jié)果如圖4所示。其中,分類樹個數(shù)為0~300,分類樹深度為0~50。
本文在基于會話特征的基礎(chǔ)上,分別采用了貝葉斯網(wǎng)絡(luò)分類算法、REPTree分類算法和隨機森林分類算法來檢測P2P僵尸網(wǎng)絡(luò)流量。REPTree和隨機森林算法的深度設(shè)定為8,分類樹設(shè)定為100。P2P僵尸網(wǎng)絡(luò)流量的檢測結(jié)果如圖5所示。
圖5 P2P僵尸網(wǎng)絡(luò)檢測結(jié)果
使用貝葉斯網(wǎng)絡(luò)分類算法和REPTree分類算法來檢測P2P僵尸網(wǎng)絡(luò)流量的檢測率分別是75.3%和72.4%,但是,使用隨機森林算法的檢測率高達90.6%。所以,使用隨機森林算法對各種類型的P2P僵尸網(wǎng)絡(luò)流量的檢測精度要比使用貝葉斯網(wǎng)絡(luò)分類算法和REPTree分類算法的檢測精度要高。而文獻[19]統(tǒng)計的最大檢測率只有75%,因此基于會話特征的隨機森林檢測算法對P2P僵尸網(wǎng)絡(luò)的檢測率有較大提升。
本文提出了一種基于會話特征的P2P僵尸網(wǎng)絡(luò)檢測方法,首先分別從包、流和會話層面過濾非P2P流量,然后使用基于會話特征的有監(jiān)督的機器學(xué)習(xí)算法檢測P2P僵尸網(wǎng)絡(luò),該方法同時結(jié)合基于流特征的檢測方法與基于流相似性的檢測方法的優(yōu)點。最后通過使用公開的數(shù)據(jù)集驗證所提方法的有效性,實驗結(jié)果表明,該方法能高效地檢測P2P僵尸網(wǎng)絡(luò)流量。
未來將致力于非P2P流量過濾算法的優(yōu)化,進一步提升其性能。此外,希望將基于會話特征的檢測方法推廣到其他類型僵尸網(wǎng)絡(luò)的檢測與分類中。
[1] ZHU Z, LU G, CHEN Y, et al. Botnet research survey[C]//IEEE International Computer Software and Applications Conference. Turku: IEEE, 2008: 967-972.
[2] LIVADAS C, WALSH R, LAPSLEY D, et al. Using machine learning techniques to identify botnet traffic[C]// 31st IEEE Conference on Local Computer Networks. Tampa: IEEE, 2006: 967-974.
[3] CAI T, ZOU F. Detecting HTTP botnet with clustering network traffic[C]//2012 8th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM). Shanghai: IEEE, 2012: 1-7.
[4] ZEIDANLOO H R, MANAF A B A, AHMAD R B, et al. A proposed framework for P2P botnet detection[J]. International Journal of Engineering and Technology, 2010, 2(2): 161-168.
[5] HADDADI F, CONG D L, PORTER L, et al. On the effectiveness of different botnet detection approaches[C]// International Conf on Information Security Practice and Experience. Beijing: ACM, 2015:121-135.
[6] WANG J S, LIU F, ZHANG J. Botnet detecting method based on group-signature filter[J]. Journal on Communications, 2010, 31(2): 29-35.
[7] ZHANG J, PERDISCI R, LEE W, et al. Detecting stealthy P2P botnets using statistical traffic fingerprints[J]. Journal of Child Psychology & Psychiatry, 2011, 14(14): 271-282.
[8] ABDULLAH R S, ABDOLLAH M F, NOH Z A M, et al. Preliminary study of host and network-based analysis on P2P botnet detection[C]//TIME-E’: International Conference on Technology, Informatics, Management, Engineering & Environment. Bandung: IEEE, 2013: 105-109.
[9] ZHAO Y. The novel approach of P2P botnet node-based detection and applications[J]. Journal of Chemical and Pharmaceutical Research, 2014, 6(7): 1055-1063.
[10] ZHAO D, TRAORE I, SAYED B, et al. Botnet detection based on traffic behavior analysis and flow intervals[J]. Computers & Security, 2013, 39(4): 2-16.
[11] ZHANG J, PERDISCI R, LEE W, et al. Building a scalable system for stealthy P2P-Botnet detection[J]. IEEE Transactions on Information Forensics & Security, 2014, 9(1): 27-38.
[12] SHARIFNYA R, ABADI M. Dfbotkiller: Domain-flux botnet detection based on the history of group activities and failures in DNS traffic[J]. Digital Investigation, 2015, 12(12): 15-26.
[13]BUCZAK A L, GUVEN E. A survey of data mining and machine learning methods for cyber security intrusion detection[J]. IEEE Communications Surveys & Tutorials, 2015, 18(2): 1153-1176.
[14] YIN C, AWLLA A H, YIN Z, et al. Botnet detection based on genetic neural network[J]. International Journal of Security and Its Applications, 2015, 9(11): 97-104.
[15] CONSTANTINOU F, MAVROMMATIS P. Identifying known and unknown peer-to-peer traffic[C]//IEEE International Symposium on Network Computing & Applications. Cambridge: IEEE, 2006:93-102.
[16] MADHUKAR A, WILLIAMSON C. A longitudinal study of P2P traffic classification[C]//MASM’ 06: 14th IEEE International Symposium on Modeling, Analysis, and Simulation. Monterey: IEEE, 2006: 179-188.
[17] KARAGIANNIS T, BROIDO A, FALOUTSOS M, et al. Transport layer identification of P2P traffic[C]//ACM SIGCOMM Conference on Internet Measurement. Taormina: ACM, 2004: 121-134.
[18] WANG C, ZHOU X, YOU F, et al. Design of P2P traffic identification based on DPI and DFI[C]//CNMT’ 09: Computer Network and Multimedia Technology. Wuhan: IEEE, 2009: 1-4.
[19] BEIGI E B, JAZI H H, STAKHANOVA N, et al. Towards effective feature selection in machine learning-based botnet detection approaches[C]// CNS’ 14: 18th IEEE Conference on Communications and Network Security. San Francisco: IEEE, 2014: 247-255.
編 輯 蔣 曉
Two Stage P2P Botnet Detection Method Based on Flow Similarity
NIU Wei-na1,2, ZHANG Xiao-song1,2, SUN En-bo2, YANG Guo-wu2, and ZHAO Ling-yuan2
(1. Center for Cyber Security, University of Electronic Science and Technology of China Chengdu 611731; 2. School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 611731)
The botnet has been one of the most common threats to the network security since it exploits multiple malicious codes like worm, Trojans, Rootkit, etc. toperform thedenial-of-service attack, send phishing links, and provide malicious services. Peer-to-peer (P2P) botnet is more difficult to be detected compared with IRC, HTTP and other types of botnets because it has typical features of the centralization and distribution. To solve these problems, we propose an effective two-stage traffic classification method to detect P2P botnet traffic based on both non-P2P traffic filtering mechanism and machine learning techniques on conversation features. At the first stage, the non-P2P packages are filtered to reduce the amount of network traffic, according to well-known ports, DNS query, and flow counting. At the second stage, the conversation features based on data flow features and flow similarity are extracted. Finally, the P2P botnet is detected by using Random Forest based on the decision tree model. Experimental evaluations on UNB ISCX botnet dataset shows that our two-stage detection method has a higher accuracy than traditional P2P botnet detection methods.
botnet detection; conversation feature; flow similarity; P2P traffic identification
TP311
A
10.3969/j.issn.1001-0548.2017.06.019
2016-06-28;
2017-03-09
國家自然科學(xué)基金(61572115,61502086,61402080);四川省重大基礎(chǔ)研究課題(2016JY0007)
牛偉納(1990-),女,博士,主要從事網(wǎng)絡(luò)攻擊檢測與軟件脆弱性方面的研究.