?

車聯網環境下基于CNN-LSTM的行駛信息欺騙攻擊檢測

2024-01-09 16:54梁樂威陳宇峰向鄭濤游康祥周旭
江蘇理工學院學報 2023年6期
關鍵詞:信標卷積深度

梁樂威,陳宇峰,向鄭濤,游康祥,周旭

(1.湖北汽車工業學院電氣與信息工程學院,湖北十堰 442002;2.湖北汽車工業學院汽車工程師學院,湖北十堰 442002)

近年來,隨著網絡通信技術與智能交通系統的快速發展,車載自組織網絡(Vehicular Ad Hoc Network,VANET)愈發受到廣泛的關注[1]。VANET作為一種快速組網技術,用于實現車聯網環境下的車與車通信(V2V)、車與路側單元通信(V2R)、車與行人通信(V2P)等,使得車輛能夠感知視距范圍外的交通信息,從而很大程度上減少了交通事故,提高了交通效率和安全性[2]。

在車聯網環境中,車輛間通過廣播基礎安全消息(Basic Safety Message,BSM)或合作感知信息(Cooperative Awareness Message,CAM)幫助駕駛員做出及時準確的駕駛決策,2 種信標消息都包含相同的內容(包括發送車輛的位置和行駛狀態)[3]。然而,由于車輛的高速移動性、網絡拓撲的動態變化性以及無線信道的開放性等,車載自組織網絡的部署面臨著多種網絡安全問題和挑戰[4]。此外,由于VANET 缺乏相應的安全基礎設施,車聯網中的內部節點容易遭受多種網絡攻擊[5],如拒絕服務攻擊、虛假信息欺騙攻擊等[6]。在欺騙攻擊中,被攻擊車輛通過廣播虛假消息誤導周邊車輛,極容易造成嚴重的交通事故。此類網絡攻擊往往無法使用消息加密技術進行防范,因為其發生在VANET 的內部。這些節點是經過合理認證的內部成員,擁有有效的網絡訪問密鑰憑證[7],能夠在網絡中傳輸合法信息并進行通信。因此,需要利用攻擊檢測系統對聯網車輛的信標消息進行檢驗,過濾不合理消息,進而起到保障車輛網絡安全的效果。

現有的攻擊檢測機制可歸結為2種類型:以數據為中心、以節點為中心。以數據為中心的檢測機制對信標消息的數據語義進行可信度評估,以確保傳輸數據的正確性和連續性。以數據為中心的檢測方案可以使用統計學習或機器學習的方法對數據進行分類。在以節點為中心的方法中,通過分析消息的格式和數據包頻率,持續檢測VANET 內部節點的轉發行為[8]。以節點為中心的檢測機制可以通過運用行為機制和基于信譽值的機制進行?;谛抛u值的檢測方法需要車輛間進行長期的互動,檢測系統無法對攻擊行為進行及時且快速的檢測。因此,現有的大多數檢測方法主要基于數據進行攻擊檢測。

Ercan等人[9]針對不同車輛密度下的位置欺騙攻擊,分別使用KNN、隨機森林及其組合形式對攻擊進行檢測。算法檢測性能整體較好,但對攻擊樣本的數據量要求較高。Zeng 等人[10]提出了一種深度學習方法,將車輛的惡意流量數據轉換成像素數據,作為特征輸入處理。實驗結果表明,深度學習模型可以有效識別如DoS攻擊等流量異常的數據。Grover 等人[11]討論了用于車聯網入侵檢測的幾種深度學習算法,結果表明使用四層堆疊LSTM模型效果較優。

基于機器學習的檢測方案對攻擊樣本的需求量過高,而現實中對攻擊樣本的記錄不足,難以提供足夠的數據訓練分類模型[12]。而單一的深度學習算法對數據特征的提取能力有限,無監督學習算法無法充分攻擊樣本的已知特征。此外,在車聯網環境下,聯網車輛的時空信息是表征車輛行為的重要特征,因此,使用的檢測模型需要充分提取車輛的時間和空間特征。

針對以上問題,提出一種基于CNN-LSTM 的監督組合深度學習檢測模型,主要作用為:

(1)該模型基于CNN-LSTM 的深度學習攻擊檢測技術,通過一維卷積神經網絡對輸入數據的空間特征進行提取,并結合長短時記性網絡提取信標消息中的時間序列特征,以充分挖掘攻擊數據集的時空信息。

(2)該模型使用VeReMi Extension 數據集[13]對VANET 中的欺騙攻擊進行檢測(速度欺騙與位置欺騙)。將檢測結果與單一的CNN、LSTM 模型和傳統的機器學習算法KNN、SVM進行對比,在精確率、召回率和F1分值上均有所改善。

1 CNN-LSTM攻擊檢測模型

1.1 VANET欺騙攻擊原理

VANET 中存在多種攻擊行為,針對城市場景下的位置欺騙攻擊與速度欺騙攻擊進行檢測,其攻擊原理如圖1 所示。紅色車輛向其通信范圍內的正常車輛發送虛假的位置和速度信息,從而形成虛假的行駛軌跡。未具備入侵檢測系統的正常車輛無法判別信標消息的真實性,誤以為前方的虛假車輛是真實車輛,進而影響自身的正常行駛。

圖1 欺騙攻擊原理圖

1.2 模型框架

在車聯網環境下使用的基于CNN-LSTM的攻擊檢測模型,整體框架如圖2所示。

1.2.1 數據預處理

首先,對數據進行歸一化處理,當樣本特征的尺度差異較大時,取值較大的特征會起到主導作用,為提高訓練效率,需要將各個維度的特征轉換到同一范圍內,并消除不同特征的相關性,才能獲得比較理想的結果。使用Z-score 歸一化方法對原始數進行處理,如公式(1)所示:其中:μ 為所有樣本數據的均值;σ 為所有樣本的標準差。在特征選取階段,本實驗針對2種特定的攻擊進行檢測,故選用車輛的位置、速度與加速度作為輸入特征,其在序列中用二維坐標分別表示為:,即輸入為6 維向量的序列。

1.2.2 模型搭建與分類輸出

系統框架使用CNN-LSTM的組合深度學習模型。CNN 是一種深層前饋神經網絡,具有稀疏連接、參數共享等特征。一維卷積從序列數據中沿時間維度選擇序列段,并對每個序列段執行相同的變換[14],常用于處理一維序列數據。使用車輛信標消息中的位置、速度與加速度作為序列輸入,對信標數據進行一維卷積操作,如圖3所示。

使用帶有5 個卷積核的一維卷積層,對輸入序列進行變量維度上的一維卷積操作,計算方法如公式(2)所示:

其中:X 為輸入數據向量;W 為卷積核權重矩陣;b 為參與計算的偏置向量;f 為卷積計算的激活函數[15]。

完成一維卷積的特征提取后,將處理結果作為4層堆疊LSTM層的輸入。LSTM的記憶單元結構如圖4所示。

圖4 LSTM神經網絡細胞結構圖

LSTM 的細胞狀態由遺忘門ft、輸入門it、輸出門ot控制。在t時刻,3 個門的更新計算方法如公式(3)~(5)所示:

其中:W和b分別為權重和偏置量;ht-1為前一個細胞的輸出;xt為當前細胞的輸入;σ為sigmoid激活函數;ct為將xt和ht-1的狀態信息進行整合的狀態量;Ct為當前時刻的狀態;Ct-1為上一時刻的狀態;ht表示隱藏層輸出值。

系統框架使用4層堆疊LSTM對數據特征進行提取,每層使用256個神經元。輸出端連接帶有2個節點的分類層(Dense),用于匯聚網絡信息,將輸入序列分類為攻擊或正常類別。添加Dropout層可以有效地緩解模型的過擬合現象,在一定程度上達到正則化的效果。卷積層與LSTM層均使用整流線性單元作為激活函數。經過一維卷積與4層堆疊LSTM的融合處理后,將輸入的數據分類為正?;蚬?。整體模型的訓練與權重選取使用自適應矩估計法(Adam)進行優化,規避學習速率單一問題。

2 實驗結果與分析

2.1 實驗環境

實驗環境為Windows 10操作系統,硬件配置為AMD Ryzen CPU@3.2 GHz,內存16 GB,基于TensorFlow使用Keras深度學習框架搭建和Python 3.7編程語言,完成所有仿真實驗。

2.2 評估指標

實驗使用準確率(Precision)、召回率(Recall)和F1 這3 個指標對模型的檢測性能進行評估,計算方法如公式(6)~(8)所示:

其中:TP、FP、TN、FN的定義如表1所示。衡量攻擊數據集中的數據不平衡問題,使用準確率無法很好地評估一個模型的優劣,而精確率和召回率在這種情況下的表現將會更加突出。精確率表明分類器區分正常行為和異常行為的能力,擁有較高的精確率表明分類器具有較低的誤報率。召回率表明分類器對異常行為的檢測能力,擁有較低的召回率表明該攻擊較難被檢測出來;F1是精確率和召回率的調和平均數,可以較好地表示分類器的整體能力。

表1 混淆矩陣表

2.3 實驗數據集

實驗數據集使用VeReMi Extension 攻擊數據集,其數據在SUMO[16](Simulation of Urban Mobility)交通仿真軟件與網絡仿真軟件OMNET++[17]下的VEINS車聯網框架中采集。其中,SUMO交通場景選取Luxembourg SUMO(LuST)提供的車輛軌跡,其路網結構如圖5所示。

圖5 Luxembourg SUMO路網

該數據集包含多種攻擊類型,選取其中的速度欺騙攻擊與位置欺騙攻擊進行模型驗證。2 種欺騙攻擊所產生的車輛信標消息經可視化處理后如圖6 和圖7 所示。其中,藍色表示正常數據,紅色表示異常數據。圖6 表示速度欺騙攻擊,攻擊車輛廣播的速度值異常,表現為離群點,但位置信息與圖6 中的路網結構相符,表現為正常數據。圖7 表示位置欺騙攻擊,車輛廣播的位置坐標偏離正常的車輛位置消息,但速度信息的整體分布集中,故表現為速度數據正常。數據集總共包含106 885 條信標消息,選取80%作為訓練集,20%作為測試集。

圖6 速度欺騙攻擊數據可視化圖

圖7 位置欺騙攻擊數據可視化圖

2.4 參數設置

使用的CNN-LSTM 模型選擇Adam 優化器對模型進行訓練,并選用交叉熵作為損失函數觀察模型的擬合效果,通過多次實驗,得出本文所用模型的參數設置,如表2所示。

表2 CNN-LSTM模型參數設置

2.5 實驗結果及分析

為了更全面地分析模型的檢測性能,本實驗選取精確率、召回率和F1 分值對模型進行評估。為了更直觀地體現本文所用模型的有效性,選用單一的CNN 與單一的LSTM 作對比實驗,實驗結果如圖8、圖9所示。

圖8 基于CNN-LSTM實驗的混淆矩陣圖

圖9 CNN和LSTM對比實驗混淆矩陣圖

根據混淆矩陣可以計算出3種模型的檢測結果,此外,實驗還對比了常見的機器學習算法KNN與SVM。從表3中可以看出,CNN-LSTM、單一CNN與單一LSTM,3種實驗模型在精確率指標上都表現出較高的數值,分別為97.2%、97.1%、95.3%,體現了深度學習模型在該數據集檢測上的有效性。在召回率與F1分值上,CNN-LSTM模型明顯高于其他2種單一深度學習模型與2種機器學習模型,分別達到了最高的95.0%與96.1%。其中,傳統的2種機器學習算法KNN與SVM的各項檢測性能都比其他3種差。

表3 5種算法實驗結果對比

在各項綜合檢測指標上,本文所提的CNNLSTM 模型要優于其他4 種模型算法,比CNN、LSTM、KNN 和SVM 模型在召回率上分別提升了8.7%、6.1%、12.2%和15.2%,在F1 分值上分別提升了4.6%、4.1%、8.8%和10.7%。其中,由于數據集的不平衡性,在精確率指標上,CNN-LSTM算法與單一的2 種深度算法CNN 和LSTM 在數值上基本持平,但高于2 種機器學習算法KNN 和SVM。由表3 可知,本文方案的分類精確率最高,且召回率和F1的分值最高。

在對CNN-LSTM 模型的訓練中,使用攻擊數據集對模型進行訓練,充分利用攻擊數據的有效特征,最大程度避免了對正常數據的誤判與對異常數據的漏判。本文使用的基于CNN-LSTM的監督模型更加符合車聯網攻擊檢測模型對可靠性的需求。

單個一維CNN 與單個LSTM 的檢測性能較差,因為CNN 僅對數據的空間特征進行提取,而LSTM模型側重與信標消息的時序特征進行學習,兩者均有短板。而在車聯網環境下,車輛的行駛狀態如速度與位置等在時間與空間上存在較大的關聯性,因此,使用單一的深度學習模型與傳統的機器學習模型無法充分提取數據集的時空信息。而本文使用的CNN-LSTM組合模型通過一維卷積層與堆疊的LSTM 層對數據樣本的時空信息進行了提取,并將其作為分類特征,故在應對攻擊消息時能體現出較好的檢測性能。

3 結語

針對車聯網環境中車輛面臨的網絡安全問題,通過對VANET中的速度與位置欺騙攻擊進行分析,構建多層深度學習神經網絡CNN-LSTM,選取最新的攻擊數據集,并對比常見的深度學習與機器學習算法,用精確率、召回率和F1 分值對模型的檢測性能進行綜合評估。實驗表明,使用基于CNN-LSTM的組合深度學習模型相較于傳統的機器學習算法與單一的深度學習算法在各項檢測指標上都具有更好的數值結果。

本文方案仍存在對數據利用不夠充分的問題,系統模型存在一定的改進空間。下一步的主要目標是在模型中加入更多種類的攻擊類型,并對檢測時間進行量化,以滿足車聯網環境下的檢測實時性和可靠性,做到更全面的攻擊檢測。

猜你喜歡
信標卷積深度
基于3D-Winograd的快速卷積算法設計及FPGA實現
深度理解一元一次方程
從濾波器理解卷積
深度觀察
深度觀察
深度觀察
基于傅里葉域卷積表示的目標跟蹤算法
RFID電子信標在車-地聯動控制系統中的應用
基于信標的多Agent系統的移動位置研究
無姿態補償的水下信標絕對位置傳遞研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合