程永新,張德治,廖竣鍇,胡華鵬
(中國(guó)電子科技集團(tuán)公司第三十研究所,四川 成都 610041)
隨著信息社會(huì)的不斷發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷增多,網(wǎng)絡(luò)安全問(wèn)題越來(lái)越得到重視。越來(lái)越多的網(wǎng)絡(luò)應(yīng)用開(kāi)始采用加密手段保證自己的數(shù)據(jù)安全傳輸,同時(shí)越來(lái)越多的惡意網(wǎng)絡(luò)攻擊也在采用加密手段[1-2]減少被發(fā)現(xiàn)的幾率,對(duì)網(wǎng)絡(luò)監(jiān)管構(gòu)成了極大威脅。當(dāng)前,處理加密流量的常見(jiàn)方法是解密流量,使用如新一代防火墻等設(shè)備查看流量。這種方法不僅耗時(shí)較長(zhǎng),降低了網(wǎng)絡(luò)傳輸效率,還給用戶信息泄露帶來(lái)了一定的風(fēng)險(xiǎn)。
加密流量行為分析技術(shù)是網(wǎng)絡(luò)監(jiān)管的重要組成之一。與非加密流量識(shí)別相比,它存在諸多挑戰(zhàn)。一是網(wǎng)絡(luò)流量加密后其流量特征發(fā)生較大變化,DPI 等一些非加密流量識(shí)別方法難以適用;二是加密流量有特定的網(wǎng)絡(luò)封裝格式,需要有針對(duì)性的識(shí)別方式;三是加密流量常采用協(xié)議混淆進(jìn)行偽裝,對(duì)流量的識(shí)別帶來(lái)了一定的困難。
本文設(shè)計(jì)了一種加密流量行為分析系統(tǒng),通過(guò)對(duì)網(wǎng)絡(luò)環(huán)境中的加密流量進(jìn)行分類(lèi)分析和學(xué)習(xí)優(yōu)化,采用機(jī)器學(xué)習(xí)方法構(gòu)造加密流量行為模型,不僅可以分析出加密通道承載的業(yè)務(wù)和服務(wù)類(lèi)型,還可以驗(yàn)證加密流量的合規(guī)性,識(shí)別出非法加密流量。
針對(duì)網(wǎng)絡(luò)流量的加密是保護(hù)敏感信息不被泄露和篡改的重要手段,能有效保護(hù)數(shù)據(jù)傳輸?shù)陌踩?。根?jù)Gartner 的研究,未來(lái)超過(guò)80%的企業(yè)數(shù)據(jù)傳輸將被加密。加密技術(shù)在保護(hù)數(shù)據(jù)的同時(shí)也給數(shù)據(jù)監(jiān)管帶來(lái)了一定困難,如果通過(guò)直接解密的方式監(jiān)控加密流量,將對(duì)正常的用戶數(shù)據(jù)傳輸帶來(lái)挑戰(zhàn)[3]。采用機(jī)器學(xué)習(xí)方式,在不解密加密流量的前提下對(duì)流量行為進(jìn)行識(shí)別,可有效解決上述問(wèn)題,原理如圖1 所示。
圖1 加密流量行為分析原理
流量采集主要通過(guò)網(wǎng)絡(luò)抓包技術(shù)收集相關(guān)流量數(shù)據(jù)。針對(duì)加密的網(wǎng)絡(luò)流量而言,一般需要收集的加密協(xié)議流量包括L2TP 等鏈路層加密協(xié)議、IPSEC等網(wǎng)絡(luò)層加密協(xié)議、SSL/TLS 傳輸層加密協(xié)議以及SSH等應(yīng)用層加密協(xié)議。采集過(guò)程中通常采用pcap 等數(shù)據(jù)采集工具,在某些需要高性能數(shù)據(jù)采集情況下,可基于零拷貝技術(shù)減少數(shù)據(jù)包在系統(tǒng)內(nèi)部的拷貝次數(shù),降低系統(tǒng)內(nèi)部處理開(kāi)銷(xiāo),提高整個(gè)數(shù)據(jù)采集的效率。
特征提取階段,從采集到的流量中分析和提取與加密流量信息相關(guān)的特征。針對(duì)密文流量的特征,可以將其分為時(shí)空特征和協(xié)議特征。時(shí)空特征是與具體協(xié)議無(wú)關(guān)的特征,如時(shí)間間隔、數(shù)據(jù)包大小、字節(jié)分布以及地址分布等;協(xié)議特征指的是加密協(xié)議的特征,如SSL 應(yīng)用種類(lèi)(HTTPS、FTPS、SSH 等)擴(kuò) 展 種 類(lèi)、SSL 版 本(SSLv2、SSLv3、TLSv1.1、TLSv1.2 等)、證書(shū)種類(lèi)等。
行為識(shí)別模型階段,采用機(jī)器學(xué)習(xí)算法[4-5]進(jìn)行行為識(shí)別模型構(gòu)建。根據(jù)機(jī)器學(xué)習(xí)方法的不同,主要分為有監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)及無(wú)監(jiān)督學(xué)習(xí)?;谟斜O(jiān)督學(xué)習(xí)的加密流量識(shí)別,基于已標(biāo)識(shí)的網(wǎng)絡(luò)流量數(shù)據(jù)訓(xùn)練分類(lèi)算法,通過(guò)訓(xùn)練好的算法對(duì)待測(cè)網(wǎng)絡(luò)數(shù)據(jù)流量進(jìn)行分類(lèi)結(jié)果輸出。基于有監(jiān)督學(xué)習(xí)的識(shí)別方法,主要利用已知的流量類(lèi)別進(jìn)行訓(xùn)練,無(wú)法對(duì)未知加密流量進(jìn)行預(yù)測(cè)和發(fā)現(xiàn)。半監(jiān)督算法主要采用少量已標(biāo)記樣本和大量未標(biāo)記樣本進(jìn)行分類(lèi)器的建立。與監(jiān)督學(xué)習(xí)不同,它可以降低人工標(biāo)記的難度,同時(shí)可以發(fā)現(xiàn)未知類(lèi)型的應(yīng)用流量。與無(wú)監(jiān)督學(xué)習(xí)相比,它可以提高分類(lèi)器的精確度?;跓o(wú)監(jiān)督學(xué)習(xí)的加密流量識(shí)別主要對(duì)未標(biāo)識(shí)的網(wǎng)絡(luò)流量進(jìn)行聚類(lèi)分析,根據(jù)流量數(shù)據(jù)內(nèi)部的相似程度進(jìn)行流量的分類(lèi),可以對(duì)未知流量進(jìn)行辨識(shí)。識(shí)別算法總結(jié)如表1 所示。
表1 識(shí)別算法總結(jié)表
在監(jiān)督算法和半監(jiān)督算法中,需要對(duì)分類(lèi)模型進(jìn)行不斷優(yōu)化。優(yōu)化方法包括對(duì)選定的模型進(jìn)行進(jìn)一步的參數(shù)調(diào)優(yōu)、驗(yàn)證和測(cè)試,通過(guò)實(shí)際網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行測(cè)試與迭代訓(xùn)練。根據(jù)實(shí)際測(cè)試結(jié)果,針對(duì)各類(lèi)型的加密流量,選用效果最佳的算法及參數(shù),保證準(zhǔn)確率。
結(jié)果輸出方面,輸出流量識(shí)別出的分類(lèi)或聚類(lèi)結(jié)果主要包括以下幾種類(lèi)型:非加密與加密流量的識(shí)別;加密協(xié)議的識(shí)別,包括SSL、IPSEC、SSH等的識(shí)別;加密應(yīng)用的識(shí)別,可識(shí)別加密流量由哪種應(yīng)用程序產(chǎn)生,如SKYPE、微信等;加密服務(wù)識(shí)別,如其服務(wù)為網(wǎng)頁(yè)瀏覽、流媒體加密、即時(shí)通信加密等。
加密流量行為分析系統(tǒng)設(shè)計(jì)如圖2 所示,包括數(shù)據(jù)采集、流量特征提取、流量行為分析模型、配置管理和數(shù)據(jù)存儲(chǔ)等。采用層次化、模塊化設(shè)計(jì),降低各個(gè)軟件模塊的專(zhuān)用性及模塊之間的耦合性,提高軟件模塊的獨(dú)立性和繼承性。
圖2 加密流量行為分析系統(tǒng)架構(gòu)
數(shù)據(jù)采集模塊針對(duì)網(wǎng)絡(luò)流量提供實(shí)時(shí)流量或離線流量數(shù)據(jù)的采集、存儲(chǔ)和預(yù)先處理功能,能夠根據(jù)數(shù)據(jù)來(lái)源和協(xié)議大類(lèi)進(jìn)行初步的流量分類(lèi)和數(shù)據(jù)統(tǒng)計(jì)。
流量特征提取模塊提取流量的協(xié)議無(wú)關(guān)特征與協(xié)議相關(guān)特征,并對(duì)特征進(jìn)行統(tǒng)計(jì)和歸類(lèi),供流量行為分析模型進(jìn)行分析。其中,協(xié)議無(wú)關(guān)特征是指流量數(shù)據(jù)傳輸過(guò)程中表現(xiàn)的通用特征,如數(shù)據(jù)包的大小、時(shí)間間隔、地址分布等;協(xié)議相關(guān)特征是指流量數(shù)據(jù)在傳輸協(xié)議層面表現(xiàn)的專(zhuān)有特征,如加密流量的SSL 擴(kuò)展種類(lèi)、加密套件種類(lèi)。
流量分析模塊對(duì)采集到的流量數(shù)據(jù)進(jìn)行流量分類(lèi)和智能分析,判斷網(wǎng)絡(luò)流量的類(lèi)型(明文流量、典型加密流量、非法加密流量),并根據(jù)流量的時(shí)空特征、握手特征、背景特征等構(gòu)建流量智能模型,從而發(fā)現(xiàn)加密流量中的非法流量、惡意流量和異常流量。
配置管理模塊實(shí)現(xiàn)對(duì)系統(tǒng)本身的配置管理和對(duì)外的接口功能,包括軟件本身運(yùn)行狀態(tài)的監(jiān)控和信息收集、對(duì)軟件本身的策略配置管理以及異常事件報(bào)警等。
數(shù)據(jù)存儲(chǔ)模塊對(duì)系統(tǒng)提供數(shù)據(jù)存儲(chǔ)和讀取功能,包括軟件配置管理數(shù)據(jù)、通過(guò)流量行為分析發(fā)現(xiàn)的惡意行為和異常行為、流量行為模型數(shù)據(jù)、人工智能算法和流量特征記錄。
系統(tǒng)的典型流程如圖3 所示。
系統(tǒng)首先啟動(dòng)算法訓(xùn)練,采用已標(biāo)注流量數(shù)據(jù)等訓(xùn)練分類(lèi)算法模型,為后續(xù)流量識(shí)別提供支撐。當(dāng)有流量識(shí)別任務(wù)到來(lái)時(shí),啟動(dòng)流量識(shí)別流程進(jìn)行網(wǎng)絡(luò)流量采集,抓取網(wǎng)卡上的流量獲得原始數(shù)據(jù)包,然后進(jìn)行流量的整理和分析,處理原始網(wǎng)絡(luò)包,統(tǒng)計(jì)相應(yīng)的流量特征數(shù)據(jù),然后送入分類(lèi)算法中進(jìn)行流量辨識(shí),得出流量分類(lèi)結(jié)果,最后在結(jié)果展示界面中進(jìn)行展示。在上述幾個(gè)流量處理過(guò)程中,將處理的輸入輸出的結(jié)果存儲(chǔ)至數(shù)據(jù)庫(kù)中,以備后續(xù)對(duì)比分析使用。
虛擬專(zhuān)網(wǎng)(Virtual Private Network,VPN)是網(wǎng)絡(luò)傳輸加密的服務(wù)之一,通過(guò)構(gòu)建加密網(wǎng)絡(luò)隧道將網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行加密保護(hù),以防止數(shù)據(jù)在網(wǎng)絡(luò)傳輸中被竊取和篡改。本文基于虛擬專(zhuān)網(wǎng)技術(shù)搭建了如下的測(cè)試場(chǎng)景:在兩個(gè)計(jì)算機(jī)終端上分別安裝OPENVPN 軟件,提供相應(yīng)的VPN 加密隧道連接,同時(shí)在計(jì)算機(jī)終端上安裝SKYPE和Filezilla客戶端,以便使用SKYPE 的加密語(yǔ)言和Filezilla 文件傳輸業(yè)務(wù)。試驗(yàn)拓?fù)淙鐖D4 所示。
圖3 系統(tǒng)典型應(yīng)用流程
圖4 系統(tǒng)測(cè)試試驗(yàn)拓?fù)?/p>
在以上試驗(yàn)環(huán)境中分別采集SKYPE 的語(yǔ)音流量和Filezilla 的文件下載流量數(shù)據(jù),將采集好的數(shù)據(jù)發(fā)送至加密流量分析原型系統(tǒng)進(jìn)行處理。在算法訓(xùn)練過(guò)程中,將數(shù)據(jù)集隨機(jī)分為兩類(lèi):80%數(shù)據(jù)作為訓(xùn)練集,20%作為測(cè)試集。
在算法性能數(shù)據(jù)方面,采用精確率和召回率進(jìn)行性能評(píng)估。表2 給出了系統(tǒng)在采用K 均值監(jiān)督算法進(jìn)行測(cè)試試驗(yàn)時(shí)的相關(guān)結(jié)果。
表2 測(cè)試實(shí)驗(yàn)結(jié)果
從結(jié)果可以看出,本文設(shè)計(jì)的系統(tǒng)可以以平均84.7%的精確度分析辨識(shí)出相應(yīng)的加密流量,其系統(tǒng)的可用性和適用性有效。
當(dāng)前,基于加密技術(shù)的攻擊行為、攻擊手法將層出不窮,而現(xiàn)有大多數(shù)網(wǎng)絡(luò)安全設(shè)備對(duì)包含在加密流量中的網(wǎng)絡(luò)攻擊、惡意軟件無(wú)能為力,加密流量的檢測(cè)與防御已經(jīng)成為網(wǎng)絡(luò)空間安全對(duì)抗的核心焦點(diǎn)。本文設(shè)計(jì)了一種加密流量行為分析系統(tǒng),采用機(jī)器學(xué)習(xí)的方式,對(duì)明文流量、正常加密流量、惡意加密流量、非法加密流量等進(jìn)行特征提取和行為分析,可以發(fā)現(xiàn)隱藏在加密流量中的攻擊行為、惡意行為和非法加密行為,對(duì)于安全人員掌握網(wǎng)絡(luò)安全態(tài)勢(shì)、發(fā)現(xiàn)網(wǎng)絡(luò)異常具有重要意義。當(dāng)然,加密流量行為分析系統(tǒng)的智能算法調(diào)整、流量模型建立還需要進(jìn)一步深化研究和實(shí)際測(cè)試。