我們幾乎每天都能聽(tīng)說(shuō)某個(gè)大型零售商或銀行機(jī)構(gòu)的安全漏洞遭到了攻擊。展望不久的將來(lái),我們只能無(wú)奈地預(yù)計(jì),隨著黑客使用的工具越來(lái)越復(fù)雜,以及他們能夠盜取的信息價(jià)值不斷增加,這些漏洞攻擊將會(huì)越來(lái)越頻繁地發(fā)生。而事實(shí)上,針對(duì)嵌入式系統(tǒng)的攻擊也的確在急劇增長(zhǎng)。美國(guó)政府最近要求關(guān)鍵基礎(chǔ)設(shè)施公司 (互聯(lián)嵌入式系統(tǒng)的最大用戶之一) 檢查其網(wǎng)絡(luò)是否受到來(lái)自“Energetic Bear”黑客組織的惡意軟件的感染。美國(guó)國(guó)土安全部工業(yè)控制系統(tǒng)網(wǎng)絡(luò)應(yīng)急小組發(fā)布這一請(qǐng)求,是出于對(duì)美國(guó)電網(wǎng)可能面臨風(fēng)險(xiǎn)的擔(dān)憂。
針對(duì)關(guān)鍵基礎(chǔ)設(shè)施或數(shù)百萬(wàn)客戶安全數(shù)據(jù)的攻擊是很可怕的,但對(duì)于個(gè)人來(lái)說(shuō),人們主要擔(dān)心黑客是否容易從家里、車上的嵌入式系統(tǒng),以及大家每天使用的數(shù)以百計(jì)的嵌入式設(shè)備訪問(wèn)數(shù)據(jù)。比如,智能家居可能知道什么時(shí)候它的主人會(huì)在家,如果有人能夠獲取這個(gè)信息,那么主人會(huì)安全嗎?如果一個(gè)人戴了連接到云的運(yùn)動(dòng)跟蹤器,那么如果有人能夠訪問(wèn)他/她的所在位置,了解他/她是否在睡覺(jué),以及他/她午餐吃了什么之類的詳細(xì)信息,會(huì)產(chǎn)生什么后果?誰(shuí)知道這些看似無(wú)害的數(shù)據(jù)經(jīng)過(guò)組合、比較,并結(jié)合從其他來(lái)源挖掘的數(shù)據(jù),會(huì)被用來(lái)做什么?
設(shè)備級(jí)安全
作為系統(tǒng)設(shè)計(jì)師,我們可以采取哪些措施來(lái)提高個(gè)人信息的安全性?我們期望MCU和FPGA這樣的嵌入式系統(tǒng)模塊提供哪些功能?或許參考大數(shù)據(jù)信息安全計(jì)劃的一些創(chuàng)意是不錯(cuò)的起點(diǎn)。大數(shù)據(jù)安全原則認(rèn)為,穩(wěn)健的安全系統(tǒng)必須分層,這樣黑客 (或數(shù)據(jù)礦工) 就無(wú)法通過(guò)單個(gè)故障點(diǎn)輕松訪問(wèn)重要數(shù)據(jù)。那么,問(wèn)題來(lái)了:如何在嵌入式設(shè)備中實(shí)現(xiàn)分層安全?
也許MCU或FPGA所需要的最明顯的安全功能是支持用于加密和解密敏感數(shù)據(jù)的通用加密標(biāo)準(zhǔn)。此外,安全密碼的保護(hù)也至關(guān)重要,有了這種保護(hù),就不能通過(guò)網(wǎng)絡(luò)攻擊或物理篡改來(lái)訪問(wèn)密碼。一些最先進(jìn)的密碼保護(hù)技術(shù)利用集成電路制造過(guò)程中的納米級(jí)差異來(lái)創(chuàng)建永遠(yuǎn)不會(huì)離開(kāi)設(shè)備、也永遠(yuǎn)不會(huì)被外部黑客看到的唯一設(shè)備密碼。這種物理上不可克隆的功能 (簡(jiǎn)稱PUF) 的示例依賴于加電周期內(nèi)SRAM初始化值的微小差異來(lái)創(chuàng)建真正的設(shè)備唯一隨機(jī)密碼。
為了給設(shè)備多加一層安全性,可能需要禁用一些能訪問(wèn)片上數(shù)據(jù)的功能。例如,如果可以通過(guò)調(diào)試或測(cè)試端口輕松訪問(wèn)MCU代碼,設(shè)備安全就很容易受到影響。MCU和FPGA需要提供保護(hù) - 也許通過(guò)特殊的鎖或密碼 – 讓未經(jīng)授權(quán)的用戶不能通過(guò)這些端口訪問(wèn)數(shù)據(jù)。至少,這些端口應(yīng)該能夠完全“關(guān)閉”,這樣就不會(huì)提供潛在的攻擊機(jī)會(huì)。
分層安全的另一個(gè)機(jī)會(huì)與存儲(chǔ)在芯片上的數(shù)據(jù)有關(guān)。許多MCU和FPGA可以限制對(duì)片上數(shù)據(jù)的訪問(wèn)。例如,與安全相關(guān)的代碼可以存儲(chǔ)在一個(gè)僅執(zhí)行存儲(chǔ)區(qū)中,其他片上進(jìn)程很難訪問(wèn)這個(gè)存儲(chǔ)區(qū)。對(duì)嵌入式設(shè)備的常見(jiàn)攻擊手段是通過(guò)編程錯(cuò)誤來(lái)生成“野生”指針以訪問(wèn)用其他途徑無(wú)法訪問(wèn)的數(shù)據(jù)。但是,對(duì)關(guān)鍵數(shù)據(jù)的硬件保護(hù)可以限制此類訪問(wèn),并將此錯(cuò)誤標(biāo)記為潛在的篡改事件,讓系統(tǒng)可以采取適當(dāng)?shù)膽土P措施。
通常,嵌入式設(shè)備可以遠(yuǎn)程重新編程,這是一種用來(lái)修復(fù)錯(cuò)誤和增加功能的實(shí)用能力。遺憾的是,如果此功能不受保護(hù),攻擊者可能會(huì)插入自己的惡意代碼,并在機(jī)密數(shù)據(jù)流經(jīng)系統(tǒng)時(shí)劫持它們。當(dāng)嵌入式設(shè)備支持遠(yuǎn)程更新和錯(cuò)誤修復(fù)時(shí),需要提供額外的安全層,否則其安全性很容易受到威脅。
結(jié)論
以上的例子只是MCU和FPGA需要解決的幾個(gè)問(wèn)題,隨著未來(lái)幾年它們?cè)诼?lián)網(wǎng)嵌入式系統(tǒng)中的應(yīng)用規(guī)模持續(xù)擴(kuò)大,還會(huì)有更多問(wèn)題出現(xiàn)。系統(tǒng)設(shè)計(jì)師應(yīng)該做好準(zhǔn)備,隨著最近互聯(lián)設(shè)備規(guī)模的擴(kuò)張,在設(shè)備級(jí)別提供多層安全性的設(shè)備會(huì)迎來(lái)蓬勃發(fā)展。
審核編輯:郭婷
-
FPGA
+關(guān)注
關(guān)注
1630文章
21798瀏覽量
606037 -
mcu
+關(guān)注
關(guān)注
146文章
17324瀏覽量
352656 -
嵌入式
+關(guān)注
關(guān)注
5093文章
19178瀏覽量
307706
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論