Abstract

The hardware security of embedded systems is raising more and more concerns in numerous safety-critical applications, such as in the automotive, aerospace, avionic, and railway systems. Embedded systems are gaining popularity in these safety-sensitive sectors with high performance, low power, and great reliability, which are ideal control platforms for executing instruction operation and data processing. However, modern embedded systems are still exposing many potential hardware vulnerabilities to malicious attacks, including software-level and hardware-level attacks; these can cause program execution failure and confidential data leakage. For this reason, this paper presents a novel embedded system by integrating a hardware-assisted security monitoring unit (SMU), for achieving a reinforced system-on-chip (SoC) on ensuring program execution and data processing security. This architecture design was implemented and evaluated on a Xilinx Virtex-5 FPGA development board. Based on the evaluation of the SMU hardware implementation in terms of performance overhead, security capability, and resource consumption, the experimental results indicate that the SMU does not lead to a significant speed degradation to processor while executing different benchmarks, and its average performance overhead reduces to 2.18% on typical 8-KB I/D-Caches. Security capability evaluation confirms the monitoring effectiveness of SMU against both instruction and data tampering attacks. Meanwhile, the SoC satisfies a good balance between high-security and resource overhead.

Highlights

  • The modern embedded system integrates a reduced instruction set computing (RISC)processor core, specific functional modules, commonly-needed peripherals, and memory blocks on a single chip, for achieving the desired functions according to specific application requirements, such as increasing computing performance, keeping low power consumption, and improving reliability in the radiation environment [1,2,3]

  • An instruction monitor is constructed in security monitoring unit (SMU) to real-time monitor instruction executions, and any instruction tampering is detected by program basic block (BB) integrity checking mechanism; A data monitor is constructed in SMU to complete the authenticated encryption and dynamic data monitoring for preventing dynamic data leakages and data tampering attacks, and any unauthorized change of ciphertext or signature in external main memory is detected by Tag integrity checking; The instruction cache (I-Cache), data cache (D-Cache), and monitor cache (M-Cache) are felicitously configured to significantly reduce the system performance overhead induced by SMU, and its average performance overhead reduces to as low as 2.18%; The experimental evaluations of security capability and hardware consumption confirm that the monitoring mechanism of SMU satisfies a good balance between highsecurity capability and low hardware complexity

  • At the BB granularity, the BB segment of consecutive instructions is defined as when a program starts from the first instruction and ends up with the branch or jump instruction; each BB is assigned to an integrity signature, which is generated on the basis of reference information extraction at the compile phase

Read more

Summary

Introduction

The modern embedded system integrates a reduced instruction set computing (RISC). processor core, specific functional modules, commonly-needed peripherals, and memory blocks on a single chip, for achieving the desired functions according to specific application requirements, such as increasing computing performance, keeping low power consumption, and improving reliability in the radiation environment [1,2,3]. Most of embedded programs are written in the high-level programming languages of C and C++, which can access memory directly without any valid bound checks These software-level attacks make it easy to implement the buffer overflow [10,11] via stack smashing and take control of the hardware platform during executing untrusted programs. A data monitor is constructed in SMU to complete the authenticated encryption and dynamic data monitoring for preventing dynamic data leakages and data tampering attacks, and any unauthorized change of ciphertext or signature in external main memory is detected by Tag integrity checking; The I-Cache, D-Cache, and monitor cache (M-Cache) are felicitously configured to significantly reduce the system performance overhead induced by SMU, and its average performance overhead reduces to as low as 2.18%; The experimental evaluations of security capability and hardware consumption confirm that the monitoring mechanism of SMU satisfies a good balance between highsecurity capability and low hardware complexity.

Security Assumptions and Threat Models
Preliminaries
Security Strategy of Instruction Execution Monitoring
Program Code Integrity
Control-Flow Integrity
Integrity Label Calculation
Security Strategy against Sensitive Data Leakage
Confidentiality Protection Scheme
Integrity Protection Scheme
Authentication of Digital Signature
External Tampering Attacks Aiming at Main Memory
Instruction Monitor against Instruction Tampering Attacks
The Efficient Partition of Basic Blocks
Reference Information Extraction for Integrity Checking
Hardware Implementation of Instruction Monitor
Performance Optimizations of Monitoring Mechanism
M-Cache Searching Method
I-Cache Optimized Approach
Data Monitor against External Physical Attacks
Hardware Architecture Implementation of Data Monitor
Data Write-Back Procedure of Memory Access
AES Ciphertext Generation
LHash Digital Signature Generation
Data Write-Back Procedure with D-Cache
Dirty 16 bytes data
Experimental Setup
Performance Overhead Evaluation
SMU Performance Overhead
Different Depths of M-Cache
Different Sizes of D-Cache
Security Capability Evaluation
Comparison of Security and Practicality
Hardware Implementation Evaluation
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call