通过保密性、完整性和可用性实现嵌入式边缘安全
发布于2024-05-10
物联网 (IoT) 的快速发展极大地增加了许多行业的攻击面,包括制造业、交通运输、医疗保健和能源行业。相比并不久远的过去,网络边缘的系统数量已经多出了一大截,而且这些系统往往位于传统安全边界之外。上述因素都使得这些设备天生容易遭受网络威胁。
这种新的威胁形势,使信息安全三要素(保密性、完整性和可用性)变得越来越重要——信息安全三要素是一种以零信任原则、基于安全的设计,以及威胁情报和监控为基础的安全框架。本文将讨论基于这些原则的去中心化安全架构。但首先,我们有必要了解一下嵌入式设备和物联网边缘设备面临着哪些威胁。
嵌入式设备和物联网边缘设备面临的威胁类型
嵌入式边缘设备通常运行在本地网络和更大的互联网之间的边界上,在初始数据处理和网络连接“最后一公里”中发挥着关键作用。这些设备的工作接口和执行的工作负载存在一定的特殊性,因而面临着特殊的安全挑战,例如:
-
集成度有限:边缘设备种类繁多、规模庞大,难以纳入到现有安全系统中,致使保护工作出现漏洞。
-
固件漏洞:尽管固件是任何计算系统的重要组成部分,但其安全性问题往往被忽视。攻击者可以利用未修复的安全漏洞和不安全的更新机制实现未经授权的访问、权限提升和恶意代码执行。
-
第三方组件漏洞:物联网基础设施通常依赖于库和框架,如果这些组件没有及时更新,攻击者就可以利用漏洞。对于开源解决方案而言,这一问题尤其值得重视,因为此类解决方案中的漏洞往往众所周知,并且经常被利用。
-
易受攻击的API:这些API可能成为SQL注入和分布式拒绝服务 (DDoS) 攻击的入口点,对于连接到云服务的设备而言尤其需要重视这一点。
-
测试不足:在销量较低的市场领域中,分配测试资源可能并不容易,进而导致产品中留下未被发现的缺陷。
三大目标:保密性、完整性和可用性
为嵌入式系统打造基于安全的设计,是一项复杂的挑战,而这类设备固有的限制(如尺寸、重量和功耗 (SWaP) 限制)又加剧了这一挑战。为了有效应对挑战,业界采用了一种适用于嵌入式系统的安全开发方法:信息安全三要素。
保密性、完整性和可用性,这三大要素是保护嵌入式系统及其信息资产免遭未经授权的访问、修改和破坏的基本策略准则。让我们一起来看看信息安全三要素中每个要素的含义。
保密性
嵌入式系统中的敏感信息(如专有应用程序代码和关键监控数据)必须得到保护,以防发生未经授权的泄露。加密是实现这一目标的基础,但并非所有加密技术都适合嵌入式系统。
边缘设备通常资源有限,因此加密不应给系统带来过多负担。这通常意味着需要依靠硬件加速器来减轻主机处理器的加密工作负载,因此了解特定加速器支持的加密算法就成了一件至关重要的事情。集成或分立硬件加速器上普遍支持的加密引擎包括高级加密标准 (AES) 对称加密算法和SSL/TLS认证中使用的Rivest-Shamir-Adleman (RSA) 非对称加密算法。
当然,只有在加密密钥保密的情况下,加密才是有效的。保护加密密钥和整体系统完整性的一种方法是通过可信平台模块 (TPM),它提供基于硬件的安全功能。TPM可以安全地存储密钥、密码和数字签名等敏感数据。它们在安全启动技术中发挥着至关重要的作用,这项技术在设备启动过程中使用数字签名来验证代码的真实性,防止未经授权的修改,并阻止恶意软件注入。此外,一些TPM还能通过监控各种硬件组件的变化来检测硬件篡改,从而有助于提高安全性。
完整性
要确保安全,系统的工作过程就不能被恶意行为者改变。TPM在这一点上再次发挥了重要作用,它可以保护设备不被恶意行为者篡改。
此外,入侵检测系统 (IDS) 也可以帮助验证数据是否保持不变并处于可信状态。这里的难点在于如何在嵌入式设备的存储容量限制下构建IDS。为了摆脱这一限制,管理员通常倾向于实施一种基于网络的解决方案,以监控多台设备上的可疑活动流量。
必须清楚的是,边缘系统通常部署在物理安全性有限的场所。对于此类系统,设备的机械设计必须足够坚固,以防止内部元器件被轻易接触,这就需要在制造过程中进行一些特殊处理,如禁用或破坏调试端口和引脚等。
可用性
边缘系统的关键任务目标不能受到任何影响。这就需要确保授权人员能够根据需要访问系统及其资源。对于嵌入式系统而言,这在很大程度上取决于容错和冗余。
容错的主要目标是确保系统在某些元器件发生故障时仍能继续运行。这一目标可以通过纠错码 (ECC) 内存等硬件来实现,此类内存可以自动补偿单个二进制位的错误。另一种方法是使用看门狗定时器,它可以在系统停止响应时重置系统。异常处理和自检等软件机制也可用于检测错误并从中恢复。
在许多情况下,实现容错的最好方式就是冗余。关键系统通常包含多组核心元器件,如处理器、内存和电源。软件也可以实现冗余,例如,在互相分离的多个虚拟环境中运行同一操作系统或软件栈的多个实例。
无论采用何种技术,都不可能实现绝对无懈可击的系统。因此,实施备份系统和恢复计划是非常有必要的做法,这样就可以在发生威胁时迅速恢复功能。
实施信息安全三要素原则所面临的挑战
要实施信息安全三要素原则,就需要应对若干挑战。其实施过程需要采取全面的方法,并且要考虑到以下因素:
-
连接受限:如果连接缓慢或不可靠,就很难识别并应对安全事件。此外,延迟和带宽方面的限制也会减慢软件和固件更新的速度。
-
大范围横向布局:传统基于边界的安全手段(如防火墙)并不能很好地应用于边缘设备。这些设备可能运行在连接受限的远端位置,难以纳入到集中管理、监控和事件响应中。在实际应用中,边缘设备往往高度依赖本地安全措施,而这些措施的强度和时效性可能不如集中管理的安全措施。此外,由于涉及的设备和网络数量众多,因而很难确保每个潜在入口点都是安全的。
-
IT/OT融合:在传统做法中,出于安全性的考虑,运营技术 (OT) 系统是隔离的,但实际应用中它可能会与IT网络融合。此举会在两者交叉点上引入技术问题之外的新漏洞:
-
OT和IT的安全优先级和实践做法往往并不相同,因而有必要对这两种方法进行协作和协调。
-
OT和IT团队的文化往往是不同的,不应假定两者会相互理解。
-
要让两者成功合作,可能需要开展跨学科培训,以及组建了解双方观点的团队。
-
通过有针对性的具体策略来应对这些挑战,对于提高嵌入式系统和边缘设备的安全性而言至关重要。这样,企业就能在不断变化的网络安全环境中确保数据和服务的保密性、完整性和可用性。
确保嵌入式系统安全的技巧
尽管实施信息安全三要素策略存在诸多挑战,但借助具体的设计方法(如下所示),可以确保将安全性直接集成到系统架构中,从而增强三要素架构的实施效果。
-
基于安全的设计:这种积极主动的综合策略将设备和信息安全放在首位,并将其贯穿于从系统架构到详细设计的各个开发阶段。其中包括法规和标准合规性、基于安全的产品开发生命周期以及纵深防御策略。
-
零信任架构:这种模式的核心是假定环境(包括企业自有系统)中存在持续威胁。一个强大的解决方案通常包括三个主要策略:强化身份管理、逻辑微分段和基于网络的分段。
-
强大的加密和数据隐私:这些措施包括加密通信渠道、实施安全存储解决方案和使用安全数据传输协议。此外,固件无线升级 (FOTA) 可实现远程更新,以解决安全漏洞。
-
分段和隔离:隔离关键系统可使攻击难以在联网的边缘设备间横向移动。微分段可用于分离工作负载,从而制定更精细、更灵活的策略,以满足特定的安全需求。这种方法可对除允许的网络数据包之外的所有网络数据包加以限制。此外,容器化对于隔离应用程序及其依赖关系也至关重要,通过限制对敏感信息的访问,有助于提高保密性和完整性。
-
威胁情报:部署系统后,对整个边缘基础设施进行持续监控和协调是安全的关键。应监控系统活动中的异常活动,并针对不断变化的漏洞状况做好应对准备。
上述所有安全方法都与信息安全三要素相关,每种方法都在以不同的方式强化保密性、完整性和可用性原则。
不止于三要素
从设计阶段开始就集成安全功能,并在信息安全三要素基础上进行构建,就可以通过基于云和边缘的软件解决方案,安全地管理成千上万台已部署的设备。
根据目标行业的不同,要克服与三要素策略相关的挑战,需要遵守不同的行业标准与合规要求。在系统设计之初对这些方面进行调查,对于确保简化开发和认证至关重要——更不用说在设备部署到现场后依旧保持高度安全性了。
当然,网络安全并非一成不变。在嵌入式硬件的整个开发生命周期和部署后协调过程中,采用各种安全方法,有助于保护整个基础设施。这些措施终将确保远端应用在数年或数十年内安全、稳定地运行。