Title :
Address Space Layout Permutation (ASLP): Towards Fine-Grained Randomization of Commodity Software
Author :
Kil, Chongkyung ; Jinsuk Jim ; Bookholt, Christopher ; Xu, Jun ; Ning, Peng
Author_Institution :
Dept. of Comput. Sci., North Carolina State Univ.
Abstract :
Address space randomization is an emerging and promising method for stopping a broad range of memory corruption attacks. By randomly shifting critical memory regions at process initialization time, address space randomization converts an otherwise successful malicious attack into a benign process crash. However, existing approaches either introduce insufficient randomness, or require source code modification. While insufficient randomness allows successful brute-force attacks, as shown in recent studies, the required source code modification prevents this effective method from being used for commodity software, which is the major source of exploited vulnerabilities on the Internet. We propose address space layout permutation (ASLP) that introduces high degree of randomness (or high entropy) with minimal performance overhead. Essential to ASLP is a novel binary rewriting tool that can place the static code and data segments of a compiled executable to a randomly specified location and performs fine grained permutation of procedure bodies in the code segment as well as static data objects in the data segment. We have also modified the Linux operating system kernel to permute stack, heap, and memory mapped regions. Together, ASLP completely permutes memory regions in an application. Our security and performance evaluation shows minimal performance overhead with orders of magnitude improvement in randomness (e.g., up to 29 bits of randomness on a 32-bit architecture)
Keywords :
Internet; Linux; operating systems (computers); program diagnostics; security of data; Internet; Linux operating system kernel; address space layout permutation; binary rewriting tool; commodity software; fine-grained randomization; memory corruption attack; source code modification; Computer crashes; Computer science; Computer security; Data security; Degradation; Entropy; Internet; Kernel; Linux; Operating systems;
Conference_Titel :
Computer Security Applications Conference, 2006. ACSAC '06. 22nd Annual
Conference_Location :
Miami Beach, FL
Print_ISBN :
0-7695-2716-7
DOI :
10.1109/ACSAC.2006.9