国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CNN-LSTM的工控協(xié)議同源攻擊檢測方法

2023-06-07 09:43:24竹瑞博任曉剛王建華
計算機應用與軟件 2023年5期
關鍵詞:蜜罐工控數(shù)據(jù)流

禹 寧 竹瑞博 狄 婷 任曉剛 王建華

1(國網(wǎng)山西省電力公司信息通信分公司 山西 太原 030021) 2(山西聯(lián)拓科技有限公司 山西 太原 030021) 3(太原理工大學信息與計算機學院 山西 太原 030024)

0 引 言

工業(yè)控制系統(tǒng)(ICS)是國家關鍵基礎設施的重要組成部分,在國家安全、社會民生、經濟發(fā)展和政府事務中的基礎性作用不斷凸顯,逐步成為保障社會穩(wěn)定和持續(xù)運轉的重要支撐。隨著國家智能制造、物聯(lián)網(wǎng)、“互聯(lián)網(wǎng)+”等各種戰(zhàn)略規(guī)劃不斷發(fā)展和深入,工業(yè)控制系統(tǒng)逐步實現(xiàn)了信息數(shù)字化、網(wǎng)絡化和共享化。然而,網(wǎng)絡環(huán)境所帶來的不安全因素對關鍵基礎設施的安全構成極大威脅。從2010年眾所周知的“震網(wǎng)病毒”事件,2011年“Duqu病毒”和2012年的“火焰病毒”到2015年波蘭航空公司黑客攻擊事件,每年都有幾百起針對ICS的攻擊事件,給相關國家造成了不可估量的損失,這充分顯示了國家基礎關鍵設施安全問題的現(xiàn)實迫切性,保障工控系統(tǒng)安全也成為新的網(wǎng)絡形勢下的關鍵問題。

對惡意攻擊溯源可以有效對工控系統(tǒng)做出主動的防護,傳統(tǒng)的攻擊者溯源方式為IP溯源技術。這種技術為單一溯源,通過設置并更改專門的物理設備,使用概率包標記法[1]、日志信息溯源法[2]等進行IP溯源。然而,由于攻擊者使用代理的普遍性,導致傳統(tǒng)的IP溯源技術效率和精度都不高。除此之外,在工控系統(tǒng)中,有組織的大型攻擊行為往往都不是一個攻擊者來進行攻擊,這就使得對惡意攻擊者的溯源無法滿足當前的需要。例如,Shodan[3]作為一個公開的設備搜索引擎,可以識別具有可路由IP地址的設備,包括計算機、打印機、網(wǎng)絡攝像頭和工業(yè)控制設備等。Shodan7×24小時都在運行多個序列式的掃描代碼,從而每月收集大約5億臺聯(lián)網(wǎng)設備和服務的信息。攻擊者通過Shodan可以發(fā)現(xiàn)暴露在互聯(lián)網(wǎng)上的工業(yè)控制設備以及與該設備相關的IP地址、開放的服務和存在的漏洞等信息,進而發(fā)動攻擊,對工控系統(tǒng)造成嚴重破壞。除Shodan外還有許多私密、私有的掃描引擎或攻擊組織,意在非法地探測ICS系統(tǒng)設備的信息,試圖對ICS安全造成威脅。因此,我們把具有相同或相似攻擊行為的惡意IP定義為同一組織,同源攻擊檢測就是為了找到互聯(lián)網(wǎng)中存在的惡意攻擊組織,以此來提高工控系統(tǒng)安全性。

為此,本文提出基于CNN-LSTM的工控協(xié)議同源攻擊檢測方法,實現(xiàn)攻擊者溯源。主要是通過長時間部署工控協(xié)議蜜罐,來收集互聯(lián)網(wǎng)上的一些針對工控協(xié)議的攻擊事件,使用深度學習的CNN和LSTM神經網(wǎng)絡分析攻擊者各項特征,找到具有相同或相似攻擊特征的攻擊源或攻擊組織,以達到檢測同源攻擊的目的。

本文的主要貢獻有兩點:

1) 基于蜜罐數(shù)據(jù)流,提出基于卷積神經網(wǎng)絡(Convolutional Neural Network,CNN)-長短期記憶(Long Short-Term Memory,LSTM)的工控協(xié)議同源攻擊檢測方法,相比較于傳統(tǒng)方法[4-5]和基于無監(jiān)督的聚類方法[6]等,本文方法具有更好的性能表現(xiàn)。

2) 通過基于注意力機制(Attention Mechanism)的模型優(yōu)化方法,對模型進行無監(jiān)督訓練和有監(jiān)督調整,使模型分類的準確率大幅提高,并找到了除Shodan外的多個攻擊組織。

1 相關工作

概率包標記法和日志溯源法是傳統(tǒng)的IP溯源方法,Luo等[7]提出了一種單一封包溯源的方法,在包的報頭中使用32位空間來記錄攻擊者的攻擊路徑,并使用生存時間字段來減少溯源的誤報率。Snoeren等[8]提出了一種基于報文摘要(Hash)的IP追蹤溯源方法,相比較于傳統(tǒng)的日志溯源法,該方法節(jié)約日志空間。設備的修改以及日志格式的不統(tǒng)一使得這種傳統(tǒng)的IP溯源技術成本開銷高、誤報率高、實際可操作性不強,需要對網(wǎng)絡基礎設備進行一些修改、改變,使得這種方法開銷很大。在工業(yè)控制系統(tǒng)領域,這種傳統(tǒng)的方法在PLC等工業(yè)控制系統(tǒng)設備上進行應用更是不安全且難以實現(xiàn)。因此,在近些年的研究中,ICS安全的研究人員通常使用較為成熟的蜜罐法來確定針對ICS設備的惡意IP攻擊源。Li等[6]部署了分布式蜜罐系統(tǒng)來收集威脅數(shù)據(jù)庫,并根據(jù)三種不同的工控協(xié)議蜜罐數(shù)據(jù),對攻擊方法、攻擊模式和攻擊源分析,并提出一種聚類算法,進行對攻擊組織追溯。Xiao等[9]通過對S7comm協(xié)議中的功能碼特征和攻擊數(shù)據(jù)中的各項參數(shù),構建了一個名為ICSTrance的惡意IP溯源模型,使用短序列概率方法將攻擊行為特征轉換為向量,并對該向量進行Partial Seeded K-Means算法模式聚類,追溯攻擊組織。然而,他們并沒有用任何標識數(shù)據(jù)進行驗證,無法解釋結果的好壞。

如今,深度學習在廣泛的應用中取得了巨大的成功,包括在自然語言處理、計算機視覺等領域[10]。卷積神經網(wǎng)絡(CNN)是一種前饋神經網(wǎng)絡,對于大型圖像處理有出色表現(xiàn),近些年也成功地應用于網(wǎng)絡安全領域[11]。Kang等[12]已有研究表明,在入侵檢測領域,通過引入深度學習模型來訓練分類器,可以提高入侵或攻擊檢測方法的準確性和效率。而長短期記憶網(wǎng)絡是一種神經循環(huán)網(wǎng)絡,對于處理時間序列中的一些數(shù)據(jù)流或事件具有一定的優(yōu)勢。CNN是一種具有特征提取功能的深度神經網(wǎng)絡[13],利用多個過濾器對輸入數(shù)據(jù)進行逐層卷積、池化操作,自動提取數(shù)據(jù)流中的數(shù)據(jù)特征。然而,CNN不能學習序列的相關性[14]。Zhang等[15]提出字符級卷積神經網(wǎng)絡,將字符的序列轉換成大小固定的向量序列。我們依據(jù)這些靈感,將預處理后原始數(shù)據(jù)流使用CNN進行特征提取。

長短期記憶(LSTM)網(wǎng)絡是一種特殊的循環(huán)神經網(wǎng)絡(Recurrent Neural Network,RNN),而RNN是一種時間遞歸網(wǎng)絡,具體來說是同一個神經網(wǎng)絡結構在時間軸上循環(huán)多次得到的結果。相比于其他神經網(wǎng)絡,RNN更加擅長處理序列數(shù)據(jù)。而LSTM作為一種特殊的RNN,其增加了輸入門、遺忘門、輸出門等門控機制,控制記憶過程,解決了長序列訓練中的梯度消失與梯度爆炸問題,因此,在長序列中有比普通RNN更好的表現(xiàn)。王紅等[16]發(fā)現(xiàn)LSTM模型能夠充分利用整個文本序列的信息,包括詞之間的相互關系信息,并將該種信息用于對每個詞的處理。由于當前社會的網(wǎng)絡攻擊行為通常都是具有多個復雜步驟和多條攻擊序列的攻擊行為[17],我們充分依據(jù)現(xiàn)實情況,考慮攻擊數(shù)據(jù)流之間的上下文關系,使用LSTM來處理序列標注問題。因此,本文加入LSTM對序列化的攻擊流進行分析和分類,以此進行工控同源攻擊檢測。

2 相關知識

2.1 工控Modbus協(xié)議

Modbus協(xié)議由Modicon公司于1979年為其生產的PLC設計的一種通信協(xié)議,該協(xié)議廣泛應用于電力、水利、能源等領域的監(jiān)控系統(tǒng)中,由于其開放性和透明性,成為了業(yè)界的主流通信協(xié)議[18]。由于TCP/IP協(xié)議在數(shù)據(jù)鏈路層已經保障了數(shù)據(jù)傳遞的正確性,因此Modbus TCP相對于Modbus協(xié)議來說,減少了LRC校驗域。Modbus TCP的報文格式如圖1所示。

圖1 Modbus TCP協(xié)議報文格式

2.2 蜜罐技術

蜜罐作為一種新興的攻擊誘騙技術,經過近些年的發(fā)展,已經在互聯(lián)網(wǎng)安全威脅監(jiān)測方向上得到了較為廣泛的應用[19]。Glastopf項目在github上發(fā)布了第一個開源工控蜜罐框架Conpot[20],該系統(tǒng)是工業(yè)控制系統(tǒng)服務器端的低交互的蜜罐技術,該框架實現(xiàn)了協(xié)議棧上的請求-應答交互,整體框架設計易于配置、部署、修改和擴展。使用者可以通過內置提供的各種通用工控協(xié)議,模擬構建基礎設施,構建所需的虛擬系統(tǒng)。

通常情況下,攻擊者利用漏洞的速度要比供應商創(chuàng)建和推出補丁的速度快得多,如果僅僅依靠傳統(tǒng)的防御方式,例如入侵檢測系統(tǒng)和動態(tài)防火墻,并不能對檢測出新的和正在出現(xiàn)的攻擊模式提供全面的覆蓋[21]。蜜罐是誘餌計算機資源,其價值在于被探測、攻擊或危害[22],蜜罐技術不是一種解決方法,相反它是一個工具,如何使用這個工具依賴于你期望它能取得何種結果。因此,我們提出應用工控蜜罐技術對工控攻擊者行為進行分析。

3 方法設計

3.1 數(shù)據(jù)流特征提取

網(wǎng)絡流量中包含許多冗余和與溯源無關的屬性,這些屬性會降低模型準確率,而且會增加基于CNN-LSTM模型的計算負載和計算復雜度。依據(jù)Moore等[23]提出的248個流量統(tǒng)計特征,本文依據(jù)工控協(xié)議Modbus TCP特有的數(shù)據(jù)報文特點,來進行基于流量統(tǒng)計特征的特征選擇,最終選擇了15種工控流量特征。選取特征及特征描述如表1所示,前6個為Modbus TCP特有特征,其余為流量傳統(tǒng)特征。

表1 流量層特征描述

3.2 基于CNN-LSTM的模型構建

根據(jù)2.1節(jié)介紹的Modbus TCP數(shù)據(jù)報文格式,依據(jù)數(shù)據(jù)流中的關鍵字段,轉化為可供CNN進行特征學習使用的多維向量。然后對設置的CNN卷積神經網(wǎng)絡進行卷積和最大值池化操作,隨后將CNN網(wǎng)絡輸出的特征向量作為LSTM網(wǎng)絡的輸入層,并加入注意力機制計算權值,使用反向傳播算法(Back Propagation algorithm,BP)對權值進行迭代尋優(yōu),以此找到最優(yōu)特征向量,最后進行數(shù)據(jù)流分類和模型評估。

具體方法是:

1) 由于數(shù)據(jù)包的二進制形式,若關鍵字段長為m/8字節(jié),將數(shù)據(jù)嵌入一個m維空間中,數(shù)據(jù)總量為n,則生成一個m×n的位矩陣。

2) 根據(jù)數(shù)據(jù)特性,我們使用一維卷積層進行卷積計算。其中,卷積核個數(shù)為k=3,過濾器大小為m×q,若步幅為2,那么該層輸出矩陣大小為3×(n/2)。

3) 在池化層,我們使用的最大值池化法(Max Pooling)來降低特征值的維度,并生成對應的特征圖。若窗口值為2,那么輸出特征圖大小為3×(n/4)。

4) 將CNN特征圖結果輸入至構建好的LSTM網(wǎng)絡中,此時輸入為5維特征向量c0。

5) 通過在LSTM網(wǎng)絡中進行無監(jiān)督學習訓練和有監(jiān)督的微調,得到數(shù)據(jù)特征l0,再使用基于注意力機制的模型優(yōu)化方法,對全連接層特征向量使用BP算法進行權值迭代優(yōu)化。

6) 通過Softmax激活函數(shù)對數(shù)據(jù)流特征向量實現(xiàn)進行歸一化,計算概率進行分類并使用交叉熵損失函數(shù)來進行模型評估。圖2顯示了本文方法的總體結構和流程。

圖2 總體結構和流程

3.3 基于注意力機制的模型優(yōu)化方法

注意力機制(Attention Mechanism)是將有限的注意力資源聚集到具有大量數(shù)據(jù)包中部分關鍵的信息維度上,從而避免將資源平均到各個信息維度上所造成的資源浪費和精度降低。從本質上看,注意力機制就是對輸入內容的加權并求和。計算公式如式(1)所示。

Z=tanh(WtY+bt)

α=softmax(wTZ)

R=YαT

(1)

式中:Wt代表t時刻的權值矩陣;Y代表數(shù)據(jù)特征l0所組成的矩陣;bt則為有監(jiān)督微調下的偏差值;α為注意力向量;w代表迭代尋優(yōu)的權值矩陣;R代表基于注意力機制的數(shù)據(jù)流表達。在注意力機制基礎下,我們選擇BP算法來對權值矩陣進行迭代尋優(yōu),使模型特征向量的偏差值達到最小。BP算法包含激勵傳播和權值更新兩個階段,第一個階段通過將訓練輸入網(wǎng)絡來獲得激勵,再通過反向輸入對應的目標來得到隱層和輸出層的誤差。第二個階段通過式(2)來進行權值更新。

wn=w0-δ(l0w0-bn)

w=(w1,w2,…,wn)T

(2)

式中:w0表示初始權重;δ為梯度的修正比例;bn為第n個偏置項。

根據(jù)我們提出的基于CNN-LSTM神經網(wǎng)絡模型通過一系列訓練學習調整得到了特征向量值等,為了解決流量分類的問題,我們通過Softmax激活函數(shù)來計算概率,計算公式如式(3)所示。

(3)

由于模型參數(shù)以及向量預測高度復雜等多重因素的影響,LSTM神經網(wǎng)絡無法做到準確的預測。我們計算了真實值與估計值的偏差,并以交叉熵損失來評估模型的輸出,交叉熵的值越小,實際與期望差距越小。交叉熵的計算公式如式(4)所示。

(4)

式中:概率分布p(xi)為期望輸出;q(xi)為實際輸出。我們通過迭代注意力向量和注意力矩陣來降低交叉熵損失。

4 實 驗

為了測試模型的性能,通常的方法是將一個標準的標記數(shù)據(jù)集分成兩部分,一部分訓練網(wǎng)絡模型,另一部分用于測試其準確性。據(jù)我們所知,很少有公共工控蜜罐數(shù)據(jù)集來對攻擊組織、攻擊事件進行標定,例如Shodan組織對某水處理廠設備的掃描序列、攻擊組織對某電廠基礎設備的攻擊事件等。因此,我們花費超過十二個月的時間來進行工控蜜罐數(shù)據(jù)收集,以此來進行對模型的實驗評估和同源攻擊分析。

4.1 數(shù)據(jù)收集

我們通過部署分布式工控蜜罐,并在不同國家的虛擬專用服務器(Virtual Private Servers,VPS)上部署了16個分布式的蜜罐節(jié)點,VPS部署國家包括中國、以色列、巴西、美國、英國、南非、德國和加拿大等,收集了專有的工控蜜罐數(shù)據(jù)集,蜜罐以Conpot[20]框架為基礎進行開發(fā),它們可以在預先定義好的響應機制下進行響應請求,并設置了蜜罐數(shù)據(jù)捕捉模塊,捕獲與攻擊者的所有交互數(shù)據(jù)流。為了使蜜罐更具欺騙性,我們根據(jù)反蜜罐識別的一些措施,更改了Conpot蜜罐框架的一些自定義屬性和字段,改變硬編碼特征,以達到欺騙攻擊者的目的。此外,每個蜜罐集成了開源認證發(fā)布-訂閱協(xié)議(Hpfeeds),將捕獲的數(shù)據(jù)傳輸?shù)綌?shù)據(jù)中心Mongodb數(shù)據(jù)庫中。工控蜜罐構造和部署如圖3所示。

圖3 蜜罐構造和部署

基于CNN-LSTM的工控協(xié)議同源攻擊分析主要是依靠網(wǎng)絡數(shù)據(jù)流進行分析,因此,本文方法對于所有的工控協(xié)議具有一定的通用性。蜜罐數(shù)據(jù)總量達17 315條Modbus TCP數(shù)據(jù)包,每月收集數(shù)量如圖4所示。

圖4 蜜罐Modbus TCP收集數(shù)據(jù)量

4.2 實驗設置

蜜罐環(huán)境中,通常認為所有的流量均為攻擊者的惡意流量。由于一些國家法律等原因,具有資質的物聯(lián)網(wǎng)設備服務商、設備掃描引擎等企業(yè)會公開所擁有的設備掃描IP節(jié)點,這就使得我們可以對其中一部分數(shù)據(jù)進行標記。具體地,我們通過反查DNS的方式,對所有蜜罐攻擊源中的Shodan、Censys[24]和Plcscan[25]節(jié)點進行統(tǒng)計,得到一系列有標識的數(shù)據(jù)用于調整模型。以Modbus根據(jù)反查DNS的結果,Shodan、Censys,Plcscan等組織的ip數(shù)量分別為:27、16、18。而數(shù)據(jù)流中,這三個組織的攻擊事件數(shù)量分別為3 579、1 854和2 325。

無監(jiān)督的學習和有監(jiān)督的微調[26]消除了學習時人為標記的瓶頸,增加了原始數(shù)據(jù)的計算能力和可用性。因此,我們首先使用數(shù)據(jù)流特征以及基于CNN-LSTM的模型進行無監(jiān)督的學習和訓練。其次,根據(jù)模型優(yōu)化策略,我們使用BP算法,根據(jù)最優(yōu)交叉熵值的變化進行注意力權值迭代,以此來達到對模型有監(jiān)督的微調。最后,由于蜜罐數(shù)據(jù)集的特殊性,并沒有完全的標識數(shù)據(jù)可供訓練和驗證,相比于完全的無監(jiān)督學習,本文方法可以最大程度地保障基于CNN-LSTM的分類模型的性能。

在實驗分類結果驗證方面,有標簽數(shù)據(jù)進行十折交叉驗證;無法反查DNS信息的攻擊源通過比對公開的惡意IP庫-IBM X-Force Exchange[27]進行攻擊組織對比驗證。IBM X-Force Exchange作為公開的情報分析庫可以找到在近5年內,某一IP的活動情況,包括其何時被識別為掃描IP、何時自動運行木馬、是否運行惡意軟件。這樣的驗證方式不能全面地考察所有惡意IP的攻擊組織情況,但是這是現(xiàn)有數(shù)據(jù)下最好的驗證方式。

4.3 實驗結果

通過對預處理的數(shù)據(jù)流字段嵌入基于CNN-LSTM的模型中進行一系列處理,我們基于Softmax激活函數(shù)計算概率進行流量分類,相比較于基于無參的貝葉斯模型聚類[6]、基于TTL存活時間特征的攻擊組織檢測[4]、基于位置信息的傳統(tǒng)分析方法[5]和基于Partial Seeded的K-Means聚類方法[9],本文方法具有更高的精度和F值(F1 Score)。實驗結果對比如圖5所示。此時,本文的準確率為93.7%,召回率為90.5%;而基于TTL特性方法的準確率為75.4%,召回率為61.3%;基于無參貝葉斯模型方法準確率為82.9%,召回率為87.1%;基于Partial Seeded的K-Means模型準確率為91%,召回率為79.3%,這一模型是除本文方法外最好的;基于物理信息的準確率為75%,召回率為64.7%。綜上顯示,基于CNN-LSTM的工控協(xié)議同源攻擊檢測方法對于工控蜜罐數(shù)據(jù)集,具有最好的性能表現(xiàn)。

圖5 各模型實驗結果對比

對本文模型來說,更多的迭代次數(shù)意味著時間消耗的增加,圖6顯示了迭代次數(shù)和交叉熵趨勢、模型F值之間的關系,可以看出迭代次數(shù)越高,模型性能越好。然而在迭代42次之后,兩條曲線變化趨勢放緩,我們認為這一迭代次數(shù)是綜合時間復雜度和模型性能來看最適合的。

圖6 迭代次數(shù)與交叉熵趨勢和F值的關系

根據(jù)模型的迭代推優(yōu),我們基于CNN-LSTM的工控協(xié)議同源攻擊檢測方法發(fā)現(xiàn)了包括Shodan、Censys、Plcscan,東北大學和密歇根州立大學等在內的10個攻擊(包括設備掃描)組織,一共涉及的IP數(shù)量超過200個。

5 結 語

本文提出一種基于CNN-LSTM的工控協(xié)議同源攻擊檢測方法。通過提取數(shù)據(jù)流中的序列和字段特征,經過CNN進行數(shù)據(jù)流特征卷積、池化運算,將生成的特征向量輸入LSTM進行序列學習。加入注意力矩陣,使用BP算法進行權值尋優(yōu)和更新,而后基于Softmax激活函數(shù)得到分類概率值的同時使用交叉熵函數(shù)進行模型評估。在處理離線蜜罐數(shù)據(jù)時,模型隨著長時間的迭代,相比其他模型具有最優(yōu)的準確率和召回率,有最好的F值效果。我們通過基于CNN-LSTM的工控協(xié)議同源檢測方法發(fā)現(xiàn)了10個攻擊組織,涉及IP超過200個。

猜你喜歡
蜜罐工控數(shù)據(jù)流
汽車維修數(shù)據(jù)流基礎(下)
蜜罐蟻
中外文摘(2019年20期)2019-11-13 02:57:53
被自己撐死的蜜罐蟻
知識窗(2019年6期)2019-06-26 04:27:09
基于博弈的蜜罐和入侵檢測系統(tǒng)最優(yōu)配置策略
一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機制
哈密瓜:鄉(xiāng)間蜜罐
中國三峽(2017年4期)2017-06-06 10:44:22
工控速派 一個工控技術服務的江湖
工控速浱 一個工控技術服務的江湖
熱點追蹤 工控安全低調而不失重要
基于攻擊圖的工控系統(tǒng)脆弱性量化方法
自動化學報(2016年5期)2016-04-16 03:38:47
鸡东县| 大化| 合作市| 来宾市| 海门市| 潜山县| 枣强县| 莒南县| 台州市| 文水县| 扶绥县| 藁城市| 信阳市| 教育| 武鸣县| 宽城| 碌曲县| 图木舒克市| 申扎县| 会昌县| 伊通| 南充市| 泰安市| 水富县| 边坝县| 醴陵市| 常宁市| 岱山县| 新源县| 合水县| 新余市| 夏津县| 繁峙县| 辽中县| 游戏| 乐业县| 静宁县| 玉屏| 安达市| 鄢陵县| 玉溪市|