ARM-V9 RME(Realm Management Extension)系统架构之系统安全能力的MTE

时间:2024-06-10 13:23:18

安全之安全(security²)博客目录导读


ARM架构参考手册定义了在实现RME时对内存标记扩展(FEAT_MTE)所需的更改。内存标记使用分配标签(Allocation Tags),可以为系统中的正常内存位置分配这些标签。存储分配标签的一种实现方式是使用位于主内存中的数组。

在使用可寻址内存存储分配标签的实现中,这类内存的硬件物理地址范围(MTE carve-out)只能被以下实体访问:

  • 负责将分配标签与物理地址关联的硬件。
  • 在根PAS中进行的访问——对于通过数据PA空间区域公开分配标签的实现。

MTE carve-out必须由位于完成方或请求方的过滤器保护,以确保这种行为。加密主内存中的分配标签是一种可选的深度防御能力,用于减轻读取或破坏标签的尝试。如果进行加密,并且MTE carve-out在根PAS中可访问,则必须使用根PAS加密密钥进行加密。否则,可以使用与对应分配标签的数据PAS相关的密钥进行加密。

分配和保护分配给MTE carve-out的地址范围由SSD或MSD控制。