成淑萍,譚 良
(1.四川文理學(xué)院計算機學(xué)院,四川達州635001;2.四川師范大學(xué)計算機學(xué)院,成都610068;
3.中國科學(xué)院計算技術(shù)研究所,北京100190)
基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測模型
成淑萍1,譚 良2,3
(1.四川文理學(xué)院計算機學(xué)院,四川達州635001;2.四川師范大學(xué)計算機學(xué)院,成都610068;
3.中國科學(xué)院計算技術(shù)研究所,北京100190)
針對利用先驗知識不能檢測新型或變異僵尸網(wǎng)絡(luò)(Botnet)的現(xiàn)狀,提出一種基于網(wǎng)絡(luò)流量的Botnet動態(tài)檢測模型。通過聚類分析通信流量并完成關(guān)聯(lián)分析,以鑒定bot之間的類似通信和惡意行為模式。該模型具有特征庫更新和檢測模型生成的動態(tài)性,并且可以處理來自不同僵尸網(wǎng)絡(luò)的數(shù)據(jù),其檢測體系結(jié)構(gòu)與協(xié)議和Botnet的先驗知識無關(guān)。實驗結(jié)果驗證了該模型的有效性和準確性。
網(wǎng)絡(luò)安全;僵尸網(wǎng)絡(luò);惡意代碼;網(wǎng)絡(luò)流量;動態(tài)檢測
僵尸網(wǎng)絡(luò)(Botnet)是通過C&C通信頻道控制的一群相互協(xié)作惡意軟件實體。一個Botnet的基本特性是bots以類似或者相關(guān)的方式通過一些C&C服務(wù)器或者節(jié)點進行通信,完成惡意攻擊活動。自從僵尸網(wǎng)絡(luò)的發(fā)現(xiàn)、監(jiān)測和預(yù)防成為國內(nèi)外研究者所共同關(guān)注的熱點后,國內(nèi)外網(wǎng)絡(luò)安全的研究專家和學(xué)者都從不同的角度對僵尸網(wǎng)絡(luò)的檢測與追蹤進行了研究?;诹髁烤垲惙治鼋┦W(wǎng)絡(luò)檢測機制是通過檢測僵尸網(wǎng)絡(luò)一些異常網(wǎng)絡(luò)流量影響因子,如很高的網(wǎng)絡(luò)延遲、巨大的流量、不尋常端口的流量和異常的系統(tǒng)行為等都代表網(wǎng)絡(luò)中有惡意代碼的存在[1]。
目前的僵尸網(wǎng)絡(luò)檢測方法存在著檢測對象單一性、誤報率高、漏報率高、效率低等問題,本文在現(xiàn)有僵尸網(wǎng)絡(luò)檢測的模型結(jié)構(gòu)中加入特征庫,并且使特征庫能動態(tài)更新,對不同僵尸網(wǎng)絡(luò)可以動態(tài)生成特征模型,從而提高檢測效率,降低誤報率和漏報率。
命令控制機制是所有類型的僵尸網(wǎng)絡(luò)核心,用于實現(xiàn)信息的交互、接收和執(zhí)行控制者發(fā)出的指令,再將執(zhí)行結(jié)果信息反饋給控制者。針對這點可以采用流量分析的方法來進行有效檢測。文獻[2]針對基于IRC協(xié)議的僵尸網(wǎng)絡(luò)的特征,提出一種主動監(jiān)視網(wǎng)絡(luò)流量,來尋找可疑的IRC昵稱、IRC服務(wù)器和不常用的端口的檢測方法。Strayer針對基于IRC協(xié)議的僵尸網(wǎng)絡(luò)將流量分析分為2步:(1)將IRC通信流量從正常的網(wǎng)絡(luò)中分離; (2)將Botnet的C&C流量從正常的IRC流量中分離,但其只對基于IRC協(xié)議的僵尸網(wǎng)絡(luò)起作用。文獻[3]針對惡意代碼感染主機的5個會話階段,提出了一種感染對話相關(guān)策略,通過發(fā)現(xiàn)在感染過程中的通信序列來檢測出被僵尸程序成功感染的主機,并在BotHunter的網(wǎng)絡(luò)監(jiān)視系統(tǒng)中運用了該策略。該研究成果有助于理解惡意軟件感染的生命周期從而找到有效的檢測方法。文獻[4]在本地網(wǎng)絡(luò)中沒有僵尸網(wǎng)絡(luò)命令控制的服務(wù)器的地址和特征等先驗信息的前提下,采用基于異常網(wǎng)絡(luò)流量的方法來檢測和鑒定僵尸網(wǎng)絡(luò)的命令控制頻道,這種方法可以識別網(wǎng)絡(luò)中被感染的主機和C&C服務(wù)器。并將這種方法運用到BotSniffer的原型系統(tǒng)的實現(xiàn)中,用了很多真實世界的網(wǎng)絡(luò)跟蹤,得到的評估結(jié)果是BotSniffer擁有高準確率和低錯誤率的檢測出真實的僵尸網(wǎng)絡(luò)。但 BotSniffer只針對基于IRC和HTTP協(xié)議僵尸網(wǎng)絡(luò)的消息進行了檢測,對于新型基于 P2P技術(shù)的僵尸網(wǎng)絡(luò)就失效了。文獻[5]在BotMiner中將數(shù)據(jù)挖掘技術(shù)引入到基于流量分析的僵尸網(wǎng)絡(luò)的檢測方法中,使用流量聚類分析,得到相似的通信流量。文獻[6]在研究P2P僵尸網(wǎng)絡(luò)運行協(xié)議和機制的基礎(chǔ)上,結(jié)合P2P僵尸網(wǎng)絡(luò)建立連接的主機IP地址不是靜態(tài)地址就是動態(tài)地址,提出了一種基于連接成功率的檢測算法,但在大量的流量分析的效率和準確率方面存在缺陷。文獻[7]在基于節(jié)點連接分布性和突發(fā)性的特征,過濾非P2P的節(jié)點,進而根據(jù)對稱度值采用K均值聚類來發(fā)現(xiàn)P2P群,最后利用流行為的相似性檢測來確認。
針對目前已有僵尸網(wǎng)絡(luò)檢測工具對協(xié)同活動的僵尸網(wǎng)絡(luò)缺少信息共享和配合,從而產(chǎn)生漏報和誤報的現(xiàn)象,文獻[8]提出一個層次協(xié)同模型,在信息、特征及決策3個級別上進行信息交互與協(xié)作。同時針對已有檢測體結(jié)構(gòu)的特征提取靈活性不好、缺少協(xié)同功能和協(xié)同方式單一等缺點,基于該層次協(xié)同模型,該文構(gòu)建了Bot_CODA——一個新的僵尸網(wǎng)絡(luò)協(xié)同檢測體系結(jié)構(gòu)。但該體系結(jié)構(gòu)只是一個原型系統(tǒng),并沒有在真實的網(wǎng)絡(luò)中運行,其有效性、效率及準確度也沒進行驗證。文獻[9]提出了一個基于通信特征提取和IP聚集的僵尸網(wǎng)絡(luò)相似性度量模型,通過在國家網(wǎng)絡(luò)安全監(jiān)測平臺獲取到的僵尸網(wǎng)絡(luò)IRC服務(wù)器與bot的C&C通信數(shù)據(jù);然后提取僵尸網(wǎng)絡(luò)的通信流量特征、IP聚集和估算bot重疊率等度量指標,分別分析每個度量指標的優(yōu)缺點;最后合并這些指標,提出了僵尸網(wǎng)絡(luò)相似性度量模型,并用實驗驗證了其有效性和準確率。但該模型在計算通信特征曲線距離采用的是歐式距離,沒有考慮曲線形狀、均值、方等相關(guān)性;相似性度量模型采用的是沒有考慮棄真和取偽錯誤率及其方差的權(quán)值系數(shù)。
目前已有異常網(wǎng)絡(luò)流量分析技術(shù)的檢測方法大多是要在基于先驗知識的基礎(chǔ)上或者協(xié)議相關(guān),一旦出現(xiàn)新型的僵尸網(wǎng)絡(luò)就失效了,或者只集中在一個特殊的指揮和控制的協(xié)議(IRC,HTTP)和結(jié)構(gòu)(中央集中)的僵尸網(wǎng)絡(luò),當僵尸網(wǎng)絡(luò)的命令控制協(xié)議和結(jié)構(gòu)發(fā)生改變其檢測方法就會失效,或者就依靠其他外部組件(蜜網(wǎng)等)來協(xié)同工作。而且各個檢測部署點之間沒有信息交流,就不能共享信息,每遇到一個新的僵尸網(wǎng)絡(luò)就必須完成所有的檢測步驟,因此減緩了檢測的效率。
本文在BotSniffer[4]的檢測機制中加入了特征庫,采用網(wǎng)絡(luò)流量聚類分析,提出了一個新的檢測模型——基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測模型。該模型的結(jié)構(gòu)體系具有3個動態(tài)特性:(1)特征庫更新的動態(tài);(2)檢測模型生成的動態(tài);(3)處理的網(wǎng)絡(luò)流量可以來自于動態(tài)的僵尸網(wǎng)絡(luò),其分別表現(xiàn)在該體系結(jié)構(gòu)的入口網(wǎng)絡(luò)流量、客戶機的監(jiān)測引擎和服務(wù)器處理引擎的特征庫的管理模塊,這3個動態(tài)特性使檢測平臺能達到檢測出不同的僵尸網(wǎng)絡(luò),并能在不同的處理階段加快基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)檢測的處理速度。
圖1展示了基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測平臺的體系結(jié)構(gòu),該平臺由客戶端和服務(wù)器2個部分組成。其中客戶端分為預(yù)處理、消息響應(yīng)檢測模塊、惡意行為響應(yīng)檢測模塊、關(guān)聯(lián)引擎、特征庫更新模塊和產(chǎn)生報告6個組件構(gòu)成;服務(wù)器由聚類分析、關(guān)聯(lián)分析和特征庫管理模塊3個組件構(gòu)成。
圖1 基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測平臺體系結(jié)構(gòu)
3.1 客戶端模塊
3.1.1 預(yù)處理
預(yù)處理主要負責過濾不相關(guān)的網(wǎng)絡(luò)流量,以減少網(wǎng)絡(luò)流量負載和提高檢測平臺后續(xù)的處理效率。在一定時段內(nèi)捕獲到的局域網(wǎng)出入的網(wǎng)絡(luò)流量的數(shù)目是海量的,這為后續(xù)的處理會增加很多資源的消耗,增加處理的時間。為此本文在預(yù)處理模塊的工作分為2步:基礎(chǔ)過濾和白名單過濾;基礎(chǔ)過濾是過濾那些沒有建立連接的流量和目的IP地址不可能是被感染的僵尸網(wǎng)絡(luò)服務(wù)器(如新浪、雅虎、Google等知名網(wǎng)站的服務(wù)器),黑名單為該局域網(wǎng)內(nèi)的被懷疑的主機或者是處于重要位置的主機。
3.1.2 網(wǎng)絡(luò)流量分析
網(wǎng)絡(luò)流量分析主要是為通信流量分析和行為響應(yīng)模塊分析提供所需要的數(shù)據(jù),并先對數(shù)據(jù)進行一個提前處理,再次減少數(shù)據(jù)處理的工作量,在通信流量檢測模塊中,本文首先采用流量監(jiān)控是在檢查網(wǎng)絡(luò)流量中檢測出一組相類似行為和通信模式的主機。因此,就捕獲網(wǎng)絡(luò)流量和記錄每一條數(shù)據(jù)流的一些特別的信息(源IP地址、目的IP地址、源端口、目的端口、持續(xù)時間、通信協(xié)議、數(shù)據(jù)包數(shù)量和包的字節(jié)數(shù))。
本文使用抓包工具Omnipeek來監(jiān)控流量和記錄下所需要的信息,然后把這個信息插入到資源庫中去,{fi}(i=1,2,…,n)是網(wǎng)絡(luò)流量的記錄,每一個fi代表一條網(wǎng)絡(luò)流量。流量監(jiān)控肯定不能一次性全部持續(xù)下去,否則即使用再好的配套硬件設(shè)施和開發(fā)出再好的的配套軟件都完成不了如此海量的數(shù)據(jù),因此,本文把監(jiān)控時間分成段,可以隨意安排一個時間段的時間長度,把每個時間段的監(jiān)控數(shù)據(jù)都保存下來。
3.1.3 消息響應(yīng)檢測模塊
消息響應(yīng)檢測模塊主要工作對象是捕獲的網(wǎng)絡(luò)流和記錄信息,這些信息是網(wǎng)絡(luò)中是“誰跟誰對話”。在前面產(chǎn)生的記錄信息庫中,在這部分只提取出局域網(wǎng)外向局域網(wǎng)內(nèi)發(fā)起的基于TCP和UDP協(xié)議的連接或者通信的網(wǎng)絡(luò)流,每條網(wǎng)絡(luò)流量記錄包括源IP地址、目的IP地址、源端口、目的端口、持續(xù)時間、通信協(xié)議、數(shù)據(jù)包數(shù)量和包的字節(jié)數(shù)。
在網(wǎng)絡(luò)流量分析中記錄了多個時間段監(jiān)控的流量中,現(xiàn)在就把所有記錄的n條數(shù)據(jù)流量中有相同的源IP地址,目的IP地址和相同協(xié)議(TCP或者UDP)都被標記為一個同類,分別利用式(1)將{fi}歸的同類計算出平均每秒字節(jié)數(shù)(nbps)、平均每包字節(jié)(nbpp)和平均每秒包數(shù)(npps)。
接下來將nbps、nbpp和npps作為3個新值,加上前一步標記為同類數(shù)據(jù)流的源IP地址和目的IP地址插入到另外一個相似的流量資料庫。因此,在指定的時間段,可以得到一組data:{di}(i=1,2,…,m)這些data中每一條都有相同的源IP地址、目的IP地址、協(xié)議。
正如上文前面提到的,Bots如果屬于同一個僵尸網(wǎng)絡(luò),它們會有相類似的通信流量和行為響應(yīng)模式,特別是在它們想從BotMasters更新命令、數(shù)據(jù)或者攻擊一個目標,這種相似的模式就更為明顯。
3.1.4 行為響應(yīng)檢測模塊
行為響應(yīng)監(jiān)視器主要分析對象是捕獲的網(wǎng)絡(luò)流和記錄信息是“在做什么”,它通過監(jiān)控局域網(wǎng)向外的網(wǎng)絡(luò)流量,能夠檢測出局域網(wǎng)內(nèi)主機可能正執(zhí)行的惡意行為,如掃描活動(應(yīng)用在惡意代碼的傳播或DoS攻擊)[10]、垃圾郵件[11]、二進制下載(應(yīng)用在惡意代碼的更新)和嘗試連接(應(yīng)用在惡意代碼的傳播或者攻擊)[12],這些是最常見的僵尸網(wǎng)絡(luò)能控制他的受控主機會執(zhí)行的惡意活動。同樣本文在前面產(chǎn)生的記錄信息中,提取出局域網(wǎng)外向局域網(wǎng)內(nèi)發(fā)出的基于TCP和UDP協(xié)議的連接或者通信網(wǎng)絡(luò)流,為下一步的行為聚類分析提供數(shù)據(jù)。
目前對行為的檢測的研究工作已經(jīng)有很多成功和可用的成果。其中,Botminer[5]檢測系統(tǒng)的行為響應(yīng)數(shù)據(jù)聚類分析能對目前所存在的大多數(shù)惡意行為進行分析,本文研究就直接采用了其結(jié)構(gòu)和方法。
Botminer結(jié)構(gòu)如圖2所示,在對于可能完成的惡意行為列表中,首先按照它們集群的活動類型(如掃描、發(fā)送垃圾郵件、惡意代碼更新等)進行分類。這是第一層的聚類,然后是針對每類的惡意行為的具體特征進行聚類。對于掃描行為包括掃描端口、掃描目標等,掃描端口具體特征是如果2個主機掃描同一個端口就把它們歸為一類,掃描目標具體特征是掃描的目標主機是同一臺主機或者同一個子網(wǎng);對于發(fā)送垃圾郵件的行為的聚類依據(jù)是如果2個主機的SMTP的連接目的地址是高度重疊就將他們聚在一起,對于此Bot可以被配置使用不同SMTP服務(wù)器來逃避檢測,進一步可以考慮通過捕獲整個SMTP服務(wù)器的流量來得到垃圾郵件的內(nèi)容來進行檢測,但這樣工作量就增大不少,所以本文暫時只考慮前一種方法;對于惡意代碼更新行為的聚類依據(jù)是(如果)2臺主機下載相類似二進制數(shù)據(jù), BotSniffer中的一個距離函數(shù)可以實現(xiàn)計算出2個二進制文件的任何字符或者字符串之間的距離。在目前的實現(xiàn)中,本文根據(jù)不同的掃描端口進行掃描行為的聚類,對于垃圾郵件活動依據(jù)是一起執(zhí)行濫發(fā)郵件所有主機。
圖2 BotMiner的行為響應(yīng)數(shù)據(jù)聚類分析結(jié)構(gòu)
3.1.5 關(guān)聯(lián)分析
所謂關(guān)聯(lián)分析模塊就是把從通信流量分析和行為響應(yīng)的檢測2個模塊得到的數(shù)據(jù)進行分析,來判定一個主機是否是僵尸受控機,或者屬于某個僵尸網(wǎng)絡(luò)。該模塊的主要目的是在這2個類群之間找出聯(lián)系,從而為證明該主機屬于某個僵尸網(wǎng)絡(luò)提供更強的檢測依據(jù)。
利用式(4)計算得出權(quán)值后,就需要設(shè)定一個閾值λ作為判斷值,當S(hi)>λ,S(hj)>λ,hi和hj同屬于一個通信流量流類,則認定這2臺主機屬于一個僵尸網(wǎng)絡(luò)。
3.1.6 特征庫管理模塊
特征庫管理模塊主要包括兩方面的工作:(1)特征庫的更新工作,包括2類更新:第1類是將客戶端檢測出的結(jié)果的通信流量特征存入特征庫中,第2類就是從服務(wù)器端更新其他客戶端檢測到的而在自己的特征庫中沒有的僵尸網(wǎng)絡(luò)的特征數(shù)據(jù); (2)在檢測過程中為檢測結(jié)果提供已有特征信息數(shù)據(jù)進行對比,以便快速得到檢測結(jié)果。
3.2 服務(wù)器模塊
服務(wù)器模塊主要就是特征庫管理模塊,主要負責將客戶端上傳的特征數(shù)據(jù)與特征庫中現(xiàn)有的特征數(shù)據(jù)進行比較,如果存在就不加入特征庫,否則添加一條新的記錄,同時向各個客戶端發(fā)起要求更新的命令。客戶端的特征管理模塊在接收到更新命令后就在客戶端空閑的時候進行更新,這樣不僅能減輕服務(wù)器的壓力,也能提高客戶端檢測的利用率。它的主要作用是使各個客戶檢測端能夠合作共享信息實現(xiàn)協(xié)同檢測,提高檢測效率。
4.1 部署
按照計算機網(wǎng)絡(luò)的作用范圍,檢測平臺的網(wǎng)絡(luò)部署有3種方法:廣域網(wǎng)部署,城域網(wǎng)部署和局域網(wǎng)部署。其中,廣域網(wǎng)部署對整個網(wǎng)絡(luò)的流量進行監(jiān)控是對研究分析僵尸網(wǎng)絡(luò)是最有用的,但這樣的部署會有高昂的代價,還要各個網(wǎng)絡(luò)運營商的相互協(xié)助。而且對后期的分析處理帶來更多的工作,這對平臺的可行性不太大。因此,在檢測平臺的網(wǎng)絡(luò)部署中選擇了局域網(wǎng)部署連接服務(wù)器,進行聯(lián)動部署和綜合檢測,從而達到實現(xiàn)廣域網(wǎng)部署的檢測效果。
針對基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測平臺的特點,設(shè)計了一個基于局域網(wǎng)的檢測平臺網(wǎng)絡(luò)部署結(jié)構(gòu),僵尸網(wǎng)絡(luò)所產(chǎn)生的通信流量都要經(jīng)過網(wǎng)絡(luò)的三層架構(gòu)設(shè)備,最后達到僵尸主機或者攻擊目標主機,核心層的數(shù)據(jù)通信量太大,如果在核心層上部署檢測客戶端的話,所在的主機或者服務(wù)器的工作負荷將會相應(yīng)的大,工作的效率將受到影響。因此本文采用分散部署、集中控制的思路[13-14],對僵尸網(wǎng)絡(luò)所產(chǎn)生的異常流量采取綜合治理。具體部署結(jié)構(gòu)如圖3所示。
圖3 網(wǎng)絡(luò)部署結(jié)構(gòu)
4.2 實施
在僵尸網(wǎng)絡(luò)平臺的搭建過程中,本文采用風云僵尸網(wǎng)絡(luò),第一步在僵尸程序的傳播傳染過程,沒有采用偽裝、社會工程學(xué)等方式進行傳播,而是直接把僵尸網(wǎng)絡(luò)生成器生成的控制器端和server分別發(fā)送給主機,登錄控制器端設(shè)置好監(jiān)聽端口開始監(jiān)聽,當收到server.exe程序的主機執(zhí)行后,就會被控制器監(jiān)聽到,受控主機通過不同端口連接到控制器,并等候命令。
受控主機的情況如圖4所示,顯示有受控主機的IP地址/端口、計算機名、所在地域、操作系統(tǒng)和狀態(tài)等參數(shù)。
圖4 僵尸網(wǎng)絡(luò)受控主機的情況
首先利用構(gòu)建好的僵尸網(wǎng)絡(luò)中的受控主機向IP地址222.196.190.25發(fā)起了攻擊,然后在Omnipeek中設(shè)定好捕捉流量的條件,在僵尸網(wǎng)絡(luò)發(fā)起攻擊的同時也開始捕捉,得到僵尸主機發(fā)起攻擊時的流量數(shù)據(jù),用于下文的實驗數(shù)據(jù)分析。
實驗數(shù)據(jù)分析首先把攻擊過程中捕獲到的數(shù)據(jù)導(dǎo)入到原型系統(tǒng)中進行網(wǎng)絡(luò)流量分析,部分數(shù)據(jù)如表1所示,其次是預(yù)處理,把不可能是僵尸網(wǎng)絡(luò)的數(shù)據(jù)過濾掉,處理的結(jié)果如表2所示,再次是計算主機參數(shù),如表3所示,分別計算出捕獲流量的每臺計算機的主機參數(shù),然后利用這些主機參數(shù)計算出其特征參數(shù),如表4所示,分別得到 IP地址222.196. 190.19和222.196.190.58向攻擊目標222.196.190.25特征參數(shù),如果系統(tǒng)中已經(jīng)有該僵尸網(wǎng)絡(luò)的特征參數(shù)值,就可以直接得出檢測結(jié)果,如圖5所示。其中,實線表示IP地址為222.196.190.19的特征參數(shù),虛線是特征庫中風云僵尸網(wǎng)絡(luò)的特征參數(shù),兩者之間的距離小于閾值1,就成功檢測出IP地址為222.196.190.19屬于風云僵尸網(wǎng)絡(luò)。閾值的取定是一個很復(fù)雜的問題,在這里所得到的特征參數(shù)進行歸一化后,如果2組特征參數(shù)的距離小于1,兩者之間的相似度大。因此,本文將閾值設(shè)定為1。
表1 Ominipeek捕獲的部分數(shù)據(jù)
表2 通過預(yù)處理的基礎(chǔ)數(shù)據(jù)
表3 主機參數(shù)
表4 不同主機的特征參數(shù)
如果特征庫中沒有相類似的特征,就按特征參數(shù)對所有的計算機進行歸類,圖6中就是由源IP地址為222.196.190.19和源IP地址為222.196.190.58的特征參數(shù)對比,圖中的兩線的距離小于閾值1就歸為一類;面與源IP地址222.196.190.22的距離大于1就不是一類。再把該數(shù)據(jù)與正在執(zhí)行的攻擊行為檢測到的數(shù)據(jù)進行關(guān)聯(lián)計算,得出源IP地址為222.196.190.19關(guān)聯(lián)計算值超過閾值。得出源IP地址為222.196.190.19為僵尸網(wǎng)絡(luò),并且可判定與222.196.190.19為一類的計算機都為該類僵尸網(wǎng)絡(luò)。但此時不能判定出為何種僵尸網(wǎng)絡(luò)。
圖5 特征參數(shù)對比1
圖6 特征參數(shù)對比2
對改進以后的僵尸網(wǎng)絡(luò)動態(tài)檢測平臺與改進之前的檢測系統(tǒng)對風云僵尸網(wǎng)絡(luò)進行4次檢測。在檢測效率方面,每次花費的時間如表5所示,從表中可以看出兩者第一次檢測的時間是相同的,但第2次以后的檢測每次所花時間,改進之后比改進之前的系統(tǒng)少用了90%,提高了檢測效率;在檢測準確率方面,其中檢測誤檢率為3.12%,漏檢率為6.25%,在準確率上還有待進一步的提高。
表5 改進前后檢測系統(tǒng)的檢測時間對比 s
經(jīng)過實驗的測試,得到了以下結(jié)果:
(1)檢測平臺正常運行,能夠訪問數(shù)據(jù)庫,按照檢測流程工作,正常顯示界面,但在處理十萬條以上的數(shù)據(jù)記錄時會在某些處理的地方出現(xiàn)一些異?,F(xiàn)象,這將是下一步的改進工作之一。
(2)能對真實的網(wǎng)絡(luò)攻擊的通信流量進行提取特征,并進行歸類。
(3)在特征庫沒有特征數(shù)據(jù)的情況下,對于風云僵尸能夠提取出檢測模型,并加入到客戶端的特征庫中。
(4)第2次檢測同一個僵尸網(wǎng)絡(luò)時,能提高客戶端和服務(wù)器特征管理模塊的工作效率和準確率。
本文對僵尸網(wǎng)絡(luò)工作過程中產(chǎn)生的網(wǎng)絡(luò)流量進行分析,在研究現(xiàn)有檢測機制的存在問題的基礎(chǔ)上,提出了一種基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測平臺,實現(xiàn)了三動態(tài)性來完善現(xiàn)在檢測機制,并為其設(shè)計了檢測平臺的網(wǎng)絡(luò)部署結(jié)構(gòu);同時搭建了僵尸網(wǎng)絡(luò)檢測環(huán)境,模擬僵尸網(wǎng)絡(luò)活動過程,對其進行網(wǎng)絡(luò)流量監(jiān)測,提取相關(guān)信息,用以檢測平臺的測試,并對測試結(jié)果數(shù)據(jù)進行了分析。
下一階段還需要注重以下方面的工作:(1)完善行為響應(yīng)模塊中行為類型的檢測功能;(2)完善原型系統(tǒng)功能以達到檢測平臺的真正目的;(3)在真實的網(wǎng)絡(luò)環(huán)境中進行測試;(4)改進平臺,提高檢測結(jié)果的準確性。
[1] Bacher P,Holz T,Kotter M,et al.Know Your Enemy: Tracking Botnets[J/OL].[2013-09-15].http://www.honeynet.org/papers/bots.
[2] Goebel J.Rishi:Identify Bot Contaminated Hosts by IRC Nickname Evaluation[C]//Proceedings of HotBots'07.Berkeley,USA:USENIX,2007:47-56.
[3] Gu Guofei,Porras P,Yegneswaran V,et al.Bothunter: Detecting Malware Infection Through IDS-driven Dialog Correlation[C]//Proceedings of Security'07.[S.l.]: USENIX,2007:167-182.
[4] Gu Guofei,Zhang Junjie,Lee W.BotSniffer:Detecting Botnet Command and Control Channels in Network Traffic[C]//Proceedings of NDSS'08.San Diego, USA:[s.n.],2008:234-251.
[5] Gu Guofei,Perdisci R,Zhang Junjie,et al.BotMiner: Clustering Analysis of Network Traffic for Protocol-and Structure Independent Botnet Detection[C]//Proceedings of USENIX Security'08.[S.l.]:USENIX,2008:139-154.
[6] 劉建波.基于流量分析的P2P僵尸網(wǎng)絡(luò)檢測[J].計算機與數(shù)字工程,2011,39(3):90-91.
[7] 劉 丹,李毅超,胡 躍.多階段過濾的P2P僵尸網(wǎng)絡(luò)檢測方法[J].計算機應(yīng)用,2010,30(12):3355-3356.
[8] 王海龍,胡 寧.Bot_CODA:僵尸網(wǎng)絡(luò)協(xié)同檢測體系結(jié)構(gòu)[J].通信學(xué)報,2009,30(10A):15-22.
[9] 李潤恒,王明華.基于通信特征提取和IP聚集的僵尸網(wǎng)絡(luò)相似性度量模型[J].計算機學(xué)報,2010,33(1): 45-54.
[10] Collins M,Shimeall T,Faber S,et al.Using Uncleanliness to Predict Future Botnet Addresses[C]//Proceedings of ACM/USENIX Internet Measurement Conference.[S.l.]: ACM Press,2007:91-102.
[11] Ramachandran A,Feamster N.Understanding the Network-level Behavior of Spammers[C]//Proceedings of ACM SIGCOMM'06.[S.l.]:ACM Press,2006: 291-302.
[12] Zhuge J,Holz T,Han Xinhui,et al.Characterizing the IRC-based Botnet Phenomenon[R].Peking University& University of Mannheim,Technical Report:TR-2007-010,2007.
[13] 馮宗彬,時 劍,黃國慶,等.一種新的P2P僵尸網(wǎng)絡(luò)綜合防御系統(tǒng)框架[J].軍事通信技術(shù),2010,31(l): 66-71.
[14] 謝文彪.基于Agellt協(xié)作機制的分布式入侵檢測組織結(jié)構(gòu)研究[D].長沙:中南大學(xué),2006.
編輯 金胡考
Dynamic Detection Model in Botnet Based on Network Traffic
CHENG Shuping1,TAN Liang2,3
(1.College of Computer,Sichuan University of Arts and Science,Dazhou 635001,China;
2.College of Computer,Sichuan Normal University,Chengdu 610068,China;
3.Institute of Computing Technology,Chinese Academy of Sciences,Beijing 100190,China)
For the status quo that the Botnet detection of a priori knowledge to get the matching and protocol-related are unable to be suitable for new or mutated Botnet detection,this paper proposes a dynamic Botnet detection model based on network traffic.By using clustering,it analyzes traffic and completes the correlation analysis to identify similar between bot communication and malicious behavior patterns.The test architecture has nothing to do with the agreement and Botnet prior knowledge.The model has three dynamic characteristics,such as the characteristics of library updated,detection model generation,and handling the network traffic from the dynamic Botnet.Finally,the effectiveness and the accuracy are verified by the experimental data.
network security;Botnet;malicious code;network flow;dynamic detection
1000-3428(2014)11-0106-07
A
TP309
10.3969/j.issn.1000-3428.2014.11.021
成淑萍(1988-),女,助教、碩士,主研方向:網(wǎng)絡(luò)安全;譚 良,教授、博士。
2013-09-12
2013-12-25E-mail:csp16850@163.com
中文引用格式:成淑萍,譚 良.基于網(wǎng)絡(luò)流量的僵尸網(wǎng)絡(luò)動態(tài)檢測模型[J].計算機工程,2014,40(11):106-112.
英文引用格式:Cheng Shuping,Tan Liang.Dynamic Detection Model in Botnet Based on Network Traffic[J].Computer Engineering,2014,40(11):106-112.