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