戴建東,戴昊洋
(1.南京理工大學 科學與工程學院,南京 210094;2.新加坡南洋理工大學 數理科學學院,新加坡 639798)
網絡入侵指的是黑客或非法用戶通過網絡對用戶機進行遠程操控或破壞的訪問行為,在動態網絡技術不斷發展的大背景下,大量的網絡入侵攻擊事件頻繁發生,不僅干擾了網絡的安全性與穩定性,同時也降低了網絡數據的完整性與正確性[1]。據不完全統計,物聯網環境入侵事件占全部網絡入侵事件的74%左右,直接給物聯網異構傳感數據的傳輸與存儲產生負面影響。物聯網是以傳輸協議作為約束條件,利用信息傳感器設備將任意物體連接到互聯網中,實現設備的智能化識別、定位、監控和管理的一種網絡。在物聯網環境下,異構傳感數據的質量直接決定了物聯網控制任務的執行效率,為了降低網絡入侵事件對物聯網中異構傳感數據造成的破壞,提出入侵風險識別方法。
入侵風險識別是一種主動的網絡防御機制,它通過對數據、信息、網絡行為的監測,識別破壞網絡的機密性和完整性的入侵行為,并對可能發生的入侵事件進行報警,從而達到對網絡的安全防護。入侵風險識別是網絡安全的第二道防線,它是一種有效的防范措施,進一步提升了網絡的安全防護水平。目前發展較為成熟的網絡數據入侵風險識別方法大多使用了深度學習網絡、貝葉斯攻擊圖以及粒子群算法優化深度極限學習機回歸算法(PSO-ELM, particle swarm optimization-extreme learning machine)算法,然而現有的異構傳感數據入侵風險識別方法主要針對的是通信網絡,將其應用到物聯網環境中存在識別效果不佳的問題,主要體現在識別精度低、識別結果時效性低等方面,其主要原因是物聯網中傳輸的數據均為異構數據。為此面向物聯網環境對異構傳感數據入侵風險識別方法進行優化,以期能夠為物聯網異構傳感數據的安全傳輸與存儲提供有效的輔助工具。
為此,本文提出一種基于物聯網的異構傳感數據入侵風險識別方法,有效降低識別方法的風險值識別誤差,提高風險類型識別正確率,縮短風險識別方法的響應時間。
由于各種網絡攻擊方式具有相似的數據變化特征,因此可以通過分析異構傳感數據特征的方式進行入侵風險識別[2]。優化設計的異構傳感數據入侵風險識別方法大體包括3個階段,分別為采集、學習和動態優化,并得出包括入侵風險等級、風險類型以及風險位置的識別結果。
根據物聯網的層次組成可以將其分為感知層、接入網絡層、中間件層等部分,組成的物聯網結構如圖1所示。

圖1 物聯網結構架構圖
其中,大部分的物聯網感知層都是由普通節點、簇頭節點和匯聚節點構成的分簇結構。由基站將物聯網的感知層和網絡層連接起來,將感知層所收集到的信息傳輸到傳統的網絡中,從而完成對數據的遠程采集和控制[3]。中間件層的功能主要包括數據存儲、異構數據檢索、數據挖掘和隱私保護等。而接入網絡層的基本理念就是以已有的互聯網為主要的傳輸與分享載體的交換平臺。按照上述結構對組成物聯網的硬件設備進行連接,完成物聯網結構模型的構建。
物聯網異構傳感數據面臨多種類型的入侵攻擊,具體的入侵攻擊類型及其攻擊原理如表1所示。

表1 物聯網異構傳感數據入侵攻擊類型說明表
以欺騙入侵攻擊類型為例,攻擊者必須先確認目標的位置,然后關掉偽裝的宿主,或者讓宿主沉睡,然后偽造宿主的位置,再用假宿主的身份與宿主進行聯系,最終確定宿主的編號[4]。在完成這個步驟時,攻擊者必須將一個連接請求發送給一個目標主機,這個主機用一個序列號來回應,攻擊者記錄序列號后關閉鏈接,并利用該序列號用來進行身份驗證。同理可以得出其他網絡入侵攻擊類型的作用過程,得出不同類型入侵攻擊作用下,網絡流量與異構傳感數據的變化特征,以此作為識別當前異構傳感數據入侵風險的比對標準[5]。
采用周期性數據采集模式,利用物聯網中的傳感器設備進行實時異構傳感數據的采集,數據采集模式如圖2所示。

圖2 異構傳感數據采集模式圖
根據配置進行周期性的數據采集,再經過初步融合、清洗等處理,最終將處理后的數據作為報文的形式傳送給報文隊列[6]。為保證不同傳感器產生異構數據之間的計算,需要對初始異構數據進行歸一化處理,處理結果可以表示為:
(1)
式(1)中,x和xUnify分別為歸一化處理前后的傳感數據,μ和σ對應的是初始采集數據的平均值和標準差[7]。在此基礎上對統一結構的傳感數據進行融合處理,采用動態的融合方式利用式(2)計算任意兩個傳感數據之間的相似度。
(2)
若式(2)的計算結果低于設置閾值,則直接對傳感數據xi和xj進行融合處理,否則需要重新對該數據進行規范化處理,最終得出的數據融合結果滿足如下關系式:
(3)
其中:Xi為物聯網異構傳感數據的融合處理結果,N表示融合傳感數據的數量,xmin和xmax分別為初始采集數據中的最小值和最大值。重復上述步驟,直到采集的所有物聯網異構傳感數據均融合完成為止。
為實現對物聯網異構傳感數據入侵風險的識別,首先需要以采集并處理的物聯網異構傳感數據為基礎,分別從實時數據以及數據變化兩個方面,提取數據特征[8]。設置的實時異構傳感數據特征參數包括傳感數據流量、互聯網協議(TCP,transmission control protocol)連接數、上下行流量差異等,以傳感數據流量為例,該特征參數的提取結果可以表示為:
(4)
式(4)中,變量λsend-i為i信道中的發送數據量,該變量的具體取值由傳感器設備決定,d為物聯網的信道帶寬,loccupy表示當前物聯網異構傳感數據傳輸占用的信道數量[9]。由于多個不同的傳感器設備都在同時進行不同的TCP連接,因此,流量特征參數可采用建立和拆除 TCP 連接時通信的特定報文的數量來進行標識,即TCP連接數特征參數的提取結果可以表示為:
(5)
式中,χFIN、χRST和χSYN分別表示的是FIN(FINish)報文、RST(ReSeT)報文以及SYN(synchronize sequence numbers)報文的數量。物聯網環境中安裝了多個主機和傳感器設備,各個設備的網絡行為均不一致,上傳和下載方式也會有不同,多個傳感數據流量合并后,總的上、下的差別會有不同程度的減小,所以一般情況下,不同類型的物聯網異構傳感數據之間的數據流會有很小的差別[10]。因此可以利用網絡的上下行流量之間的差值和總的網絡流量的比例來表示上下行流量差異特征參數。從物聯網異構傳感數據變化情況來看,可設置異構傳感數據信息熵和信息增益特征參數來反映數據的時域變化特征,提取結果如下:

(6)
其中:I(xi)代表任意時刻采集的異構傳感數據總量,|Di|和|D|分別對應的是傳感器i采集的樣本數以及樣本所含的總數[11]。整合提取的所有物聯網異構傳感數據的特征提取結果,得出數據綜合特征記為τz。
根據物聯網異構傳感數據的特征提取結果,從入侵攻擊強度和入侵攻擊概率兩個方面進行入侵風險值的計算。根據非法用戶的入侵攻擊目標,可以將入侵攻擊強度分為節點入侵、主機入侵和網絡入侵3個部分,其中節點入侵攻擊強度是物聯網中的某個節點遭受入侵攻擊及其所造成的影響,物聯網中任意一個節點v的入侵攻擊強度計算公式如下:
βnode(v) =CF(v)·cost(v)
(7)
式中,變量CF(v)和cost(v)分別表示的是物聯網節點v的入侵攻擊信度以及攻擊損失,其中變量cost(v)的具體取值與物聯網異構傳感數據的信息增益特征有關[12]。同理可以得出物聯網中主機入侵攻擊和網絡入侵攻擊的攻擊強度計算結果:

(8)
其中:β(c)表示的是物聯網中主機節點c的攻擊強度值,cNode(w)表示物聯網主機設備上節點組成的集合,另外βhost(h)為物聯網中主機設備h的攻擊強度,Htarget為物聯網中主機集合[13]。入侵攻擊概率是一個定量的衡量物聯網異構傳感數據受到攻擊可能性的量化指標,根據層次的不同可以將入侵攻擊概率分為節點、主機和網絡入侵攻擊概率3個部分,具體的計算結果可以表示為:
(9)
式(9)中,Pr(v)表示的是物聯網攻擊的所有節點集合,G和T分別為攻擊收益和入侵威脅狀態變量,Phost(w)和Pnet(Htarget)分別為主機入侵概率和網絡入侵概率的計算結果,參數cNode(w)和Htarget與式(8)相同[14]。最終將物聯網異構傳感數據入侵攻擊強度和概率的計算結果代入到式(10)中,得出入侵風險值的計算結果。
Risk= ∑Pi(v)βi(v)
(10)
式中,i取值為node、host和net。由于物聯網異構傳感數據處于動態變化的狀態,因此在入侵風險值計算過程中需要風險值計算結果的時效性。
依據物聯網異構傳感數據的特征提取結果以及風險值計算結果,從風險等級、風險類型以及入侵位置3個方面得出風險識別結果。
2.3.1 入侵風險等級識別
將物聯網異構傳感數據的入侵風險劃分成4個等級,風險等級的劃分標準如表2所示。

表2 入侵風險等級劃分標準
將物聯網異構傳感數據入侵風險的計算結果與表2中的數據進行對比,若無法通過風險值直接識別風險等級,可以結合入侵攻擊強度和概率確定當前物聯網的入侵風險等級[15]。
2.3.2 入侵風險類型識別
通過計算不同入侵攻擊類型設置特征與實時異構傳感數據提取特征之間的匹配度,確定當前物聯網的入侵風險類型,具體的識別過程如圖3所示。

圖3 物聯網異構傳感數據入侵類型識別流程圖
從圖3中可以看出,異構傳感器數據入侵類型識別包括訓練和測試兩個階段,訓練階段主要通過設置的入侵類型特征標準構建分類器,依據建立的分類器運用提取的異構傳感數據特征劃分實時異構傳感數據的入侵類型[16]。構建分類器的分類函數如下:
(11)
其中:Li(X)為弱學習器函數,αi表示的是Li(X)的組合權重,M表示設置分類器的數量[17]。將提取的物聯網異構傳感數據特征與設置的入侵標準特征導入到分類器中,得出匹配度輸出結果:
(12)
將式(12)的計算結果按照降序順序排列,匹配度最高的入侵攻擊類型即為當前物聯網異構傳感數據入侵風險類型的識別結果。
2.3.3 異構傳感數據入侵風險識別結果可視化輸出
經過入侵風險識別若確定物聯網存在入侵風險,且風險等級達到I級和II級,則需啟動告警程序,將相關的入侵信息上傳給物聯網服務器以及各個終端[18]。比較物聯網上各個節點傳感數據的相似度,判定數據異常節點為物聯網的入侵節點,確定該節點的作為入侵IP地址。最終將包含入侵風險等級、入侵類型以及入侵位置的識別內容以可視化的形式輸出。
為了驗證優化設計的基于物聯網的異構傳感數據入侵風險識別方法的有效性與可行性,通過模擬網絡入侵的方式,測試設計入侵風險識別方法的運行性能,并通過與傳統識別方法的對比,體現出設計方法的識別性能優勢。
選擇某個自動化生產工廠作為實驗環境,在該環境下構建并配置物聯網環境。分別安裝服務器、路由器以及網關設備,部署一個消息隊列遙測傳輸協議(MQTT,message queuing telemetry transport)代理,代理基于Eclipse Mosquitto v1.6.2 實現。與路由器直接相連的有13個不同類型的傳感器,分別為溫度傳感器、濕度傳感器、光照強度傳感器、煙霧傳感器、機床啟動狀態傳感器、聲音強度傳感器、加工刀具運動信息傳感器等,由于傳感器采集的數據內容不同,因此不要求傳感器生產廠家與型號的統一性[19]。將實驗環境中安裝的傳感器設備設置成不同的IP地址作為唯一表示,并將所有的傳感設備調整至啟動狀態。構建物聯網實驗環境的覆蓋面積為500 m*500 m,圖4表示的是實驗配置物聯網環境的拓撲結構。

圖4 實驗研究物聯網拓撲結構圖
為方便物聯網異構傳感數據的采集,需要在實驗環境中安裝一個采集器設備,要求該設備支持物聯網的受限制的應用協議(CoAP,the constrained application protocol)通信傳輸協議,數據采集器通過節點和通信參數來配置網絡方案,具體設置參數包括節點IP 地址、監聽端口等[20]。此外,實驗環境中還配置了兩個計算機設備,一個作為異構傳感數據入侵風險識別方法運行的硬件支持,另一個設置為惡意節點,用來發動入侵攻擊。
安裝的惡意計算機具有強大的儲存與備份能力,所以可以設置并支持多個數據的入侵攻擊程序,當攻擊者取得網絡管理權限后,便可以將其重定向到此web服務器以下載相關的惡意軟件二進制文件。為了更好地反映實際的攻擊場景,將物聯網異構傳感數據與惡意計算機分在不同的子網中,為了保證網絡覆蓋足夠多的惡意行為。實驗分別設置高級長期威脅(APT,advanced persistent threat)入侵攻擊、欺騙入侵攻擊、主機模擬入侵攻擊、暴力入侵攻擊等多種不同類型的入侵攻擊,并利用編碼工具將入侵攻擊模式轉換成計算機可以直接運行的程序代碼。為了保證攻擊程序的可控性,在編寫程序時加入兩個強制控制指令,實現對攻擊程序的控制,并保證同一時間物聯網不會受到兩種入侵程序的攻擊。在實驗過程中,分別記錄入侵攻擊程序的運行狀態,以此作為判定設計方法入侵類型識別結果的比對標準。
利用物聯網環境中的傳感器設備獲取實驗使用的數據樣本,數據樣本大體可以分為兩種類型,一種為無入侵攻擊下的異構傳感數據,另一種為存在入侵攻擊的異構傳感數據,其中正常數據樣本19 454條,數據大小約為30.5 GB,入侵數據樣本共43 346條,數據大小約為52.3 GB,每條異構傳感數據樣本均包含41位屬性和一位標簽。受到實驗平臺存儲空間的限制,從數據集選擇6 000個樣本作為初始訓練集,并從每個標簽中選擇一定數量的數據,以確保訓練集合的代表性。將其余數據平均分成8組,采用多次實驗求平均值的方式,得到可信度較高的實驗結果。
在實驗環境中硬件設備調試成功的前提下,將優化設計的異構傳感數據入侵風險識別方法轉換成程序代碼,導入到主測計算機中。啟動入侵風險識別程序,并逐一代入準備的異構傳感數據樣本,得出入侵風險識別結果,如圖5所示。

圖5 物聯網異構傳感數據入侵風險識別結果
按照上述方式可以得出物聯網任意時間段的入侵風險識別結果。為了體現出優化設計方法的性能優勢,實驗設置傳統的基于深度學習網絡的物聯網入侵識別方法作為實驗的對比方法,兩種識別方法采用相同的開發程序進行代碼轉換,且運行環境與處理數據樣本均相同,以此來保證實驗變量的唯一性。
此次實驗分別從異構傳感數據入侵風險識別的識別精度性能和識別結果的時效性能兩個方面進行測試,入侵風險識別精度性能越優,為物聯網入侵防御工作提供數據的價值越高,越有利于提高物聯網的安全性。從識別結果的時效性方面來看,異構傳感數據入侵風險的快速識別,能夠為入侵防御工作的建設提供充足的空間,因此識別結果時效性越高對于物聯網的運維越有利。此次實驗分別設置風險值識別誤差和風險類型識別正確率兩個指標來反映識別方法的精度性能,其中入侵風險值識別誤差的數值結果為:
εrisk=|Risk-Riskact|
(13)
其中:Risk和Riskact分別為物聯網異構傳感數據入侵風險的計算值和實際值,Risk可通過式(10)直接計算得出,Riskact的具體取值由編寫的攻擊程序決定。風險類型識別正確率指標的測試結果可以表示為:
(14)
式中,Numcorrect和Numall分別對應的是入侵風險類型識別正確異構傳感數據的數量以及設置的數據樣本總量,根據實驗樣本的準備情況,每組實驗中Numall的取值均為7 100條。另外,入侵風險識別結果時效性的量化測試指標設置為入侵風險識別響應時間,其數值結果如下:
ΔT=tout-tin
(15)
式中,tin和tout表示的是異構傳感數據樣本的輸入時間和入侵風險識別結果的輸出時間,上述兩個參數的具體取值可通過調取上位機的后臺運行數據直接得出。最終計算得出風險值識別誤差的值越小、風險類型識別正確率,證明對應識別方法的精度性能越優,識別響應時間越短說明對應識別方法的時效性越高。
通過相關數據的調取與統計,得出異構傳感數據入侵風險識別精度性能的測試結果,如表3所示。

表3 異構傳感數據入侵風險識別精度性能測試數據表
將表3中的數據分別代入到式(13)和式(14)中,計算得出對比識別方法的平均風險值識別誤差為0.017 5,類型識別正確率的平均值為98.3%,優化設計方法的平均風險識別誤差和風險類型平均識別正確率分別為0.002 5和99.9%,即優化方法的入侵風險識別精度性能更優。此外,通過式(15)的計算,得出識別方法失效性能的測試對比結果,如圖6所示。

圖6 入侵風險識別方法時效性測試對比結果
從圖6中可以直觀地看出,與傳統識別方法相比,優化設計方法的響應時間更短,由此證明優化方法得出識別結果的時效性更高。
物聯網是智能時代的產物,實現了物與物、人與物之間的通信,為生產、生活的自動化運行與管理提供了技術支持,可以說,物聯網的運行安全性直接影響了生活質量以及生產效率。通過基于物聯網的異構傳感數據入侵風險識別方法的優化設計,為物聯網提供了網絡安全保障,有利于物聯網及其技術的推廣。然而此次優化設計的入侵風險識別方法未考慮非法用戶同時使用多種入侵攻擊方式的情況,針對這一問題還需要在未來的研究工作中進一步探討。