胡向東,白 銀,張 峰,林家富,李林樂
(1.重慶郵電大學(xué) 自動(dòng)化學(xué)院,重慶 400065;2.中國(guó)移動(dòng)研究院,北京 100033;3.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
基于SVM的木馬流量特征檢測(cè)方法
胡向東1,白 銀1,張 峰2,林家富1,李林樂3
(1.重慶郵電大學(xué) 自動(dòng)化學(xué)院,重慶 400065;2.中國(guó)移動(dòng)研究院,北京 100033;3.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
針對(duì)木馬能以隱蔽的方式盜取用戶敏感信息、文件資源或遠(yuǎn)程監(jiān)控用戶行為,對(duì)網(wǎng)絡(luò)安全構(gòu)成極大威脅,提出一種基于流量特征的木馬檢測(cè)方法,通過統(tǒng)計(jì)分析服務(wù)器端口有序性、服務(wù)器使用客戶端端口號(hào)、客戶端發(fā)包數(shù)、服務(wù)器端發(fā)包數(shù)等特征,使用支持向量機(jī)(support vector machine, SVM)算法進(jìn)行分類訓(xùn)練并建立基于流量的木馬監(jiān)測(cè)模型;基于流量特征的普遍性和通用性,該方法對(duì)于未知木馬也比較有效。仿真測(cè)試結(jié)果表明,所提出方法具備對(duì)常見木馬或未知木馬的良好檢測(cè)能力,實(shí)驗(yàn)條件下盲檢測(cè)準(zhǔn)確率可達(dá)96.61%。
木馬檢測(cè);流量特征;SVM;特征分析
隨著互聯(lián)網(wǎng)、移動(dòng)通信網(wǎng)和網(wǎng)絡(luò)支付等的快速發(fā)展,木馬作為一種隱蔽且十分有效的網(wǎng)絡(luò)攻擊手段,正在對(duì)網(wǎng)絡(luò)信息安全造成極大威脅,如2016年6月,中國(guó)境內(nèi)近228萬(wàn)臺(tái)主機(jī)被木馬或僵尸程序控制[1],許多電信詐騙行為都是先基于木馬攻擊盜取用戶敏感信息才得以實(shí)現(xiàn)的。由于木馬普遍具有較強(qiáng)的隱蔽性,這為其存在、傳播和運(yùn)行提供了便利。
對(duì)于木馬攻擊的檢測(cè),傳統(tǒng)上多采取木馬特征庫(kù)比對(duì)的方法,具有一定的滯后性和應(yīng)用范圍局限性,且該方法對(duì)新變異的木馬無(wú)效,會(huì)導(dǎo)致較高的漏報(bào)率。木馬通常采用文件隱藏、注冊(cè)表隱藏和進(jìn)程隱藏等技術(shù)達(dá)到隱藏目的[2],但木馬通信總會(huì)產(chǎn)生數(shù)據(jù)流量,基于交換機(jī)鏡像出的數(shù)據(jù)流量特征,對(duì)木馬進(jìn)行檢測(cè)是一種新思路,這種檢測(cè)方法因流量特征分析的普適性而對(duì)未知木馬同樣有效。
木馬作為一種隱蔽性強(qiáng)、攻擊高度有效、威脅和影響十分巨大,且不斷發(fā)展的攻擊技術(shù),受到廣泛關(guān)注;近年來(lái),國(guó)內(nèi)外相關(guān)專家、學(xué)者針對(duì)木馬攻擊,從不同角度提出了一系列木馬檢測(cè)方法,包括基于網(wǎng)絡(luò)通信內(nèi)容、基于物理型硬件和基于數(shù)據(jù)流量等。如吳金龍等[3]針對(duì)未知木馬為核心的高級(jí)持續(xù)性攻擊(advanced persistent threat, APT),提出一種基于分層的多維通信特征木馬檢測(cè)方法,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)數(shù)據(jù)流中木馬數(shù)據(jù)的檢測(cè),但該方法的檢測(cè)效率不高。Jin等[4]通過將路徑延遲參數(shù)與指紋進(jìn)行對(duì)比分析實(shí)現(xiàn)木馬檢測(cè),但該方法對(duì)未知木馬的檢測(cè)效果不明顯。孫海濤等[5]提出基于操作行為對(duì)隧道木馬進(jìn)行檢測(cè),并提取會(huì)話包總數(shù)、會(huì)話總數(shù)據(jù)量、會(huì)話時(shí)長(zhǎng)、會(huì)話平均上傳速度等特征來(lái)建立木馬檢測(cè)模型,存在的問題是該檢測(cè)系統(tǒng)的普適性不高。張曉晨等[6]引入增量學(xué)習(xí)的SVM(support vector machine)分類算法,設(shè)計(jì)具有自適應(yīng)能力的竊取機(jī)密信息類木馬的檢測(cè)系統(tǒng),但該檢測(cè)方法消耗資源較多。丁衛(wèi)球等[7]提出指紋檢測(cè)技術(shù)和深度流量檢測(cè)相結(jié)合的網(wǎng)絡(luò)木馬檢測(cè)方法,其主要不足在于適應(yīng)性較差。陳鑫等[8]采用動(dòng)態(tài)行為攔截技術(shù)與數(shù)據(jù)挖掘相結(jié)合的方法,對(duì)木馬病毒進(jìn)行檢測(cè),該方法的通用性不強(qiáng)。郝增帥等[9]用特征分析和行為監(jiān)控的方法對(duì)未知木馬進(jìn)行檢測(cè),該方法的滯后效應(yīng)較突出。
總體而言,早期的木馬檢測(cè)方法通過提取木馬特征建立特征庫(kù)、基于樣本數(shù)據(jù)與木馬特征匹配進(jìn)行識(shí)別,但隨著木馬的變異和不斷發(fā)展變化,特征庫(kù)匹配方法具有一定的局限性和滯后性。本文在分析傳統(tǒng)木馬檢測(cè)方法利弊基礎(chǔ)上,針對(duì)未知木馬檢測(cè)準(zhǔn)確率低和漏報(bào)率高的問題,從通信流量的角度對(duì)木馬行為特征進(jìn)行分析,提出一種基于SVM的木馬流量特征檢測(cè)方法,基于木馬流量特征的普遍性規(guī)律這種不同于傳統(tǒng)木馬檢測(cè)方法的技術(shù)路徑,提高包括未知木馬在內(nèi)的木馬檢測(cè)的識(shí)別準(zhǔn)確率、降低誤報(bào)率。
木馬行為從通信流量的角度總是會(huì)表現(xiàn)出某些自身固有的特征,這些特征是源自木馬通信時(shí)IP地址對(duì)(源地址和目的地址)間產(chǎn)生的數(shù)據(jù)信息。本文將木馬控制端和被控制端分別視為客戶端和服務(wù)器端,通過對(duì)木馬數(shù)據(jù)流量特征進(jìn)行提取和訓(xùn)練分析,所建立的木馬檢測(cè)模型能將木馬流量從海量的正常流量中區(qū)分出來(lái)。
通過數(shù)據(jù)預(yù)處理,提取到特征F1(服務(wù)器端端口有序性)、特征F2(服務(wù)器端使用客戶端端口數(shù))、 特征F3(客戶端每秒發(fā)包數(shù))、特征F4(服務(wù)器端每秒發(fā)包數(shù))、特征F5(服務(wù)器端每秒主動(dòng)連接客戶端的次數(shù))、特征F6(服務(wù)器端主動(dòng)連接客戶端的次數(shù)的累加值)、特征F7(服務(wù)器端常用發(fā)包種類數(shù))等7個(gè)特征,將這7個(gè)特征組成一個(gè)行列式進(jìn)行輸出存儲(chǔ)。其中,服務(wù)器端端口有序性指的是由于木馬自啟動(dòng)或者被遠(yuǎn)程計(jì)算機(jī)控制啟動(dòng)后,木馬通信則成功建立,會(huì)形成一系列的網(wǎng)絡(luò)會(huì)話,木馬會(huì)按照設(shè)定的程序打開服務(wù)器端端口進(jìn)行通信,并且這些端口號(hào)會(huì)呈現(xiàn)依次遞增的規(guī)律,如實(shí)驗(yàn)中木馬1的端口號(hào)序列為58978 58979 58980 58981 58982 58983 58984;木馬2的端口號(hào)序列為49279 49280 49281 49282 49283 49284 49285。特征F1用最長(zhǎng)有序端口子序列來(lái)描述,有序表現(xiàn)為端口號(hào)依次遞增,如一組服務(wù)器端口號(hào)為{1,3,4,5,7,8,9,10},其中{3,4,5}連續(xù)3個(gè)端口有序,{7,8,9,10}連續(xù)4個(gè)端口有序,則其最長(zhǎng)有序端口子序列數(shù)為4。而正常的通信會(huì)話開放的端口是隨機(jī)的,無(wú)規(guī)律可循。
通過計(jì)算連續(xù)端口個(gè)數(shù)的標(biāo)準(zhǔn)差可以判斷數(shù)據(jù)波動(dòng)大小,標(biāo)準(zhǔn)差σ為
(1)
圖1和圖2分別是數(shù)據(jù)采集器對(duì)正常網(wǎng)頁(yè)通信IP地址對(duì)與木馬通信IP地址對(duì)的流量特征統(tǒng)計(jì)結(jié)果。正常通信使用固定的服務(wù)器端口,而木馬通信使用連續(xù)變化的端口進(jìn)行通信。
圖1 正常連接流量特征Fig.1 Traffic characteristics of normal connection
圖2 異常連接流量特征Fig.2 Traffic characteristics of abnormal connection
為了提高木馬檢測(cè)方法的普適性,特別是對(duì)未知或變異木馬同樣要具有較高的識(shí)別能力,本文提出基于流量的木馬檢測(cè)方法,其基本思想是將木馬控制端視作客戶端,將木馬的被控制端視作服務(wù)器端,利用SVM[10]算法對(duì)提取到的木馬通信的主要特征進(jìn)行訓(xùn)練,包括:服務(wù)器端端口有序性、服務(wù)器使用客戶端端口數(shù)、客戶端每秒發(fā)包數(shù)、服務(wù)器端每秒發(fā)包數(shù)、服務(wù)器端每秒主動(dòng)連接客戶端的次數(shù)、服務(wù)器端主動(dòng)連接客戶端的次數(shù)的累加值、服務(wù)器端發(fā)包常用包長(zhǎng)個(gè)數(shù),將所有關(guān)聯(lián)特征通過SVM學(xué)習(xí),以此優(yōu)化確定每個(gè)特征在木馬檢測(cè)判別系統(tǒng)中的權(quán)重,形成木馬檢測(cè)模型。
2.1 基于SVM的分類學(xué)習(xí)算法
SVM是建立在統(tǒng)計(jì)學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理基礎(chǔ)上的機(jī)器學(xué)習(xí)方法,具備較高的泛化水平和較低的訓(xùn)練誤差。本文利用高斯核SVM來(lái)構(gòu)建木馬流量數(shù)據(jù)分類器系統(tǒng)。給定的木馬訓(xùn)練樣本集為
D={(x1,y1),(x2,y2),…,(xm,ym)},
yi∈{-1,±1}
(2)
(2)式中:x,y均代表提取到的通信流量特征。
用(3)式來(lái)描述劃分超平面:
ωTx+b=0
(3)
(3)式中:ω為法向量,表示超平面的方向;x為提取到的一個(gè)通信流量特征;b為位移項(xiàng),表示超平面和原點(diǎn)間的距離。由ω和b共同決定一個(gè)超平面。樣本空間中任意點(diǎn)x到超平面(ω,b)的距離r為
(4)
(5)式為“支持向量”:
(5)
2個(gè)不同類的支持向量到超平面的距離之和稱為“間距”,即:
(6)
支持向量與間隔如圖3所示。將木馬與非木馬分開的超平面有多種畫法,但是應(yīng)選取位于2類樣本“正中間”的劃分超平面將木馬特征“十”和正常特征“一”區(qū)分開來(lái)。從而構(gòu)建SVM的基本模型,找到具有“最大間隔”的劃分超平面。
圖3 支持向量與間隔Fig.3 Support vector and interval
2.2 核函數(shù)選擇
核函數(shù)的選擇對(duì)SVM分類效果有很大的影響,根據(jù)實(shí)驗(yàn)結(jié)果對(duì)比,本文選擇高斯核函數(shù)。高斯核的帶寬為
(7)
2.3 基于SVM的木馬流量特征檢測(cè)系統(tǒng)
木馬流量檢測(cè)系統(tǒng)框圖如圖4所示。首先采集通過交換機(jī)的鏡像流量,再進(jìn)行特征提取和計(jì)算預(yù)處理,預(yù)處理分為檢測(cè)流量預(yù)處理和訓(xùn)練流量預(yù)處理。預(yù)處理后的訓(xùn)練流量,經(jīng)過SVM進(jìn)行分類訓(xùn)練;而預(yù)處理后的檢測(cè)流量,輸入到檢測(cè)模塊,使檢測(cè)模塊的基于訓(xùn)練模塊的SVM分類學(xué)習(xí)規(guī)則得到不斷更新。
圖4 木馬流量檢測(cè)系統(tǒng)框圖Fig.4 Diagram of Trojans flow detection system
3.1 實(shí)驗(yàn)環(huán)境
為了驗(yàn)證基于流量分析的木馬檢測(cè)系統(tǒng)的有效性,且便于將該方法與傳統(tǒng)特征庫(kù)方法進(jìn)行對(duì)比,搭建如圖5的木馬檢測(cè)實(shí)驗(yàn)環(huán)境。實(shí)驗(yàn)環(huán)境主要由21臺(tái)主機(jī)組成。其中,1臺(tái)檢測(cè)主機(jī),20臺(tái)客戶端主機(jī),且10臺(tái)被植入木馬。
圖5 基于流量的木馬檢測(cè)實(shí)驗(yàn)環(huán)境Fig.5 Experimental system of traffic-based Trojans detection
為增強(qiáng)實(shí)驗(yàn)的真實(shí)性和實(shí)驗(yàn)結(jié)果的說(shuō)服力,實(shí)驗(yàn)中運(yùn)行灰鴿子[11]、冰河[12]、pcshare等典型木馬以產(chǎn)生木馬數(shù)據(jù)流量,實(shí)驗(yàn)計(jì)算機(jī)訪問正常網(wǎng)站以產(chǎn)生正常數(shù)據(jù)流量。通過交換機(jī)的鏡像流量,提取出大量混合了正常數(shù)據(jù)流量和木馬數(shù)據(jù)流量的IP地址對(duì)數(shù)據(jù),形成流量特征訓(xùn)練集,通過SVM算法進(jìn)行分類學(xué)習(xí),進(jìn)而得出優(yōu)化的檢測(cè)模型參數(shù)。
3.2 實(shí)驗(yàn)數(shù)據(jù)采集
按照以下步驟采集實(shí)驗(yàn)數(shù)據(jù)。
1)在實(shí)驗(yàn)室多臺(tái)計(jì)算機(jī)安裝木馬程序,每臺(tái)電腦安裝多個(gè)木馬程序,隨機(jī)進(jìn)行不同的木馬行為操作,實(shí)驗(yàn)室其他電腦也有正常的網(wǎng)絡(luò)流量出入。
2)通過采集交換機(jī)鏡像流量,進(jìn)行數(shù)據(jù)預(yù)處理,形成訓(xùn)練集和檢測(cè)集,判別結(jié)果“1”表示木馬,“0”表示正常,如表1所示。
3)訓(xùn)練集輸入到SVM分類器中進(jìn)行訓(xùn)練分類,不斷訓(xùn)練學(xué)習(xí)形成并更新檢測(cè)規(guī)則,直到檢測(cè)閾值穩(wěn)定。
4)將檢測(cè)集數(shù)據(jù)用不同的分類方法進(jìn)行檢測(cè),對(duì)比檢測(cè)率和誤報(bào)率等常見參數(shù)。
表1 預(yù)處理后特征數(shù)據(jù)列表
3.3 實(shí)驗(yàn)結(jié)果分析
本文利用檢測(cè)率和誤報(bào)率來(lái)評(píng)估木馬檢測(cè)方法的性能。實(shí)驗(yàn)涉及2 000個(gè)流量特征樣本,其中1 200個(gè)作為訓(xùn)練樣本,800個(gè)作為檢測(cè)樣本,對(duì)采集的流量數(shù)據(jù)進(jìn)行檢測(cè),同時(shí),利用Naive Bayes和C4.5分類器構(gòu)建不同的檢測(cè)系統(tǒng),對(duì)比分析實(shí)驗(yàn)結(jié)果如表2所示。
表2 檢測(cè)效果對(duì)比
由表2可知,本文基于SVM的木馬檢測(cè)方法在檢測(cè)率和誤報(bào)率方面相比于其他2種方法均有改善,可取得96.61%的檢測(cè)率與3.57%的誤報(bào)率。
木馬檢測(cè)對(duì)于網(wǎng)絡(luò)信息安全具有重要性。本文通過分析大量木馬通信流量,總結(jié)出表征木馬異常數(shù)據(jù)的流量特征及其描述方法,提出基于SVM的木馬流量特征檢測(cè)方法。基于所搭建的驗(yàn)證實(shí)驗(yàn)系統(tǒng)和仿真測(cè)試結(jié)果表明:與傳統(tǒng)的木馬檢測(cè)方法對(duì)比,本文方法在檢測(cè)準(zhǔn)確率和誤報(bào)率方面均有所改善。
[1] 朱天,郭晶.2016年7月網(wǎng)絡(luò)安全監(jiān)測(cè)數(shù)據(jù)發(fā)布[J].信息網(wǎng)絡(luò)安全,2016(9):288-289. ZHU Tian,GUO Jing.July 2016 safety monitoring data release[J].Information Network Security,2016(9):288-289.
[2] 張健, 舒心. 一種評(píng)估惡意代碼危害性方法的研究[J]. 信息網(wǎng)絡(luò)安全, 2009 (10): 7-9. ZHANG Jian, SHU Xin. A study on the evaluation of the dangerousness of malicious code[J]. Information Network Security, 2009 (10): 7-9.
[3] 吳金龍,石曉飛,許佳,等.基于隨機(jī)森林的分層木馬檢測(cè)技術(shù)研究[J].通信技術(shù),2016,49(4):475-480. WU Jinlong, SHI Xiaofei, XU Jia, et al. Hierarchical detection of trojan behavior based on random forest[J]. Communications Technology, 2016, 49(4): 475-480.
[4] JIN Y, MAKRIS Y. Hardware trojan detection using path delay fingerprint[C]//IEEE International Workshop on Hardware-oriented Security and Trust.[s.l.]:IEEE, 2008: 51-57.
[5] 孫海濤,劉勝利,陳嘉勇,等.基于操作行為的隧道木馬檢測(cè)方法[J].計(jì)算機(jī)工程,2011,37(20):123-126. SUN Haitao, LIU Shengli, CHEN Jiayong, et al. Tunnel trojan detection method based on operation behavior[J]. Computer Engineering, 2011, 37(20):123-126.
[6] 張曉晨,劉勝利,劉龍.網(wǎng)絡(luò)竊密木馬的自適應(yīng)檢測(cè)模型研究[J].計(jì)算機(jī)應(yīng)用研究,2013,30(11):3434-3437. ZHANG Xiaochen, LIU Shenglong, LIU Long. Research on adaptive network theft Trojan detection model application [J]. Application Research of Computers, 2013, 30(11): 3434-3437.
[7] 丁衛(wèi)球. 基于網(wǎng)絡(luò)行為特征的木馬檢測(cè)技術(shù)[D]. 南京:南京郵電大學(xué), 2013: 21-23. DING Weiqiu. A detection technology based on network behavioral characteristics of trojan[D]. Nanjing:Nanjing University of Posts and Telecommunications, 2013:21-23.
[8] 陳鑫. 基于數(shù)據(jù)挖掘的木馬病毒檢測(cè)技術(shù)研究[D].福州:福建師范大學(xué), 2013:32-34. CHEN Xin. Research of data mining based trojan detection[D].Fuzhou:Fujian Normal University,2013:32-34.
[9] 郝增帥, 郭榮華, 文偉平, 等. 基于特征分析和行為監(jiān)控的未知木馬檢測(cè)系統(tǒng)研究與實(shí)現(xiàn)[J]. 信息網(wǎng)絡(luò)安全, 2015 (2): 57-65. HAO Zengshuai, GUO Ronghua, WEN Weiping, et al. Research and implementation on unknown trojan dtection system based on feature analysis and behavior monitoring[J]. Netinfo Security, 2015(2):57-65.
[10] 李振剛, 甘泉.改進(jìn)蟻群算法優(yōu)化SVM參數(shù)的網(wǎng)絡(luò)入侵檢測(cè)模型研究[J].重慶郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2014,26(6):785-789. LI Zhengang, GAN Quan. Network intrusion detection model based on MACO-SVM[J]. Chongqing University of Posts and Telecommunications: Natural Science Edition, 2014,26(6):785-789.
[11] 榮彥, 賀惠萍, 林夢(mèng)華, 等. 基于 Authorwar的灰鴿子木馬實(shí)驗(yàn)仿真軟件的設(shè)計(jì)與實(shí)現(xiàn)[J]. 實(shí)驗(yàn)技術(shù)與管理, 2014, 31(1): 94-97. RONG Yan, HE Huiping, LIN Menghua, et al. Design and implementation of gray pigeons trojan experimental simulation software based on Authorwar[J]. Experimental Technology and Management, 2014, 31(1): 94-97.
[12] 徐國(guó)天. 基于 “行為模擬” 的木馬線索調(diào)查方法[J]. 刑事技術(shù), 2014, 39(2): 19-22. XU Guotian. Trojan investugation method based on behavior simulation[J]. Criminal Technology, 2014, 39(2): 19-22.
(編輯:王敏琦)
Trojan traffic characteristic detection methods based on SVM
HU Xiangdong1, BAI Yin1, ZHANG Feng2, LIN Jiafu1, LI Linle3
(1.College of Automation,Chongqing University of Posts and Telecommunications,Chongqing 400065,P.R.China;2.Research Institute of China Mobile, Beijing 100033,P.R.China; 3.College of Telecommunication and Information Engineering,Chongqing University of Posts and Telecommunications,Chongqing 400065,P.R.China)
Trojans can steal sensitive user information or file resources, or remotely monitor of user behavior in a hidden way, which poses a great threat to network security, therefore, the Trojan detection methods based on traffic characteristics is proposed, and the support vector machine (SVM) algorithm was used (for classification by statistically analyzing such characteristics as the ports’ order of a server, the client’s port number used by server, the data packets number from client, and the of data packets number from server, etc. The optimal detection parameters are obtained and the traffic-based Trojan monitoring model is built according to the training results. Because of the generalization and universality of traffic characteristics, the proposed methods also have some effects on those unknown Trojans. The simulation results show that the proposed methods have good detection ability for either common Trojans or unknown Trojans, and the blind detection accuracy rate can be up to 96.61% under certain experiment conditions.
Trojan detection; traffic characteristic; support vector machine; feature analysis
10.3979/j.issn.1673-825X.2017.02.015
2017-01-08
2017-03-16 通訊作者:胡向東 huxd@cqupt.edu.cn
教育部—中國(guó)移動(dòng)聯(lián)合研究基金(MCM20150202);重慶市教委科研項(xiàng)目(KJ1602201)
Foundation Items:The Joint Research Foundation of the Ministry of Education of the People’s Republic of China and China Mobile(MCM20150202);The Science and Technology Project Affiliated to Chongqing Education Commission(KJ1602201)
TP309.5
A
1673-825X(2017)02-0240-05
胡向東(1971-),男,四川廣安人,博士,教授,主要研究方向?yàn)榫W(wǎng)絡(luò)化測(cè)控及其信息安全、物聯(lián)網(wǎng)與智慧空間安全、復(fù)雜系統(tǒng)建模仿真與優(yōu)化等。E-mail: huxd@cqupt.edu.cn。
白 銀(1991-),男,重慶渝北人,碩士研究生,主要研究方向?yàn)榘踩ㄐ排c控制。E-mail:baiyincqupt@163.com。
張 峰(1977-),男,湖北孝感人,博士,高級(jí)工程師,主要研究方向?yàn)榫W(wǎng)絡(luò)與信息安全技術(shù)應(yīng)用。
林家富(1989-),男,四川成都人,碩士研究生,主要研究方向?yàn)槲锫?lián)網(wǎng)安全。 李林樂(1991-),女,安徽合肥人,碩士研究生,主要研究方向?yàn)橐苿?dòng)通信安全。