9 安全加强的ARM架构扩展
Hafnium支持以下架构扩展以进行安全加强:
-
指针身份验证(FEAT_PAuth):扩展允许通过签署指针值来检测ROP类型攻击使用的锻造指针。 Hafnium使用编译器分支保护选项构建,以允许生成用于返回地址的指针身份验证代码(指令指针身份验证)。 Hafnium运行时使用APIA键。 在启动时间生成一个随机键,并在运行时进入Hafnium时恢复。 APIA和其他键(APIB,APDA,APDB,APGA)在VCPU上下文中保存/还原,允许在VMS/SPS中启用指针身份验证。
-
分支目标标识(FEAT_BTI):扩展允许检测JOP类型攻击使用的意外间接分支。 Hafnium是由编译器分支保护选项构建的,在通过间接分支指令(BR/BLR)达到的功能序列上插入陆板。 Hafnium代码页面被标记为EL2阶段1 MMU描述符,以使间接分支必须始终针对降落。 否则会触发故障。 VMS/SP可以(独立地)标记其代码页面,如EL1&0阶段1翻译体制中所保护的。
-
内存标记扩展名(FART_MTE):该选项允许检测出口内存数组访问或重复使用已释放的内存区域。 Hafnium启用编译器选项,允许利用
本文详细介绍了Hafnium如何利用ARM架构扩展,如FEAT_PAuth、FEAT_BTI和FART_MTE,提升安全性能。特别是对SMMUV3的支持,包括其功能、编程接口、外围设备管理和驱动程序限制,强调了SMMUV3在安全世界和非安全世界中的流管理。同时,提到了S-EL0分区支持,强调其在轻量级分区和内存权限管理中的作用。
订阅专栏 解锁全文
1012

被折叠的 条评论
为什么被折叠?



