Micro-Controller Units (MCUs) are widely used in safety-critical systems, making them attractive targets for attacks. This calls for lightweight defenses that remain effective despite software compromise. Control Flow Auditing (CFAud) is one such mechanism wherein a remote verifier (Vrf) is guaranteed to received evidence about the control flow path taken on a prover (Prv) MCU, even when Prv software is compromised. Despite promising benefits, current CFAud architectures unfortunately require a ``busy-wait'' phase where a hardware-anchored root-of-trust (RoT) in Prv retains execution control to ensure delivery of control flow evidence to Vrf. This drastically reduces the CPU utilization on Prv. In this work, we addresses this limitation with an architecture for Contention Avoidance in Runtime Auditing with Minimized Execution Latency (CARAMEL). CARAMEL is a hardware-software RoT co-design that enables Prv applications to resume while control flow evidence is transmitted to Vrf. This significantly reduces contention due to transmission delays and improves CPU utilization without giving up on security. Key to CARAMEL is our design of a new RoT with a self-contained (and minimal) dedicated communication interface. CARAMEL's implementation and accompanying evaluation are made open-source. Our results show substantially improved CPU utilization at a modest hardware cost.
翻译:微控制器单元(MCU)广泛应用于安全关键系统,使其成为极具吸引力的攻击目标。这要求即使在软件被攻陷的情况下仍能保持有效的轻量级防御机制。控制流审计(CFAud)便是这样一种机制,其中远程验证器(Vrf)被保证能接收到关于证明方(Prv)MCU所执行控制流路径的证据,即使Prv软件已遭破坏。尽管前景广阔,但当前的CFAud架构不幸地需要一个“忙等待”阶段,其中Prv内一个硬件锚定的可信根(RoT)需保持执行控制权,以确保控制流证据能交付给Vrf。这极大地降低了Prv上的CPU利用率。本研究通过一种名为“运行时审计中最小化执行延迟的争用避免架构”(CARAMEL)来解决此限制。CARAMEL是一种硬件-软件协同设计的可信根方案,它使得Prv应用程序能够在控制流证据传输至Vrf的同时恢复执行。这显著减少了因传输延迟导致的争用,并在不牺牲安全性的前提下提升了CPU利用率。CARAMEL的关键在于我们设计了一种新型可信根,其具备独立(且最小化)的专用通信接口。CARAMEL的实现及配套评估已开源发布。我们的结果表明,以适中的硬件成本即可实现CPU利用率的显著提升。