TitanCFI: Toward Enforcing Control-Flow Integrity in the Root-of-Trust

2024年01月04日
  • 简介
    现代的RISC-V平台控制和监控着诸如工业控制器和自动驾驶车辆等安全关键系统。虽然这些平台具备Root-of-Trust(RoT)来存储认证密钥并启用安全启动技术,但它们通常缺乏控制流完整性(CFI)强制措施,容易受到网络攻击,这些攻击会转移应用程序的控制流以触发恶意行为。近期在RISC-V系统中实施CFI的技术包括ISA修改或自定义硬件IP,这些都需要特定的二进制工具链或在硬件中设计CFI原语。本文提出了一种新的方法TitanCFI,在RoT中实施CFI强制措施。TitanCFI修改了受保护核心的提交阶段,将控制流指令流式传输到RoT,并将CFI强制策略集成到RoT固件中。我们的方法最大限度地重用了SoC中存在的硬件资源,并避免了设计自定义IP和修改编译工具链,同时利用RoT防篡改存储和加密加速器来保护CFI元数据。我们在一款现代的RISC-V SoC上实现了所提出的架构,并在RoT中实施了返回地址保护策略,以及基准测试面积和运行时开销。实验结果表明,TitanCFI在大多数基准测试中实现了与SoA硬件CFI解决方案相当的开销,且面积开销更小,导致额外的1%面积占用。
  • 图表
  • 解决问题
    如何在缺乏CFI强制执行的RISC-V平台上实现CFI保护?
  • 关键思路
    在RoT中集成CFI强制执行策略,利用加密加速器和RoT防篡改存储器来保护CFI元数据。
  • 其它亮点
    该方法避免了设计自定义IP和修改编译工具链,实现了硬件资源最大化重用,并在现代RISC-V SoC上实现了该架构,与现有的硬件CFI解决方案相比,具有较低的面积开销和可比的运行时开销。
  • 相关研究
    与该论文相关的研究包括:ISA修改或自定义硬件IP的CFI强制执行技术,以及在RoT中集成CFI保护的其他方法。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问