今年,博聞嵌入式網(wǎng)站發(fā)布研究報(bào)告稱,超過半數(shù)的嵌入式設(shè)計(jì)已包含聯(lián)網(wǎng)功能,且近三分之一的設(shè)計(jì)擁有無線接口。嵌入式系統(tǒng)的相互聯(lián)系已經(jīng)悄然提出了另一層面的設(shè)計(jì)要求。除了功能、性能、效率、可靠性和成本外,設(shè)計(jì)師現(xiàn)在必須重視安全問題。但是上周一位著名密碼學(xué)專家指出,他們將不會(huì)重視,而且會(huì)受到教訓(xùn)。不過,一種基于硬件且能系統(tǒng)解決安全挑戰(zhàn)的方法正在形成。
“我們看到嵌入式設(shè)計(jì)師們將面對(duì)的變化,”密碼學(xué)研究所主席兼首席科學(xué)家保羅科可提出警告,“在嵌入式領(lǐng)域中,設(shè)計(jì)師們大多依賴這個(gè)假設(shè),即沒有人會(huì)干擾他們的系統(tǒng)。但是,在一個(gè)設(shè)備互聯(lián)并充滿惡意用戶的世界中,這種愿望起不了作用。”
Paul Kocher指出了否定觀點(diǎn)產(chǎn)生背后的幾個(gè)原因。一個(gè)是問題的快速增長。當(dāng)嵌入式設(shè)備還是機(jī)電式的,或在這些設(shè)備中只有獨(dú)立處理器上才有少量的固件時(shí),篡改行為很容易被檢測出來。“今天的問題在于計(jì)算過多,甚至專家也不能每次都了解那里的一切。” Paul Kocher說。
另一方面的因素與“無知”有關(guān):設(shè)計(jì)團(tuán)隊(duì)不僅無視問題的存在,而且不了解那些保證嵌入式安全的基礎(chǔ)設(shè)施的原始狀態(tài)。“這與19世紀(jì)40年代的醫(yī)學(xué)很相似。” Paul Kocher指出。那時(shí)人們對(duì)衛(wèi)生學(xué)知之甚少,沒有公認(rèn)且精確的疾病理論,而且制藥公司和醫(yī)師之間的“秘密”意味著沒有系統(tǒng)的診斷和試驗(yàn)方法,也無法共享成果。那曾是任由蛇油銷售出入的領(lǐng)域。
與此類似,Paul Kocher指出,今天嵌入式設(shè)計(jì)師們無視安全性,與之對(duì)應(yīng)的是基礎(chǔ)理論的缺失、診斷治療的不銜接和阻礙知識(shí)流動(dòng)的企業(yè)秘密。無效的技術(shù)再次蓬勃發(fā)展。
或許,基礎(chǔ)設(shè)施的缺失造成了惡性的懷疑。Paul Kocher認(rèn)為,除非系統(tǒng)開發(fā)者親自遇到了“可怕的漏洞”,否則他們一般不愿意付出系統(tǒng)成本或?qū)踩嵘先粘獭M瑯樱K端用戶不情愿為安全性支付額外的費(fèi)用,即使漏洞的后果可能會(huì)直接影響到他們。
Paul Kocher說,上述因素使得今天的嵌入式安全與19世紀(jì)40年代的醫(yī)學(xué)之間出現(xiàn)一個(gè)很大的差異。19世紀(jì)40年代,細(xì)菌的精確理論正在形成,而且巴斯特和其他學(xué)者正在這個(gè)領(lǐng)域闊步前行。相比較而言,今天“我們看到了襲擊的快速增長,安全性卻沒有增強(qiáng)”,Paul Kocher感嘆道。
但也取得了一些成績。Paul Kocher以智能卡為例,它售價(jià)不足1美元,卻能夠保護(hù)世界上很多的零售交易。智能卡朝向簡便、強(qiáng)大分區(qū)和硬件穩(wěn)固的態(tài)勢發(fā)展,勾勒出能夠保護(hù)其他嵌入式設(shè)備的方法。
首先要明確必須受到保護(hù)的交易和對(duì)象。在智能卡的應(yīng)用中,這一點(diǎn)非常明顯--此卡只做一件事,而且它必須安全。但在像平板電腦一樣的移動(dòng)平臺(tái)上,事情變得更加復(fù)雜。設(shè)備可能進(jìn)行許多不同類型的交易,觀看電影、零售購物、網(wǎng)上銀行和通過企業(yè)VPN的應(yīng)用。每個(gè)案例中,內(nèi)容擁有者--電影公司、零售商店、銀行或是小公司--可能對(duì)足夠安全的想法各不相同。因此通過設(shè)備將會(huì)有許多不同的具有各自認(rèn)證和保護(hù)的安全路徑,還可能需要單獨(dú)安裝一個(gè)硬件,Paul Kocher說。
在CPU內(nèi)核的信用區(qū)域中,從認(rèn)證到加密都采用了這個(gè)理念,這并不是反對(duì)當(dāng)前整合所有核心安全密碼的建筑實(shí)踐。Paul Kocher表達(dá)了對(duì)此方法的幾點(diǎn)擔(dān)憂。如果共享區(qū)域,通過安全性最低的認(rèn)證通道就能夠進(jìn)入所有的安全區(qū)域。“我們看到此事與安全套接層設(shè)計(jì)相關(guān),采用了一個(gè)普遍的安全區(qū)域”,Paul Kocher說。“你必須包含所有應(yīng)該具有證書的實(shí)體。比如你會(huì)包含一個(gè)中國政府的證書嗎?
另一個(gè)令人擔(dān)憂是物理攻擊的問題:操控電壓或信號(hào),光學(xué)探測、測量時(shí)間,或測量不同的電流,以便獲得密碼。CPU內(nèi)核裝置足夠抵擋這些入侵嗎?那是誰的責(zé)任?核心供應(yīng)商是誰?該芯片的實(shí)施者?代工?如果內(nèi)核在物理上不夠安全的話,依賴于保護(hù)區(qū)域的一切都十分脆弱。
Paul Kocher推薦了一個(gè)替代方案,即把每個(gè)所有者的安全交易置入獨(dú)立的硬件中、SOC中物理隔離的區(qū)域中或獨(dú)立的芯片上。他為這些隔層設(shè)計(jì)制定了4項(xiàng)準(zhǔn)則。保持每個(gè)分區(qū)的設(shè)計(jì)簡單,讓安全團(tuán)隊(duì)的每個(gè)人能夠明白里面發(fā)生了什么。同樣,能夠全面準(zhǔn)確了解在整個(gè)系統(tǒng)中分區(qū)的運(yùn)作,特別是海關(guān)。而且確保沒有一個(gè)組件會(huì)降低整個(gè)系統(tǒng)的安全性。”大部分的安全漏洞源于人為的錯(cuò)誤。“ Paul Kocher說,”剩下的問題就是你如何容忍人為錯(cuò)誤。“
有趣的是,Paul Kocher強(qiáng)調(diào)設(shè)計(jì)過程是開放性的,而不是秘密進(jìn)行的。”我們可以肯定理解分區(qū)內(nèi)發(fā)生了什么在團(tuán)隊(duì)之間廣泛傳播,“他說。Paul Kocher聲稱,唯一真正能夠打造安全工具的人是那些真正理解安全設(shè)計(jì)并掌握破壞系統(tǒng)知識(shí)的人們。
因此,嵌入式設(shè)計(jì)者發(fā)現(xiàn)自己身處一個(gè)艱難境地。他們?cè)谖唇?jīng)任何培訓(xùn),也沒有工具的情況下進(jìn)行安全設(shè)計(jì)。整個(gè)產(chǎn)業(yè)在沒有基本理論和完善的基礎(chǔ)設(shè)施的情況下開始運(yùn)作。而且,嵌入式系統(tǒng)面對(duì)不同層次的威脅正成倍增加,如運(yùn)輸系統(tǒng)、電網(wǎng)和個(gè)人移動(dòng)設(shè)備等一些明確的攻擊目標(biāo);或是看似無意義的目標(biāo),如自動(dòng)啟動(dòng)的火車、機(jī)器控制器或家電應(yīng)用。這項(xiàng)技術(shù)是時(shí)候發(fā)生轉(zhuǎn)變了。