WATSON: Leveraging Data Watchpoints for Shadow Stack Protection on Embedded Systems
Xi Tan, Sagar Mohan, Ziming Zhao

TL;DR
WATSON is a novel shadow stack solution for embedded systems that uses hardware debug units to enforce control-flow integrity with low overhead.
Contribution
It introduces a hardware-assisted shadow stack mechanism leveraging data watchpoints for embedded devices, improving security and performance over existing solutions.
Findings
Overhead of 7.33% on BEEBS benchmarks
Overhead of 1.81% on CoreMark-Pro benchmarks
Effective prevention of control-flow hijacking attacks
Abstract
Embedded and Internet-of-Things (IoT) devices play a critical role in modern life. Their software and firmware, often developed in memory-unsafe languages like C, are susceptible to memory safety vulnerabilities that can lead to control-flow hijacking attacks. Shadow stack is a defense mechanism against control-flow hijacking that targets return addresses. However, existing shadow stack solutions for embedded systems have the following limitations. First, they lack system-wide protection, particularly for interrupts and exceptions. Second, they introduce high performance overhead. Third, they depend on security extensions like a trusted execution environment, which are not universally available on embedded devices. Finally, they rely on hardware features that have inherent configurable constraints, which pose compatibility challenges when integrating security mechanisms that require…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
