對于自動駕駛汽車(AV),定位的安全性至關重要,它的直接威脅是GPS欺騙。幸運的是,當今的自動駕駛系統(tǒng)主要使用多傳感器融合(MSF)算法,通常認為該算法有可能解決GPS欺騙問題。但是,沒有任何研究表明當下的MSF算法在GPS欺騙的情況下是否足夠安全。本文專注于生產級別的MSF,并確定了兩個針對AV的攻擊目標,即偏離攻擊和逆向攻擊。為了系統(tǒng)地了解安全性,我們首先分析了上限攻擊的有效性,并發(fā)現了可以從根本上破壞MSF算法的接管效果。我們進行了原因分析,發(fā)現該漏洞是動態(tài)且隨機地出現。利用這個漏洞,我們設計了FusionRipper,這是一種新穎的通用攻擊,可以抓住機會并利用接管漏洞。我們對6條真實的傳感器跡線進行了評估,結果發(fā)現,對于偏離和逆向攻擊,FusionRipper在所有跡線上的成功率分別至少達到97%和91.3%。我們還發(fā)現,它對欺騙不準確等實際因素具有高度的魯棒性。為了提高實用性,我們進一步設計了一種精巧的方法,該方法可以有效地識別出攻擊參數,兩個攻擊目標的平均成功率均超過80%。我們還將討論可行的的防御方法。
攻擊工具:FusionRipper
盡管我們在前文(二)中的分析表明,在現實中確實存在MSF的接管漏洞,但此類漏洞僅出現在由不確定性因素(例如算法不準確和傳感器噪聲)造成的不確定時期內,而這種不確定性是無法通過觀測得到的。因此,攻擊者必須在實際的攻擊中抓住和利用這種脆弱時期。利用這個知識,我們提出了一組新穎的攻擊方法來攻破MSF,稱其為:FusionRipper。
階段一:漏洞分析
在此階段,攻擊者執(zhí)行分析性的GPS欺騙,并觀察受騙汽車對欺騙的反應以分析何時出現脆弱時期。在我們的設計中,盡可能減少攻擊參數,盡可能地簡化實現難度和增強魯棒性,因此在此階段我們使用恒定參數進行欺騙,即始終將δk^a設置為常量d。盡管這種分析方法很簡單,但是我們稍后的評估結果表明,它能夠實現很高的攻擊成功率,非常接近理論上限。
在不斷欺騙的同時,攻擊者實時跟蹤受騙汽車的位置,并測量他們相對于車道中心的偏離。如果這種偏差大到導致受騙汽車表現出不安全的駕駛行為,例如即將發(fā)生非必要的跨越車道行為,則將受害汽車視為處于脆弱時期。我們認為觸碰當前車道的左車道線或右車道線(0.295米)的偏差作為確定脆弱時期的閾值。我們容易認為,經過設計和測試的自動駕駛系統(tǒng)很少會出現較大的位置偏差,因為其考慮到了常規(guī)情況下的傳感器噪聲問題。例如,百度Apollo在真實道路上評估的BA-MSF誤差在0.054米以內,遠遠小于0.295米。因此,當出現這種罕見的偏差時,很可能是由于持續(xù)不斷的欺騙造成的,MSF算法需要從GPS信號中獲取數據更新,從而很可能導致其進入一個不確定的時期。
階段二:攻擊性欺騙
在確定了脆弱時期后,攻擊者可以執(zhí)行攻擊性的欺騙來觸發(fā)接管效應,從而迅速引起較大的偏差。如前文有效性分析所示,在接管效應期間,偏差呈指數增長。因此,我們在攻擊性欺騙階段選擇指數增長的欺騙。如上圖所示,一旦攻擊者確定了一個脆弱時期,它便切換為使用
,基數在每個具體的欺騙點上設置的欺騙距離,i為遞增冪次數。
普適性
由于FusionRipper旨在利用任何基于卡爾曼濾波器(KF)的MSF普遍存在的接管漏洞,因此其設計基本上適用于任何基于KF的MSF算法。
測試結果
我們使用真實世界的傳感器軌跡評估FusionRipper,具體來說使用KAIST Complex Urban (評估自駕系統(tǒng)的數據集)。KAIST數據集包括18條普通軌跡和2條高速公路軌跡,都與BA-MSF兼容。我們選擇3條本地軌跡和2條高速公路軌跡,將它們截短至最初的5分鐘,以使評估易于管理。在選擇局部軌跡時,我們選擇平均MSF狀態(tài)不確定性最?。醋羁煽浚┑能壽E。
攻擊成功率
上圖顯示了對于這兩個攻擊目標,d和f的所有組合中FusionRipper的最佳成功率。它既顯示單個軌跡的結果,又顯示所有軌跡的平均值(粉紅色的粗線)。如圖所示,對于所有軌跡,即使最小攻擊持續(xù)時間低至30秒,兩個攻擊目標的平均成功率也始終超過75%。當最小攻擊持續(xù)時間增加時,所有跟蹤的成功率會相應增加。這是顯而易見的,因為攻擊者有更高的機會捕獲易受攻擊的時期。特別是,攻擊持續(xù)2分鐘時,至少存在d和f的一種組合,可以實現偏離攻擊的成功率超過97%(平均98.6%),實現逆向攻擊的成功率超過91%(平均95.9%)。在實際中,攻擊者很有可能找到這種2分鐘的拖延機會來發(fā)動FusionRipper攻擊。
攻擊參數選擇
上表列出了每個軌跡的攻擊成功率最高的3種參數組合。如表所示,FusionRipper的攻擊效果對d和f的組合很敏感。這促使我們設計一種精確的方法來識別有效的d和f組合以提高攻擊的實用性,這將在后面的中進行詳細介紹。
攻擊兩階段的必要性
高攻擊效率是兩個攻擊階段相結合的結果。為了具體解釋這一點,我們對其進行了消融研究,在該研究中我們分別刪除了實驗的兩個階段之一。僅對于漏洞分析階段,我們應用距每個起點的恒定溢出距離d。僅對于攻擊性欺騙階段,我們使用從起點開始直接枚舉d和f的不同組合作為攻擊參數。我們以ba-local的軌跡作為測試軌跡。
上表顯示了該研究的實驗結果。如表所示,兩種單一攻擊配置對于這兩個攻擊目標最多只能達到14%和7%,遠低于FusionRipper的98%和97%。這意味著仍然有一些非常不確定的時期,使得只有階段1或只有階段2的攻擊可以成功。但是,在沒有彼此幫助的情況下,成功率非常有限。這具體表明了FusionRipper兩階段設計的必要性。請注意,由于花費在漏洞分析階段上的時間,FusionRipper的攻擊成功時間比僅階段2攻擊的攻擊成功時間要長。但是,實際上平均約30秒的攻擊時間對于攻擊者來說已經是可以接受的。因此,這種時間優(yōu)勢遠不如提高FusionRipper的成功率。
攻擊參數分析
到目前為止,我們的結果表明對于每條軌跡,始終存在一個攻擊參數組合d和f,可以實現高成功率,并且對實際因素具有很高的魯棒性。但是,我們還觀察到攻擊成功率對攻擊參數的選擇很敏感。因此,我們需要一種可以在實際攻擊之前有效識別出高成功率攻擊參數的具體方法。因此,在本節(jié)中,我們探討設計這種方法以進一步提高FusionRipper的實用性。
算法設計
我們的分析方法是按照一種簡單的策略設計的:使用d和f的不同組合進行攻擊試驗,直到找到具有足夠高成功率的組合。更具體地說,試驗進行了許多次分析。在每一循環(huán)中,攻擊者都選擇d和f的一個組合并嘗試多次。選擇組合時,攻擊者會按照參數空間中從小到大的順序進行排序,因為較大的組合會更容易地被發(fā)現輸入有異常,從而直接導致攻擊失敗。該方法的偽代碼下述所示。
算法測試
我們使用前文中使用的5條KAIST軌跡(KAIST軌跡是使用同一車輛在不同道路上收集的)。我們將5條軌跡分為兩組,其中4條為分析軌跡,即代表離線的攻擊試驗;1條為評估軌跡,用于評估分析軌跡中所選的d和f,即代表實際攻擊,最后使用它們的平均成功率來衡量最終的剖析效果。
上圖顯示了算法分析輸出的d和f作為攻擊參數的平均成功率(柱狀圖),以及不同的攻擊參數分析試驗(一次實驗為90秒)次數(條形圖)。如圖所示,平均成功率隨著攻擊者在每個分析回合中進行更多的攻擊試驗而增加,因為隨著更多的攻擊試驗,d和f組合的配置成功率在統(tǒng)計上更接近真實值。尤其是,當每個分析回合的試驗次數為40次時,我們的分析算法可以找到d和f組合,其中偏離和逆向攻擊的平均成功率均超過80%(分別為84.2%和80.7%)。在這種情況下,平均分析成本僅為42個時間為90秒的攻擊試驗,即約為1小時。
防御措施討論
GPS反欺騙
我們的攻擊基于GPS欺騙,因此一個直接的防御方向是利用現有的GPS欺騙檢測或防御技術。但是,如今GPS欺騙檢測和預防都不能完全解決問題。在檢測方面,已經提出了許多技術,它們利用信號功率監(jiān)視,基于多天線的信號到達角檢測或基于眾包的交叉驗證。但是,它們要么被更先進的欺騙器所規(guī)避,要么僅適用于有限的領域,例如機載GPS接收器。在預防方面,基于密碼認證的民用GPS基礎架構可以從根本上防止直接制造欺騙GPS信號;但是,它需要對現有的衛(wèi)星基礎設施和GPS接收器進行重大修改,并且仍然容易受到重放攻擊的影響。
MSF和LiDAR
另一個防御方向是改良MSF算法和LiDAR定位,這是影響現實中接管漏洞的兩個最重要因素。從根本上說,實際中的這種MSF算法中的不確定狀態(tài)是由于LiDAR定位算法的不準確和傳感器噪聲引起的。并且正如我們的分析所示,即使對于當今自動駕駛汽車中使用的高端傳感器和生產級LiDAR,這些誤差和噪聲也足夠大且頻繁,足以使FusionRipper得以利用。為了對此進行改進,需要在傳感器和基于LiDAR的定位方面取得技術突破。
利用獨立的定位源(例如基于攝像機的車道檢測)作為不安全狀態(tài)下的定位。
對于能夠短期內實現的方案來說,一個有希望的方向是利用獨立的定位源來交叉檢查定位結果,從而充當不安全狀態(tài)下的定位源。例如,由于偏離和逆向攻擊都將導致受騙汽車偏離當前車道,因此應該可以通過基于攝像頭的車道檢測來檢測故障,這是當今許多車輛模型中可用的成熟技術。但是,我們發(fā)現在當今的自駕系統(tǒng)設計中,并未普遍考慮使用這種技術。例如,百度Apollo(5.5版)僅將其用于相機校準,而Autoware則根本不使用它。這可能是因為車道檢測輸出是當前車道邊界內的局部定位,因此無法直接用于與MSF的全局定位進行比較。但是,本文中發(fā)現的漏洞表明應考慮在將來的本地自駕系統(tǒng)中至少添加一種故障期的安全功能(至少用于異常檢測)。當然,我們需要進行更多調查才能了解這種故障期的安全功能在防御中的有效性和可靠性。例如,當將基于攝像機的車道檢測應用于異常檢測時,由于需要仔細考慮由于變道需要而偏離當前車道的汽車。此外,還應當考慮車道線有可能不明顯或不完整。此外,基于攝像機的車道檢測本身很容易受到攻擊。
請注意,即使此類故障期的安全功能可以執(zhí)行完美的攻擊檢測,我們的攻擊仍會導致受騙汽車的全局定位功能遭到拒絕服務。這可能使受騙汽車處于不安全的情況下,例如在高速公路車道中間停車,因為受騙汽車既無法正確到達目的地,也無法安全地找到路肩以停下來。因此,更有用的防御方向是糾正被攻擊的定位結果。如何在攻擊下利用其他獨立的定位源來有效地進行這種校正仍然是一個挑戰(zhàn),這有可能是未來有價值的工作方向。
fqj
-
傳感器
+關注
關注
2545文章
50458瀏覽量
751102 -
自動駕駛
+關注
關注
782文章
13624瀏覽量
165962
發(fā)布評論請先 登錄
相關推薦
評論