DocumentCode
2380006
Title
Leveraging speculative architectures for run-time program validation
Author
Santos, Juan Carlos Martinez ; Fei, Yunsi
Author_Institution
Dept. of Electr. & Comput. Eng., Univ. of Connecticut, Storrs, CT
fYear
2008
fDate
12-15 Oct. 2008
Firstpage
498
Lastpage
505
Abstract
Program execution can be tampered by malicious attackers through exploiting software vulnerabilities. Changing the program behavior by compromising control data and decision data has become the most serious threat to computer systems security. Although several hardware approaches have been presented to validate program execution, they mostly suffer great hardware area or poor ambiguity handling. In this paper, we propose a new hardware-based approach by leveraging the existing speculative architectures for run-time program validation. The on-chip branch target buffer (BTB) is utilized as a cache of the legitimate control flow transfers stored in a secure memory region. In addition, the BTB is extended to store the correct program path information. At each indirect branch site, the BTB is used to validate the decision history of conditional branches before it, and more information about the future decision path is fetched to monitor the execution path at run-time. Implementation of this approach is transparent to the upper operating system and programs. Thus, it is applicable to legacy code. Due to good code locality of the executable programs and effectiveness of branch prediction, the frequency of run-time control flow validations against the secure off-chip memory is low. Our experimental results show a negligible performance penalty and small storage overhead with ambiguity reduced.
Keywords
parallel architectures; program verification; security of data; branch prediction; computer systems security; control data; decision data; legacy code; on-chip branch target buffer; program execution; run-time program validation; software vulnerabilities; speculative architecture; Buffer storage; Computer architecture; Computer security; Condition monitoring; Control systems; Data security; Hardware; History; Operating systems; Runtime;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Design, 2008. ICCD 2008. IEEE International Conference on
Conference_Location
Lake Tahoe, CA
ISSN
1063-6404
Print_ISBN
978-1-4244-2657-7
Electronic_ISBN
1063-6404
Type
conf
DOI
10.1109/ICCD.2008.4751907
Filename
4751907
Link To Document