安全之安全(security²)博客目录导读
目录
一、保护代码和数据
二、TrustZone
三、安全世界之间的隔离
四、Secure-EL2扩展
五、保护主流计算工作负载
六、领域管理扩展(RME)
七、内存密集型可信应用程序
八、Arm动态TrustZone技术
强制执行明确定义的安全边界是安全工程的最基本原则之一。Arm 提供可扩展的隔离技术,以最小的性能影响将各种工作负载隔离开来。
一、保护代码和数据
定义和强制执行安全边界可能是安全工程中最重要的技术之一,用于保护数据和系统。边界在用户之间、服务之间甚至在交互流程中进行划分。这些边界强制执行最小特权原则,使攻击者难以利用漏洞谋取商业利益。TrustZone使得最敏感的软件能够在虚拟飞地(virtual enclave)中受到保护,实现更强的隔离,从而无需或经济上不合理地使用专用安全处理器。
二、TrustZone
Arm TrustZone技术提供硬件强制隔离,以保护共享同一CPU的敏感软件和数据。
保护敏感工作负载的这一概念不仅限于处理器元素,还包括SoC内的内存、总线事务、中断和外设。
详情可参考该博客:
ARM AArch64的TrustZone架构详解(上)
ARM AArch64的TrustZone架构详解(下)
三、安全世界之间的隔离
当厂商希望在TrustZone下运行多个可信应用程序时,S-EL2使得这些应用程序之间的隔离更加强大。S-EL2有助于提高TrustZone环境的安全性和可扩展性。
S-EL2还使得可信应用程序能够带来自己的可信执行环境(TEE)。这很重要,因为存在许多不同的TEE,将应用程序移植到与其原始TEE不同的环境中运行是困难的。
四、Secure-EL2扩展
Armv8.4-A架构引入了Secure EL2扩展,为安全世界中的虚拟化增加了支持。S-EL2为安全服务提供了安全分区,分区之间具有强大的硬件隔离,并支持运行多个可信操作系统。
详情可参考该博客:在安全环境中使用虚拟化进行隔离——Armv8.4上的安全世界软件架构
五、保护主流计算工作负载
保护正在使用的数据不仅仅需要硅片制造商和OEM厂商。主流和非OEM工作负载(通常在安全世界之外运行的工作负载)可能会受到来自主机操作系统、虚拟化程序和相邻工作负载的攻击。
六、领域管理扩展(RME)
RME是Arm机密计算架构(Arm CCA)的一部分,并建立了一个新的硬件。
详情可参考该博客:ARMv9的RME安全架构介绍
七、内存密集型可信应用程序
Arm动态TrustZone技术使开发人员可以增加和减少分配给TrustZone应用程序的RAM数量。例如,现在可以将TrustZone用于更多的内存密集型应用程序,例如机器学习和视频,而不需要在应用程序未被使用时专门分配大量资源给它。
八、Arm动态TrustZone技术
领域管理扩展(Realm Management Extension, RME)引入了对领域的支持,并通过允许内存按需在正常世界和安全世界之间移动来增强TrustZone。当TrustZone间歇性地用于内存密集型安全世界工作负载(例如机器学习和视频解码)时,这可以减少平台所需的DRAM总量。
详情可参考该博客:ARM动态Trustzone技术简介