DocumentCode :
1165525
Title :
SmashGuard: A Hardware Solution to Prevent Security Attacks on the Function Return Address
Author :
Özdoganoglu, Hilmi ; Vijaykumar, T.N. ; Brodley, Carla E. ; Kuperman, Benjamin A. ; Jalote, Ankit
Author_Institution :
Sch. of Electr. & Comput. Eng., Purdue Univ.
Volume :
55
Issue :
10
fYear :
2006
Firstpage :
1271
Lastpage :
1285
Abstract :
A buffer overflow attack is perhaps the most common attack used to compromise the security of a host. This attack can be used to change the function return address and redirect execution to the attacker´s code. We present a hardware-based solution, called SmashGuard, to protect against all known forms of attack on the function return addresses stored on the program stack. With each function call instruction, the current return address is pushed onto a hardware stack. A return instruction compares its address to the return address from the top of the hardware stack. An exception is raised to signal the mismatch. Because the stack operations and checks are done in hardware in parallel with the usual execution of instructions, our best-performing implementation scheme has virtually no performance overhead (because we are modifying hardware, it is impossible to guarantee zero overhead without an actual hardware implementation). While previous software-based approaches´ average performance degradation for the SPEC2000 benchmarks is only 2.8 percent, their worst-case degradation is up to 8.3 percent. Apart from the lack of robustness in performance, the software approaches´ key disadvantages are less security coverage and the need for recompilation of applications. SmashGuard, on the other hand, is secure and does not require recompilation of applications
Keywords :
buffer storage; computer architecture; security of data; SmashGuard hardware-based solution; buffer overflow attack; function call instruction; function return address; hardware stack; security attack; Application software; Buffer overflow; Computer worms; Degradation; Hardware; Protection; Robustness; Security; Software performance; Storage area networks; Buffer overflow; function return address; hardware stack.;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/TC.2006.166
Filename :
1683758
Link To Document :
بازگشت