Title :
Signature-Based Protection from Code Reuse Attacks
Author :
Kayaalp, Mehmet ; Schmitt, Timothy ; Nomani, Junaid ; Ponomarev, Dmitry ; Abu Ghazaleh, Nael
Author_Institution :
Comput. Sci. Dept., Binghamton Univ., Binghamton, NY, USA
Abstract :
Code Reuse Attacks (CRAs) recently emerged as a new class of security exploits. CRAs construct malicious programs out of small fragments (gadgets) of existing code, thus eliminating the need for code injection. Existing defenses against CRAs often incur large performance overheads or require extensive binary rewriting and other changes to the system software. In this paper, we examine a signature-based detection of CRAs, where the attack is detected by observing the behavior of programs and detecting the gadget execution patterns. We first demonstrate that naive signature-based defenses can be defeated by introducing special “delay gadgets” as part of the attack. We then show how a software-configurable signature-based approach can be designed to defend against such stealth CRAs, including the attacks that manage to use longer-length gadgets. The proposed defense (called SCRAP) can be implemented entirely in hardware using simple logic at the commit stage of the pipeline. SCRAP is realized with minimal performance cost, no changes to the software layers, and no implications on binary compatibility. Finally, we show that SCRAP generates no false alarms on a wide range of applications.
Keywords :
digital signatures; CRA; SCRAP; binary rewriting; code injection; code reuse attack; delay gadgets; gadget execution pattern detection; malicious programs; program behavior; security exploits; signature-based defense; signature-based detection; signature-based protection; software-configurable signature-based approach; Delays; Hardware; Libraries; Radiation detectors; Registers; Security; Software; Processor architectures; code reuse attacks; support for security;
Journal_Title :
Computers, IEEE Transactions on
DOI :
10.1109/TC.2013.230