何小慶
面對(duì)增長(zhǎng)迅速、應(yīng)用碎片化的物聯(lián)網(wǎng)系統(tǒng),安全問(wèn)題層出不窮。安全是物聯(lián)網(wǎng)發(fā)展的一個(gè)熱點(diǎn),已成為物聯(lián)網(wǎng)產(chǎn)品必備特性?;贛CU的物聯(lián)網(wǎng)設(shè)備多數(shù)在節(jié)點(diǎn)和邊緣,支撐了系統(tǒng)的數(shù)據(jù)采集和控制,重要性不言而喻。因?yàn)橄到y(tǒng)資源防護(hù)能力薄弱,成為黑客的主要攻擊對(duì)象。可喜的是,基于MCU的IoT芯片的安全機(jī)制越來(lái)越完善,功能也大幅度增強(qiáng),技術(shù)上正在從外置芯片向MCU內(nèi)置安全功能的方向發(fā)展。
物聯(lián)網(wǎng)安全旨在保護(hù)代碼/數(shù)據(jù)和系統(tǒng)功能
物聯(lián)網(wǎng)設(shè)備與應(yīng)用雖然多種多樣,但其架構(gòu)本質(zhì)上與嵌入式系統(tǒng)架構(gòu)是相似的。今天,使用微控制器(MCU)構(gòu)建的物聯(lián)網(wǎng)系統(tǒng)無(wú)處不在。安全性首先要保護(hù)嵌入式固件不被非法復(fù)制或者篡改,設(shè)備數(shù)據(jù)不被盜取以及系統(tǒng)功能安全,即系統(tǒng)功能應(yīng)穩(wěn)健可靠。
在物聯(lián)網(wǎng)世界中,攻擊是現(xiàn)實(shí)存在的,攻擊的本質(zhì)是黑客利用系統(tǒng)漏洞來(lái)訪問(wèn)資產(chǎn)。防止黑客攻擊是物聯(lián)網(wǎng)安全的重要任務(wù)。對(duì)于環(huán)境檢測(cè)警報(bào)設(shè)備或監(jiān)控?cái)z像機(jī)等物聯(lián)網(wǎng)設(shè)備而言,拒絕服務(wù)攻擊(DoS攻擊)是一個(gè)主要威脅。攻擊者希望通過(guò)成功的嘗試獲得經(jīng)濟(jì)收益,特別是如果攻擊可以像物聯(lián)網(wǎng)環(huán)境那樣大規(guī)模地傳播。聯(lián)網(wǎng)設(shè)備對(duì)黑客非常有吸引力,因?yàn)樗鼈兛梢赃h(yuǎn)程訪問(wèn)。聯(lián)網(wǎng)設(shè)備因?yàn)閰f(xié)議漏洞提供攻擊機(jī)會(huì),如果攻擊成功,單個(gè)被黑客攻擊的設(shè)備可能會(huì)危及整個(gè)網(wǎng)絡(luò)的完整性。
物聯(lián)網(wǎng)安全旨在保護(hù)代碼、數(shù)據(jù)和系統(tǒng)功能。代碼保護(hù)是保證固件知識(shí)產(chǎn)權(quán)及其完整性,數(shù)據(jù)保護(hù)(包括加密密鑰)是保證用戶數(shù)據(jù)的機(jī)密性并避免身份盜用。隨著物聯(lián)網(wǎng)設(shè)備訪問(wèn)云資源的數(shù)量倍增,設(shè)備的訪問(wèn)控制管理變得越發(fā)重要,物聯(lián)網(wǎng)設(shè)備資產(chǎn)變得更加敏感。這里資產(chǎn)可以包括傳感器數(shù)據(jù)(健康數(shù)據(jù)和位置信息)、用戶數(shù)據(jù)(賬號(hào)和密碼)、交易記錄和密鑰,以及設(shè)備和用戶身份等。最后,系統(tǒng)功能安全應(yīng)受到保護(hù),以避免設(shè)備故障或服務(wù)故障。
四項(xiàng)技術(shù)構(gòu)建安全的
物聯(lián)網(wǎng)架構(gòu)
構(gòu)建安全物聯(lián)網(wǎng)架構(gòu)是為了應(yīng)對(duì)多種形式的攻擊,這樣的系統(tǒng)架構(gòu)必須在單個(gè)系統(tǒng)中實(shí)現(xiàn)多種類型的安全機(jī)制,應(yīng)在設(shè)備硬件和軟件應(yīng)用兩個(gè)方面考慮整體安全性。
一方面,如果設(shè)備沒(méi)有外部入侵保護(hù)(例如開(kāi)放了調(diào)試端口),則無(wú)法為機(jī)密應(yīng)用程序運(yùn)行提供可信計(jì)算環(huán)境。另一方面,如果設(shè)備沒(méi)有抵御黑客通過(guò)應(yīng)用攻擊設(shè)備的能力,或者它允許進(jìn)行完全設(shè)備訪問(wèn),強(qiáng)大的設(shè)備自身保護(hù)也是無(wú)用的。完整的系統(tǒng)安全實(shí)現(xiàn)涉及設(shè)備保護(hù)機(jī)制以及一系列穩(wěn)健性的安全應(yīng)用,保護(hù)機(jī)制必須有必要的硬件支撐,還需要在固件開(kāi)發(fā)方面付出巨大努
力。它需要良好的軟件技能和密碼學(xué)知識(shí),同時(shí)必須權(quán)衡開(kāi)發(fā)成本和設(shè)備安全,以下是構(gòu)建物聯(lián)網(wǎng)安全架構(gòu)幾個(gè)關(guān)鍵技術(shù)。
一是TrustZone技術(shù)。Arm的Trust Zone技術(shù)在智能手機(jī)芯片中被大量采用,為手機(jī)安全提供基礎(chǔ)保障。今天許多MCU芯片已經(jīng)在使用基于Trust Zone的IP核,比如Arm Cortex M23/M33,它們內(nèi)置了Trust-Zone技術(shù),量產(chǎn)的MCU有Microchip SAML11、NuMicroM2351、NXPLPC5500和STM32L5系列。
Arm的TrustZone技術(shù)將系統(tǒng)分為安全和非安全兩種狀態(tài),有特定的命令使CPU在兩種狀態(tài)之間切換。為了區(qū)分和隔離安全代碼,基于TrustZone技術(shù)的MCU存儲(chǔ)器被分在了不同的區(qū)域,每一個(gè)區(qū)域都由硬件來(lái)保護(hù)不受軟件攻擊,任何從非安全區(qū)域向安全區(qū)域的訪問(wèn),或者運(yùn)行的代碼和當(dāng)前的系統(tǒng)安全狀態(tài)不符,都會(huì)導(dǎo)致硬件錯(cuò)誤發(fā)生。
圍繞TrustZone核心技術(shù),Arm聯(lián)合5家獨(dú)立安全測(cè)試實(shí)驗(yàn)室及咨詢機(jī)構(gòu),推出面向IoT安全的“平臺(tái)安全架構(gòu)(PSA)”以及相關(guān)認(rèn)證。PSA安全認(rèn)證有三個(gè)級(jí)別,不同的認(rèn)證過(guò)程和要求對(duì)應(yīng)被認(rèn)證產(chǎn)品不同的應(yīng)用場(chǎng)景。國(guó)產(chǎn)芯片公司也在快速跟進(jìn)TrustZone技術(shù),紫光展銳最近推出基于PSA架構(gòu)的雙核ArmCortex M33安全MCU。
使用TrustZone的優(yōu)勢(shì)是方便建立一個(gè)物聯(lián)網(wǎng)安全生態(tài)環(huán)境??紤]到自主可控,以及物聯(lián)網(wǎng)系統(tǒng)中信任硬件(SE)重要性,國(guó)內(nèi)芯片企業(yè)在RISC-V開(kāi)放指令集架構(gòu)上開(kāi)發(fā)類似安全技術(shù),比如平頭哥半導(dǎo)體最近推出的無(wú)劍安全平臺(tái)。
二是安全通信技術(shù)。通信安全是物聯(lián)網(wǎng)系統(tǒng)的重要部分,許多高端的嵌入式系統(tǒng)中已經(jīng)有了SSL/TLS/SSH和IPSec協(xié)議軟件,某些云計(jì)算服務(wù)需要安全的協(xié)議支持,比如AWSIoT需要物聯(lián)網(wǎng)設(shè)備端支持TLS,否則無(wú)法正常接入。有些資源受限的基于MCU物聯(lián)網(wǎng)設(shè)備無(wú)法支持基于TCP的TLS安全協(xié)議,采用UDP的DLS可以提供安全通信鏈路,云端需要提供響應(yīng)的接口,比如為Huawei LiteOS和華為Ocean-Connect IoT提供支持。
安全協(xié)議為構(gòu)建物聯(lián)網(wǎng)安全提供一個(gè)非常好的基礎(chǔ),安全協(xié)議的設(shè)計(jì)目標(biāo)是為了防止數(shù)據(jù)報(bào)文被竊聽(tīng)(嗅探)、中間人攻擊、回放攻擊和未經(jīng)授權(quán)與物聯(lián)網(wǎng)節(jié)點(diǎn)通信的請(qǐng)求。
三是安全引導(dǎo)和升級(jí)技術(shù)。安全引導(dǎo)可以防止在引導(dǎo)過(guò)程中將沒(méi)有授權(quán)的軟件加載到設(shè)備上。安全引導(dǎo)一般分為兩個(gè)階段。第一個(gè)階段是放在只讀的存儲(chǔ)器中,該階段引導(dǎo)的主要任務(wù)是驗(yàn)證第二階段引導(dǎo)的程序的真實(shí)性。第二個(gè)階段引導(dǎo)程序是放在FLASH存儲(chǔ)器中,它要驗(yàn)證加載的操作系統(tǒng)和應(yīng)用程序確實(shí)來(lái)自可信的來(lái)源。
安全引導(dǎo)過(guò)程一般要靠數(shù)字簽名來(lái)保護(hù)代碼的真實(shí)性。代碼的映像由OEM在設(shè)備制造時(shí)使用自己的私鑰進(jìn)行簽名,然后設(shè)備節(jié)點(diǎn)使用OEM的公鑰來(lái)驗(yàn)證代碼映像簽名。
安全固件升級(jí)過(guò)程與引導(dǎo)類似,在升級(jí)過(guò)程中要驗(yàn)證新代碼的映像已經(jīng)是由OEM簽名了的。如果驗(yàn)證無(wú)效,系統(tǒng)就會(huì)丟棄文件并停止升級(jí)。只有有效的映像文件才能被接受,而且隨后被保存到設(shè)備存儲(chǔ)器中。
以智能門(mén)鎖為例,我們看一下升級(jí)中的兩種安全隱患。第一是智能門(mén)鎖自身的可靠性,第二是來(lái)自對(duì)智能門(mén)鎖的外部攻擊。門(mén)鎖自身的可靠性,比如在升級(jí)過(guò)程中設(shè)備電源掉電了,使得更新后的程序代碼無(wú)法運(yùn)行。外部攻擊,比如黑客發(fā)送早期有缺陷的OTA升級(jí)包,此外還有黑客對(duì)于門(mén)鎖電子部件的物理攻擊,比如盜取存儲(chǔ)器中的密鑰。
物聯(lián)網(wǎng)操作系統(tǒng),比如Amazon FreeR-TOS與基于云的AWS IoT平臺(tái),提供設(shè)備管理和遠(yuǎn)程監(jiān)測(cè),設(shè)備管理服務(wù)包括對(duì)OTA更新的支持。它利用AWS內(nèi)置的服務(wù),比如亞馬遜用于代碼簽名的Certificate Management和身份訪問(wèn)管理(IAM)。Amazon FreeRTOS嵌入式軟件提供在MCU上執(zhí)行的OTA代理,協(xié)調(diào)OTA操作,從云端下載新升級(jí)包,驗(yàn)證升級(jí)包并處理在下載期間的任何中斷。這個(gè)升級(jí)包的傳輸借助加密的MQTT通信鏈路,OTA代理機(jī)構(gòu)為滿足MQTT報(bào)文格式要求,要對(duì)升級(jí)包再次封裝,好處是不需要另外借助HTTP連接上的TLS鏈路。
四是安全工具、軟件和服務(wù)?;贛CU的物聯(lián)網(wǎng)安全開(kāi)發(fā)需要軟件和工具的支持和服務(wù),MCU公司提供基礎(chǔ)安全軟件,比如NXP Secure Boot Tool 和TEE配置工具。許多物聯(lián)網(wǎng)操作系統(tǒng)集成了安全協(xié)議,多數(shù)支持安全的OTA機(jī)制。新出的TencentOS tiny安全框架提供了DTLS和TLS安全協(xié)議,加固了COAP及MQTT傳輸層,可確保物聯(lián)網(wǎng)終端在對(duì)接騰訊云時(shí)實(shí)現(xiàn)安全認(rèn)證和數(shù)據(jù)加密;安全框架還提供與騰訊云IoTHub配套的密鑰認(rèn)證方案,確保資源受限設(shè)備也能在一定程度上實(shí)現(xiàn)設(shè)備安全認(rèn)證。
安全操作系統(tǒng)方面,NXP推薦源自FreeRTOS的SafeRTOS,ST與Arm和安全操作系統(tǒng)供應(yīng)商Prove&Run合作,于2019年10月在Arm TechCon上進(jìn)行了STM32L5的演示。NXP的LPC55S69-EVK評(píng)估板支持MCUXpresso集成開(kāi)發(fā)環(huán)境和開(kāi)發(fā)軟件,包括外設(shè)驅(qū)動(dòng)程序、安全和連接中間件,還包括基于Amazon FreeRTOS的演示和基于ArmTrustZone的安全示例。嵌入式MCU軟件工具公司IAR推出安全I(xiàn)oT設(shè)備生命周期管理工具Embedded Trust,Segger公司提供安全編程設(shè)備,這些為基于MCU物聯(lián)網(wǎng)系統(tǒng)安全開(kāi)發(fā)和維護(hù)提供了堅(jiān)實(shí)的基礎(chǔ)。
中國(guó)企業(yè)在物聯(lián)網(wǎng)安全服務(wù)上頗具特色,近期360北極星團(tuán)隊(duì)、梆梆安全和紐創(chuàng)信安介紹了他們的安全服務(wù)和解決方案。從事移動(dòng)安全的企業(yè)也在轉(zhuǎn)向物聯(lián)網(wǎng)領(lǐng)域,比如國(guó)民技術(shù)32位高性能安全MCU芯片已經(jīng)在和阿里IoT云以及中移物聯(lián)網(wǎng)合作。
物聯(lián)網(wǎng)安全與行業(yè)應(yīng)用密切相關(guān),某些應(yīng)用是物聯(lián)網(wǎng)安全高危區(qū),比如智能家居、網(wǎng)聯(lián)汽車(chē)、智慧城市、智能制造和智慧醫(yī)療,物聯(lián)網(wǎng)上的潛在威脅既可謀財(cái)害命,也可對(duì)國(guó)民經(jīng)濟(jì)和生活造成重大危機(jī),這些均需引起企業(yè)和主管單位的高度重視。