浅析物联网设(shè)备面临(lín)的安全问(wèn)题
众所(suǒ)周知,物联网(IoT)设备(bèi)预(yù)计将无处不在。这些(xiē)由(yóu)半导(dǎo)体驱动的设备将推(tuī)动(dòng)每一个(gè)可想(xiǎng)象的过程实现智能化。从简(jiǎn)单(dān)的开灯到门诊护理(lǐ)或(huò)工厂控制等更复杂的(de)过程,通过传感、处理和云连接,物联网设备将大幅提高工作效率。应(yīng)用(yòng)场景多种多样,它们的发展前(qián)景和影响(xiǎng)力也将不可估量(liàng)。
保护物联网设备的想法可能令人望而生(shēng)畏。初步研究很快揭示了(le)有关密(mì)码(mǎ)学、威胁、安全目标和其他(tā)几(jǐ)个主题的大量知识(shí)。面对(duì)铺(pù)天盖地的信息,物联网设(shè)备设计人员通常会问的第一(yī)个问题是:“我如何(hé)判断所需安全(quán)性要达到哪种水平?”,紧接着(zhe)是“我该从哪里(lǐ)入手?”
Arm提供(gòng)了平(píng)台安全架(jià)构(PSA),帮助设计人员快速入门。通过利用(yòng)PSA的一整套威胁模(mó)型和安全性(xìng)分析、硬件和固(gù)件架构规范以及可(kě)信固件M参考实现,物联网设(shè)计师能够快速且(qiě)轻松地实现安全(quán)设计。
通过(guò)使用双(shuāng)Arm Cortex®-M内核,结合可配置的(de)内存和外设(shè)保护单元,赛普拉斯PSoC 6 MCU实现了PSA定(dìng)义的(de)最高保护级别。本文将PSA网络摄像头威胁模(mó)型和安(ān)全性分析(TMSA)应用于PSoC 6 MCU,演示如何针对网络摄像头(tóu)应用进行安全性评(píng)估。任(rèn)何攻击的目(mù)标都是获取(qǔ)物联(lián)网设备(bèi)的数据并以某种方式加以利用(yòng)。如图1所(suǒ)示,分析过程的(de)第一步是识(shí)别物(wù)联网设备处理的数(shù)据资产及其安(ān)全属(shǔ)性。
接下来(lái)的步骤(zhòu)是(shì)识别针对这些(xiē)资(zī)产的(de)威胁(xié),定(dìng)义抵御这些(xiē)威胁的安全目标,并确定(dìng)需求以满足(zú)安全目标。通过(guò)满足这些要求,基于微控制器的设计可为安全目标提供支持(chí),并最(zuì)终保留资产的安全属性。最后,应该对设计进行评(píng)估,以判定设计(jì)是否达到安全目标(biāo)。通(tōng)常情况下,这类评估会利用应用于(yú)设计的威胁(xié)模(mó)型来评估设备的攻击防御能力。
完整性要求(qiú)数据(jù)资产在使用(yòng)或传(chuán)输时保持不变。完整性通常与建立引用的(de)数据(如启动固件)相关联。启动固件确保MCU配置为应用可执行的已知初始状态。对启动固件进(jìn)行更改可能(néng)会影响该(gāi)初始状(zhuàng)态,并(bìng)存在操作或(huò)安全风险。
真实性(xìng)要求(qiú)只有受信任的参与(yǔ)者才(cái)能建立数(shù)据资(zī)产的(de)当(dāng)前状态。当与完整性相结合时,真实性便能够(gòu)建(jiàn)立信任,因(yīn)此它是安全物联网(wǎng)设备的关键基(jī)石。在先前的启动固件示例(lì)中,数(shù)字签名可用于在升级(jí)固件时对真实(shí)性和完整性进行评估,以确保仅使(shǐ)用(yòng)可信固件。全面识别(bié)物联网设备中的数据资产至关重(chóng)要,因(yīn)为每个后续步(bù)骤都依(yī)赖于此步骤。举(jǔ)例来(lái)说,网络摄像头将具备以下数(shù)据(jù)资产:
威胁旨(zhǐ)在(zài)破坏数据资产的安全属性并将其(qí)用于未经授权的目的。为了识别威胁,必须(xū)对物联网设备中(zhōng)数据的使用进行(háng)评(píng)估。例如(rú),证书可用于访(fǎng)问物(wù)联网设备的(de)网络。如(rú)果证书(shū)的机密性受到损害,则(zé)未经(jīng)授权的参与者就可(kě)以使用它们来访问网络。这种攻击(jī)称为(wéi)冒充攻击。通过系统地评估每种数据,可以创建潜在威胁列表。
通过识别威(wēi)胁,可以定义安(ān)全目标(biāo)。安全目标是在(zài)应用级别定(dìng)义的,本质上提供了实(shí)现需求。一些安全目(mù)标(biāo)可以(yǐ)作为可信应用(TA)实现,它们(men)在安全的MCU提供(gòng)的隔离执行环境(jìng)中执行。隔离执(zhí)行环境全面(miàn)保护TA及(jí)其使用/处理(lǐ)的数据。物联(lián)网设备(bèi)应用本身在不安全的执行环境中运行,并通(tōng)过使用处理器间通信(IPC)通道的API与隔离执行环境中的(de)TA进行通信。TA则利用硬件中的可用资源(如加密加速器和(hé)安(ān)全内(nèi)存)来为(wéi)目标提供支持。
访问控制:物(wù)联网设备对试图访问数(shù)据资(zī)产(chǎn)的所(suǒ)有参与(yǔ)者(人(rén)或机器)进(jìn)行身份验证。防止在未经授权的(de)情况下访问数据。防御欺骗(piàn)和恶(è)意(yì)软件威(wēi)胁(xié),即攻击者对固件进行修改或安装过时(shí)的缺(quē)陷版本(běn)。安全(quán)存储(chǔ):物联网设(shè)备维护数据(jù)资产的机(jī)密性(根据(jù)需要)和完整性。防御(yù)篡改威胁。固件真实性:物联网设备(bèi)在(zài)启动和升级(jí)之前对固件的真(zhēn)实性进行验证。防御恶意软件(jiàn)威胁。
通(tōng)信:物联网(wǎng)设备对远程服务器进行身份验证,提(tí)供机密性(根据需要),并维护交换数据(jù)的完整(zhěng)性(xìng)。防御中间(jiān)人攻击(MitM)威胁。安(ān)全状态:即使(shǐ)固件完整性和真实性验证(zhèng)失败,仍确(què)保设备保持安(ān)全状态。防御(yù)恶意软件和篡改威(wēi)胁(xié)。
在这一方(fāng)面,分析提供了数据资(zī)产、威胁和(hé)安全(quán)目标(biāo)的逻(luó)辑连接模型。根(gēn)据这张图,可以编译出安全MCU所需的功能(néng)或特性列表(biǎo)。当然,这个列表(biǎo)也(yě)可以用作特(tè)定物(wù)联网设备应用解(jiě)决方案(àn)的实(shí)现(xiàn)标准。请注意,安全目标(biāo)的要(yào)求可(kě)能会根(gēn)据物联网设备的生命周期阶段(设计、制造、库存、最终使(shǐ)用和终止)而变化,也应予以考虑。