开源安全
它是如何工作的,它要去哪里
Image Source: ZinetroN/Shutterstock.com
在一个日益互联、物联网(IoT)驱动的世界中,如果开发人员要接受开源开发,系统安全至关重要。嵌入式系统容易受到黑客和恶意软件的攻击,如果它们没有得到充分保护,它们可能会利用整个系统安全中的弱点。开源 ISA 目前在此领域落后于其许可的对应机构-然而,RISC-V 似乎决心迅速赶上。让我们来看看嵌入式系统安全的一些基础知识,以及它们如何具体应用于开源开发:
安全基础知识
为了保护嵌入式系统免受黑客攻击和恶意软件的攻击,开发人员必须确保它们具有可构建的安全框架。在嵌入式系统中,信任的根源是所有其他安全功能所依赖的不可改变的基础。信任的根源可以指望执行与安全相关的功能-由开发人员定义-不受不良行为者和黑客的干扰。信任安全根基背后的硬件实现并保护用于安全的密钥和功能:加密、解密、身份验证和安全启动。
标准化加密功能为系统安全提供了基础。这些功能通常使用安全的硬件外设来实施,该硬件外设可以防止未经授权的访问或窥探。用于保护数据和验证受保护数据来自受信任来源的加密密钥还必须受到保护,免受不安全的访问,并且可以依靠难以"破解"的设备特定特性。
一旦建立了信任根基并保护加密功能和密钥,就可以建立一个受信任的执行环境 (TEE),保护嵌入式系统的应用代码免受黑客攻击和恶意软件的攻击。TEE 还可以保护敏感的应用程序数据,如用户登录凭据、患者记录和财务信息。所有更高级别的应用程序代码都建立在 TEE 上,以确保整个嵌入式系统的安全。信任的硬件根源必须安全免受恶意黑客或恶意软件的攻击,以确保整个系统的安全。
基于软件的安全性
作为防止黑客攻击和/或恶意软件的附加保护层,高级应用程序通常使用特殊协议安全地传输数据。应用代码访问安全协议功能(如 HTTP、FTPS 和 STFP),这些功能用于安全通信协议(如 SSL 和 SSH)的较低级别功能。反过来,这些协议访问加密功能,通常通过库。所有加密功能最终都通过 TEE 和信任根执行,以保证安全执行和数据保护。下图以图形方式说明了这些关系:
图1:安全组件图(苏斯:鼠标)
基于硬件的安全性
为了进一步保护嵌入式系统免受黑客攻击和其他恶意入侵,可以将硬件添加到基于 RISC-V 的 MCU 中,以帮助创建一个安全的硬件环境,保护多核系统中的敏感内存、外围设备,甚至其他处理器内核免受最猛烈的攻击。下图根据 SiF5 世界卫士保护安全模型的描述改编,用于保护 MCU 资源,显示了实现安全访问的方法之一。RISC-V ISA 支持的物理内存保护 (PMP) 和物理内存属性 (PMA) 功能用于通过限制仅访问安全过程来实现对重要 MCU 资源的保护。在下面的实施中,访问控制 (AC) 块使用 PMP 和 PMA 功能来检测和防止不安全地访问受保护的缓存存储器、内部内存区域(Flash 或 SRAM)、外围设备(如加密硬件和密钥存储)、其他处理器、总线主机和嵌入式系统所需的其他外围设备。访问违规可能会触发安全系统可以响应的中断 - 也许通过记录和报告它作为潜在的安全攻击并采取预防措施。
图2:开放平台架构(苏斯:四五)
如上图所示,信任实现的根源可以依靠 RISC-V PMA 和 PMP 功能来保护加密密钥(通过将其放置在受保护的内存区域),并保护加密硬件免受不安全的访问。保护缓存内存也至关重要,因此恶意软件无法潜在地"窥探"流于安全处理器和安全外围之间的安全信息。嵌入式系统的一些其他重要要素应通过适当的保护措施进行保护,这些要素包括:
外设保护
保护重要外围设备免受配置更改和保护传输的数据不被第三方访问是安全系统的要求。例如,如果通过串行接口监控来自危险化学过程的重要传感器数据,则保护接口免受不安全访问将是谨慎的。一个坏角色可能会修改传感器数据,造成灾难性故障,从而损坏设备并威胁人类生命。
总线主保护
还需要保护总线主的访问,以确保恶意软件攻击不能使用总线主访问功能访问机密数据。将大师的总线访问功能限制在需要时仅限非安全数据是保护机密数据免受总线主攻击的典型方法。
试用和编程界面保护
在设备实现安全的信任根后,保护内部硬件免受篡改和不必要的检查或修改非常重要。通常,设备具有调试和编程接口(如 JTAG),允许用于调试目的的访问。在系统部署之前,必须禁用或保护此类访问,否则黑客可以直接访问秘密数据或受保护的 IP。
安全引导通过攻击缓解:侧通道,物理攻击,篡改保护等。
根据所需的安全级别,可以在基于 RISC-V 的 MCU 中添加额外的硬件功能。较高级的安全攻击类别之一使用设备"侧通道",如电源或打卡。例如,复杂的电源分析可用于确定何时执行加密功能。当结合对许多操作中电源使用的仔细统计分析时,黑客实际上可以根据与加密计算相关的瞬时功率峰值确定计算过程中使用的键。确定加密密钥将使黑客能够访问信任的根源,并完全破坏系统。有些设备甚至容易受到物理攻击,信任硬件的根源被"去封顶",并接受微观分析以发现加密密钥或其他机密。最强大的信任硬件根源采用篡改保护措施,可检测黑客何时试图在物理攻击中去盖设备或试图在板上剪下痕迹。当检测到这些攻击时,作为预防措施,系统可以快速清除设备内的所有数据。
结论
这是您在基于 RISC-V 的嵌入式系统中可能找到的安全功能的全面摘要- 采取此处描述的行动将挫败即使是最顽固的攻击者。如果开源 ISA 将成为嵌入式系统开发的标准,安全可能是 RISC-V 攀登的最重要山峰,尽管 RISC-V 在这方面还有很长的路要走,但投资于增强大型 RISC-V 社区内的安全功能和能力是近期取得重大进展的良好预兆。对于黑客和其他不良行为者来说,一个真正互联的世界是一个雷区——系统安全对于保持世界的运作和运作绝对至关重要。