【導讀】邊緣節(jié)點是物聯(lián)網(wǎng)中最脆弱的點,我們很容易將它們視為對黑客毫無價值的孤立的嵌入式系統(tǒng)。尤其是,考慮到成本在家庭市場中非常重要,廠商會把握每一個節(jié)省成本的機會。但是安全性不可忽略,所有邊緣節(jié)點都必須和網(wǎng)絡中的任何節(jié)點一樣,保證安全。
設想一下,您的配偶收到了一束來自于您的鮮花,但實際上并不是您送的。然后你們發(fā)現(xiàn)自己的信用卡信息被盜,現(xiàn)在面臨著欺詐指控。鮮花上的便條上簡單地寫著“快樂”兩個字,表達的卻是騙子此時此刻的心情。
這是一個真實的故事。全球各地的零售店都發(fā)生過數(shù)據(jù)外泄事件,包括美國著名的零售商:如Home Depot和Target。Target數(shù)據(jù)泄露,是因為一個外形美觀的恒溫器。這個處于云端系統(tǒng)的恒溫器是一個簡單的節(jié)點設備,遭到了遠程侵入。
假設您在這個遭受了黑客攻擊的零售店,有家廠商正在向您推薦一款更加美觀的恒溫器。他們想和您合作,讓您銷售這款產品,并將其連接到您的云端設備。您可能有興趣與他們合作,直到他們告訴您,他們沒有植入安全性。因為,畢竟它只是一款恒溫器,會出什么事情呢?
如果您知道會出什么事情,并且您對此曾有過陰影,那么您就會拒絕這筆生意。而那家恒溫器廠商也會得到一個教訓:不植入安全性雖然能夠節(jié)省成本,但很可能沒辦法賣出產品。
安全兩步走
安全性包含很多組件,它們都涉及證書以及其它擁有信任鏈并依賴唯一的器件私有密鑰(從它導出一個公共密鑰)的可信工件的交換。在一個邊緣節(jié)點上實施一個安全策略包含兩個步驟 :配置和調試。
配置為原始器件分配一個用于安全目的的標識,包括加載一個唯一的私有密鑰以及最終使用所需的任何其它證書或工件。配置使器件合法和可信。
配置良好的器件中固有的可信度源于一個“可信根”,它支撐著信任鏈中的所有實體??尚鸥梢杂扇魏稳松?,而且非常重要的是,它會得到無條件的信任。因此,為了使這種信任可信,買家和網(wǎng)絡管理者應該知道這個根是誰。
一家知名但聲譽岌岌可危的大公司可以創(chuàng)建自己的可信根,而一家小型的初創(chuàng)或創(chuàng)客公司卻很有可能做不到。這并不是因為小公司不值得信賴,而是因為它們沒有名氣,必須找到其他人為它們擔保。
這就是威瑞信這樣的證書管理機構(CA)存在的原因。它們的職責就是得到其它公司的信任,并為它們擔保。因此,大公司可以簽署自己的密鑰,小公司也能擁有由一家CA簽署的密鑰。
配置的目的就是讓器件做好使用準備,但它卻讓器件處于一種通用狀態(tài)。調試(或稱 “取得所有權”)是第二個安全步驟,在購買器件后實施。此項工作是讓完成預先配置的器件接入一個網(wǎng)絡,通常涉及某個網(wǎng)絡提供商的賬戶以及驗證步驟,比如手機提交的密碼。調試這個步驟將器件從一個通用器件轉變?yōu)橐粋€與特定網(wǎng)絡中的特定用戶關聯(lián)在一起的器件。
配置工作在器件制造期間或者測試期間完成,而調試工作由網(wǎng)絡提供商和最終用戶管理。調試的成功與否取決于配置是否合理,傳統(tǒng)的配置技術會帶來高額的成本,并遺留安全漏洞。
配置問題
配置一個器件的最低要求是一個簽名密鑰。這個密鑰最終將需要在調試期間得到某個網(wǎng)絡的認可和接受。配置是在一個硬件安全模塊(HSM)的協(xié)助下完成的,該模塊負責在一個可查找的流程中保護密鑰的加載。
配置時不能使用任意密鑰。如果真是如此,制造商就可輕松制造出多于訂購數(shù)量的器件(即所謂的“過度制造”),并在灰色市場中出售多余的器件。為了防止這種情況出現(xiàn),制造過程必須對所有密鑰進行分配。接受某個器件的網(wǎng)絡必須確認該器件是合法的,因此,網(wǎng)絡必須知道制造期間分配了哪些密鑰,只有這些密鑰才被允許接入網(wǎng)絡。
這意味著必須對密鑰數(shù)據(jù)庫進行維護。該數(shù)據(jù)庫構建于器件制造期間,供網(wǎng)絡運營商用于在器件調試期間驗證密鑰。維護和管理這個數(shù)據(jù)庫不僅麻煩,而且會增加成本。更糟糕的是,它還成為網(wǎng)絡中的一個受攻擊點。如果該數(shù)據(jù)庫遭到入侵,所有密鑰都將被泄露。
此外,雖然這個過程能夠防止過度制造,但卻不能防止克隆??寺∈侵甘褂靡粋€密鑰制造出多個器件。其中一個器件在合法市場中出售,克隆的器件則在灰色市場中出售。
小公司需要通過CA獲得簽名密鑰,這會增加每個器件的BOM成本。而且,大公司能夠通過大量訂單降低器件或系統(tǒng)的HSM成本,但僅配置較少器件的小公司卻面臨著巨大的成本問題。
圖1 :傳統(tǒng)上,器件或系統(tǒng)是在大容量測試儀或小容量HSM上進行配置的。密鑰記錄于一個數(shù)據(jù)庫中,網(wǎng)絡在調試期間與該數(shù)據(jù)庫進行協(xié)商。
如果密鑰存儲在邊緣節(jié)點設備的閃存中,那些意志堅定的黑客就有可能找到并破 解這個密鑰。這雖然不是配置過程本身造成的結果,但卻凸顯了傳統(tǒng)配置方法的缺點。
為了應對這些挑戰(zhàn),一種新的配置方法已經(jīng)出現(xiàn),它能夠以更低的成本帶來更高的安全性。
成本更低、安全性更高的配置方法
這種新的配置方法基于最新的芯片,后者唯一的目的就是充當密鑰、證書和其它安全機密的可信守護者。此類芯片將使用一個私有密鑰進行配置(理想的情況是內部生成該密鑰),但這個密鑰永遠不會被芯片泄露出去。實際上,當需要一個密鑰時,器件將生成一個公共密鑰或其它安全工件,從私有密鑰導出,但卻不同于私有密鑰。
首先,這能夠防止克隆。此類系統(tǒng)中的密鑰由一個單獨的芯片控制,而不是由閃存等商用芯片控制。如果需要制造1000個系統(tǒng) ,那么就將不多不少地提供1000個安全芯片,不給克隆版本留下任何多余的芯片。
這些器件還能存儲證書等安全要素,而且還能以一種不透明的方式提供密鑰及證書生成和存儲功能,從而減輕系統(tǒng)處理器的負擔。
可信平臺模塊(TPM)就是支持這些安全功能的硬件的典型例子。但是基于TPM的器件通常不能滿足市場對低成本物聯(lián)網(wǎng)邊緣節(jié)點提出的成本要求。
Atmel ATECC508是一個低成本的例子。與Atmel的TPM器件一樣,該器件在配置期間被觸發(fā)時在內部創(chuàng)建自己的私有密鑰,這個私有密鑰不能被任何人讀取,從而讓克隆變得完全不可能。這還意味著不需要任何數(shù)據(jù)庫,從而節(jié)省了維護時間和精力,并且消除了數(shù)據(jù)庫這個安全風險。
如果器件較多,Atmel可以在測試服務期間預先配置這些器件。此外,系統(tǒng)制造商還可以使用它們的測試儀進行配置。如果器件較少,Atmel提供一個工具包,系統(tǒng)設計公司可以使用它配置原型和首次運行的器件。這節(jié)省了購買HSM的成本。該工具包可讓用戶選擇自我簽名,或者獲得CA證書,將其用作每個器件的信任鏈的基礎,從而無需為每個器件購買一個單獨的證書。
圖2: 大量器件可以在測試期間由Atmel這樣的器件制造商或授權組裝廠預先配置。少量器件可以使用Atmel的工具包進行配置,無需購買HSM 。
使用一個專用的安全芯片有助于消除安全漏洞,并降低配置成本。它可以通過消除克隆和密鑰數(shù)據(jù)庫這個黑客攻擊目標,從而提高安全性。無需維護密鑰數(shù)據(jù)庫,也無需為每個器件購買一個密鑰,因此能夠降低成本。
更高的安全性和更低的成本,這一組合使得廠商更加愿意并更能承受為物聯(lián)網(wǎng)邊緣節(jié)點增添安全性??紤]到針對邊緣節(jié)點的日益嚴厲的審查,尤其是來自網(wǎng)絡管理者的審查,這種安全性將成為所有邊緣節(jié)點實現(xiàn)熱銷以及物聯(lián)網(wǎng)不斷拓展的必要條件。
推薦閱讀: