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