DocumentCode :
128939
Title :
Programmable decoder and shadow threads: Tolerate remote code injection exploits with diversified redundancy
Author :
Ziyi Liu ; Weidong Shi ; Shouhuai Xu ; Zhiqiang Lin
Author_Institution :
Dept. of Comput. Sci., Univ. of Houston, Houston, TX, USA
fYear :
2014
fDate :
24-28 March 2014
Firstpage :
1
Lastpage :
6
Abstract :
We present a lightweight hardware framework for providing high assurance detection and prevention of code injection attacks using a lockstep diversified shadow execution. Recent studies show that hardware diversification can detect software attacks by checking the consistency of their behavior simultaneously. Unfortunately, the severe performance degradation and extra system costs caused by these methods are unacceptable in many applications. This paper presents a hardware-level, lockstep shadow thread framework to enrich the diversity of the software execution, with the facilitation from programmable hardware decoder and novel CPU support of tightly coupled shadow thread technique. Specifically, given a piece of (legacy) binary code, we first generate diversified binary versions using an offline binary rewriter and programmable hardware binary translator at runtime. Two diversified binary code images are launched as dual simultaneous threads in the hardware layer with one as the primary thread and the other one as shadow thread. Instructions from the shadow thread are not executed but just compared, and thus incur no OS side-effects. The extended CPU is able to decode instructions from both threads, and dispatch them to the next stage pipeline for a lockstep comparison. Any mismatch of the decoded instructions from the two threads caused by remotely injected binary code will be detected. Our design provides instruction set randomization (ISR) with minimal cost in performance, when compared with straightforward ISR implementation. The simulation results indicate that our framework incurs very small overheads and provides a protection against code injection attacks.
Keywords :
binary codes; decoding; security of data; CPU support; code injection attack; diversified binary code image; diversified redundancy; hardware diversification; hardware level shadow thread framework; high assurance detection; instruction set randomization; lightweight hardware; lockstep diversified shadow execution; lockstep shadow thread framework; offline binary rewriter; programmable decoder; programmable hardware binary translator; programmable hardware decoder; remote code injection; software attack; software execution diversity; Benchmark testing; Binary codes; Decoding; Hardware; Instruction sets; Pipelines; Radiation detectors;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014
Conference_Location :
Dresden
Type :
conf
DOI :
10.7873/DATE.2014.064
Filename :
6800265
Link To Document :
بازگشت