目前針對無人車攻擊的方法有許多,如何防御這些攻擊以保證無人車的安全是個(gè)重要的課題。本文詳細(xì)介紹針對無人車傳感器、操作系統(tǒng)、控制系統(tǒng)、車聯(lián)網(wǎng)的攻擊手段以及防御方法。
針對無人駕駛的安全威脅
對于無人駕駛系統(tǒng)來說,安全性至關(guān)重要。任何無人車如果達(dá)不到安全要求就上路是極其危險(xiǎn)的。目前,針對無人車攻擊的方法五花八門,滲透到無人駕駛系統(tǒng)的每個(gè)層次,包括傳感器、操作系統(tǒng)、控制系統(tǒng)、車聯(lián)網(wǎng)通信系統(tǒng)等。首先,針對傳感器的攻擊不需要進(jìn)入無人駕駛系統(tǒng)內(nèi)部,這種外部攻擊法技術(shù)門檻相當(dāng)?shù)停群唵斡种苯印?第二,如果進(jìn)入無人駕駛操作系統(tǒng),黑客可以造成系統(tǒng)崩潰導(dǎo)致停車,也可以竊取車輛敏感信息。第三,如果進(jìn)入無人駕駛控制系統(tǒng),黑客可以直接操控機(jī)械部件,劫持無人車去傷人,是極其危險(xiǎn)的。第四,車聯(lián)網(wǎng)連接不同的無人車,以及中央云平臺系統(tǒng),劫持車聯(lián)網(wǎng)通信系統(tǒng)也可以造成無人車間的溝通混亂。本文將詳細(xì)介紹每種攻擊手段,并且討論相應(yīng)的防御方法。
無人駕駛傳感器的安全
由于傳感器處于整個(gè)無人駕駛計(jì)算的最前端,最直接攻擊無人車的方法就是攻擊傳感器。這種外部攻擊法并不需要入侵到無人駕駛系統(tǒng)內(nèi)部,使得入侵的技術(shù)門檻相當(dāng)?shù)汀U且驗(yàn)槿肭值拈T檻低,我們需要在傳感器做大量的工作來保證其安全。
如圖所示,對各種傳感器,我們都可以輕易地攻擊與誤導(dǎo)。對于GPS,如果在無人車附近設(shè)置大功率假GPS信號,就可以覆蓋原來的真GPS信號,從而誤導(dǎo)無人車定位。通過兩種簡單攻擊方法的結(jié)合,GPS與IMU的定位系統(tǒng)會(huì)輕易被攻破。除了GPS與IMU外,通常我們也可以使用輪測距技術(shù)輔助無人車定位。輪測距是通過測量輪子的轉(zhuǎn)速乘與輪子的周長進(jìn)行測距,如果黑客破壞了輪子,這個(gè)定位輔助技術(shù)也會(huì)受影響。
激光雷達(dá)是目前無人駕駛最主要的傳感器,而無人車也依賴于激光雷達(dá)數(shù)據(jù)與高精地圖的匹配進(jìn)行定位。但激光雷達(dá)也可以輕易地被干擾。首先激光雷達(dá)是通過測量激光反射時(shí)間來計(jì)算深度的。如果在無人車周圍放置強(qiáng)反光物,比如鏡子,那么激光雷達(dá)的測量就會(huì)被干擾,返回錯(cuò)誤信息。除此之外, 如果黑客使用激光照射激光雷達(dá),測量也會(huì)受干擾,會(huì)分不清哪些是自身發(fā)出的信號,哪些是外部激光的信號。另外,無人車會(huì)不斷下載更新的高精地圖,如果黑客把下載的地圖掉包,也會(huì)造成定位失效。
計(jì)算機(jī)視覺可以輔助無人車完成許多感知的任務(wù),比如交通燈識別、行人識別和車輛行駛軌跡跟蹤等等。在交通燈識別的場景中,無人車上的攝像機(jī)如果檢測到紅燈,就會(huì)停下來。如果檢測到行人,也會(huì)停下以免發(fā)生意外。黑客可以輕易地在路上放置假的紅綠燈以及假的行人,迫使無人車停車并對其進(jìn)行攻擊。
既然每個(gè)傳感器都可以輕易被攻擊,如何保證無人車安全?對此,需要使用多傳感器融合技術(shù)互相糾正。攻擊單個(gè)傳感器很容易,但是如果同時(shí)攻擊所有傳感器難度相當(dāng)大。當(dāng)無人車發(fā)現(xiàn)不同傳感器的數(shù)據(jù)相互間不一致,就知道自己可能正在被攻擊。例如,無人車檢查到交通燈,但是高精地圖在此處并未標(biāo)注有交通燈,那么就很可能是被攻擊了。又例如GPS系統(tǒng)與LiDAR系統(tǒng)定位的位置極不一致,無人車也很可能是被攻擊了。
無人駕駛操作系統(tǒng)安全
針對傳感器的攻擊是外部攻擊,不需要進(jìn)入無人駕駛系統(tǒng)。第二種攻擊方式是入侵到無人駕駛操作系統(tǒng),劫持其中一個(gè)節(jié)點(diǎn)并對其進(jìn)行攻擊。目前的無人駕駛操作系統(tǒng)基本是基于ROS的框架實(shí)現(xiàn)。
但是ROS本身安全性有一定問題,總結(jié)有以下兩種攻擊方法:第一,其中一個(gè)ROS的節(jié)點(diǎn)被劫持,然后不斷地進(jìn)行分配內(nèi)存,導(dǎo)致其系統(tǒng)內(nèi)存消耗殆盡,造成系統(tǒng)OOM而開始關(guān)閉不同的ROS節(jié)點(diǎn)進(jìn)程,造成整個(gè)無人駕駛系統(tǒng)崩潰。第二,ROS的topic或service被劫持, 導(dǎo)致ROS節(jié)點(diǎn)之間傳遞的信息被偽造,從而導(dǎo)致無人駕駛系統(tǒng)的異常行為。造成第一個(gè)問題的原因是ROS Node本身是一個(gè)進(jìn)程,可以無節(jié)制分配資源導(dǎo)致奔潰,另外的原因是ROS Node可以訪問磁盤以及網(wǎng)絡(luò)資源,并無很好的隔離機(jī)制。為了解決這個(gè)問題,可以使用Linax容器技術(shù)(LXC)來管理每一個(gè)ROS節(jié)點(diǎn)進(jìn)程。
簡單來說,LXC提供輕量級的虛擬化,以便隔離進(jìn)程和資源,而且不需要提供指令解釋機(jī)制以及全虛擬化等其他復(fù)雜功能,相當(dāng)于C++中的NameSpace。LXC有效地將由單個(gè)操作系統(tǒng)管理的資源劃分到孤立的群組中,以更好地在孤立的群組之間平衡有沖突的資源使用需求。對于無人駕駛場景來說,LXC最大的好處是性能損耗小。我們測試發(fā)現(xiàn),在運(yùn)行時(shí)LXC只造成了5%左右的CPU損耗。除了資源限制外,LXC也提供了沙盒支持,使得系統(tǒng)可以限制ROS節(jié)點(diǎn)進(jìn)程的權(quán)限。為避免可能有危險(xiǎn)性的ROS節(jié)點(diǎn)進(jìn)程破壞其他的ROS節(jié)點(diǎn)進(jìn)程運(yùn)行,沙盒技術(shù)可以限制其進(jìn)程訪問磁盤、內(nèi)存以及網(wǎng)絡(luò)資源。
至于第二個(gè)問題,主要原因是通信的信息并沒有被加密,以至于攻擊者可以輕易得知通信內(nèi)容。目前業(yè)界有不少對ROS節(jié)點(diǎn)間通信的加密嘗試,比如使用DES加密算法。在通信的信息量十分小的時(shí)候,加密與否對性能影響不大。但隨著信息量變大,加密時(shí)間相對信息量成幾何級增長。另外,由于ROS通信系統(tǒng)的設(shè)計(jì)缺陷,加密時(shí)間也與接收信息的節(jié)點(diǎn)數(shù)量有直接關(guān)系。當(dāng)接受信息的節(jié)點(diǎn)數(shù)量增長時(shí),加密時(shí)間也隨之增長。
無人駕駛控制系統(tǒng)安全
CAN總線安全
車輛的CAN總線連接著車內(nèi)的所有機(jī)械以及電子控制部件,是車輛的中樞神經(jīng)。CAN總線具有布線簡單、典型總線型結(jié)構(gòu)、可最大限度節(jié)約布線與維護(hù)成本、穩(wěn)定可靠、實(shí)時(shí)、抗干擾能力強(qiáng)、傳輸距離遠(yuǎn)等特點(diǎn)。由于CAN總線本身只定義ISO/OSI模型中的第一層(物理層)和第二層(數(shù)據(jù)鏈路層),通常情況下,CAN總線網(wǎng)絡(luò)都是獨(dú)立網(wǎng)絡(luò),所以沒有網(wǎng)絡(luò)層。
在實(shí)際使用中,用戶還需要自己定義應(yīng)用層的協(xié)議,因此在CAN總線的發(fā)展過程中出現(xiàn)了各種版本的CAN應(yīng)用層協(xié)議。CAN總線采用差分信號傳輸,通常情況下只需要兩根信號線(CAN-H和CAN-L)就可以進(jìn)行正常的通信。在干擾比較強(qiáng)的場合,還需要用到屏蔽地即CAN-G(主要功能是屏蔽干擾信號)。CAN總線上任意節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)的向其它節(jié)點(diǎn)發(fā)起通信,節(jié)點(diǎn)沒有主從之分,但在同一時(shí)刻優(yōu)先級高的節(jié)點(diǎn)能獲得總線的使用權(quán)。
無人車操作系統(tǒng)安全
如果CAN被劫持,那么黑客將為所欲為,造成極其嚴(yán)重的后果。一般來說要進(jìn)入CAN系統(tǒng)是極其困難的。但是一般車輛的娛樂系統(tǒng)以及檢修系統(tǒng)的OBD-II端口都連接到CAN總線,這就給了黑客進(jìn)入CAN的機(jī)會(huì)。攻擊的方式包括以下幾點(diǎn):
OBD-II入侵:OBD-II端口主要用于檢測車輛狀態(tài),通常在車輛進(jìn)行檢修時(shí),技術(shù)人員會(huì)使用每個(gè)車廠開發(fā)的檢測軟件接入OBD-II端口并對汽車進(jìn)行檢測。由于OBD-II連接到CAN總線,只要黑客取得這些檢測軟件,包括 Ford的NGS、Nissan的Consult II、Toyota的Diagnostic Tester等,便能輕易截取車輛信息。
電動(dòng)車充電器入侵:最近電動(dòng)車越來越普及,充電設(shè)備成為電動(dòng)車生態(tài)必不可少的核心部件。由于電動(dòng)車的充電裝置在充電時(shí)會(huì)與外部充電樁通信,而且電動(dòng)車的充電裝置會(huì)連接CAN總線,這就給了黑客們通過外部充電樁入侵CAN系統(tǒng)的機(jī)會(huì)。
車載CD機(jī)入侵:曾經(jīng)有攻擊的案例是把攻擊代碼編碼到音樂CD中,當(dāng)用戶播放CD時(shí),惡意攻擊代碼便會(huì)通過CD播放機(jī)侵入CAN總線,從而可以取得總線控制以及盜取車輛核心信息。
藍(lán)牙入侵:另一個(gè)攻擊入口是藍(lán)牙。如今藍(lán)牙連接手機(jī)與汽車通訊以及娛樂系統(tǒng)已經(jīng)成為標(biāo)配。由于用戶可以通過藍(lán)牙給CAN發(fā)送信息以及從CAN讀取信息,這也給黑客們攻擊的窗口。除了取得車主手機(jī)的控制權(quán),由于藍(lán)牙的有效范圍是10米,黑客們也可以使用藍(lán)牙進(jìn)行遠(yuǎn)程攻擊。
TPMS入侵:TPMS是車輪壓力管理系統(tǒng),也有黑客對TPMS展開攻擊。在這種攻擊方法中,黑客先把攻擊代碼放置在車輛TPMS ECU中,然后當(dāng)TPMS檢測到某個(gè)胎壓值的時(shí)候,惡意代碼便會(huì)被激活,從而對車輛進(jìn)行攻擊。一個(gè)通用的解決方法是對ECU接收的信息進(jìn)行加密驗(yàn)證,以保證信息是由可信的MCU,而不是由黑客發(fā)出。使用加密驗(yàn)證,我們可以選擇對稱或者非對稱密碼。對稱密碼的計(jì)算量小但是需要通信雙方預(yù)先知道密碼。非對稱密碼無需預(yù)先知道密碼,但是計(jì)算量大。由于大部分車用ECU計(jì)算能力與內(nèi)存有限,現(xiàn)在通用做法是使用對稱密碼加密,然后密鑰在生產(chǎn)過程中被寫入ECU。這樣的后果是有許多ECU復(fù)用同一個(gè)密鑰,當(dāng)一個(gè)ECU密鑰被破解后,同批的ECU都會(huì)有風(fēng)險(xiǎn)。
為了解決這個(gè)問題,學(xué)術(shù)界和業(yè)界也提出了幾種解決方案:
TLS安全協(xié)議沿用非對稱密碼的算法對通信雙方進(jìn)行驗(yàn)證。
Kerberos是一個(gè)通用的基于對稱密碼算法的驗(yàn)證平臺。
TESLA安全協(xié)議(注意:這個(gè)TESLA安全協(xié)議與Tesla汽車沒有關(guān)系)提出了使用對稱密碼機(jī)制去模擬非對稱密碼的做法,從而達(dá)到既安全又能降低計(jì)算量的目的。
LASAN安全協(xié)議使用兩步驗(yàn)證的機(jī)制實(shí)時(shí)讓通信雙方交換密鑰,然后使用對稱密碼的算法對信息進(jìn)行驗(yàn)證。
車聯(lián)網(wǎng)通訊系統(tǒng)的安全性
當(dāng)無人車上路后,它會(huì)成為車聯(lián)網(wǎng)的一部分。V2X是車聯(lián)網(wǎng)通信機(jī)制的總稱。可以說,V2X是泛指各種車輛通訊的情景,包括V2V車車通訊、V2I車路通訊、V2P車與路人通訊等。通過V2X車輛可以獲得實(shí)時(shí)路況、道路、行人等一系列交通信息,從而帶來遠(yuǎn)距離環(huán)境信號。比如V2V,最普遍的應(yīng)用場景是在城市街道、高速公路,車輛之間可以相互通信,發(fā)送數(shù)據(jù),實(shí)現(xiàn)信息的共享。這樣的數(shù)據(jù)包括:車輛的時(shí)速、相對位置、剎車、直行還是左拐等所有與行駛安全的數(shù)據(jù)提前提供給周圍的車輛,使得周圍車輛都能夠預(yù)判其他車輛的駕駛行為,從而實(shí)現(xiàn)主動(dòng)的安全策略。V2X安全防護(hù)是自動(dòng)駕駛必要技術(shù)和智慧交通的重要一環(huán),接下來我們討論V2X的潛在安全風(fēng)險(xiǎn)及解決方案。
ECU安全加密系統(tǒng)
確保V2X通信安全的系統(tǒng)要滿足以下兩個(gè)基本條件:第一,確認(rèn)消息來自合法的發(fā)送設(shè)備,這個(gè)需要通過驗(yàn)證安全證書來保證。第二,確認(rèn)消息傳輸過程中沒有被修改,這個(gè)需要接受信息后計(jì)算信息的完整性。為了實(shí)現(xiàn)V2X的安全,歐盟發(fā)起了V2X安全研究項(xiàng)目PRESERVE并在項(xiàng)目中提出了符合V2X安全標(biāo)準(zhǔn)的硬件、軟件,以及安全證書架構(gòu)。
車聯(lián)網(wǎng)V2X系統(tǒng)
軟件:在安全硬件上,PRESEVER提供了一整套開源軟件棧提供安全通信。這套軟件棧提供了加密解密的軟件庫、電子證書認(rèn)證庫、與受信任的證書頒發(fā)機(jī)構(gòu)的安全通信庫等。
安全證書:為了確保信息來源于可信設(shè)備,可以使用受信任的證書頒發(fā)機(jī)構(gòu)來提供安全證書與密鑰。當(dāng)汽車A向汽車B放送信息時(shí),汽車A的發(fā)送器會(huì)在信息上添加電子簽名,并用密鑰對信息進(jìn)行加密。汽車B接受信息時(shí),會(huì)首先對信息的電子證書進(jìn)行認(rèn)證,確認(rèn)信息是由汽車A發(fā)送,然后使用公鑰對信息進(jìn)行解密,并對信息的完整性進(jìn)行驗(yàn)證。
PRESERVE系統(tǒng)架構(gòu)
安全模型校驗(yàn)方法
為了保證無人駕駛系統(tǒng)的安全性,我們需要從縱向?qū)ο到y(tǒng)的每個(gè)層面進(jìn)行校驗(yàn)。這些層面包括代碼、電子控制單元(ECU)、控制算法、車內(nèi)及車外網(wǎng)、自動(dòng)車整體與物理環(huán)境結(jié)合的網(wǎng)宇實(shí)體系統(tǒng),甚至需要多部車輛互相通訊的車聯(lián)網(wǎng)。越往上層系統(tǒng)的復(fù)雜度越大,校驗(yàn)也越困難。所以一般在對上層系統(tǒng)的分析會(huì)基于下層的分析結(jié)果做抽象化處理。比如在分析車內(nèi)網(wǎng)的時(shí)候,對與網(wǎng)絡(luò)鏈接的電子控制單元一般只考慮通訊接口的模型,而不會(huì)考慮電子控制單元內(nèi)的具體功能及軟件。
對于這些安全問題及攻擊向量的分析涉及的技術(shù)非常廣。本文重點(diǎn)介紹關(guān)于車內(nèi)網(wǎng)(比如前面提到的CAN)和控制系統(tǒng)的安全模型和驗(yàn)證。現(xiàn)有的車內(nèi)網(wǎng)安全協(xié)議一般建立在一些基本的加密單元上,比如對稱密鑰加密和非對稱密鑰加密。一般初始身份鑒別時(shí)需要用非對程密鑰加密,而之后的通訊就可以用相對更快的對稱密鑰加密。根據(jù)不同的安全等級需求,密鑰的長度會(huì)不一樣。長的密鑰會(huì)更安全,但也會(huì)增加加密和解密的時(shí)間,因此影響到控制系統(tǒng)的性能。另外,長的密鑰會(huì)增加通信的負(fù)擔(dān)。不管是CAN還是TDMA類的車內(nèi)網(wǎng)協(xié)議,這些附加的安全信息都可能導(dǎo)致通訊超時(shí)(結(jié)果可能是來不及剎車)。所以在安全校驗(yàn)的同時(shí)也必須考慮增加安全機(jī)制所產(chǎn)生的延時(shí)。最后,密鑰的分發(fā)和管理也至關(guān)重要。這是當(dāng)前的一個(gè)技術(shù)難點(diǎn),還沒有特別好的解決方案。
對于協(xié)議本身的驗(yàn)證方法有幾種。一般來說,首先要校驗(yàn)協(xié)議的數(shù)學(xué)模型。最近提出的LASAN就是先用形式化驗(yàn)證工具Scyther來證明協(xié)議的安全性,然后做仿真來測試性能。對于控制系統(tǒng),分析時(shí)是會(huì)側(cè)重考慮攻擊對數(shù)據(jù)所產(chǎn)生的影響(比如說延時(shí),丟失或假數(shù)據(jù)),然后對相應(yīng)的安全方案(比如傳感器數(shù)據(jù)混合處理或狀態(tài)估計(jì))做數(shù)學(xué)證明來達(dá)到校驗(yàn)的目的。類似的方法也被應(yīng)用在驗(yàn)證一些車聯(lián)網(wǎng)的功能上,像合作的可變巡航控制。總體來說,無人車的安全問題至關(guān)重要,車輛如果被黑客攻擊或控制會(huì)危及生命。但是,不管從技術(shù)還是標(biāo)準(zhǔn)化的角度看,現(xiàn)階段對于無人車安全問題的校驗(yàn)尚未成熟,還需要學(xué)術(shù)界和工業(yè)界的深入研究與大力開發(fā)。
-
傳感器
+關(guān)注
關(guān)注
2564文章
52668瀏覽量
764291 -
無人駕駛
+關(guān)注
關(guān)注
99文章
4156瀏覽量
122982
原文標(biāo)題:無人駕駛系統(tǒng)安全迫在眉睫,如何防御是現(xiàn)階段的大問題!
文章出處:【微信號:IV_Technology,微信公眾號:智車科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
無人駕駛導(dǎo)航平臺
百度無人駕駛車北京完成路測
谷歌欲在英國首推無人駕駛汽車
【話題】無人駕駛汽車,真的要來了么?
無人駕駛電子與安全
2017全球無人駕駛汽車展
無人駕駛與自動(dòng)駕駛的差別性
激光雷達(dá)-無人駕駛汽車的必爭之地
成熟的無人駕駛方案離不開激光雷達(dá)
無人駕駛汽車的關(guān)鍵技術(shù)是什么?
介紹無人駕駛硬件平臺設(shè)計(jì)
無人駕駛硬件系統(tǒng)主要包括哪些
無人駕駛汽車的安全挑戰(zhàn)及其影響

評論