|
ABSTRACT
This paper presents a methodology for monitoring security in Application Specific Instruction-set Processors (ASIPs). This is a generalized methodology for inline monitoring insecure operations in machine instructions at microinstruction level. Microinstructions are embedded into the critical machine instructions forming self checking instructions. We name this method Micro Embedded Monitoring. Since ASIPs are designed exclusively for a particular application domain, the Instruction Set Architecture (ISA) of an ASIP is based on the application executed. Knowledge of the domain gives an insight into the kinds of the security threats which need to be considered. The fact that the ISA design is based on the application makes room to accommodate security monitoring support during the design phase by embedding microinstructions into the critical machine instructions. Since the microinstructions are the lowest possible software level architecture, we could expect to get better performance by implementing security detection using microinstruction routines. Four different embedded security monitoring routines are implemented for evaluation. The average performance penalty with these monitoring routines with ten different benchmarks is 1.93% while the average area and power overheads are 5.26% and 3.07% respectively.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Arm Reference Manual, Advanced RISC Machines Ltd. 2000.
|
| |
2
|
ASIP Meister Tutorial, PEAS PROJECT. 2003.
|
| |
3
|
ASIP Meister User Manual, PEAS PROJECT. 2003.
|
| |
4
|
ASIP Meister, Available at http://www.eda-meister.org/asip-meister.
|
| |
5
|
The GCC Team, GNU/GCC Compiler, Free Software Foundation.
|
| |
6
|
An Introduction to Thumb Advanced RISC Machines Ltd. 1995.
|
| |
7
|
Merriam-Webster's Online Dictionary, 10th Edition, Available at http://www.m-w.com.
|
| |
8
|
Perl Programming Language, Available at http://www.perl.org.
|
| |
9
|
The SANS Institute, The SANS/FBI Twenty Most Critical Internet Security Vulnerabilities. 2004.
|
| |
10
|
Alomary, A., T. Nakata, and Y. Honma, PEAS- I: A Hardware/Software Co-design System for ASIPs. IEEE International Test Conference, 1993: p. 2--7.
|
| |
11
|
Baratloo, A., N. Singh, and T. Tsai, Transparent Run-Time Defense Against Stack Smashing Attacks. 2000.
|
| |
12
|
Boneh, D., R.A. DeMillo, and R.J. Lipton, On the Importance of Checking Cryptographic Protocols for Faults. Lecture Notes in Computer Science, 1997 p. 37--51.
|
| |
13
|
Deckard, J., Defeating Overflow Attacks The SANS Institute 2004.
|
| |
14
|
Joan G. Dyer , Mark Lindemann , Ronald Perez , Reiner Sailer , Leendert van Doorn , Sean W. Smith , Steve Weingart, Building the IBM 4758 Secure Coprocessor, Computer, v.34 n.10, p.57-66, October 2001
[doi> 10.1109/2.955100]
|
| |
15
|
|
| |
16
|
|
| |
17
|
Guthaus, M.R., et al., Mibench: A free, commercially representative embedded benchmark suite. In IEEE 4th Annual Workshop on Workload Characterization, Austin, TX, 2001: p. 83--94.
|
| |
18
|
Hess, E., et al., Information Leakage Attacks Agaist Smart Card Implementations of Cryptographic Algorithms and Countermeasures. 2000. p. 55--64.
|
| |
19
|
Joglekar, S.P. and S.R. Tate, ProtoMon: Embedded Monitors for Cryptographic Protocol Intrusion Detection and Prevention. 2004, IEEE Computer Society.
|
| |
20
|
Kc, G.S., A.D. Keromytis, and V. Prevelakis, Countering code-injection attacks with instruction-set randomization. 2003, ACM Press. p. 272--280.
|
| |
21
|
Kelsey, J., et al., Side Channel Cryptanalysis of Product Ciphers. 1998. p. 97--110.
|
| |
22
|
Kmmerling, O. and M.G. Kuhn, Design Principles for Tamper-Resistant Smartcard Processors. 1999. p. 9--20.
|
| |
23
|
Kocher, P., et al., Security as a New Dimension in Embedded System Design. 2004.
|
| |
24
|
Lee, R., et al., Enlisting Hardware Architecture to Thwart Malicious Code Injection. 2003, Springer Verlag LNCS.
|
| |
25
|
|
| |
26
|
|
| |
27
|
McGregor, J., et al., A Processor Architecture Defense against Buffer Overflow Attacks. 2003, Springer Verlag. p. 237--252.
|
| |
28
|
Muresan, R. and C.H. Gebotys, Current flattening in software and hardware for security applications. 2004, ACM Press. p. 218--223.
|
| |
29
|
Nakka, N., et al., An Architectural Framework for Providing Reliability and Security Support. 2004, IEEE Computer Society.
|
| |
30
|
Quisquater, J.J. and D. Samyde, Side Channel Cryptanalysis. 2002. p. 179--184.
|
| |
31
|
Ragel, R.G. and S. Parameswaran, Soft Error Detection and Recovery in Application Specific Instruction-set Processors. 2005.
|
| |
32
|
|
 |
33
|
|
| |
34
|
Reinhardt, S.K. and S.S. Mukherjee, Transient fault detection via simultaneous multithreading. 2000, ACM Press. p. 25--36.
|
| |
35
|
Richarte, G., Four different tricks to bypass StackShield and StackGuard protection. 2002.
|
| |
36
|
|
| |
37
|
Shao, Z., et al., Security Protection and Checking in Embedded System Integration Against Buffer Overflow Attacks. 2004, IEEE Computer Society.
|
| |
38
|
Shao, Z., et al., Defending Embedded Systems Against Buffer Overflow via Hardware/Software. 2003, IEEE Computer Society. p. 352.
|
 |
39
|
|
| |
40
|
|
| |
41
|
Suh, G., et al., AEGIS: Architecture for tamper-evident and tamper-resistant processing. 2003.
|
| |
42
|
Suh, G., et al., Hardware mechanisms for memory integrity checking. 2002.
|
| |
43
|
Wagner, D., et al., A First Step towards Automated Detection of Buffer Overrun Vulnerabilities. 2000: San Diego, CA. p. 3--17.
|
| |
44
|
Wolfgang Rankl , W. Rankl , W. Effing , Wolfgang Effing , Kenneth Cox, Smart Card Handbook, John Wiley & Sons, Inc., New York, NY, 2000
|
| |
45
|
|
| |
46
|
Xu, J., Intrusion Prevention Using Control Data Randomization, in Suppl. of IEEE International Conf. on Dependable Systems and Networks (DSN), San Francesco, CA 2003.
|
| |
47
|
Xu, J., Z. Kalbarczyk, and R.K. Iyer, Transparent Runtime Randomization for Security. 2003, IEEE Computer Society.
|
| |
48
|
Xu, J., et al., Architecture support for defending against buffer overflow attacks. 2002.
|
| |
49
|
Xu, J. et al., An Architectural Framework for Providing Security and Dependability Support, 2004.
|
| |
50
|
Vetteth, A., Hardware Implementation of Reconfigurable Modules for Reliability and Security Engine, Master's Thesis, University of Illinois at Urbana Champaign, May 2005.
|
| |
51
|
H. Eveking, Superscalar DLX Documentation, http://www.rs.e-technik.tu-darmstadt.de/TUD/res/dlxdocu/DlxPdf.zip.
|
 |
52
|
|
| |
53
|
|
|