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