Modular Synthesis of Heap Exploits

Dusan Repel, Johannes Kinder, Lorenzo Cavallaro
2017 Proceedings of the 2017 Workshop on Programming Languages and Analysis for Security - PLAS '17  
Memory errors continue to compromise the security of today's systems. Recent efforts to automatically synthesize exploits for stack-based buffer overflows promise to help assess a vulnerability's severity more quickly and alleviate the burden of manual reasoning. However, generation of heap exploits has been out of scope for such methods thus far. In this paper, we investigate the problem of automatically generating heap exploits, which, in addition to finding the vulnerability, requires
more » ... te interaction with the heap manager. We identify the challenges involved in automatically finding the right parameters and interaction sequences for such attacks, which have traditionally required manual analysis. To tackle these challenges, we present a modular approach that is designed to minimize the assumptions made about the heap manager used by the target application. Our prototype system is able to find exploit primitives in six binary implementations of Windows and UNIX-based heap managers and applies these to successfully exploit two real-world applications. CCS CONCEPTS • Security and privacy → Vulnerability management; Software and application security;
doi:10.1145/3139337.3139346 dblp:conf/ccs/RepelKC17 fatcat:ch3dbqqotvbwjalfxw4jg5lmwy