汽車的嵌入式系統(tǒng)安全
盡管汽車采用數(shù)據(jù)網(wǎng)絡(luò)進(jìn)行通信是創(chuàng)新性的技術(shù),但也正因?yàn)檫@些技術(shù)的引用,增加了不少潛在的安全風(fēng)險(xiǎn)。
你的汽車和一部現(xiàn)代的智能手機(jī)有什么區(qū)別?也許比你想象的區(qū)別要少得多!在過去的十年里,一場“信息技術(shù)革命”席卷了我們的交通工具。逐漸地,那些大部分獨(dú)立的、靜態(tài)的、模擬的機(jī)電系統(tǒng)已經(jīng)演化成為一套基于網(wǎng)絡(luò)軟件的、相互協(xié)同工作的多個(gè)電控單元(ECU)所組成的復(fù)雜系統(tǒng)。而且這種相互通信聯(lián)系不只是發(fā)生在ECU之間,而且對(duì)于整個(gè)外部世界都有通信交流,也就是說,已經(jīng)可以通過藍(lán)牙技術(shù), 智能手機(jī)可以同時(shí)連接到英特網(wǎng)和汽車內(nèi)置的移動(dòng)無線通信模塊。
聯(lián)網(wǎng)車輛的潛在危險(xiǎn)
盡管汽車采用數(shù)據(jù)網(wǎng)絡(luò)進(jìn)行通信是創(chuàng)新性的技術(shù),但也正因?yàn)檫@些技術(shù)的引用,增加了不少潛在的安全風(fēng)險(xiǎn)。雖然目前國家最先進(jìn)的汽車電子產(chǎn)品都在著手對(duì)抗技術(shù)故障和危害,但在人為制造的威脅或者采用惡意軟件攻擊車輛來達(dá)到故意操縱汽車的目的方面,我們還有很多事要做。為此,惡意攻擊層出不窮,從簡單的修改里程表,到故意操縱交通控制系統(tǒng)來攻擊車輛控制相關(guān)的應(yīng)用都有所發(fā)生。這種威脅是切實(shí)存在的,它能夠造成相當(dāng)大的破壞,并且已經(jīng)被幾起成功的攻擊事件所證明,雖然其中大多數(shù)是由研究團(tuán)隊(duì)策動(dòng)。例如在2011年,一輛在美國的量產(chǎn)汽車,其內(nèi)部的汽車電子部件功能成功的被人為的通過無線接口遠(yuǎn)程控制(例如,制動(dòng))。出于多方面的原因,今天電腦化的汽車針對(duì)黑客和惡意軟件的可靠防護(hù)不僅對(duì)于駕駛者和行人是必不可少的,而且也是大多數(shù)新型汽車針對(duì)交通控制和滿足政府機(jī)關(guān)和企業(yè)需求的一次良好機(jī)遇和先決條件。
利用傳統(tǒng)的電腦或服務(wù)器安全手段
嵌入式系統(tǒng)的IT安全要求一個(gè)具體而特別的解決方案。因?yàn)槠嚨那度胧綉?yīng)用硬件平臺(tái)只擁有很少的計(jì)算能力、有限的存儲(chǔ)單元和很窄的帶寬,這就導(dǎo)致傳統(tǒng)的IT安全手段不能簡單地移植到汽車的嵌入式系統(tǒng)中。這同時(shí)也增加了采用計(jì)算和內(nèi)存密集型加密算法的難度。另一個(gè)原因在于標(biāo)準(zhǔn)電腦和嵌入式系統(tǒng)保護(hù)的對(duì)象和內(nèi)容也不盡相同。一臺(tái)標(biāo)準(zhǔn)電腦主要防止來自互聯(lián)網(wǎng)的惡意攻擊,而有效的汽車安全則必須要考慮額外的硬件入侵的可能性,因?yàn)楣粽咄际侵苯忧秩雽?shí)體汽車的系統(tǒng)。此外,因?yàn)槠噾?yīng)用功能在裝車后大多數(shù)情況下是可直接使用的,所以這就增加了物理攻擊的潛在威脅(例如逆向工程、被動(dòng)攻擊、主動(dòng)侵入或非侵入攻擊)。
在汽車領(lǐng)域,維護(hù)選項(xiàng)被嚴(yán)格限制,經(jīng)常只在一些不被信任的商店中提供此類服務(wù)。此外,很多嵌入式系統(tǒng)元件都被直接燒進(jìn)硬件或者是只讀的存儲(chǔ)器中。這樣就自動(dòng)排除了各個(gè)模塊更新的可能性,但這和所謂的軟件在PC域中“自動(dòng)”更新是截然相反的。組成汽車網(wǎng)絡(luò)的電控單元各不相同,具有很大差異性,這導(dǎo)致復(fù)雜性大大增加。根據(jù)其所被賦予的不同功能,不同的E C U的計(jì)算能力差別極大,因此需要具有針對(duì)性的不同的保護(hù)機(jī)制。
全面的解決問題的方法
即使是一份粗淺的分析也能表明,汽車系統(tǒng)的IT安全,以及許多其他的嵌入式系統(tǒng)安全,只有在整個(gè)開發(fā)流程中采用一種全面的,經(jīng)過深思熟慮的系統(tǒng)安全設(shè)計(jì)方法才能實(shí)現(xiàn)。一種全面的設(shè)計(jì)方法既包含能很好地同時(shí)適應(yīng)開發(fā)流程和量產(chǎn)流程,也包括車載網(wǎng)絡(luò)方面安全性的整體概念。為此,安全工程系統(tǒng)方法的第一步首先是針對(duì)整個(gè)系統(tǒng)的所有安全相關(guān)的數(shù)據(jù),功能模塊和接口進(jìn)行建模。隨后則應(yīng)著手分析調(diào)查安全目標(biāo)和要求。這個(gè)過程包括以下幾個(gè)主要步驟:
- 建立系統(tǒng)模型
- 確定安全目標(biāo)
- 確定潛在的隱患
- 做好風(fēng)險(xiǎn)分析
- 確定功能安全需求
- 設(shè)計(jì)一個(gè)安全構(gòu)架
- 在軟件中寫明詳細(xì)的安全要求,如果可以的話,在硬件中也寫明
- 實(shí)現(xiàn)安全機(jī)制
在安全工程的規(guī)范定義和實(shí)施階段要實(shí)現(xiàn)安全機(jī)制的功能,以確保之前確定的安全目標(biāo)得以實(shí)現(xiàn)。這樣所得到的結(jié)果就是一個(gè)綜合采用軟件和硬件措施及相對(duì)應(yīng)的開發(fā)過程的全面解決方案。例如,可能的軟件方法會(huì)采用加密的方式實(shí)現(xiàn),如為達(dá)到安全目標(biāo)的加密和簽名還有保密性和真實(shí)性等。在此基礎(chǔ)上,更加復(fù)雜的軟件協(xié)議有助于實(shí)現(xiàn)診斷功能或者軟件更新功能的授權(quán)保護(hù)。在大多數(shù)情況下,硬件解決方案如采用特殊的安全存儲(chǔ)器和具有加密功能的存儲(chǔ)器,旨在提高針對(duì)惡意操縱的保護(hù)和硬件攻擊的防御水平。最近,有跡象表明,對(duì)于汽車安全模塊的開發(fā)和輔助加密功能的E C U 網(wǎng)絡(luò)保護(hù)需求正在日益提高。
評(píng)論