360又“黑”了一輛特斯拉,干擾傳感器的“N”種方法
在上周關(guān)于Defcon的預(yù)告中,車云菌提到過將會(huì)有360的團(tuán)隊(duì)將會(huì)演示是如何通過欺騙,或者說是干擾傳感器,來讓車上的半自動(dòng)駕駛系統(tǒng)做出錯(cuò)誤的決定。
本周一,360汽車信息安全實(shí)驗(yàn)室負(fù)責(zé)人劉健皓與一同進(jìn)行這項(xiàng)課題研究的浙江大學(xué)教授/博士生導(dǎo)師徐文淵、浙江大學(xué)閆琛一起,在Defcon上共同進(jìn)行演示,介紹了是如何騙過特斯拉Model S上的超聲波傳感器、攝像頭和毫米波雷達(dá)。
自動(dòng)駕駛,包括現(xiàn)階段的半自動(dòng)駕駛,實(shí)現(xiàn)的過程都是通過安裝在車輛上的各類傳感器對(duì)車輛周圍的環(huán)境進(jìn)行感知,數(shù)據(jù)傳到分析處理單元,控制單元根據(jù)分析處理單元發(fā)送的結(jié)果得到判斷,進(jìn)而向車輛的執(zhí)行器發(fā)出命令,做出轉(zhuǎn)向、加速、剎車等不同的命令。
他們的切入點(diǎn),就是在第一步,傳感器感知周圍環(huán)境時(shí),做了一些手腳,讓傳感器得到錯(cuò)誤的數(shù)據(jù)。
如何干擾傳感器?
不同的傳感器干擾的方式自然不同。這次研究的三個(gè)傳感器工作原理各不相同,咱們一個(gè)一個(gè)看。
1.超聲波傳感器
超聲波傳感器在車輛上的作用是探測(cè)障礙物,發(fā)出超聲波之后,根據(jù)接收到回聲的時(shí)間來判斷與障礙物之間的距離。特斯拉的Model S的車身周圍安裝有12個(gè)超聲波傳感器用來探測(cè)車輛周圍的障礙物,并且會(huì)在檢測(cè)到有障礙物之后發(fā)出警告聲,儀表盤上對(duì)應(yīng)位置會(huì)有障礙物以及距離提示。如果開啟了Autopilot,那么車輛還會(huì)在距離過近的時(shí)候自動(dòng)剎車。
影響超聲波傳感器的方式很簡(jiǎn)單,一種是通過發(fā)出超聲波的噪聲,增加超聲波傳感器接收到回聲的信噪比來影響它的判斷;一種是發(fā)出相同頻率的超聲波給超聲波傳感器,讓它誤以為原本沒有障礙物的地方是有障礙物的。
實(shí)現(xiàn)起來也很方便,只需要一個(gè)成本在60元人民幣的干擾設(shè)備,在車輛的超聲波傳感器前方發(fā)出對(duì)應(yīng)信號(hào)就可以了。從團(tuán)隊(duì)研究的結(jié)果來看,如果是通過噪聲來干擾,那么會(huì)影響超聲波對(duì)距離的判斷,判斷結(jié)果不精準(zhǔn),從而顯示在儀表盤上的距離信息也是錯(cuò)誤的;而如果是通過發(fā)出同頻率的信號(hào),那么會(huì)讓傳感器做出完全相反的判斷。
干擾之后,傳感器對(duì)距離判斷錯(cuò)誤
如果是在人工駕駛狀態(tài)下,那么會(huì)被儀表盤顯示的錯(cuò)誤信息而誤導(dǎo),而如果是在Autopilot的狀態(tài)下,那么同樣會(huì)被誤導(dǎo)而做出錯(cuò)誤判斷,或者誤以為系統(tǒng)不工作而發(fā)出警告聲,必須由人類駕駛員接手。需要注意的是,如果是發(fā)出同頻率信號(hào)來進(jìn)行干擾,那么時(shí)間很重要,只有第一次讓傳感器接收到的超聲波是有效的,能夠產(chǎn)生影響。
傳感器未能識(shí)別出障礙物
當(dāng)然,除此之外還有一個(gè)最簡(jiǎn)單的辦法,使用一些可以吸聲的材料,就可以吸收傳感器發(fā)出的超聲波,直接讓其被罷工。
2.毫米波雷達(dá)
相比之下,對(duì)于毫米波雷達(dá)的破解難度要大很多。最直接的體現(xiàn)就在設(shè)備的成本上,據(jù)劉健皓透露,他們干擾毫米波雷達(dá)的設(shè)備成本在120萬人民幣。不過,出于安全考慮以及設(shè)備電源線長(zhǎng)的限制,對(duì)于毫米波雷達(dá)的干擾并非是在車輛高速運(yùn)行狀態(tài)下實(shí)現(xiàn)的。
毫米波雷達(dá)的理論干擾距離就是毫米波的探測(cè)距離,不過無線毫米波發(fā)射裝置很少且成本會(huì)更高,這也是對(duì)毫米波雷達(dá)的攻擊會(huì)更加難以發(fā)生在現(xiàn)實(shí)中。
毫米波雷達(dá)的干擾設(shè)備
上圖就是干擾毫米波雷達(dá)的設(shè)備。劉健皓表示,通過電磁波的干擾,可以在前方無車的狀態(tài)下讓傳感器認(rèn)為有車,這個(gè)信息會(huì)同步顯示到儀表盤上,如果距離足夠近,報(bào)警裝置還會(huì)提醒,同樣,在Autopilot狀態(tài)下,會(huì)自動(dòng)剎車。同樣,可以在前方有車的時(shí)候,讓系統(tǒng)認(rèn)為前方無車,而繼續(xù)行駛。
干擾毫米波雷達(dá)后儀表盤的錯(cuò)誤顯示
與超聲波雷達(dá)相同的是,同樣可以通過干擾設(shè)備來讓系統(tǒng)進(jìn)行錯(cuò)誤的距離判斷。而不論是超聲波雷達(dá)還是毫米波雷達(dá)的距離判斷,從實(shí)際的開車場(chǎng)景來說,只有微小距離的錯(cuò)誤判斷會(huì)更容易給人以誤導(dǎo),比如在倒車或者停車入位的時(shí)候,更多的干擾,是對(duì)于Autopilot這套系統(tǒng)。
如果傳感器被嚴(yán)重干擾,在Autopilot下,系統(tǒng)同樣會(huì)做出「?jìng)鞲衅鞑荒苷9ぷ鳌沟呐袛?,從而無法啟動(dòng)Autopilot,要求進(jìn)入人工狀態(tài)。
3.攝像頭
雖然現(xiàn)在特斯拉5月份的致死事故還沒有最終確定原因,但是卡車的白色集裝箱對(duì)攝像頭帶來的「致盲」效果,正是劉健皓著手研究的切入點(diǎn)。不過對(duì)于攝像頭的干擾,并沒有直接在車上進(jìn)行,而是將攝像頭拆下。
致盲攝像頭
讓攝像頭致盲的手段是采用光源直射攝像頭(或者直射標(biāo)定板,讓其反光射向攝像頭),其最終的效果取決于光源與攝像頭的距離,以及光源的強(qiáng)度。據(jù)劉健皓介紹,在距離攝像頭50cm的位置用200毫瓦的紅外線,可以讓攝像頭致盲40秒。如果距離增加,效果會(huì)遞減。如果光源過強(qiáng),還會(huì)造成攝像頭直接被燒壞。
攝像頭被致盲的結(jié)果
當(dāng)然,距離50cm在現(xiàn)實(shí)生活中是無法對(duì)行駛過程中的車輛實(shí)現(xiàn)的,隨著距離的拉長(zhǎng),可以通過增加光源強(qiáng)度的方法,來造成致盲。而只要致盲2-3秒,對(duì)于開啟了自動(dòng)行駛狀態(tài)的車來說,就很可能帶來嚴(yán)重的后果。
從硬件來說,攝像頭本身存在一個(gè)刷新頻率,如果刷新頻率夠高,則會(huì)讓致盲的效果減弱。
傳感器可以被欺騙,這說明了什么?
從前面的描述中其實(shí)可以看出,從傳感器入手來進(jìn)行攻擊,其實(shí)并不是一個(gè)很容易實(shí)現(xiàn)的方式。
在提到的三種傳感器中,最容易實(shí)現(xiàn)的就是超聲波了。設(shè)備成本低,入手容易,一個(gè)充電寶就可以讓其保持工作,雖然有距離的限制,但是除了地庫之外,也可以通過跟車的方式來實(shí)現(xiàn)。而要致盲攝像頭,一方面是距離越遠(yuǎn)效果越差,雖然只要致盲哪怕一秒鐘就可能會(huì)引起嚴(yán)重的后果,但是需要一場(chǎng)精心策劃,毫米波雷達(dá)更是如此。
之所以從傳感器入手,是因?yàn)?60在研究自動(dòng)駕駛過程中,巧合發(fā)現(xiàn)了傳感器接收到錯(cuò)誤數(shù)據(jù)對(duì)系統(tǒng)的影響。不過,干擾傳感器并不是根本目的,劉健皓表示,「我們研究的還是自動(dòng)駕駛,干擾傳感器只是想說明現(xiàn)階段自動(dòng)駕駛的模型和算法還存在缺陷,需要去解決」。選擇Model S,也是因?yàn)锳utopilot能夠在車輛停止時(shí)打開,便于試驗(yàn)研究。目前特斯拉也已經(jīng)與360聯(lián)系,雙方將共同研究這一問題。
傳感器被干擾之后系統(tǒng)得到錯(cuò)誤的結(jié)果,從劉健皓的角度來看,一方面是傳感器本身沒有「彈性」機(jī)制,二則是在決策算法上,沒有進(jìn)行容錯(cuò)。以毫米波雷達(dá)為例,Model S毫米波雷達(dá)的頻率與波長(zhǎng)都是被逆向得出,如果設(shè)置了彈性機(jī)制,頻率隨機(jī),那么逆向的難度自然會(huì)加大;而從算法層面來說,目前Model S雖然進(jìn)行了不同傳感器的數(shù)據(jù)融合,但是并沒有針對(duì)異常數(shù)據(jù)有分析過程。
在劉健皓去美國(guó)之前,車云菌在360的地下車庫觀看了他們對(duì)超聲波干擾的實(shí)時(shí)演示。除了錯(cuò)誤的信息得到的錯(cuò)誤判斷之外,其實(shí)還順帶發(fā)現(xiàn)了另外一個(gè)問題:
在正常狀態(tài)下,開啟Autopilo之后,如果車輛處于前進(jìn)狀態(tài),那么后方是否存在障礙物是不會(huì)影響車輛狀態(tài)。但是如果此時(shí)將干擾設(shè)備放在后方傳感器附近(實(shí)測(cè)3米左右就可以),那么車輛就會(huì)自動(dòng)剎停。車輛倒車時(shí),干擾前方超聲波傳感器可以得到同樣的效果。
倒車時(shí)干擾前方超聲波傳感器,Autopilot自動(dòng)剎車
造成這一結(jié)果的原因尚未得知,不過可以知道還是出在Autopilot系統(tǒng)本身的判斷機(jī)制上。
360和自動(dòng)駕駛
很容易想到的一個(gè)問題是,360為什么開始研究自動(dòng)駕駛了?在這點(diǎn)上,360攻防實(shí)驗(yàn)室的想法和成立了Comma的黑客George Hotz相類似。
據(jù)劉健皓介紹,他們目前正在將一輛混合動(dòng)力車改裝成自動(dòng)駕駛車輛。不過實(shí)現(xiàn)的手段與目前其他團(tuán)隊(duì)的方式有所不同。現(xiàn)在通過改裝車實(shí)現(xiàn)自動(dòng)駕駛相關(guān)功能的,都是通過新增執(zhí)行器的方式,讓執(zhí)行器變成電子控制的。而執(zhí)行器的技術(shù)則被一級(jí)供應(yīng)商所壟斷。
劉健皓認(rèn)為,如果要讓自動(dòng)駕駛普及的話,那么可以通過軟件改裝的方式來實(shí)現(xiàn)。只要車輛的轉(zhuǎn)向、動(dòng)力和剎車等控制是可以電控的,那么就可以而通過逆向執(zhí)行器控制協(xié)議的方式,拿到控制權(quán)。而后在加裝傳感器,讓車輛變成具備L2輔助駕駛功能的車輛。
關(guān)于目前的改裝進(jìn)度,劉健皓并沒有透露太多。從理論上來說,這個(gè)方式是可以實(shí)現(xiàn)的。雖然實(shí)際操作過程中會(huì)存在很多問題,比如逆向控制協(xié)議的過程,再比如他們需要對(duì)車輛的執(zhí)行控制需要有很長(zhǎng)時(shí)間的研究,不過這個(gè)方式也給汽車圈帶來了新的思路。
車云小結(jié)
聊到最后的時(shí)候,似乎「360要研究自動(dòng)駕駛」這件事情比「干擾傳感器」更能引起車云菌的興趣。畢竟干擾傳感器這事兒的實(shí)現(xiàn)難度擺在那里。但是不可忽視的是,自動(dòng)駕駛車的安全問題正是為人們所擔(dān)憂的。在傳感器之外,數(shù)據(jù)傳輸、V2X以及CAN總線架構(gòu),都是需要注意的節(jié)點(diǎn)。
評(píng)論