999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于機器學習的工業控制網絡異常檢測方法*

2019-06-11 08:48:48邵俊杰
網絡安全與數據管理 2019年6期
關鍵詞:特征提取特征檢測

邵俊杰,董 偉,馮 志

(中國電子信息產業集團有限公司第六研究所,北京 100083)

0 引言

近些年來,工業控制系統(Industrial Control System,ICS)面臨的網絡威脅日益嚴重。國內外ICS通信網絡被頻繁攻擊,不僅帶來重大經濟損失,更嚴重威脅到國家基礎設施和重要生產部門的安全。

2010年,伊朗遭受“震網(Stuxnet)”超級病毒攻擊,大量生產核燃料用的離心機遭到破壞,該事件也成為世界上首個“網絡超級武器”事件。2012年5月,俄羅斯安全專家發現“火焰(Flame)”電腦病毒,在中東地區大范圍傳播。據報道,該病毒是中東某國針對另一國實施攻擊的高科技網絡武器。2018年8月,臺積電新竹園區遭受網絡病毒攻擊,導致生產線全數停擺,造成經濟損失約19億元。類似的工業安全事件與日俱增。

ICS協議設計之初面向相對封閉的系統,并未考慮外界威脅,近些年隨著兩化融合的發展,ICS逐漸與外網連接,為保護關鍵基礎設施,針對ICS的異常檢測技術研究迫在眉睫。

ICS的正常數據、異常數據分布往往呈現出極度不平衡的特點,獲取異常樣本代價極高,加大了訓練出可靠的高精度檢測模型的難度,對于建立性能良好的檢測模型非常不利。單分類器可以規避上述問題,因此可將異常檢測看作單分類問題以無監督方式來解決[1]。作為單分類方法的代表,單分類支持向量機(One-Class Support Vector Machine,OCSVM)被廣泛應用于異常檢測[2]。

其次,許多工控協議格式并不固定,采用深度包檢測(Deep Packet Inspection,DPI)的網絡異常檢測費時費力。WANG等[3]首次提出PAYL(payload-based anomaly detector)模型,將n-gram算法作為特征工程引入異常檢測領域,并用馬氏距離衡量新的有效載荷(payload)與已知模型的相似度,從而對網絡異常做出識別。采用n-gram算法作為特征工程無需過多的先驗知識,近年來,在機器學習領域n-gram算法逐漸成為替代DPI的一種方式;但幾乎所有采用n-gram作為特征提取的入侵檢測方法均結合馬氏距離做出識別,如劉解放[4]等人,而馬氏距離主要優點在于不受量綱的影響,排除了變量之間相關性干擾,但其夸大了變化微小的變量的作用,并且不是每次都能順利計算出結果。

本文不再使用傳統PAYL模型,而是將n-gram方法用于特征提取,結合單分類器與集成學習訓練出二層分類模型,從而對Modbus網絡進行異常檢測。

1 Modbus協議簡介

Modbus協議是一項應用層報文傳輸協議,用于互聯工控系統各大軟硬件。該協議共有兩大類實現方式:串行鏈路上的Modbus協議以及TCP層的Modbus協議。

串行鏈路上的Modbus協議包含兩種傳輸模式:RTU和ASCII模式。每字節的Modbus RTU報文幀包含兩個4位十六進制的字符(0~F),Modbus RTU報文幀由以下幾部分組成:循環冗余校驗碼(Cyclic Redundancy Code,CRC)、設備地址、功能地址、功能碼以及數據域。Modbus ASCII模式與其相似,只是報文中的每字節以兩個4位的ASCII字符為單位進行傳輸。Modbus TCP在TCP/IP層上使用了一種專用的報文頭來識別MODBUS應用數據單元。將這種報文頭稱為MBAP報文頭,包含單元標識符、事物元標識符、長度以及協議標識符。兩種Modbus實現方式如圖1所示。

圖1 Modbus RTU和TCP報文

2 方法提出

如圖2所示,本文異常檢測方法簡介如下:

(1)使用n-gram(n=1,1.5,2,2.5,3)對訓練集樣本X1(只含正常數據)進行特征提取,即對每一個Modbus報文幀有效載荷進行五種特征表述。設有X1中有數據xi,則對其進行五種n-gram特征提取后會產生五種不同的詞向量xij(j=0,1,2,3,4),對應的數據集記為Xj(j=0,1,2,3,4)。

(2)對5個Xj(j=0,1,2,3,4)分別使用主成成分分析(Principal Component Analysis,PCA)與OCSVM算法,訓練出5個不同的OCSVM初級分類器,記為OCi(i=0,1,2,3,4)。

(3)用OCi(i=0,1,2,3,4)對訓練集X2(含正常數據與異常數據)進行預測,對每一條數據xi,經過OCj(j=0,1,2,3,4)預測后,會得到中間結果yij(j=0,1,2,3,4),組成下一層的輸入向量yi(yi0,yi1,yi2,yi3,yi4,labeli),其中labeli為xi的標簽。yi組成的數據集記為X3。

(4)用X3作為第二層分類器的訓練集,訓練出第二層分類器。

(5)對測試數據,經過上述四個步驟的分析后,即可判定為正常或異常流量。

圖2 方法架構

2.1 特征工程

2.1.1 n-gram特征提取

特征工程的好壞決定了模型的上限。如何對原始問題進行特征提取在機器學習中至關重要[5]。n-gram算法對連續的n個字節進行分詞處理,提取出一組特征,顯然該算法具有線性時間復雜度。

在Modbus RTU中每字節由2個4位字符組成,每個字符占0.5字節,所以采用n-gram進行特征提取時,n的最小粒度為0.5字節。對給定數據幀有效載荷進行n-gram特征提取,最多有256n種可能的字符串組合。

本文方法的第一層模型采用單分類器訓練模型,只需正常數據即可產生模型輪廓。故對正常數據的payload進行n-gram特征提取,統計每個詞出現的次數并進行逆序排列,選出出現次數前90%的詞集作為特征,組成詞向量x=(x1,x2,…,xn)。該詞向量無法作為特征向量直接使用,本文使用報文幀的詞向量詞頻作為特征向量。

對每一個報文幀,令f=(f1,f2,…,fn)作為其特征向量。其中:

其中s(xi)為該報文中xi出現的次數。

2.1.2 PCA降維

2.1.1小節中詞向量維度依然較高,數據較為稀疏,會造成訓練速度過慢,且存在冗余信息。因此對產生的詞向量使用主成分分析(Principal Component Analysis,PCA)方法進行降維分析。

PCA通過找到一個超平面,使得樣本在其上的投影方差和最小。假設有總體x={x1,x2,…,xn}。

經過去中心化以及拉格朗日乘子法分析后,原問題轉化為求樣本協方差矩陣的特征值λ=(λ1,λ2,…,λn)。對λ逆序排列后取前d個λ對應的維度,即將數據降至d維。

2.2 單類支持向量機原理

OCSVM算法作為VC維理論下的算法,以結構風險最小化作為訓練原則,在有限樣本下仍具有較好的泛化能力。

OCSVM將數據映射到核函數所表示的特征空間中,找出一個距離原點盡可能遠的超平面,將原點與樣本點盡可能分開,為保證模型泛化能力,引入松弛變量ξi,允許部分點錯分在超平面內側。

假設樣本x={x1,x2,…,xl},OCSVM的凸二次規劃問題如下:

(1)

s.t.wΦ(xi)≥ρ-ξi,ξi≥0

其中Φ為原特征空間到高維空間的映射函數。w,ρ分別為超平面的法向量和偏移。v∈(0,1)為允許劃分到超平面內側的點的比例。

求解出w,ρ,代入決策面(2)即可對新樣本進行判定。

F=sgn((wΦ(xi))-ρ)

(2)

對式(1)引入拉格朗日乘子法,原問題轉化為:

L(w,ξ,ρ,α,β)=

(3)

分別對w,ρ,ξi求導并賦值為0得:

(4)

將式(4)代入拉格朗日式子并引入對偶問題,滿足KKT條件的情況下,最終將原問題轉化為:

(5)

解出α=(α1,α2,…,αl),其中αi>0的對應樣本點為支持向量。至此,w,ρ均可由α得出。

2.3 集成策略

集成學習可以解決單個分類器性能不佳的問題,被廣泛應用于機器學習領域[6]。次級學習器一般采用邏輯回歸模型;SVM與其主要區別在于損失函數的不同,在實踐中發現SVM與LR效果相差無幾。但SVM轉化為對偶問題后,分類只需要計算與少數幾個支持向量的距離,在進行復雜核函數計算時優勢很明顯,能夠大大簡化模型和計算。因此本文選用SVM作為次級學習器。

3 實驗及結果分析

3.1 數據集介紹

本實驗采用密西西比州立大學提供的氣體管道數據集[7]。數據集作者提供了兩套數據集:原始數據集和作者處理過的數據集。在處理過的數據集中作者提出了20個特征,并對原始數據集進行加工后做成新數據集。

本文采用原始數據集,共274 627條數據,包含60 000條不同類型的攻擊。該數據集均為Modbus RTU報文幀。

3.2 評價指標

本文選用誤報率(False Positive Rate,FPR)、準確率(Precison)、召回率(Recall)、漏報率(False Negative Rate,FNR)作為評價指標。

(6)

(7)

(8)

(9)

一般將異常樣本作為正類,正常樣本作為負類,式(6)~(9)中TP為異常樣本識別為異常樣本的數量,FP為正常樣本誤報為異常樣本的數量,FN為異常樣本漏報為正常樣本的數量,TN為正常樣本識別為正常樣本的數量。

3.3 實驗過程及結果

3.3.1 詞向量產生

因本次實驗數據集中數據均為Modbus RTU報文幀,其報頭僅含地址信息,本文認為與攻擊并無關聯,故去掉報文幀前1字節與最后2字節(CRC)。本實驗完全基于payload對攻擊進行識別,對于Modbus TCP報文,可以加上基于報頭的特征。

對210 000條正常Modbus RTU幀采用n-gram(n=0,1,2,3,4)特征提取后,對出現的詞進行計數,提取出現頻率前90%的詞分別作為每個n-gram的詞向量。對2-gram來說,本文選用的詞向量共249維。

3.3.2 初級學習模塊

選用100 000條數據對初級學習器進行學習,調節參數后,每個OCSVM分類器性能如表1所示。

表1 不同單分類器性能

3.3.3 次級學習模塊

因只有6萬條攻擊樣本,為保證次級學習器樣本均衡問題,選擇剩余數據的4萬條正常和攻擊數據,共8萬條數據,利用5個初級學習器的輸出作為次級學習器的輸入,進行次級學習器的學習。

將剩余數據作為測試集,進行測試,最終模型效果如表2所示。

表2 整個模型性能

劉萬軍[2]等人采用作者進行特征處理后的數據集,其實驗結果為:FPR=0.097,FNR=0.067,與本實驗模型性能相差無幾。但本文方法從Modbus RTU原始報文幀入手,采用詞頻作為特征,對不同的工控協議移植性較好。

4 結論

本文對ModbusRTU的payload進行了多個n-gram特征提取,產生多個同質單分類器,因n-gram產生的特征向量較為粗糙,單個分類器效果并不理想。故用“學習法”對多個分類器進行結合。實驗結果表明,本文的方法在ICS入侵檢測領域具有重要的理論和實踐意義。

猜你喜歡
特征提取特征檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
基于Gazebo仿真環境的ORB特征提取與比對的研究
電子制作(2019年15期)2019-08-27 01:12:00
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
一種基于LBP 特征提取和稀疏表示的肝病識別算法
小波變換在PCB缺陷檢測中的應用
基于MED和循環域解調的多故障特征提取
主站蜘蛛池模板: 国产97视频在线观看| 中文字幕亚洲另类天堂| 日本精品视频一区二区 | 精品99在线观看| 黄色免费在线网址| av午夜福利一片免费看| 亚洲人成成无码网WWW| 国产成人精品免费av| 波多野结衣第一页| 国产综合精品一区二区| 国产在线八区| 精品超清无码视频在线观看| 精品久久久久久成人AV| 精品在线免费播放| 国产福利在线观看精品| 久久semm亚洲国产| 亚洲精品大秀视频| 乱人伦视频中文字幕在线| 久热这里只有精品6| 国产又粗又猛又爽| 免费黄色国产视频| 蜜桃视频一区二区| 九九视频免费在线观看| 欧美97色| 久久青草精品一区二区三区| 日韩av电影一区二区三区四区| 国产办公室秘书无码精品| 国产乱子精品一区二区在线观看| 91国内外精品自在线播放| 国产一区在线观看无码| 亚洲人免费视频| av在线无码浏览| 亚洲毛片一级带毛片基地| 国产美女免费| 思思99热精品在线| 啪啪啪亚洲无码| 中文字幕 91| 国产超碰在线观看| 伊在人亚洲香蕉精品播放| 亚洲成人免费看| 波多野结衣第一页| 免费人成视网站在线不卡| 欧美另类精品一区二区三区| 三上悠亚精品二区在线观看| 天堂亚洲网| 欧美日韩国产系列在线观看| 不卡无码网| 亚洲欧美日韩精品专区| 欧美国产日韩在线| 欧美午夜在线观看| 一级做a爰片久久免费| 永久免费无码日韩视频| 91福利国产成人精品导航| av一区二区无码在线| 精品一區二區久久久久久久網站| 国模视频一区二区| 婷婷六月在线| 国产精品真实对白精彩久久| 在线看片中文字幕| 第九色区aⅴ天堂久久香| 国产福利免费在线观看| 美女一区二区在线观看| 欧美精品啪啪| 孕妇高潮太爽了在线观看免费| 国产免费自拍视频| 国产精品免费久久久久影院无码| 成人免费网站久久久| 永久天堂网Av| 国产一区亚洲一区| 九色免费视频| 人人艹人人爽| 日韩欧美国产成人| 国产伦精品一区二区三区视频优播| 99久久国产精品无码| 亚洲二区视频| 欧美精品一区在线看| 男人的天堂久久精品激情| 国产丝袜无码精品| 又爽又大又黄a级毛片在线视频| 国产va免费精品| 日韩黄色在线| 国产精品浪潮Av|