張友鵬,李響,蘭麗, 2, 3,周凈毓,劉思雨,張妍
基于大數(shù)據(jù)的鐵路時間同步網(wǎng)異常流量檢測系統(tǒng)的研究
張友鵬1,李響1,蘭麗1, 2, 3,周凈毓1,劉思雨4,張妍5
(1. 蘭州交通大學(xué) 自動化與電氣工程學(xué)院,甘肅 蘭州 730070;2. 蘭州交通大學(xué) 電子信息工程學(xué)院,甘肅 蘭州 730070;3. 蘭州交通大學(xué) 光電技術(shù)與智能控制教育部重點(diǎn)實(shí)驗(yàn)室,甘肅 蘭州 730070;4. 西安市軌道交通集團(tuán)有限公司,陜西 西安 710016;5. 中國鐵路太原局集團(tuán)有限公司黨干校 科研開發(fā)中心,山西 太原 030013)
為快速準(zhǔn)確地識別鐵路時間同步網(wǎng)所受到的惡意攻擊,設(shè)計(jì)一種基于大數(shù)據(jù)的鐵路時間同步網(wǎng)異常流量檢測系統(tǒng)。該系統(tǒng)首先采用無監(jiān)督學(xué)習(xí)算法K-Means對部分?jǐn)?shù)據(jù)進(jìn)行訓(xùn)練,形成最優(yōu)聚類模型,并通過該模型實(shí)現(xiàn)對異常流量的檢測。將已標(biāo)記的時間同步網(wǎng)數(shù)據(jù)輸入系統(tǒng),測試系統(tǒng)對異常流量的檢測準(zhǔn)確率及速度是否滿足鐵路時間同步網(wǎng)的要求。對系統(tǒng)識別出的異常流量特征進(jìn)行分析,找出相關(guān)性較高的典型特征類型,并結(jié)合鐵路時間同步網(wǎng)結(jié)構(gòu),針對該類型特征提出初步的攻擊防御建議。研究結(jié)果表明:基于大數(shù)據(jù)的異常流量檢測系統(tǒng)聚類時間70.434 682 s及準(zhǔn)確率98.36%均滿足大數(shù)據(jù)網(wǎng)絡(luò)環(huán)境下鐵路時間同步網(wǎng)的要求;基于時間和主機(jī)的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征可以為提升鐵路時間同步網(wǎng)的安全性提供參考。
網(wǎng)絡(luò)流量;異常流量檢測系統(tǒng);K-Means;Spark;鐵路時間同步網(wǎng)
標(biāo)準(zhǔn)統(tǒng)一的時間信息是高速列車安全高效跨線跨區(qū)行駛的重要保障,因此有必要建立完善的鐵路時間同步網(wǎng)系統(tǒng)。鐵路時間同步網(wǎng)是鐵路通信網(wǎng)的重要支撐子網(wǎng)之一,包括地面時間同步網(wǎng)和列車時間同步網(wǎng)[1?2]。鐵路時間同步網(wǎng)能準(zhǔn)確記錄各部門的運(yùn)行時間,并向各部門提供標(biāo)準(zhǔn)統(tǒng)一的時間信息,從而提升鐵路運(yùn)輸效率,避免因時間不同步造成的安全事故。鐵路時間同步網(wǎng)是鐵路通信網(wǎng)的獨(dú)立支撐子網(wǎng),這意味著由于二者之間的重疊部分很少,可以將鐵路時間同步網(wǎng)作為一個獨(dú)立的網(wǎng)絡(luò)來進(jìn)行研究。鐵路時間同步網(wǎng)的本質(zhì)是具有三級樹型拓?fù)浣Y(jié)構(gòu)的時間同步網(wǎng),而該結(jié)構(gòu)正是鐵路時間同步網(wǎng)和其他通信系統(tǒng)時間同步網(wǎng)之間的主要區(qū) 別[3]。因此,在研究鐵路時間同步網(wǎng)時,可先對普通通信網(wǎng)絡(luò)的時間同步網(wǎng)進(jìn)行研究,之后結(jié)合鐵路時間同步網(wǎng)的拓?fù)浣Y(jié)構(gòu),分析該網(wǎng)絡(luò)的具體特點(diǎn)及存在的問題。時間同步網(wǎng)使用網(wǎng)絡(luò)時間協(xié)議(Network Time Protocol, NTP),該協(xié)議基于用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol, UDP)傳輸標(biāo)準(zhǔn)時間信息。NTP是一種提供精確時間校正服務(wù)的協(xié)議,其可以實(shí)現(xiàn)互聯(lián)網(wǎng)上所有計(jì)算機(jī)、服務(wù)器和其他設(shè)備的時間同步。然而,由于NTP的傳輸層協(xié)議UDP提供了無連接通信服務(wù),即其在傳輸信息時無法對源地址和目標(biāo)地址進(jìn)行確認(rèn),導(dǎo)致黑客更容易偽裝源地址,從而攻擊NTP并破壞時間同步網(wǎng)。針對上述缺陷,在鐵路時間同步網(wǎng)的安全性研究方面,眾多專家學(xué)者將研究重點(diǎn)置于鐵路時間同步網(wǎng)所采用的NTP協(xié)議的脆弱性上。他們的研究過程一般首先對協(xié)議流程進(jìn)行分析,然后建立狀態(tài)變遷模型,最后分析協(xié)議的不安全狀態(tài)與協(xié)議相關(guān)安全性指標(biāo)之間的關(guān)系,進(jìn)而驗(yàn)證協(xié)議中是否存在隱藏的弱點(diǎn)[4?6]。然而上述研究均從NTP協(xié)議自身出發(fā),著重強(qiáng)調(diào)提升網(wǎng)絡(luò)內(nèi)部的安全等級,忽略了檢測和防御外部攻擊的重要性。網(wǎng)絡(luò)攻擊是不斷進(jìn)化發(fā)展的,僅對網(wǎng)絡(luò)的內(nèi)部安全進(jìn)行研究和優(yōu)化顯然無法滿足當(dāng)前鐵路時間同步網(wǎng)對安全性的要求,故本文將研究重點(diǎn)放于外部攻擊及其檢測方案上,以一個嶄新的角度對鐵路時間同步網(wǎng)的安全性進(jìn)行研究。針對NTP網(wǎng)絡(luò)的惡意攻擊可實(shí)現(xiàn)對網(wǎng)絡(luò)資源的大量占用,從而導(dǎo)致整個網(wǎng)絡(luò)的阻塞甚至崩潰。該類攻擊最顯著的特點(diǎn)之一是流量變化。因此,國內(nèi)外的異常流量檢測系統(tǒng)多以流量為基礎(chǔ)來進(jìn)行系統(tǒng)的設(shè)計(jì)。目前的異常流量檢測系統(tǒng)設(shè)計(jì)多采用機(jī)器學(xué)習(xí)算法,然而由于流量數(shù)據(jù)量過大,報文字段過多,給機(jī)器學(xué)習(xí)算法的數(shù)據(jù)處理帶來一定困難[7?9]?;谠朴?jì)算的數(shù)據(jù)處理平臺可通過由多臺計(jì)算機(jī)組成的計(jì)算機(jī)集群來對海量數(shù)據(jù)進(jìn)行處理。由于該類平臺具有計(jì)算可擴(kuò)展和廣播計(jì)算的優(yōu)點(diǎn),故其可高效準(zhǔn)確地對海量數(shù)據(jù)進(jìn)行處理、統(tǒng)計(jì)及分析,十分適用于當(dāng)今數(shù)據(jù)量龐大的網(wǎng)絡(luò)環(huán)境[10?12]。因此,利用云計(jì)算數(shù)據(jù)處理平臺對異常網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行識別是實(shí)現(xiàn)惡意攻擊檢測的一種很好的方法。為了滿足鐵路時間同步網(wǎng)對檢測速度和準(zhǔn)確率的要求,本文提出了一種基于云計(jì)算平臺Spark的異常流量檢測系統(tǒng),該系統(tǒng)可對惡意攻擊進(jìn)行檢測。本文首先分析了云計(jì)算平臺Spark的組成及工作流程,介紹了現(xiàn)有的基于無監(jiān)督學(xué)習(xí)的異常流量檢測系統(tǒng)。然后結(jié)合兩者的優(yōu)點(diǎn),設(shè)計(jì)了一個Spark平臺下的基于無監(jiān)督學(xué)習(xí)K-Means算法的NTP異常流量檢測系統(tǒng),該系統(tǒng)能夠?qū)Ξ惓A髁窟M(jìn)行識別,進(jìn)而實(shí)現(xiàn)對惡意攻擊的檢測。最后,針對檢測到的異常網(wǎng)絡(luò)流量的典型特征類型,同時考慮鐵路時間同步網(wǎng)的樹型拓?fù)浣Y(jié)構(gòu),本文初步提出了防御建議,以提高鐵路時間同步網(wǎng)的安全性。
現(xiàn)有的云計(jì)算平臺主要包括Hadoop平臺和Spark平臺。與Spark平臺相比,Hadoop的工作原理相對簡單,但由于Hadoop每次迭代生成的臨時數(shù)據(jù)都會被讀寫到硬盤中,故其存在數(shù)據(jù)處理效率低下的缺點(diǎn),運(yùn)算速度較慢。而Spark平臺在內(nèi)部存儲器中對臨時數(shù)據(jù)進(jìn)行讀寫,故其在運(yùn)算復(fù)雜算法時可以高效快速地處理數(shù)據(jù)[13]。因此本文在Spark平臺下,利用Python語言進(jìn)行編程,設(shè)計(jì)了一個基于無監(jiān)督學(xué)習(xí)算法K-Means的異常流量檢測系統(tǒng)。
Spark的工作流程如圖1所示。
圖1 Spark工作流程
從圖1可以看出,Spark的工作核心是Spark Context和Executor部分。其中,Executor部分負(fù)責(zé)執(zhí)行任務(wù),其由Worker Node運(yùn)行。SparkContext部分由Drive Program啟動,通過Cluster Manager與Executor進(jìn)行通信。SparkContext和Executor在各種操作模式下內(nèi)核代碼可以共用,其上層部分則根據(jù)不同的部署模式,包裝相應(yīng)的調(diào)度模塊和相關(guān)代碼[14]。
SparkContext是程序運(yùn)行的總?cè)肟?。在啟動過程中,Spark會創(chuàng)建兩級調(diào)度模塊模塊,包括DAGScheduler(作業(yè)調(diào)度)和TASKScheduler(任務(wù)調(diào)度)。DAGScheduler是基于任務(wù)的高層調(diào)度模塊。它首先給出每個Spark任務(wù)的多個調(diào)度階段,根據(jù)shuffle對這些階段進(jìn)行劃分,之后根據(jù)數(shù)據(jù)本地性為每個調(diào)度階段構(gòu)建一組待辦任務(wù)。最后由Spark的任務(wù)調(diào)度模塊來執(zhí)行所提交的TaskSets。任務(wù)調(diào)度模塊還可實(shí)現(xiàn)任務(wù)的啟動及任務(wù)的運(yùn)行情況的監(jiān)視和匯報。
在實(shí)際網(wǎng)絡(luò)環(huán)境中,由于系統(tǒng)所采集到的網(wǎng)絡(luò)流量信息未經(jīng)標(biāo)記,故若欲識別該網(wǎng)絡(luò)流量是否異常,檢測系統(tǒng)需要采用無監(jiān)督算法對其進(jìn)行聚類,從而劃分其是否屬于異常流量。國內(nèi)外專家提出許多無監(jiān)督學(xué)習(xí)聚類算法,其中K-Means算法作為聚類中常用的經(jīng)典算法,具有簡單、計(jì)算高效快速等特點(diǎn),且當(dāng)數(shù)據(jù)量龐大時,該算法準(zhǔn)確率較高,故其廣泛應(yīng)用于各種檢測系統(tǒng)的研究中。K-Means算法流程圖如圖2所示。
圖2 K-Means工作流程
從圖2可以看出,該算法的最終目標(biāo)是在無特征指導(dǎo)的情況下將數(shù)據(jù)集劃分為個簇。該算法的具體步驟如下:首先設(shè)置個聚類中心并計(jì)算所設(shè)置聚類中心和數(shù)據(jù)集每個點(diǎn)之間距離的平均值;之后重置值并重復(fù)上一步,得到不同值下的平均值;最后比較各平均值,取平均值最小的值為最優(yōu)值。
傳統(tǒng)的異常流量檢測系統(tǒng)很難實(shí)現(xiàn)對新型隱蔽網(wǎng)絡(luò)攻擊的全方位檢測,攻擊者甚至可以花10 a時間分析和滲透目標(biāo)網(wǎng)絡(luò)。故一旦攻擊開始,運(yùn)營和維護(hù)人員幾乎沒有時間對攻擊進(jìn)行防御。正是這種時間上的不對稱性使攻擊者可以有更多的時間對網(wǎng)絡(luò)進(jìn)行攻擊。應(yīng)對上述問題的一種有效方法是利用高性能的數(shù)據(jù)分析平臺對網(wǎng)絡(luò)中的海量數(shù)據(jù)進(jìn)行檢測和分析,而本文實(shí)現(xiàn)的基于Spark的異常流量檢測系統(tǒng)顯然可以通過高效數(shù)據(jù)處理平臺Spark實(shí)現(xiàn)對海量數(shù)據(jù)的及時甄別。
本文提出的異常流量檢測系統(tǒng)的目標(biāo)是識別異常流量,判斷其是否由惡意攻擊產(chǎn)生,并最終實(shí)現(xiàn)對異常流量的檢測。系統(tǒng)框架如圖3所示。
圖3 系統(tǒng)框架
本文所提出的基于K-Means算法的異常流量檢測系統(tǒng)包括6個模塊。
1) 數(shù)據(jù)載入模塊
通過SparkContext將流量數(shù)據(jù)文件載入到SPARK RDD中。
2) 數(shù)據(jù)預(yù)處理模塊
將流量數(shù)據(jù)文件中的非數(shù)值型數(shù)據(jù)進(jìn)行預(yù)處理,從而轉(zhuǎn)換為數(shù)值型數(shù)據(jù),統(tǒng)一的數(shù)據(jù)類型有助于提高系統(tǒng)的效率和準(zhǔn)確性。
3) 數(shù)據(jù)規(guī)整化模塊
經(jīng)過第2步的預(yù)處理后,數(shù)據(jù)矩陣存在嚴(yán)重的稀疏性,因此需要將其轉(zhuǎn)換為密集矩陣,以便提高數(shù)據(jù)處理效率。
4) 算法訓(xùn)練模塊
通過K-Means算法可以得到不同值下的聚類模型。在所有模型中,選擇聚類中心與各點(diǎn)之間距離均值最小的模型作為最優(yōu)模型。
5) 預(yù)測模塊
利用最優(yōu)模型對網(wǎng)絡(luò)流量進(jìn)行預(yù)測和分類。
6) 比對模塊
預(yù)測該網(wǎng)絡(luò)流量所屬的類群,并與標(biāo)記樣本進(jìn)行比較,計(jì)算出檢測準(zhǔn)確率。
由于本文設(shè)計(jì)的異常流量檢測系統(tǒng)的其他模塊都可以通過調(diào)用API函數(shù)來實(shí)現(xiàn),故本文的研究重點(diǎn)在于核心模塊的實(shí)現(xiàn),包括數(shù)據(jù)預(yù)處理模塊、算法訓(xùn)練模塊和比對模塊。
2.2.1 數(shù)據(jù)預(yù)處理模塊
通過Python實(shí)現(xiàn)數(shù)據(jù)預(yù)處理模塊,該模塊工作流程如圖4所示。
數(shù)據(jù)預(yù)處理模塊包含6個步驟:
1) 使用Python open()函數(shù)以只讀的形式打開數(shù)據(jù)文件并將其載入到內(nèi)存中。
2) 使用Python readlines()函數(shù)將文件描述符轉(zhuǎn)換為迭代器。
3) 對于迭代器返回的每一行文件,使用split()函數(shù)對其用逗號進(jìn)行分割。
4) 使用計(jì)數(shù)函數(shù)找出非數(shù)值型數(shù)據(jù)的位置,并返回該位置。
5) 計(jì)算非數(shù)值型數(shù)據(jù)的替換值,并將該替換值替換原有數(shù)據(jù)。
6) 將經(jīng)過預(yù)處理的數(shù)據(jù)文件另存為新文件。
圖4 數(shù)據(jù)預(yù)處理流程
2.2.2 算法訓(xùn)練模塊
本文提出的異常流量檢測系統(tǒng)采用無監(jiān)督算法K-Means實(shí)現(xiàn)對數(shù)據(jù)的訓(xùn)練。Spark的MLlib函數(shù)庫中K-Means算法的實(shí)現(xiàn)需要配置部分參數(shù)。參數(shù)是期望聚類的類簇?cái)?shù)量。參數(shù)maxInternations是算法在單次運(yùn)行時所能達(dá)到的最大迭代次數(shù)。由于K-Means算法不能一次找出最優(yōu)聚類模型,故需設(shè)定不同的值,并在設(shè)定的值下對數(shù)據(jù)文件運(yùn)行該算法,從而得到對應(yīng)的模型,經(jīng)過對比后最終獲得最優(yōu)聚類模型。runs是運(yùn)行次數(shù)。Initialization Mode是初始聚類中心的選擇方法,其包括2種方法,即默認(rèn)方法K-Means++及隨機(jī)選擇中心位置的方法。initializationSteps是K-Means++的步數(shù)。epsilon是K-Means迭代收斂的閾值。seed是集群初始化的隨機(jī)種子。
2.2.3 比對模塊
比對模塊的工作流程如圖5所示。
比對模塊包括4步:
1) 使用Python open()函數(shù)將2個文件(數(shù)據(jù)文件和最優(yōu)模型文件)加載到內(nèi)存中;
2) 通過讀取2個文件內(nèi)部數(shù)據(jù),并對其相同行數(shù)進(jìn)行鏈接,從而實(shí)現(xiàn)2個文件的合并;
3) 將屬于同一簇的數(shù)據(jù)放入一個文件中;
4) 統(tǒng)計(jì)同一簇中的數(shù)據(jù)數(shù)量。
圖5 比對模塊流程
本文所采用的實(shí)驗(yàn)數(shù)據(jù)為時間同步網(wǎng)流量數(shù)據(jù),通過該數(shù)據(jù)可以對本文提出的異常流量檢測系統(tǒng)進(jìn)行測試。實(shí)驗(yàn)所用時間同步網(wǎng)流量數(shù)據(jù)為協(xié)議傳輸?shù)臄?shù)據(jù)報文,其不同的報文段代表不同的特征,每項(xiàng)數(shù)據(jù)包括41個特征,數(shù)據(jù)包含特征如表1所示。所有數(shù)據(jù)都已被提前標(biāo)注是否為正常網(wǎng)絡(luò)流量,若非正常流量,則該流量將被標(biāo)記為屬于哪個攻擊類型。
值的選擇是設(shè)計(jì)異常流量檢測系統(tǒng)的一個關(guān)鍵步驟,應(yīng)對測試步數(shù)進(jìn)行設(shè)置以尋找最優(yōu)聚類模型。本文設(shè)置值的測試步數(shù)為10,即每增加一次,值增加10。經(jīng)過對不同值所生成的聚類模型進(jìn)行對比,可進(jìn)一步確定最佳值,即在該值下可生成均值最小的最佳模型。之后,異常流量檢測系統(tǒng)通過最優(yōu)模型對網(wǎng)絡(luò)流量進(jìn)行分類,實(shí)現(xiàn)對網(wǎng)絡(luò)流量所屬簇的預(yù)測。
每個簇的聚類準(zhǔn)確率的計(jì)算公式如下:
其中:是該簇中數(shù)量最多的類型的網(wǎng)絡(luò)流量數(shù)據(jù)的數(shù)量;是該簇中所有數(shù)據(jù)的數(shù)量。
表1 流量數(shù)據(jù)特征
數(shù)據(jù)集的總聚類準(zhǔn)確率的計(jì)算公式如下:
其中:是所有類簇中所有數(shù)量最多的類型的數(shù)據(jù)量之和;是所有數(shù)據(jù)的數(shù)量。
將采集的網(wǎng)絡(luò)流量數(shù)據(jù)集輸入系統(tǒng)得到聚類結(jié)果,并對該結(jié)果進(jìn)行分析,結(jié)論如表2所示。
表2 異常流量檢測系統(tǒng)聚類結(jié)果及統(tǒng)計(jì)
如表2所示,數(shù)據(jù)被聚類為19簇。聚類總準(zhǔn)確率為98.36%,聚類時間為70.434 682 s,其檢測準(zhǔn)確率和檢測速度均優(yōu)于基于機(jī)器學(xué)習(xí)的異常流量檢測系統(tǒng)[15]。由上述結(jié)果可得,本文的異常流量檢測系統(tǒng)可以滿足大數(shù)據(jù)網(wǎng)絡(luò)環(huán)境下時間同步網(wǎng)異常檢測效率和準(zhǔn)確性的要求。
3.2.1 異常流量特征分析
本文對檢測系統(tǒng)所得異常流量數(shù)據(jù)和正常流量數(shù)據(jù)的特征進(jìn)行了進(jìn)一步對比分析,從而得到部分變化顯著的報文段,可稱為典型特征。為進(jìn)一步在這些典型特征中找到共性,本文計(jì)算了各典型特征之間的皮爾遜相關(guān)系數(shù)。皮爾遜相關(guān)系數(shù)可以表現(xiàn)特征和響應(yīng)變量之間的關(guān)系,其取值范圍為[?1,1],其中當(dāng)該系數(shù)取值為?1時表示特征與響應(yīng)變量之間完全負(fù)相關(guān),該系數(shù)取值為1時表示完全正相關(guān),0表示非線性相關(guān)。當(dāng)兩特征間的皮爾遜相關(guān)系數(shù)絕對值較大時,其相關(guān)性越強(qiáng)。本文計(jì)算了典型流量特征間的皮爾遜系數(shù),并繪制其熱力圖,如圖6所示。
圖6中兩特征間方塊顏色越趨于紅色,二者正相關(guān)性越強(qiáng);顏色越趨于綠色,兩特征的負(fù)相關(guān)性越強(qiáng)。而相關(guān)性絕對值強(qiáng)的特征越具有代表性。由圖6可以看出,尼爾遜相關(guān)系數(shù)絕對值高的特征具有高度集中性,其中大部分特征包含關(guān)鍵字_srv_及關(guān)鍵字_host_。
圖6 典型特征尼爾遜系數(shù)熱力圖
其中,包含關(guān)鍵字_srv_的特征為基于時間的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征??梢钥闯鲈擃愄卣髦T如srv_ serror_rate(過去2 s內(nèi)與當(dāng)前連接具有相同服務(wù)的連接出現(xiàn)錯誤REJ比例)或是same_srv_rate(過去2 s內(nèi)與當(dāng)前連接具有相同服務(wù)的連接的比例),均為在過去2 s內(nèi)與當(dāng)前連接具有相同服務(wù)的連接的某些表現(xiàn)。由于網(wǎng)絡(luò)攻擊多與時間有關(guān),故當(dāng)當(dāng)前連接與過去某時刻連接具有相同服務(wù)時,探查二連接間隔這段時間內(nèi)產(chǎn)生的連接及這些連接間的內(nèi)在聯(lián)系或可找到部分報文段的異常變化。
然而對于包含慢速攻擊模式的網(wǎng)絡(luò)攻擊來說,當(dāng)主機(jī)或端口的入侵掃描頻率大于2 s時,時間特征就很難表現(xiàn)出攻擊給網(wǎng)絡(luò)流量數(shù)據(jù)帶來的變化。由于惡意攻擊的信息傳輸依賴主機(jī)作為載體,故部分包含目標(biāo)主機(jī)相關(guān)信息的特征也可一定程度上表現(xiàn)出流量的異常變化。由圖6可看出,另一部分具有高集中性的特征均包含關(guān)鍵字_host_,即為基于主機(jī)的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征。該類特征諸如dst_host_srv_count(在前一百個連接中與當(dāng)前連接的服務(wù)相同且目標(biāo)主機(jī)相同的連接數(shù))或dst_host_ same_srv_rate(在前一百個連接中與當(dāng)前連接的目標(biāo)主機(jī)相同的連接的比例),均為前一定數(shù)目的連接中與當(dāng)前連接具有相同的目標(biāo)主機(jī)的連接的表現(xiàn)。
由圖6及分析可知,當(dāng)網(wǎng)絡(luò)攻擊產(chǎn)生時,基于時間的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征和基于主機(jī)的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征會產(chǎn)生較其他特征而言相對顯著且迅速的變化。針對這2項(xiàng)特征進(jìn)行攻擊防御和異常流量的檢測將會大大提高鐵路時間同步網(wǎng)防御系統(tǒng)的攻擊識別速度、識別準(zhǔn)確率及整個網(wǎng)絡(luò)的安全性。
3.2.2 初步防御建議
由上述分析可以看出,與異常網(wǎng)絡(luò)流量具有高度相關(guān)性的2種典型特征是基于時間的特征和基于主機(jī)的特征。根據(jù)鐵路時間同步網(wǎng)的三級樹拓?fù)浣Y(jié)構(gòu),并結(jié)合時間信息從上到下的傳輸順序,或可在二三級節(jié)點(diǎn)主機(jī)處設(shè)置一種內(nèi)置于鐵路通信網(wǎng)絡(luò)、對時間和主機(jī)敏感的攻擊觸發(fā)機(jī)制。而觸發(fā)條件可以設(shè)定如下,當(dāng)連接到同一一級或二級主機(jī)的連接數(shù)超過某個值時,或某下位機(jī)在過去一段時間內(nèi)連接超過設(shè)定次數(shù)的情況下,將觸發(fā)報警功能。
本文提出的攻擊觸發(fā)機(jī)制只是一個初步設(shè)想,若要實(shí)現(xiàn)其功能,還需要進(jìn)一步研究及實(shí)驗(yàn)來確定合適的觸發(fā)條件諸如連接時長和主機(jī)數(shù)量。此外,由于鐵路時間同步網(wǎng)的真實(shí)環(huán)境與實(shí)驗(yàn)室的理想環(huán)境存在差異,因此必須對實(shí)際的網(wǎng)絡(luò)環(huán)境進(jìn)行考察,并在此基礎(chǔ)上對研究成果進(jìn)行優(yōu)化才能將其實(shí)際應(yīng)用到鐵路時間同步網(wǎng)的環(huán)境中。
1) 為提升大數(shù)據(jù)網(wǎng)絡(luò)環(huán)境下鐵路時間同步網(wǎng)的安全性,本文提出一種基于Spark平臺的鐵路時間同步網(wǎng)異常流量檢測系統(tǒng)。該系統(tǒng)聚類準(zhǔn)確率高,達(dá)到98.36%,聚類速度快,達(dá)到70.434 682 s,上述指標(biāo)均可滿足大數(shù)據(jù)網(wǎng)絡(luò)環(huán)境下鐵路時間同步網(wǎng)對檢測速度和檢測準(zhǔn)確率的要求。
2) 本文分析討論了異常網(wǎng)絡(luò)流量的典型特征,發(fā)現(xiàn)基于時間的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征及基于主機(jī)的網(wǎng)絡(luò)流量統(tǒng)計(jì)特征與異常流量的相關(guān)性極高。在此基礎(chǔ)上,初步提出了鐵路時間同步網(wǎng)的惡意攻擊防御建議——一種攻擊觸發(fā)機(jī)制,為后續(xù)鐵路時間同步網(wǎng)的研究提供了全新角度。
[1] 曲博. 鐵路時間同步網(wǎng)概述[J]. 鐵路通信信號工程技術(shù), 2010, 7(4): 43?45. QU Bo. Introduction of railway time synchronization network[J]. Railway Signalling & Communication Engineering, 2010, 7(4): 43?45.
[2] 北京全路通信信號研究設(shè)計(jì)院.鐵路時間同步網(wǎng)技術(shù)條件[R]. 北京: 中國鐵道年鑒, 2012. China Railway Signal & Communication Research & Design Institute Group Co., Ltd. Technical conditions for railway time synchronization network[R]. Beijing: China Railway Press, 2012.
[3] 詹秀峰. 鐵路局時間同步系統(tǒng)的設(shè)計(jì)[J]. 鐵路通信信號工程技術(shù), 2017, 14(3): 29?31. ZHAN Xiufeng. Design of time synchronization system for railway administration[J]. Railway Signalling & Communication Engineering, 2017, 14(3): 29?31.
[4] 張友鵬, 張昊磊, 王虹. 基于有色Petri網(wǎng)的鐵路時間同步網(wǎng)協(xié)議安全性分析[J]. 鐵道學(xué)報, 2017, 39(10): 82?88. ZHANG Youpeng, ZHANG Haolei, WANG Hong. Security analysis on railway network time protocol based on colored Petri nets[J]. Journal of the China Railway Society, 2017, 39(10): 82?88.
[5] 蘭麗, 張友鵬. 基于隨機(jī)Petri網(wǎng)的鐵路時間同步網(wǎng)協(xié)議脆弱性分析[J]. 鐵道學(xué)報, 2017, 39(8): 85?92. LAN Li, ZHANG Youpeng. Vulnerability analysis of railway time synchronization network protocol based on stochastic Petri net[J]. Journal of the China Railway Society, 2017, 39(8): 85?92.
[6] 張友鵬, 王鋒, 張珊, 等. 基于模糊貝葉斯網(wǎng)絡(luò)的鐵路時間同步網(wǎng)可靠性分析[J]. 鐵道學(xué)報, 2015, 37(5): 57? 63. ZHANG Youpeng, WANG Feng, ZHANG Shan, et al. Dependability assessment of railway time synchronization network based on fuzzy Bayesian network[J]. Journal of the China Railway Society, 2015, 37(5): 57?63.
[7] 孟浩, 王勁松, 黃靜耘, 等. 基于TcpFlow的網(wǎng)絡(luò)可視分析系統(tǒng)研究與實(shí)現(xiàn)[J]. 信息網(wǎng)絡(luò)安全, 2016(2): 40?46. MENG Hao, WANG Jinsong, HUANG Jingyun, et al. Research and implement on network visual analytic system based on TcpFlow[J]. Netinfo Security, 2016(2): 40?46.
[8] Renuka Devi S. A hybrid approach to counter application layer DDOS attacks[J]. International Journal on Cryptography and Information Security, 2012, 2(2): 45? 52.
[9] Bolzoni D, Crispo B, Etalle S. Atlantides: An architecture for alert verification in network intrusion detection system[C]// Dallas, Texas. Berkeley: USENIX, 2007: 141?152.
[10] 李凱, 薛一波, 王春露, 等. 千兆網(wǎng)絡(luò)入侵防御系統(tǒng)高速數(shù)據(jù)包處理的研究與實(shí)現(xiàn)[J]. 小型微型計(jì)算機(jī)系統(tǒng), 2006, 27(9): 1677?1681. LI Kai, XUE Yibo, WANG Chunlu, et al. Research and implementation of high-speed packet processing in gigabit network IPS[J]. Journal of Chinese Computer Systems, 2006, 27(9): 1677?1681.
[11] 何鵬程, 方勇. 一種基于Web日志和網(wǎng)站參數(shù)的入侵檢測和風(fēng)險評估模型的研究[J]. 信息網(wǎng)絡(luò)安全, 2015(1): 61?65. HE Pengcheng, FANG Yong. A risk assessment model of intrusion detection for web applications based on Web server logs and website parameters[J]. Netinfo Security, 2015(1): 61?65.
[12] GB/T 20984—2007, Risk Assessment Specification for Information Security[S].
[13] Ryza S, Laserson U, Owen S, et al. Advanced Analytics with Spark[EB/OL]. http://www.bokus.com/bok/978149 1912713/advanced-analytics-with-spark/,2016?01?22/2019?04?28.
[14] Harrinton P. Machine learning in action[M]. Greenwich: Manning Publications Co., 2012: 42?45.
[15] 陳勝, 朱國勝, 祁小云, 等. 基于機(jī)器學(xué)習(xí)的網(wǎng)絡(luò)異常流量檢測研究[J]. 信息通信, 2017, 30(12): 39?42. CHEN Sheng, ZHU Guosheng, QI Xiaoyun, et al. Research on abnormal network traffic detection based on machine learning[J]. Information & Communications, 2017, 30(12): 39?42.
Research on big-data-based anomaly detection system of railway time synchronization network
ZHANG Youpeng1, LI Xiang1, LAN Li1, 2, 3, ZHOU Jingyu1, LIU Siyu4, ZHANG Yan5
(1. School of Automatic & Electrical Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China; 2. School of Electronic & Information Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China; 3. Key Laboratory of Opto-technology and Intelligent Control, Ministry of Education, Lanzhou Jiaotong University, Lanzhou 730070, China;4. Xi’an Rail Transit Group Company Limited, Xi’an 71006, China;5. Party Cadre School of China Railway Taiyuan Group Co., Ltd, Taiyuan 030013, China)
In order to detect the hostile attack on railway time synchronization network (RTSN) quickly and accurately, a big-data-based anomaly detection system of RTSN was designed in this paper. First, K-Means, an unsupervised learning algorithm, was used to train partial data and find out the optimal clustering model, through which the system could identify the abnormal traffic flows. Then the system was tested by inputting some labeled data of time synchronization network (TSN) to see if it could satisfy the requirement of RTSN in both accuracy and speed. After the analysis of characteristics of identified abnormal traffic flows, the characteristics with strong correlation were obtained. By aiming at these characteristics and considering the structure of RTSN, a defense proposal was initially given to prevent hostile attack. The following conclusions are made: the clustering time of 70.434 682 s and accuracy of 98.36% of the system were able to meet the requirement of RTSN under a big data network environment. The representative characteristics of identified traffic flows, including time-based statistic characteristics and host-based statistic characteristics, can also offer technical references to improve the safety of RTSN.
traffic flow; anomaly detection system; K-Means; Spark; RTSN
U285.5
A
1672 ? 7029(2020)02 ? 0306 ? 08
10.19713/j.cnki.43?1423/u.T20190478
2019?05?30
中國鐵路總公司科技研究開發(fā)計(jì)劃課題資助項(xiàng)目(2015X007-H);光電技術(shù)與智能控制教育部重點(diǎn)實(shí)驗(yàn)室(蘭州交通大學(xué))開放課題資助項(xiàng)目(KFKT2018-12)
張友鵬(1965?),男,甘肅慶陽人,教授,從事軌道交通自動化方向研究;E?mail:zhangyoupengypz@126.com
(編輯 蔣學(xué)東)