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