Runtime execution monitoring (REM) to detect and prevent malicious code execution

被引:36
作者
Fiskiran, AM [1 ]
Lee, RB [1 ]
机构
[1] Princeton Univ, Dept Elect Engn, Princeton, NJ 08544 USA
来源
IEEE INTERNATIONAL CONFERENCE ON COMPUTER DESIGN: VLSI IN COMPUTERS & PROCESSORS, PROCEEDINGS | 2004年
关键词
D O I
10.1109/ICCD.2004.1347961
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Many computer security threats involve execution of unauthorized foreign code on the victim computer. Viruses, network and email worms, Trojan horses, backdoor programs used in Denial of Service attacks are a few examples. In this paper, we present an architectural technique, which we call Runtime Execution Monitoring (REM), to detect program flow anomalies associated with such malicious code. The key idea in REM is the verification of program code at the hash block (similar to a basic block) level. This is achieved by pre-computing keyed hashes (HMACs) for each hash block during program installation, and then verifying these values during program execution. By verifying program code integrity at the hash block level, REM can monitor instructions whose behavior is typically exploited by malicious code, such as branch, call, return instructions. Performance degradation with REM averages 6.4% on our benchmark programs, which can be reduced to under 5% by increasing the size of the L1 instruction cache.
引用
收藏
页码:452 / 457
页数:6
相关论文
共 24 条
[1]  
*AMD, 2003, AMD64 ARCH PROGR MAN, V2
[2]  
[Anonymous], 2003, CCS '03, DOI DOI 10.1145/948109.948136
[3]  
BEST RM, 1980, P IEEE SPRING COMPCO, P466
[4]  
BURGER C, 1997, HLTH CARE INFORMATIO, V2, P13
[5]  
Cowan C., 2000, P DARPA INF SURV C E, VVolume 2, P119
[6]  
FRANTZEN M, 2001, P USENIX SECURITY S
[7]   Caches and hash trees for efficient memory integrity verification [J].
Gassend, B ;
Suh, GE ;
Clarke, D ;
van Dijk, M ;
Devadas, S .
NINTH INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE, PROCEEDINGS, 2003, :295-306
[8]  
HORNOF L, 1999, P ACM C PART EV SEM
[9]  
INTEL IA, 2004, 32 INTEL ARCHITECTUR, V2
[10]   Intrusion detection: A brief history and overview [J].
Kemmerer, D ;
Vigna, G .
COMPUTER, 2002, :27-30