Securing Embedded System from Code Reuse Attacks: A Lightweight Scheme with Hardware Assistance
Related Experiment Video
Updated: Jul 18, 2025

Design and Analysis for Fall Detection System Simplification
Published on: April 6, 2020
Zhenliang An1, Weike Wang1, Wenxin Li1
1College of Electronic and Information Engineering, Shandong University of Science and Technology, Qingdao 266590, China.
Abstract:
The growing prevalence of embedded systems in various applications has raised concerns about their vulnerability to malicious code reuse attacks. Current software-based and hardware-assisted security techniques struggle to detect or block these attacks with minor performance and implementation overhead. To address this issue, this paper presents a lightweight hardware-assisted scheme to enhance the security of embedded systems against code reuse attacks. We develop an on-chip lightweight hardware shadow stack to validate target addresses at runtime for backward-edge control flow integrity, which backs up valid return addresses during function calls and automatically verifies actual return addresses during the return phase. Additionally, we propose a lightweight stream cipher circuit that encrypts and decrypts critical stack data related to control flow manipulation, preventing attackers from analyzing or tampering with them. When designing and implementing the security mechanism for embedded systems, we fully consider the constraints of limited system resources and performance, optimizing both the architecture design and implementation of the proposed hardware. Finally, we integrate both the proposed lightweight hardware shadow stack and the runtime data encryption hardware into the OR1200 processor. We have verified the system security function on the Terasic DE1-SoC FPGA platform and evaluated the system performance as well as implementation overhead. The results show that the proposed lightweight hardware-assisted scheme can provide a dedicated defense capability against code reuse attacks for embedded systems, with an average system performance overhead of 0.39% and an area footprint of 0.316 mm2.
Related Concept Videos
Clamper Circuit
Within this circuit, the diode's orientation prompts the capacitor to charge up to the level of the most negative peak of the input signal. Upon reaching this state, the diode ceases to...
Electro-mechanical Systems
A key component of the DC motor is the armature, a rotating circuit positioned within a magnetic field. As an electric current passes through the...
Semiconductors
Metals such as copper (Cu), zinc (Zn), or lead (Pb) have low resistivity and feature conduction bands that are either not fully occupied or overlap with the valence band, making a bandgap non-existent. This allows electrons in the highest energy levels of the valence band to easily transition to the conduction band upon gaining...
Self-Locking Screw
A square-threaded screw jack carrying a load is considered self-locking if the screw retains its position even after the moment applied to it is removed.
Line Protection with Impedance Relays
Under normal conditions, low load currents keep the measured...
Design Example: Automobile Ignition System
One can generate a large voltage using a car battery of 12 volts with the help of inductors. Inductors are known for opposing...

