這次特斯拉的自動(dòng)駕駛事故導(dǎo)致駕駛員死亡。事件已經(jīng)過去近兩個(gè)月了,但是在媒體上大規(guī)模發(fā)布是這幾天的事情。按照官方分析,事件發(fā)生的原因是自動(dòng)駕駛傳感器將底盤很高的大貨車誤判為橋梁等建筑物。我們可以看出,計(jì)算機(jī)的錯(cuò)誤,已經(jīng)不再局限于虛擬世界,而是可以導(dǎo)致人類生命的損失。作為計(jì)算機(jī)安全研究人員,我們不僅要問,車載計(jì)算機(jī)可能會(huì)有哪些情況會(huì)被攻擊,導(dǎo)致嚴(yán)重的事故呢?
我們先從美國(guó)的車載診斷系統(tǒng)OBDII說(shuō)起。OBDII是On-B
OArdDiagnositicsVersionII的意思,正巧今年是OBDII在美國(guó)實(shí)施20周年。美國(guó)規(guī)定,從1996款開始,在美國(guó)銷售的汽車必須有OBDII系統(tǒng)。OBDII是連接汽車控制器網(wǎng)絡(luò)的接口,一般在司機(jī)左膝蓋前方。
比如特斯拉ModelS的OBDII接口長(zhǎng)這樣:
圖1 特斯拉ModelS的OBDII接口
大多數(shù)美國(guó)跑的車子,不管是美國(guó)造的、日本造的還是歐洲造的,都是用這樣的接口。
連上這個(gè)接口,就能連上車的控制機(jī)網(wǎng)絡(luò)總線CANBus,然后和車?yán)锩娴母鞣N計(jì)算機(jī)聊天,比如讓引擎控制器告訴你今天喝了幾壺啊,問問機(jī)油是不是太燙啊,告訴剎車ABS控制器該放手了啊之類的。
問題來(lái)了。當(dāng)年在建立OBDII標(biāo)準(zhǔn)的時(shí)候,車子上面還沒有什么無(wú)線的接口。需要指出的是,有線網(wǎng)絡(luò)和無(wú)線網(wǎng)絡(luò)完全是不一樣的安全玩法。因?yàn)橛芯網(wǎng)絡(luò)的信號(hào)連接,通過線纜構(gòu)建了一個(gè)隱含的信任架構(gòu)。只有被信任的計(jì)算機(jī)才能連接到網(wǎng)絡(luò)中。這就像一群在重點(diǎn)學(xué)校長(zhǎng)大的孩子,大家彼此都規(guī)規(guī)矩矩,客客氣氣,完全不知道外面世界的險(xiǎn)惡。
而無(wú)線網(wǎng)絡(luò),則是一片叢林,誰(shuí)都可以偷聽,誰(shuí)都可以說(shuō)話,誰(shuí)都可以模仿別人。把有線網(wǎng)絡(luò)里的設(shè)備接入無(wú)線網(wǎng)絡(luò),就等于把一群乖孩子直接扔到菜市場(chǎng),被騙走幾個(gè)是肯定的。不信?你不妨靜心聽一下2.4G赫茲的頻段,那里有藍(lán)牙,BLE和Zigbee的淺吟,有WiFi的低唱,有無(wú)線鼠標(biāo)的咕噥,有遙控玩具的喧鬧,有無(wú)繩電話的碎碎念,忽然大家都安靜下來(lái)了,耳邊只有微波爐的咆哮。
而車載的那些計(jì)算機(jī),在20年以后,發(fā)現(xiàn)身邊的各種器件都能通過無(wú)線接口,不論是車載電話,還是車載WiFi或者藍(lán)牙,連到CANbus上面,告訴那個(gè)引擎控制器該休息了,或者ABS控制器該放手了。而黑客們也能通過這些無(wú)線接口,和一輛正在行駛的車上面的控制器聊天,細(xì)思極恐。
對(duì)于這種可能有嚴(yán)重后果的攻擊方式,我們還是有分寸的,這里就講一個(gè)不那么嚴(yán)重的例子。
前一段國(guó)內(nèi)創(chuàng)新熱潮里面,有不少人搞車聯(lián)網(wǎng)。所謂車聯(lián)網(wǎng),很多方案其實(shí)就是買個(gè)這種小盒子插到車的OBDII接口上,然后用手機(jī)和小盒子里面的藍(lán)牙配對(duì),手機(jī)上的APP就可以通過OBDII的接口讀取CANbus上面的各種信息,包括耗氧量,發(fā)動(dòng)機(jī)轉(zhuǎn)速等等。
從虛擬到現(xiàn)實(shí)的威脅:我們來(lái)談?wù)勛詣?dòng)駕駛的安全問題
圖2 OBDIIplug
問題是,無(wú)論是這個(gè)小盒子還是CANbus,都沒有足夠的防范措施來(lái)阻擋黑客的攻擊。我們做的第一個(gè)攻擊,就是開著車子在路上跑,用手機(jī)來(lái)掃描這種小盒子的無(wú)線信號(hào)。一旦發(fā)現(xiàn),就破解去配對(duì)(《疑犯追蹤》里面宅總上身,強(qiáng)制配對(duì)的既視感)。然后就可以讀取車的某些敏感信息了。我們其實(shí)也不拿別的什么敏感信息,就是找ECU問問車的VIN號(hào)(相當(dāng)于車的身份證)啊,問問車子熱不熱啊之類的。這些都可以在等紅燈的半分鐘里面,從旁邊的車子里面問來(lái)。還有一次是在開車的過程中讓旁邊的車告訴我們它的車速是多少。
圖3 OBDII和車載控制機(jī)
在讓OBDII和車載控制機(jī)隔離方面,特斯拉其實(shí)是做的很不錯(cuò)的。特斯拉的OBDII接口只是按照法律規(guī)定,提供了電壓和接地,但是并沒有和車載控制器有數(shù)據(jù)連接。相反,特斯拉的控制計(jì)算機(jī)是有wifi和以太網(wǎng)接口的。這些接口,也能成為黑客攻擊的界面。
前面講了傳統(tǒng)車載控制器可以被黑客攻擊的方法。在自動(dòng)駕駛方面,汽車又增加了傳統(tǒng)汽車所沒有的新的傳感器和計(jì)算機(jī)。比如計(jì)算機(jī)視覺用的攝像頭,用來(lái)檢測(cè)是否在車道內(nèi)部以及周圍的物體;比如以前不和駕駛控制器連接的GPS現(xiàn)在也作為數(shù)據(jù)輸入連入了駕駛控制網(wǎng)絡(luò);還有激光雷達(dá)等。所有這些新的傳感器,都會(huì)將數(shù)據(jù)源源不斷的輸入控制計(jì)算機(jī)。當(dāng)輸入數(shù)據(jù)被干擾,就有可能擾亂駕駛控制網(wǎng)絡(luò)中的計(jì)算機(jī)正常工作,造成事故。
圖4 VELODYNE
第三種會(huì)造成車載系統(tǒng)故障的是第三方程序。大家或許還記得,在iPhone快發(fā)布的時(shí)候,喬布斯仍然不希望有AppStore。原因其實(shí)很簡(jiǎn)單,一個(gè)開放式計(jì)算機(jī)系統(tǒng)中,大約有四分之三以上的系統(tǒng)崩潰來(lái)自第三方程序。我讀書時(shí)候有位教授曾經(jīng)給我們看過一篇paper,統(tǒng)計(jì)表明微軟的Windows系統(tǒng)中,第三方的驅(qū)動(dòng)程序造成了80%左右的系統(tǒng)崩潰。喬布斯對(duì)第三方程序的威脅也是領(lǐng)會(huì)的非常清楚,F(xiàn)在,很多車載系統(tǒng)需要第三方程序來(lái)進(jìn)行娛樂操作,比如播放網(wǎng)絡(luò)音樂,展示目的地天氣等等,這些第三方程序往往不能保證和系統(tǒng)的其他部分一樣安全。
作為國(guó)際Web標(biāo)準(zhǔn)化組織W3C車聯(lián)網(wǎng)工作組的特邀安全專家,我在車聯(lián)網(wǎng)工作組的會(huì)議中也對(duì)第三方程序的安全性提出了一些建議,并得到了重視。參與標(biāo)準(zhǔn)建立的業(yè)界人士,對(duì)車載系統(tǒng)的安全性還是相當(dāng)重視的,我們會(huì)有專門的安全會(huì)議來(lái)探討車載系統(tǒng)的安全性。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:從虛擬到現(xiàn)實(shí)的威脅:談?wù)勛詣?dòng)駕駛的安全問題
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839619569.html