(數字廣東網絡建設有限公司,廣東 廣州 510030)
工業物聯網作為人工智能、大數據、云計算、互聯網、信息化等各種先進技術高度融合的產物,以深度分析、精準估計、靈敏感應技術為特征,將全球的工業系統進行快速連接,涵蓋工業控制、供應鏈管理、大數據存儲分析、人工智能快速決策等功能,是智能制造的核心基礎設施[1]。工業物聯網驅動全球智能制造發展的同時,也帶來復雜多變的網絡安全問題,從而限制了工業物聯網的高效、安全發展。鑒于此,很多學者紛紛投入大量的精力來研究工業互聯網的安全問題和應對策略。比如程月平[2]通過分析工業物聯網數據交互、轉換等核心作用后,分析工業物聯網主要面對設備層面、控制系統層面、網絡層面、數據層面、人員管理層面以及APT攻擊層面的安全威脅后,提出主動排查安全漏洞、保障遠程訪問的安全性、應急響應與攻擊檢測、補丁和漏洞管理、態勢感知以及 PCS 策略等安全管理措施;張宏斌等人[3]提出我國在工業4.0 時代存在工控網絡安全防護手段的問題,結合不同環境、業務對工控網絡進行實時監測和智能化分析,實現工控網絡安全事件及時發現、故障快速定位、數據存儲回溯等功能;劉廉如[4]等人針對工業物聯網存在工業安全事件高頻化,漏洞增長快速化,攻擊方式多元化,網絡邊界模糊化等問題,提出防護對象、防護措施和防護管理三個維度的安全框架;吳東方[5]針對工業網絡入侵監測的不確定性問題,提出一種基于流量特征圖的工業物聯網入侵模型,解決工業網絡檢測不確定性和泛化能力差的問題;李青[6]針對基于流量特征檢測工業網絡入侵行為樣本不足的問題,提出一種基于概率估計的快速決策樹分類算法,提升模型對數據流演變的適應性問題。
從上述研究可知,工業物聯網的安全研究通常是從流量數據入手,通過對流量進行降維、特征提取等處理方式實現工業物聯網異常行為的檢測。工業物聯網作為一個開放的系統,難以構建統一的安全防護平臺,因此,本文將利用工業物聯網簇頭對工業物聯網網絡節點進行巡視,結合節點數據包完整性、數據包傳輸率和傳輸延遲等異常行為檢測指標和信譽閾值的變化情況,形成一種以數據驅動為主要方式的巡視間隔自適應設置機制,實現工業物聯網異常行為檢測的自適應巡視。該算法在不增加網絡負擔的情況下實現高精度、自適應的巡視,更加符合節能環保和工業物聯網網絡安全的需求。
傳統的工業物聯網由于過分追求覆蓋范圍的廣域性,存在各節點能量消耗不平衡、節點功能劃分不科學等問題。針對上述問題,本文兼顧效率和能耗兩方面,提出一種自適應巡視算法的工業物聯網安全異常行為檢測模型。在介紹模型之前,先介紹基于節點層級劃分的異常行為檢測網絡模型。節點層級劃分是將工業物聯網所有的節點分為3 類:普通節點、簇頭節點和匯聚節點。普通節點負責基礎數據采集和通信數據交互等任務;簇頭節點負責記錄普通節點的通信行為,動態更新普通節點的信譽值,對接匯聚節點的通信行為,協助匯聚節點對普通節點行為進行檢測和信譽值更新等任務;匯聚節點通常位于網關的位置,是網絡結構中最高權限的節點,負責無線網絡和路由之間數據匯聚,與簇頭節點進行通信,并對網絡所有節點通信行為管理等任務。異常行為檢測網絡結構模型如圖1 所示。

圖1 異常行為檢測網絡結構模型
圖1 展現了基于節點層級劃分的異常行為檢測網絡結構。如何選取簇頭節點是構建檢測網絡結構模型的關鍵問題。
在進行網絡分組前需要選取簇頭節點,本文采用網絡節點重要度方法來選取簇頭節點。而網絡節點重要度往往通過介數和信譽度來衡量。
節點的介數定義為網絡傳輸過程中所有最短路徑中經過該節點的路徑數目占最短路徑總數的比例。

其中,Bi表示節點i的介數,njk(i) 表示表示數據從節點j傳到節點k經過節點i的最短路徑數量,njk表示網絡傳輸中所有最短路徑的數量。
節點信譽度定義為網絡傳輸過程中該節點數據包完整性、數據包傳輸率和傳輸延遲的綜合評估值。
數據包完整性表示檢測節點是否存在篡改數據包的異常行為。

其中,Pi表示節點i轉發數據包的完整性。NiR表示節點i正確轉發數據包的次數;Ni表示節點i轉發數據包的次數。通常采用幀頭+數據長度+數據+校驗值的方式判斷數據包轉發數據的正確性。
數據包傳輸率表示下一路由節點能夠成功接收到源節點數據包的概率。

其中,Di表示節點i轉發數據包的傳輸率;表示節點q接收來自節點i的數據包數量;Diq表示節點i發出數據包數量。q∈Γ(i) 表示節點i的鄰居節點。
傳輸時延Ti表示節點i接收或者轉發數據包的時間間隔。

Td表示節點i接收或者轉發數據的實際時間;Tc表示通信周期。
那么節點i的信譽度為:

其中,ω1+ω2+ω3=1。
那么,節點i的重要度為:

將節點重要性按照降序排序,選取前k個節點作為簇頭節點;然后,采用K-means 的算法實現網絡分組,以k個簇頭節點作為聚類中心,計算其他節點與簇頭節點的距離;最后,根據距離遠近的原則將節點聚類到不同的簇頭中,實現網絡分組,構建異常行為檢測的網絡結構。
檢測節點是否存在異常是工業物聯網異常行為檢測的主要目標,基于節點通信行為評估計算節點信譽度,結合信譽度的變化來更新巡視頻率,進而判定節點是否存在異常。考慮到工業物聯網是一個全天候運行的系統,需要在無人干預的情況下,在數據傳輸過程中引入信譽度評估和自適應巡視機制,在不增加網絡負荷的情況下實現網絡異常節點判定。異常行為檢測模型如圖2 所示。

圖2 安全異常行為檢測模型
自適應巡視機制,是基于匯聚節點檢測到的普通節點真實信譽值與預測值之間的誤差,對巡視間隔進行自適應更新,采取不同的頻率對普通節點進行檢測。自適應巡視機制如圖3 所示。

圖3 自適應巡視機制
基于采樣時刻、前一時刻和后一時刻的節點異常行為檢測指標,計算節點在當前時刻的信譽度,然后結合前一時刻和后一時刻節點的信譽度對當前時刻節點的信譽度進行預測。基于時間序列預測節點i的信譽度預測值為:

進一步,對比真實采樣時刻節點信譽度和基于時間序列預測的節點信譽度之間的誤差,根據誤差大小調整巡視間隔:如果誤差大于設定誤差閾值,縮小巡視間隔,反之亦然。
本文實驗區域是某個區的LoRa 物聯網試驗網,覆蓋半徑1.25 公里,在此區域內隨機部署了200 個信息采集節點(包括10 個簇頭節點),其中匯聚節點和簇頭節點的位置固定,信息采集節點傳輸數據的時間是隨機的。為了驗證本文算法的有效性,實驗區域設置40 個惡意節點,惡意節點會在任何時候對其他節點進行連續性攻擊。本實驗所有匯聚節點可在所有采集節點之間實現自由通信。匯聚節點仿真參數設置如表1 所示。
為了清晰展示本文算法和LEACH-C[7-10]傳統算法的能耗性能差異,本文將參考相關學者[11]的研究,將本文算法的信譽度閾值設置為0.8,檢測時間是300 s。從信息采集節點的存活時間和網絡能量消耗兩方面進行對比。

表1 匯聚節點的參數設置
圖4 是本文模型與LEACH-C 傳統算法在受到惡意節點攻擊后存活節點數量的對比情況。從圖4 可知,本文模型與傳統的路由協議相比,其存活時間延長了25.8%。出現這種情況的原因是:當出現死亡節點后,匯聚節點通過巡視機制識別惡意節點并將其移除到網絡外。
圖4 顯示,本文模型在10 分鐘之內識別并移除了所有惡意節點到網絡之外,正常節點在19 分鐘以后能量逐漸消耗殆盡,節點最長存活時間為31 分鐘;而LEACH-C 傳統算法則在16 分鐘時出現第一個死亡節點,并迅速惡化,節點存活時間僅為23 分鐘。

圖4 網絡剩余節點對比
網絡中每一個采集節點的初始能耗為2 焦/ 分鐘,惡意節點對其他信息采集節點進行攻擊后,信息采集節點的能耗迅速提升,圖5 展示了采用本文的自適應巡視機制和LEACH-C 傳統算法下的能量消耗對比。

圖5 網絡能量消耗對比
受到惡意節點攻擊后,LEACH-C 傳統算法的能量消耗平均為17 焦/分鐘;而本文模型的能量消耗平均為12焦/分鐘。這是因為本文模型采用自適應巡視機制發現異常節點并對異常節點進行快速清除,從而實現能耗的降低。
本文針對工業物聯網存在高能耗安全防護問題,提出基于自適應巡視算法的工業物聯網異常行為檢測模型。該模型在構建異常行為檢測網絡結構的基礎上,結合節點的網絡介數和信譽度選取簇頭節點;然后,采用自適應巡視機制確定匯聚節點巡視時間間隔;最后,根據工業物聯網實際情況自適應調整節點巡視頻率。實驗證明,本文所采用的自適應巡視機制能夠在一定程度上降低網絡能耗和延長節點的生存時間。本文的方法雖然能夠較為全面檢測惡意節點,但是沒有涉及節點的抗毀性問題。擬在后續工作中針對該問題繼續研究。