齊健翔 ,李文博,岳克強
(1 新鄉學院 計算機與信息工程學院,河南 新鄉 453003;2 新鄉學院 化學與材料工程學院,河南 新鄉 453003;3 杭州電子科技大學 電子信息學院,杭州 310018)
作為移動自組織網絡(MANET)在交通領域的典型應用,車載自組織網絡(VANET)近年來得到了快速的發展和推廣[1]。道路上行駛的車輛之間、車輛與路側基礎設施之間通過建立自組織網絡,利用V2V 和V2I 的方式實現數據的有效傳輸和共享,使得車輛能夠獲取“視野”之外的交通信息,擴展了車輛的感知范圍,從而很大程度上提高了用戶的出行安全和通行效率。車輛節點之間數據傳輸的穩定性、有效性以及真實性是VANET 的基本需求,也是車聯網相關衍生服務必不可缺的一個重要組成部分[2]。然而,由于車輛的高速移動性和行駛路線的隨機性,導致VANET 的網絡拓撲具有較大的動態性,車輛之間的通信鏈路極不穩定,而且面臨著不斷地中斷與重連,再加上無線通信固有的脆弱性和開放性,使得車聯網通信面臨著嚴重的安全威脅[3]。目前,VANET 中常見的攻擊行為主要包括:虛假信息攻擊、拒絕服務攻擊、偽裝攻擊、黑洞攻擊、時序攻擊、位置欺騙攻擊、中間人攻擊和Sybil 攻擊等[4-5]。其中,Sybil 攻擊是其中的一個典型代表。
Sybil 攻擊也被稱為女巫攻擊,最初是由Decour在P2P 網絡中提出,屬于一種基于身份混淆的攻擊方式[6]。攻擊者通過盜用、偽造等手段獲取多個不同的身份,通過利用這些身份發布各種虛假信息,從而影響網絡中的節點決策機制、資源分配機制以及路由轉發機制等[7]。例如,在社交網絡中通過雇傭大量“水軍”來提高特定節點的影響力;在出租車運營網絡中通過注冊多個不同身份來提高獲取訂單的成功率;在VANET 中通過多個偽造身份同時發布虛假的路況信息,造成交通擁堵。
VANET 中針對Sybil 攻擊的檢測方案大致分為以下4 種,如圖1 所示[8]。

圖1 Sybil 攻擊的檢測方案分類Fig.1 Classification of detection schemes for Sybil attacks
(1)基于社交關系的檢測方案。該方法根據節點之間的交互情況,建立相應的社交關系來檢測網絡中是否存在Sybil 攻擊行為[9]。為了提高在網絡中的影響力和話語權,Sybil 節點通常會與其他虛假節點進行頻繁交互,快速提升其在網絡中的聲望,最終達到影響和干預其他節點作出相關決策的目的[10];而虛假節點與其他真實存在的正常節點之間的交互則非常有限。針對這種攻擊方式,通過分析網絡中節點之間的社交行為特征,從而檢測出具有Sybil 攻擊嫌疑的對象。
盡管該檢測方法在社交網絡領域非常有效,但是在VANET 中,由于車輛的高速移動性和路線隨機性,車輛之間無法保持較長時間的有效交互,車與車之間難以建立穩定的社交關系,因此,基于社交關系的檢測方法不適用于VANET 中的Sybil 攻擊檢測。
(2)基于資源測試的檢測方案。與路側單元(Road Side Unit,RSU)和充當后臺服務器的可信機構(Trust Authority,TA)相比,車載單元在通信資源、計算資源以及存儲資源等方面都極其有限,正常情況下,僅依靠單個節點無法在指定時間內完成多個節點的任務總和[11-12]。因此,利用資源測試的方式,通過對比節點的工作完成度,能夠有效地識別出網絡中的Sybil 攻擊節點。
盡管基于資源測試的檢測方法簡單易行,但是隨著軟、硬件技術的發展,車載設備的性能大幅度地提升,當攻擊節點擁有足夠多的資源時,該方法針對Sybil 攻擊的檢測效率會急劇下降。
(3)基于身份認證的檢測方案。在移動通信網絡中,為了保證通信節點的身份合法性,通信內容的機密性和不可否認性,后臺管理中心通過引入PKI技術,利用密鑰管理及數字簽名等手段,驗證通信節點的身份合法性,從而實現對于Sybil 攻擊節點虛構的其他身份進行有效甄別[13-14]。例如,通過使用群簽名等方法,能夠有效的抑制Sybil 節點偽裝成多個不同身份,散布虛假信息[15]。
基于身份認證的檢測方法從理論方面來講是切實有效的,但是當攻擊節點通過盜用其他合法節點的身份信息,或者多個攻擊者之間存在合謀時,可以輕易逃避該方法的檢測。
(4)基于移動特征的檢測方案。節點的高速移動性是VANET 的一個重要特征。一般情況下,由于車輛的路線隨機性,車與車之間無法長期保持相似的移動特性[16]。盡管Sybil 攻擊節點能夠偽造出多個不同的身份與外界進行交互,由于這些虛假身份都映射到同一個物理節點,因此,攻擊節點及其“分身”的移動行為具有一定的相似性。通過對節點移動行為進行時序性分析,從而判斷其是否存在Sybil 攻擊的嫌疑[17]。
由于對車輛移動行為分析的過程受時間粒度的影響較大,由此形成的粗粒度的軌跡數據無法準確、全面的反映車輛的移動行為特征,從而對相似性分析結果產生較大的干擾;另外,攻擊節點也會采用位置擾動技術或者功率控制技術,降低偽造身份之間的行為相似性和位置相似性,從而逃避相關的檢測方案。
本文提出的Sybil 攻擊檢測系統模型如圖2 所示,主要包括車輛(Vehicles)、路側單元(Road Side Unit,RSU)和可信機構(Trust Authority,TA)3 個部分,其具體特點如下:

圖2 Sybil 攻擊檢測系統模型Fig.2 Detection system model of Sybil attack
(1)車輛。車輛上安裝有多種傳感設備,能夠實時獲取車輛的各項行駛參數,主要包括:速度、加速度、行駛方向等;同時,車輛通過配備定位裝置,例如:北斗定位系統,可以實時獲取車輛當前所在的位置信息;通過配備無線電通信裝置,實現車輛之間以及車輛與RSU 之間的數據傳輸和共享。
(2)路側單元RSU。路側單元有時也被稱為基站,通常被視為連接車輛和可信機構的橋梁,是維系整個檢測系統有效運行的重要樞紐。一方面,路側單元可以對有效通信范圍內的車輛進行統一管理,收集現場的交通數據和車輛信息并上傳至可信機構;另一方面,路側單元接收可信機構下發的管理命令,并將信息傳輸至特定的車輛。路側單元與車輛之間采用專用短程通信技術(Dedicated Short Range Communications,DSRC)進行無線通信;路側單元之間以及路側單元與可信機構之間則采用光纜進行有線通信。
(3)可信機構。在本文研究的Sybil 攻擊檢測系統中,默認可信機構是絕對安全的,完全可以抵抗惡意攻擊者的入侵和數據篡改。可信機構的主要職責包括:
①車輛身份證書管理。車輛出廠后首先會在可信機構進行身份注冊,獲取合法身份后方可上路。當車輛被確認存在惡意攻擊行為后,可信機構將注銷其身份證書,使之無法繼續參與VANET 的正常活動。
②數據存儲和計算。與極其有限的車載資源相比,可信機構擁有強大的計算能力和充足的存儲空間。路側單元定期將其通信范圍內的車輛信息上傳至可信機構,由可信機構對這些信息進行分析處理,提取有效的車輛軌跡信息和動態鄰域信息,最終利用相關的檢測模型對VANET 中存在的惡意攻擊行為進行有效甄別。
攻擊者通過盜用或竊取等不當手段生成包含n個偽造身份的假名集合{PID1,…,PIDn},利用這些假名信息構造出多個虛假車輛,進而發動Sybil 攻擊。根據攻擊者采取的不同行為模式,可將其大致分為兩類:
(1)固定位置攻擊。攻擊者利用假名集合構建出若干虛假車輛,這些偽造車輛與周圍其他車輛和距離其最近的RSU 進行數據通信時,傳輸信息中包含的位置數據均為攻擊者的真實位置坐標,沒有經過任何修改。
(2)隨機位置攻擊。攻擊者在其真實位置信息的基礎上,利用信息擾動技術生成多組隨機位置坐標。當攻擊者發動Sybil 攻擊時,偽造的車輛使用不同的位置坐標與外界進行數據交互,其目的在于降低攻擊者與虛假車輛之間行駛軌跡的相似程度,從而避免其攻擊行為被檢測系統識別。
2.3.1 準備工作
車輛只有在注冊并獲取到有效的身份證書后方可加入VANET 上路行駛。在行駛過程中,車輛需要向最近的RSU 申請臨時通行憑證。該憑證具有一定的時效性,在有效期內車輛可以及時與外界進行數據通信,獲取所需的服務信息;超出規定的時間后,該憑證自動失效,車輛需要再次向RSU 提出申請,否則將無法繼續與VANET 中的其他車輛進行信息交互。此外,車輛在正常參與VANET 相關活動過程中,需要周期性地廣播Beacon 消息,向周邊相鄰車輛提供自己的行駛狀態,例如:速度、加速度、方向盤轉角、剎車狀態、位置信息等。對于接收到Beacon 消息,車輛根據通信數據與臨時憑證的對應關系建立相應的鄰域信息,并在本地進行存儲,等到下次向RSU 申請新的臨時憑證時,將該時間段內收集的所有鄰域信息經由RSU 上傳至TA,以便后期進行數據分析和攻擊行為檢測。
2.3.2 軌跡相似性檢測
TA 將一段時間內各個RSU 上傳的數據信息按時序進行重組和整合,可以獲取在此期間所有車輛(包括物理世界真實存在的車輛以及由攻擊者“制造”出來的虛假車輛)的行駛軌跡。車輛的行駛軌跡包含若干不同的軌跡點數據,而每個軌跡點數據則是由對應的經緯度信息及時間戳所組成,即:TRACKi={Pi1,Pi2,…,Pin},且Pij={loij,laij,Tij}。對于任意兩輛車m和n上傳的軌跡數據,根據時間關聯性建立包含k個軌跡“點對”的集合PSmn={{Pm1Pn1},{Pm2Pn2},…,{PmkPnk}},如圖3 所示。集合中的每一對軌跡點分別隸屬于不同的車輛,并且二者具有相似的時域信息,即二者的時間戳差值應當不超過預設的閾值TIMEthreshold。通過分析各個軌跡點對之間的特征相似性,利用數據挖掘的方法找出發動Sybil 攻擊的車輛及其虛構的各個“分身”。

圖3 軌跡點對集合Fig.3 Set of track point pairs
2.3.2.1 原始軌跡數據清洗
盡管可信機構TA 具有非常強大的數據存儲和處理能力,但是面對海量的汽車軌跡數據以及無線自組織網絡中難以避免產生的冗余信息,直接對其進行無差別處理將會給TA 服務器造成巨大的負荷。因此,在進行車輛軌跡相似性檢測之前,對這些海量數據采取相應的預處理是非常有必要的。本文主要從空間差異和時間差異相結合的角度出發,過濾掉那些完全不可能由同一輛車產生的軌跡信息,減小數據量過大給服務器帶來的壓力。
通過對軌跡點對集合PSmn進行遍歷,一旦發現其中任意一對軌跡點{PmkPnk} 滿足關系(1),則該集合對應的軌跡信息應當隸屬于兩個不同的車輛,不存在Sybil 攻擊的嫌疑。

其中,Vmk和Vnk為車輛上傳的Beacon 信息中與該時間戳對應的速度信息。
由關系式(1)可知,即使車輛在當前時刻以最大速度行駛,仍然無法在有效時間內經過點對中的兩個位置,該軌跡點對不可能來自同一輛車,可以將這兩條軌跡數據從待檢測數據集中刪除。
2.3.2.2 基于層次聚類的軌跡相似性檢測
對原始軌跡數據進行過濾,排除掉那些屬于正常車輛的軌跡信息,剩余部分均為具有Sybil 攻擊嫌疑的車輛軌跡。針對這部分數據,首先根據車輛軌跡相似性的檢測原理建立對應的特征模型,主要包括:空間差異,時間差異,速度差異以及航向差異;利用數據挖掘技術進行聚類處理,根據聚類結果最終判斷軌跡信息的相似性,式(2)~(5)。


聚類算法在許多研究領域和工程實踐中得到了廣泛應用,根據其理論依據和應用模式不同,主要分為劃分法、層次法、密度法、圖論聚類法、網格法、模型法等。鑒于軌跡點對數據的結構特點及聚類結果的不確定性,本文采用層次聚類算法,從上述4 個特征維度對軌跡點對進行聚類處理,具體流程如圖4所示。

圖4 層次聚類流程圖Fig.4 Flow chart of hierarchical clustering
2.3.3 動態鄰域檢測
對于VANET 中存在的那些采用固定位置攻擊的行為,利用前文提出的基于層次聚類的車輛軌跡相似度檢測方法,能夠準確、有效地辨識出惡意攻擊節點及其衍生的若干虛假“分身”。然而,當惡意攻擊者通過北斗、GPS 等定位系統獲取到有效的位置坐標后,通過采用添加隨機擾動數據的手段,生成多個不同的位置信息,在發動Sybil 攻擊時使用不同的位置數據與外界進行交互,可以逃避軌跡相似性檢測。
在VANET 中,車輛通常會以廣播的方式與周圍其他車輛進行數據傳輸和共享。在這種交互模式下,接收車輛以時間序列為參考,統計近期向其發送數據的鄰居節點,形成對應的鄰域信息表,并上傳至附近的RSU。由于無線通信技術的固有特點,車輛之間的相鄰性取決于二者之間的實際地理位置及信號發射功率。在上述兩個條件均保持不變的情況下,即使惡意節點通過位置偽造來發動Sybil 攻擊,攻擊節點及其虛構出來的車輛均會被有效通信范圍內的相鄰車輛所捕獲,并記錄在各自的鄰域信息表中。鑒于車輛的高速移動性和路線隨機性,車輛之間的相鄰關系應該是非常短暫的,無法長期保持同步行駛。因此,通過對不同車輛在一定時間內上傳的鄰域信息進行分析,如果發現若干車輛頻繁出現在不同車輛記錄的鄰域信息表中,那么這些車輛可能存在發動Sybil 攻擊。當類似情況超出預設的閾值后,可信機構TA 就會剝奪這些車輛的合法身份,從而阻斷其攻擊行為給網絡帶來的安全危害。車輛之間的鄰域關系如圖5 和表1 所示。

圖5 車輛鄰域關系圖Fig.5 Relationship map of vehicular neighborhood

表1 車輛鄰域結構表Tab.1 Structure table of vehicular neighborhood
動態鄰域檢測的具體步驟如下:

本文實驗仿真的核心目標主要包括:
(1)基于層次聚類的車輛軌跡相似性檢測算法的有效性和可行性;
(2)在不同的實驗條件下,該檢測系統應具有較強的適應性、抗攻擊性和魯棒性。
在實驗過程中使用Veins 仿真平臺來模擬車輛在道路上的正常數據交互及惡意車輛發動Sybil 攻擊的行為。Veins 是一個廣泛應用于車聯網模擬仿真的開源框架,內部包含有兩個獨立的模擬器:SUMO 和OMNET++。SUMO 主要用于交通仿真,能夠模擬不同的交通模式及車輛的移動行為特性,模擬過程中使用的路網信息可以由開源網站OpenStreetMap 導入指定地理范圍內的真實地圖數據,也可以使用XML 文件進行自定義路網設計。OMNET++主要用于網絡通信仿真,能夠模擬車輛之間以及車輛與RSU 之間的數據傳輸過程。SUMO和OMNET++之間利用VEINS 框架提供的“交通控制接口(TraCI)”實現交通數據與通信數據的分布式傳輸和共享。
本文在仿真過程中使用了新鄉市東區的部分路網數據如圖6 所示,具體的實驗仿真參數見表2。

表2 仿真參數Tab.2 Simulation parameters

圖6 新鄉市東區路網信息Fig.6 Road network information about the Eastern District of Xinxiang
在Sybil 攻擊檢測系統的研究工作中,檢測率是本文關注的重點性能指標,其直接關系到該系統是否能夠有效地識別出VANET 中存在的攻擊節點。在實驗過程中,通過分析Sybil 檢測系統的工作原理與實現過程,本文主要考慮了以下3 個方面的因素對檢測結果的影響:
(1)車輛的行駛速度。在不同的行駛區域(城區和郊區)與不同的時段(平峰期和高峰期),車輛的行駛速度存在著較大的差異。由于車輛在行駛過程中需要以固定的周期向周邊其他車輛廣播Beacon 信息,以及向距離最近的RSU 申請臨時身份并上傳鄰域信息,而車輛速度的變化將導致車輛軌跡的粒度變化,以及鄰域信息的組成結構變化。此外,速度的提高也會加劇車與車之間通信鏈路的不斷中斷和重連,導致數據傳輸的不穩定性和滯后性。因此,隨著車輛速度的不斷提高,系統的檢測率將受其影響而不斷降低,如圖7 所示。

圖7 車速對檢測率的影響Fig.7 Effect of vehicle’s speed on detection rate
(2)通信過程中的丟包率。在VANET 中,車與車之間(V2V)以及車與RSU 之間(V2I)的數據共享與傳輸均采用基于DSRC 的無線通信方式,通信過程中可能會受到外界各種因素的干擾,導致數據包的丟失。丟包率的高低直接關系到信息采集的完整性和數據來源的有效性,對后期的數據挖掘和信息建模將會產生重大影響,VANET 丟包率的不斷增高將導致該系統的檢測率不斷下降,如圖8 所示。

圖8 丟包率對檢測率的影響Fig.8 Effect of PDR on detection rate
(3)惡意節點的攻擊強度。VANET 中惡意節點的攻擊強度主要體現在發動Sybil 攻擊的節點數量、攻擊者使用的虛假身份數量以及攻擊頻率。如果惡意節點中僅有部分成員發動攻擊,并且使用的虛假身份數量較少,攻擊頻率較低,系統由于無法收集到足夠的“證據”而導致檢測效率較低。隨著惡意節點的攻擊強度不斷增大,系統采集到的數據信息中包含的攻擊特征,即軌跡數據的空間關聯性和鄰域信息的時間相似性也會越來越明顯。因此,隨著惡意節點攻擊強度的不斷提高,系統的檢測率將隨之不斷上升,如圖9 所示。

圖9 攻擊強度對檢測率的影響Fig.9 Effect of attack strength on detection rate
本文針對VANET 中惡意車輛在發動攻擊時的行為特征,設計了一種有效的Sybil 攻擊檢測系統。該系統利用數據挖掘技術對于車輛行駛軌跡的空間關聯性及其鄰域信息的相似性展開動態分析,不僅能夠適用于檢測群組固定位置攻擊,對于那些為了逃避檢測而添加了信息擾動的隨機群組位置攻擊也能夠很好的識別。實驗結果表明,本文設計的Sybil攻擊檢測系統具有較高的檢測率,能夠有效地識別出VANET 中存在的惡意攻擊者,為網絡的正常有效運行提供了保障。在不同的工作環境下,系統的檢測效果始終能夠保持在一個較高的水準,具有較強的環境適應性和魯棒性。