需要保護(hù)物聯(lián)網(wǎng)(IoT)免受各種形式的濫用。這些不僅包括金融欺詐和知識(shí)產(chǎn)權(quán)盜竊等熟悉的威脅,還包括對(duì)實(shí)物資產(chǎn)的破壞。預(yù)計(jì)未來(lái)幾年加入物聯(lián)網(wǎng)的數(shù)十億連接設(shè)備中的許多將與交通信號(hào)或街道照明,工業(yè)控制,發(fā)電,智能電網(wǎng)管理,家庭能源和安全等重要流程的安全機(jī)制等系統(tǒng)相關(guān)聯(lián)。或連接的汽車。攻擊者可能會(huì)試圖禁用或接管此類設(shè)備,可能會(huì)造成廣泛的破壞和不便,或者通過(guò)造成尷尬,聲譽(yù)損害甚至身體傷害來(lái)攻擊特定個(gè)人或組織。這些漏洞可能僅僅是出于娛樂(lè),個(gè)人原因,商業(yè)利益,或出于政治目的和/或恐怖主義而發(fā)起。
物聯(lián)網(wǎng)設(shè)備的安全威脅
物聯(lián)網(wǎng)設(shè)備旨在自主運(yùn)行。許多人長(zhǎng)時(shí)間無(wú)人看管,有時(shí)甚至是整個(gè)工作生涯。網(wǎng)絡(luò)連接使設(shè)備容易受到遠(yuǎn)程攻擊,遠(yuǎn)程攻擊可以從幾乎任何地理位置快速啟動(dòng),而不必克服諸如圍欄,鎖定的機(jī)箱或保安等物理障礙。可以將攻擊定向到設(shè)備本身,或?qū)⑵溆米髟L問(wèn)連接到同一網(wǎng)絡(luò)的其他資產(chǎn)的手段,例如包含帳戶持有者信息或知識(shí)產(chǎn)權(quán)的數(shù)據(jù)存儲(chǔ)。
On另一方面,物聯(lián)網(wǎng)端點(diǎn)通常需要是簡(jiǎn)單,低成本,低功耗的設(shè)備,旨在使用最少的資源完成其預(yù)期的任務(wù)。因此,實(shí)現(xiàn)復(fù)雜安全性所需的處理能力和能量不可用。與諸如臺(tái)式計(jì)算機(jī)之類的機(jī)器的情況不同,通常不存在用于輸入諸如用戶名和密碼之類的憑證的人,作為允許設(shè)備啟動(dòng)并建立連接的認(rèn)證。但是,該設(shè)備必須能夠抵御各種類型的攻擊,并自我驗(yàn)證并自動(dòng)向網(wǎng)絡(luò)上的其他設(shè)備提供其憑據(jù)。
如果設(shè)備無(wú)法執(zhí)行這些功能,攻擊者可能能夠刪除或禁用應(yīng)用程序軟件,更改代碼或用流氓軟件替換合法應(yīng)用程序。或者,他們可能會(huì)試圖竊聽數(shù)據(jù)交換。需要采用一系列安全原則和技術(shù)來(lái)幫助克服這些威脅,但所有這些都需要在小型且資源受限的嵌入式系統(tǒng)中使用。除了已建立的安全實(shí)踐,例如最小化網(wǎng)絡(luò)設(shè)備的訪問(wèn)權(quán)限,適當(dāng)?shù)姆阑饓土髁勘O(jiān)控;這些包括軟件的數(shù)字簽名,使用安全密鑰的數(shù)據(jù)加密,以及為連接的設(shè)備建立強(qiáng)大的身份。
驗(yàn)證軟件的真實(shí)性
數(shù)字簽名提供了一種驗(yàn)證軟件以驗(yàn)證其來(lái)源的方法并防止未經(jīng)授權(quán)的改動(dòng)。軟件發(fā)行商可以獨(dú)立簽署軟件,也可以在提供簽名實(shí)用程序,證書和密鑰管理等服務(wù)的第三方證書頒發(fā)機(jī)構(gòu)(CA)的支持下簽名。
為了對(duì)軟件進(jìn)行數(shù)字簽名,發(fā)布者使用散列算法創(chuàng)建代碼的散列。哈希僅在一個(gè)方向上工作,這可以防止黑客對(duì)流程進(jìn)行逆向工程,從偽造的代碼中生成相同的哈希。然后使用分配給發(fā)布者的私鑰加密哈希。代碼,其加密的哈希值和發(fā)布者的簽名證書一起分發(fā)。
最終用戶使用發(fā)布者的公鑰解密哈希,該公鑰作為簽名證書的一部分包含在內(nèi),并對(duì)接收到的代碼進(jìn)行哈希處理使用發(fā)布者選擇的散列算法。如果兩個(gè)哈希值匹配,則可以假定代碼是真實(shí)的并且未經(jīng)更改。圖1說(shuō)明了用于驗(yàn)證代碼真實(shí)性的散列和比較過(guò)程。
圖1:證書頒發(fā)機(jī)構(gòu)管理證書并提供簽名軟件的工具。/p>
數(shù)字簽名允許物聯(lián)網(wǎng)設(shè)備在啟動(dòng)時(shí)驗(yàn)證軟件的真實(shí)性和完整性,從而實(shí)現(xiàn)安全啟動(dòng):設(shè)備將僅加載由授權(quán)發(fā)布者簽名的真正未經(jīng)更改的軟件,從而創(chuàng)建信任基礎(chǔ)。系統(tǒng)還可以驗(yàn)證數(shù)字簽名的軟件,例如通過(guò)網(wǎng)絡(luò)接收的更新或補(bǔ)丁。
數(shù)據(jù)加密
使用公鑰和私鑰的組合進(jìn)行加密還可以防止竊聽者從截獲的數(shù)據(jù)傳輸中收集情報(bào)。公鑰和私鑰系統(tǒng)為發(fā)送加密數(shù)據(jù)和防止密鑰攔截的挑戰(zhàn)提供了解決方案。接收設(shè)備具有其自己的私鑰,其在制造時(shí)被牢固地嵌入。同時(shí),使用單向進(jìn)程從私鑰導(dǎo)出公鑰,該進(jìn)程防止在公共密鑰被截獲時(shí)私鑰被泄露。當(dāng)發(fā)送設(shè)備向收件人發(fā)送數(shù)據(jù)時(shí),它使用該收件人的公鑰來(lái)加密數(shù)據(jù)。這種加密數(shù)據(jù)可以安全地通過(guò)網(wǎng)絡(luò)傳輸,并且只能使用安全存儲(chǔ)在接收端的私鑰解密。圖2顯示了在通過(guò)開放信道傳輸時(shí)密鑰如何用于保證信息安全。
公鑰基礎(chǔ)結(jié)構(gòu)(PKI)由處理密鑰生成和分發(fā)的獨(dú)立第三方組織維護(hù),并將公鑰綁定到各自用戶的身份。
圖2:使用公鑰和私鑰進(jìn)行數(shù)據(jù)加密和解密。
維護(hù)強(qiáng)身份
物聯(lián)網(wǎng)設(shè)備還需要能夠在連接到網(wǎng)絡(luò)時(shí)進(jìn)行身份驗(yàn)證。這相當(dāng)于輸入用戶名和密碼以手動(dòng)登錄到在線帳戶。
設(shè)備需要一個(gè)高效的安全處理器來(lái)存儲(chǔ)其身份并處理身份驗(yàn)證,并存儲(chǔ)公共和私有加密密鑰,以及存儲(chǔ)密鑰并運(yùn)行散列算法以驗(yàn)證軟件簽名,以便能夠驗(yàn)證軟件簽名。
可信平臺(tái)模塊(TPM)已發(fā)展為提供安全性用于密鑰和數(shù)據(jù)存儲(chǔ)以及執(zhí)行安全算法的環(huán)境。這些設(shè)備包含運(yùn)行安全操作系統(tǒng)的安全處理器,以及安全存儲(chǔ)和其他資源,如隨機(jī)數(shù)生成器和基于硬件的加密引擎(圖3)。額外的安全電路可防止物理攻擊。安全操作系統(tǒng)的細(xì)節(jié)是故意保密的,以防止?jié)撛诘暮诳蛯W(xué)習(xí)發(fā)起攻擊所需的信息。 TPM通常用于商用級(jí)IT設(shè)備,如臺(tái)式PC。另一方面,Atmel/Microchip AT97SC3205T等器件專為嵌入式應(yīng)用而設(shè)計(jì),可用于各種類型的物聯(lián)網(wǎng)設(shè)備。
圖3:Atmel AT97SC3205T嵌入式TPM集成了用于安全處理和密鑰存儲(chǔ)的資源。
AT97SC3205T符合可信計(jì)算組(TCG)TPM版本1.2規(guī)范。設(shè)備通常以合規(guī)模式交付,使制造商能夠立即開始測(cè)試TPM。由于TPM嵌入到物聯(lián)網(wǎng)設(shè)備中,因此應(yīng)將其更改為實(shí)模式以永久設(shè)置標(biāo)志,并允許生成唯一的私有和公共認(rèn)可密鑰(EK)對(duì),以用于需要簽署其他組件使用的數(shù)據(jù)的事務(wù)。認(rèn)可密鑰的私有部分在TPM內(nèi)保密,其他組件使用公共部分來(lái)驗(yàn)證來(lái)自TPM的數(shù)據(jù)的真實(shí)性。生成EK對(duì)可能需要幾秒鐘。為簡(jiǎn)化制造并縮短設(shè)備初始化所需的時(shí)間,可根據(jù)需要以實(shí)模式交付設(shè)備。在這種情況下,EK對(duì)由Atmel預(yù)先生成。
TPM_Startup(ST_CLEAR)
傳入的操作數(shù)和大小:
00 C1 00 00 00 0C 00 00 00 99 00 01
tag 2 Bytes,Offset 0:00 PM
paramSize 4 Bytes,Offset 2:00 00 00 0C
ordinal 4 Bytes,Offset 6:00 00 00 99
startupType 2 Bytes,Offset 10:00 01
<代碼>
<代碼>
<代碼> TPM_Startup(ST_CLEAR)
<代碼>傳出操作數(shù)和大小:
00 C4 00 00 00 0A 00 00 00 00
tag 2 Bytes,Offset 0:00 C4
paramSize 4 Bytes,Offset 2:00 00 00 0A
returnCode 4 Bytes,Offset 6: 00 00 00 00 [TPM_SUCCESS]
清單1:初始化TPM的示例啟動(dòng)命令。
通過(guò)啟動(dòng)設(shè)備并發(fā)送TPM啟動(dòng)命令(清單1),TPM可以完全運(yùn)行,以準(zhǔn)備設(shè)備進(jìn)行配置。配置涉及根據(jù)預(yù)期應(yīng)用設(shè)置永久性標(biāo)志。 Atmel發(fā)布了一個(gè)樣本制造序列,用于設(shè)置TPM標(biāo)志,如清單2所示。
合規(guī)模式:已清除
physicalPresenceHWEnable:False
physicalPresenceCMDEnable:True
physicalPresenceLifetimeLock:True
認(rèn)可密鑰對(duì):生成
啟用/禁用:禁用
激活/取消激活:激活直到下一次重置,
在下次上電或復(fù)位時(shí)被禁用。
物理存在:不存在
NV_Locked True
清單2:TPM標(biāo)志設(shè)置示例。
示例中的物理存在設(shè)置旨在永久禁用硬件訪問(wèn),并防止軟件在無(wú)意或故意更改設(shè)置時(shí)失去對(duì)設(shè)備的控制。設(shè)置NV_Locked = True可防止未經(jīng)授權(quán)訪問(wèn)用戶可訪問(wèn)的非易失性存儲(chǔ)器,只應(yīng)在制造商不再需要訪問(wèn)非易失性存儲(chǔ)器后設(shè)置。
結(jié)論
隨著物聯(lián)網(wǎng)的不斷發(fā)展,對(duì)公眾來(lái)說(shuō),它變得越來(lái)越現(xiàn)實(shí),保護(hù)數(shù)十億遠(yuǎn)程連接對(duì)象免受網(wǎng)絡(luò)攻擊的重要性日益明顯。
可信平臺(tái)模塊(提供驗(yàn)證系統(tǒng)硬件和軟件所需的安全資源的TPM是適用于嵌入式應(yīng)用的小型低功耗設(shè)備。結(jié)合密鑰管理和設(shè)備簽名服務(wù),他們可以提供高效的基于硬件的安全解決方案。
-
智能電網(wǎng)
+關(guān)注
關(guān)注
35文章
2938瀏覽量
116419 -
嵌入式
+關(guān)注
關(guān)注
5090文章
19173瀏覽量
306845 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2912文章
44897瀏覽量
375804
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論